在 OVS 设备上高效安装流程,数据包处理,值得使用氧气而不是氖/钠



所以我搬到了新版本的OpenDayLight,我目前正在使用Neon(Sodiums api资源管理器由于某种原因无法工作,但我今天再次尝试(。

我记得旧版本的 OpenDayLight 有一个 L2Switch,但我想它不再受支持,我昨晚在安装流,以便单个交换机上的 2 台主机可以通信。我是通过 restconf 和 md-sal:add-flow 或任何它的名字来做到这一点的,它不是很有效,但它确实有效,我能够传递流量。

我可能会编写自己的 L2 学习代码,因为我为其他控制器完成了它,而且它相当容易,但这似乎是一种在 SDN 网络中获得可访问性的过时方法,我开始觉得我错过了一些东西。

ODL 钠/霓虹灯中是否有某些功能可以为主机处理 ARP,或者进行某种类型的 L2 学习?如果没有,将流安装到网络中的有效方法是什么,特别是具有许多交换机的数据中心式网络。在一个交换机上手动安装流是可以忍受的,但是一旦我的硬件准备就绪,我们将拥有 8 个物理 OVS 设备,并且每个使用其余设备一次安装一个流可能会杀死我 lmao。

此外,我一直在这里寻找并通过控制器上的数据包 IN 处理的项目代码,如果我进行 L2 学习,我将需要这样做,并且我对 ODL 的主要目标是开发某种类型的网络安全应用程序。

如果我没记错的话,当 OVS 设备收到不知道如何转发的数据包时,它会将其发送到控制器,控制器将做出决定并将流安装在交换机上以备将来数据包使用。我知道如何安装流程,我只是有点迷失了将代码放在哪里以检查数据包并决定如何处理它。 在POX中,这很容易,几乎只是一个可以覆盖的PacketIn函数,希望它与ODL类似

看来 Oxygen 仍然具有 L2Switch,如果我有一个无法手动安装流的大型拓扑,那么降级到 Oxygen 以实现 L2 功能是否值得?

是的,我认为你真正想要的是 l2switch。 该项目始终是 使用OpenDaylight安装的快速项目,以显示一些快速的SDN功能 (使用mininet(,但它并没有真正在上游社区中得到维护 所以我们删除了它。然而,最近有人谈论试图保留它 活着,所以至少它可以在未来的 ODL 版本中发布和安装。

你会考虑帮助这项工作吗?如果是这样,您可以让 l2switch 工作 再次是最新的主分支(将是镁版本(,可能还有 到最终的钠服务版本 (SR( 之一。我不知道这一切 需要实现这一目标,但我认为这可能不太难。

退后一步确实有助于上游 ODL 社区,但是 希望通过较新的 ODL 版本在短期内为您提供所需的内容 以及对整个 ODL 代码库的更多经验。

如果没有,那么您在使用 restconf 进行编程流程方面就走在了正确的轨道上。你 不必一定要使用 md-sal:add-flow,你可以添加流 您希望在配置存储中,只要 OpenFlow 节点存在, OpenFlowPlugin应该在OVS开关上对其进行编程。这是一个测试 添加您引用的"平底船到控制器"流的情况。只需钻孔 深入到机器人框架关键字以获取更多详细信息。就像这里是 PUT 请求 URI,这是发送的正文。

最新更新