问题标签 [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 投票
2 回答
1469 浏览

python - 更改 mininet 主机中的主机名

我需要模拟一个由交换机连接的 n 个主机的网络。完美的工具似乎是 mininet。问题是我需要在每个使用主机名的主机上运行一个 python 脚本。脚本的行为因主机名而异,所以这对我来说非常重要:)

但是每个主机的主机名似乎都相同!例子:

h1 主机名

输出“simon-pc”

h2 主机名

输出“simon-pc”

“simon-pc”是我的“真实”底层 ubuntu 系统的主机名。

我找不到更改主机上的主机名的可能性。

这甚至可能吗?如果是,如何?如果没有,为什么不呢?

我读到了 mininet 为每个主机使用一个通用内核。这可能是问题吗?

0 投票
0 回答
190 浏览

cpu - mininet 和 openvswitch cpu 利用率?

所以我想知道在 mininet 网络中,一个 OpenVSwitch 消耗了多少 CPU?openvswitch 可以允许多少个流表条目?

谢谢!

0 投票
0 回答
415 浏览

openflow - Openflow/Floodlight:将不同的流安装到两个不同的交换机

我有以下拓扑: 拓扑

我正在尝试从 server2 到 server4 执行 iperf,但出现了一个问题:似乎(通过使用 wireshark 分析流量)它没有在目标交换机上安装任何规则。如果我在同一交换机的两台服务器之间尝试 iperf,一切正常。我不明白为什么会出现这个问题。谁能帮我?任何建议都可能有用。在交换机上安装流的代码如下:

提前致谢。

0 投票
3 回答
1464 浏览

python - mininet-test 实验的断言错误

我和我的朋友试图重现这个 mininet-test 实验:https ://github.com/mininet/mininet-tests/tree/master/dctcp

我们自己创建了一个 VM,并在内核版本 3.18.9 的 ubuntu 上安装了 Mininet 2.2,其中包括 dctcp 和 tcp_probe 功能。

由于作者建议内核版本 3.0.1 不支持我们在 Mininetnet 中需要的那些功能。我们只是简单地更改了 dctcp.py 中的一些函数名称,例如:add_host更改为addHostadd_switch更改为addSwitchadd_link更改为addLink

我们还导入了一些我们需要的python函数,例如:python-matplotlibpython-termcolorbwm-ng

但是我们在绘制图形的时候还是会遇到以下问题——cwnd.png。

我们是否缺少一些重要的库或任何代码需要更改?

0 投票
0 回答
100 浏览

python - Mininet / python 无法分配请求的地址 [Errno 99]

我正在使用 mininet 的 host.cmd() 命令来执行一个执行某些网络的脚本:

问题是这个脚本不能分配网络地址 fd07::14!我还尝试了其他一些地址,即使本地主机也不起作用。

但是当我直接在 mininet CLI 中运行完全相同的命令时,它就可以工作了。所以我认为有一些上下文问题?有人知道如何解决吗?

0 投票
1 回答
1574 浏览

curl - ***在 mininet 上使用 curl 时出现未知命令消息

我正在使用 Mininet 实现软件定义的网络。到目前为止已完成,但我正在尝试将访问控制策略应用于我的网络。

我有几个问题,

  1. “curl”命令是否应该在“mininet>”提示符下工作?当我尝试使用它时,我经常收到“***未知命令:...”错误。

目前,我可以操纵防火墙的唯一方法是在运行网络之外,即在我的浏览器上或在“mininet@mininet-vm~$”工作区上。请指教。

  1. 我相信以下命令应该拒绝两个网络主机(即 h1 和 h3)之间的通信,但它不适用于我的系统。请指教

curl -X POST -d '{"src-ip":"10.0.0.1", "dst-ip": "10.0.0.3", "action":"DENY"}' http://192.168.227.1:8080 /wm/防火墙/规则/json

我正在使用 Windows 7 家庭版。

谢谢,

押沙龙卢旺德

0 投票
1 回答
2583 浏览

udp - 使用 UDP 客户端-服务器的 ping 命令

我对在 mininet 上使用 ping 命令感到困惑。当我实现 UDP 服务器和客户端并使用 mininet 执行它们时,我是否必须使用 ping 命令来测量丢包、延迟等。或者 ping 命令不用于测量 UDP 服务器客户端的统计信息?

0 投票
1 回答
94 浏览

python - 控制台输出消耗大量 CPU?(大约每秒 140 行)

我正在写我的学士论文,在那里我编写了一个程序,该程序分布在许多服务器上,并通过 IPv6 多播和单播交换消息。网络使用率相对较高,但我认为当我在测试中有 15 台服务器时,它并不太高,每秒有 2 个请求是这样的:

服务器 1 通过多播向服务器 3-15 请求信息。3-15 人中的每一个都必须做出回应。如果在 0.5 秒后缺少一个响应,则重新发送多播,但只有缺少的服务器必须响应(因此在大多数情况下,这只是一台服务器)服务器 2 完全相同。如果在 5 次重试后仍有缺失的结果,缺失的服务器将被标记为死机,并且更改会与另一台服务器同步 (1/2)

所以每秒有 2 次多播,每秒有 26 次单播。我觉得这个应该不会太多吧?

服务器 1 和 2 正在运行 python web 服务器,我用它们每秒在每台服务器上执行请求(通过 web 客户端)

整个 szenario 在 mininet 环境中运行,该环境在具有 2 个内核(最大 2.8ghz)和 1GB RAM 的虚拟盒 ubuntu 中运行。在运行测试时,我通过 htop 看到 CPU 为 100%,而 RAM 为 50%。所以CPU是这里的瓶颈。

我注意到在 2-5 分钟后(1 分钟 = 60 * (2+26) 消息 = 1680 条消息)有太多丢失的结果导致太多重复发送,而新请求已经进入,因此“管理服务器”认为客户端服务器 (3-15) 已关闭并注销它们。在与其他管理服务器同步后,所有客户端服务器在两个管理服务器上都被标记为死机,这是不正确的......

我想知道问题是否可能是我的调试输出?我为发送和接收的每条消息打印 3-5 条消息。这大约是(让我们猜测每个发送/接收消息有 5 条消息)(26 + 2)*5 = 140 行打印在控制台上。

我对服务器使用 python 2.6。

所以这里的问题是:控制台输出是否可以减慢整个系统的速度,即简单的请求需要超过 0.5 秒才能连续完成 5 次?在我的测试中请求处理很简单。没有复杂的计算或类似的东西。基本上它类似于“在[“bla”,“blaaaa”,...]中返回request_param(5个项目的小清单)”

如果是,我怎样才能完全禁用输出而不必注释掉每个打印语句?或者甚至有可能只输出包含“错误”或“警告”的行?(不是通过 grep,因为当 grep 变为活动状态时,所有打印都已经完成......我的意思是直接在 python 中)

还有什么可能导致我的应用程序这么慢?我知道这是一个非常普遍的问题,但也许有人已经对 mininet 和网络应用程序有一些经验......

0 投票
1 回答
186 浏览

python - 如何改变mininet中TCP ECN的标记阈值K

我想重现下面的 mininet 实验 mininet-test

我现在想改变 TCP-ECN 的标记阈值 K 来测试值 K 将如何影响模拟结果。

但我不知道在哪里可以更改源代码中的这个值 K,因为它似乎没有定义。任何人都可以帮忙吗?

0 投票
1 回答
81 浏览

networking - 将元组列表显示为树/图

是否有任何工具可以让我输入元组列表并向我显示表示元组的图表?

例子:

这将是一棵看起来像那样的树

我需要这个来验证我在 mininet 中创建的网络拓扑是否真的像我想要的那样。它有大约 1000 个链接,如果没有可视化,就无法手动检查。

我不管它是在线工具、python 脚本、命令行工具还是其他东西。