问题标签 [mininet]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
297 浏览

ping - 在 OF 开关和非 OF 开关之间 Ping

在给定的拓扑中,只有 s3 和 s4 是 OFSwitches 和其他 Non-OF 交换机。对于非 OF 交换机,我在超类 Switch 下创建了 L2_switch 子类,类似于启用了 stp 的 LinuxBridge(nodelib.py)。

这里只有 h2 和 h4 能够相互 ping 通。其他主机无法ping通。为什么?

但是把 s2 和 s5 改成 OF-Switch 所有的主机都可以互相 ping 通。为什么?

这是我的代码:

0 投票
1 回答
4939 浏览

openflow - 如何在 mininet 中找出端口信息

我使用 python 创建自定义 mininet 拓扑。详细了解拓扑对于这个问题并不重要。

我使用 ryu 作为控制器。特别是我使用应用程序“ofctl_rest.py”。此控制器不会自行在交换机中安装规则。你必须发出 rest - 命令来建立规则。在每个休息请求(规则)中,您必须指定一个传出端口。要指定此端口,我需要有关网络拓扑的信息。

我需要知道哪个链接连接到端口。我需要知道端口在哪个接口上运行。了解实际端口的外部接口、外部交换机/主机和外部端口也很有帮助。我怎样才能找回这些信息???

请帮我。我现在真的很沮丧,因为我不知道如何弄清楚。

0 投票
2 回答
1980 浏览

openflow - 从 Open Flow 交换机获取丢包

我正在使用 ryu 控制器(3.22)来监控交换机(Open vSwitch 2.0.2,支持 Open Flow 1.3),它们是使用 mininet(2.1.0)创建的虚拟网络的一部分。它是深度 = 2 和扇出 = 5 的树形拓扑。我使用的是switch_monitor.py

EventOFPPortStatsReply在控制器的帮助下,我可以使用装饰器获取端口统计信息。我可以得到rx_packets, rx_bytes, rx_errors, tx_packets, tx_bytes, tx_errors,rx_dropped等的值tx_dropped

但是 , 的值rx_dropped总是tx_dropped为零即使交换机实际上正在丢弃数据包,如 qdisc(linux 命令)所报告的那样。

如何从 Open Flow 交换机获取丢包统计信息?

一个。如何获得非零值?

湾。有没有替代方法?

0 投票
1 回答
638 浏览

linux - 从 bash 脚本初始化 Mininet 拓扑

我想自动化设置Mininet虚拟机、通过 SSH 连接到 VM、在 VM 中启动 Mininet 以及初始化拓扑的过程。我需要会话保持打开状态,以便我可以使用创建的网络向 Mininet 发出命令。一切正常,包括初始化网络,但是一旦 bash 脚本结束,Mininet 就会破坏拓扑并退出虚拟机。我的代码的相关部分如下:

我尝试过的事情:

  1. 以;结束此处的文档s0 bash
  2. s0 $SHELL以;结尾
  3. 删除此处文档末尾的分隔符(在黑暗中拍摄)。

(1) 和 (2) 退出 Mininet 并在 VM 中给我留下提示,但由于某种原因我无法从它发出命令。(3) 什么都不做。

0 投票
1 回答
3943 浏览

icmp - 设置 ICMP 与 POX 控制器匹配


我正在尝试使用 POX 控制器向交换机添加流条目,我的代码是:

但是,当我从 10.0.0.1 ping 到 10.0.0.5 时,没有回复。可能是什么问题?(我还为 ICMP 回复添加了对称流)

谢谢

0 投票
1 回答
1001 浏览

openflow - 带有多个交换机和 POX 控制器的 Mininet 中设置了空操作的流条目


我正在使用 Mininet 和 POX 控制器。网络拓扑有多个交换机。每当我为某个交换机安装流,然后我检查该交换机中的流表时,它的操作集是空的。dump-flows 显示actions= 但是,当网络中只有一台交换机时,操作集不为空。动作集为空的原因可能是什么?

谢谢

0 投票
2 回答
1776 浏览

networking - 带 ONOS 的 Mininet:ARP 工作正常,Ping 无法启动

我构建了一个自定义 mininet 拓扑:2 个主机,它们之间有 2 个交换机:

用 ONOS 填充流表后,设置工作正常。但我无法处理转发到 SDN 控制器的数据包。

作为控制器,我使用自己的 onos-app。

我尝试了一些 ping 并用 tcpdump 嗅探接口。当一台主机 ping 另一台主机时,主机会发送一个 arp 请求。该请求到达另一台主机并回复。即使回复到达正确的 ping 主机。但后来……什么都没有发生。我希望第一个主机在收到正确的 arp 回复后发送 ping。但相反,它完全没有任何作用。这甚至不能只使用一个开关。 截图tcpdump:左上host1,右上host2,中间switch

为什么 ping 本身不启动?你知道我做错了什么吗?谢谢你。

0 投票
1 回答
1108 浏览

mininet - get_all_link(self) 为一个拓扑输出所有可能的链接

我有 4 个交换机和 4 个主机的拓扑。开关构成一个回路。我的目标是了解交换机连接到控制器时的网络拓扑。问题是该函数get_all_links()返回所有可能的链接,或者至少返回一些没有意义的东西。port_modify我在触发事件时调用该函数。

这是我用来构建拓扑的代码:

这是我的 Ryu 代码:

所以当我检查链接时,它给了我 24 个链接,而只有 4 个。

该代码部分位于SDNLab上。我删除了一些事件以节省一些空间。完整代码请访问:https ://github.com/Ehsan70/RyuApps/blob/master/topo_learner.py

0 投票
0 回答
288 浏览

mininet - 集线器:未捕获的异常-> KeyError:

我使用 Ryu 制作了一个控制器来处理路径和开关。该代码似乎正在运行,但我收到以下错误。它是异步的,这意味着它似乎与任何事件无关,并且每隔一段时间就会发生一次。问题是这些文件是 Ryu 文件,我没有更改它们。

我正在使用 mininet 来虚拟化网络。

有任何想法吗?

编辑:文件:

0 投票
1 回答
2216 浏览

mininet - 拓扑中存在循环时 Mininet pingall 失败

我使用 Ryu 作为我的 SDN 控制器来控制具有循环的拓扑。

我正在使用学习交换机技术来路由数据包。我的主要功能/处理程序是:

我需要在我的拓扑中有循环。有谁知道如何正确配置拓扑/控制器以使循环可ping?

我的完整控制器代码:https ://github.com/Ehsan70/RyuApps/blob/master/topo_learner.py 我的拓扑代码:https ://github.com/Ehsan70/RyuApps/blob/master/Pkt_Topo_with_loop.py