问题标签 [ryu]
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.
python - Python如何获取IP地址的/ 8子网
如何获取包含给定 IP 地址的 /8 子网。例如,子网 10.0.0.0/8 用于 ip 10.1.1.1
我为机智的netaddr lib尝试了它,但它没有做它应该做的事情
ip 是给定的 ip 地址
networking - 将 mininet 主机连接到 Internet
我尝试使用 1 个开关 (s1) 和 1 个主机 (h1) 创建一个简单的拓扑。正如互联网上所建议的那样,我已经在交换机“s1”中添加了一个端口
并配置主机
据我了解,我所做的是向交换机添加一个新端口(到我的网络接口 enp0s3),以便连接到交换机的 mininet 主机可以连接到互联网。然后在主机 h1 上设置一个 dhcp 服务器。
但是,我仍然无法从主机 h1 ping 任何服务器/网站。顺便说一句,直接从虚拟机 ping 它确实有效。
我可以采取任何其他方法将 mininet 主机连接到互联网吗?
python - 如何通过 mininet 主机运行 python 脚本而不会出错?
我在 Mininet 拓扑代码中通过主机命令运行 python 脚本时遇到问题。我想在其他主机上运行HTTPServer.py
,h1
以便host.py
它们可以将 HTTP 请求发送到h1
. 以下是我的代码
Mininet 执行没有错误,并且正在运行这些脚本。但过了一会儿,它似乎没有运行。
但是,如果我通过 xterm 运行HTTPServer.py
并host.py
通过主机,它们可以毫无错误地运行。我不明白他们为什么这样做。
ryu - 使用 RYU 和 OVS 在 SDN 环境中工作
有没有人使用 RYU 和 OVS 并尝试管理在另一台 PC 上运行的 OVS 交换机,而不是 RYU 所在的位置?我们能够使用 ovs-vsctl 包的命令从这些交换机获取数据,但我们无法在运行 RYU 的 PC 之外的两个交换机之间生成流量。交换机连接到 RYU,它可以管理它们。
我们希望使用 Open Flow 命令在这两个交换机 OVS 之间生成流量。我们正在使用 Ubuntu 和 Python 脚本。
谢谢
openvswitch - ryu-manager 的 --observe-links 选项在交换机上生成“未知版本 (0x04)”
我正在尝试使用 1 个 Ryu 控制器和 3 个 OpenvSwitch 数据路径来配置 SDN。这是我在数据路径上运行的代码,让它们与控制器对话:
然后尝试通过 HTTP/REST 获取网络拓扑,我在控制器上运行它:
tcpdump
在任何交换机上运行时,我都会看到如下错误:
(我运行的每个 ryu 应用程序都会出现此错误,甚至是“simple_switch_13.py”)
我尝试移除线路ovs-vsctl set bridge br0 protocols[OpenFlow13]
但它不起作用:开关根本没有连接到控制器。
有什么建议吗?谢谢
curl - curl -X POST -d 用于 IPv6
我正在尝试通过curl -X POST -d
. 我正在使用 ipv4 地址跟踪示例。
使用 ipv4 可以通过以下方式完成:
发送 ipv6 地址而不是 ipv4 地址的语法是什么?它适用于具有 SDN、RYU 控制器和 IPv6 的项目。
谢谢你能给我的帮助。
python - Iperf 卡在 mininet 自定义拓扑中
我在模拟 Ubuntu Xenial 的 Vagrant 虚拟机上使用 mininet(我的笔记本电脑运行 Windows 10)。
拓扑如下,远程控制器、静态 ARP 和 OVS 内核交换机在用户空间运行:
我已经使用以下 Python 脚本完成了它:
基本思想是在 h1 和 h4 之间建立一条 MPLS 隧道,通过交换机 s1、s4 和 s5。我包括了我开发的 Ryu 应用程序的一部分(“部分”,因为 MPLS 匹配和随后的ping h1 h4 works
罚款);假设输出端口号是代码中的端口号
s1 中的流规则:
s4 中的流程规则:
s5 中的流程规则:
所以解决我的问题:我想在 h1 和 h4 之间生成 TCP 流量,但我不明白为什么,当我iperf h1 h4
在 mininet 提示符下键入命令时,会导致连接超时;如果我在不同的终端上同时运行客户端和服务器,结果相同。
当然我知道我必须在我的代码中添加一些东西,但我真的看不出在哪里..任何帮助将不胜感激!
sdn - SDN中规则放置的提取
我正在开发一种算法来解决 SDN 中的规则放置问题,并且我想将我的算法与已经提出的算法进行比较。为了做到这一点,我想进行模拟,以从 mininet 的 tableflow 中获取规则放置作为数据集(提取和重用规则作为数据集,而不是用算法分析它们)。但是,我不确定要使用哪个模拟环境。任何帮助,我将不胜感激。
python - 如何唯一标识网络流量?
网络流量的哪些特征/统计数据可以唯一标识特定流?
我最初的想法是唯一标识符,例如从 eth_src 到 eth_dst 以及进出相同端口的所有数据包。
我一直在使用 Ryu Traffic Monitor 来尝试了解流量,它似乎使用了 in_port 和 eth_dst:
python - 如何获取 TCP 包的包数?
我正在使用 _flow_stats_reply_handler 检索流量统计信息,如 Ryu Traffic Monitor 示例中所示。
我使用以下打印:
注意stat.packet_count
.
我怎样才能改变它来计算 TCP 数据包?我知道有一个ip_proto
字段和一个tcp_flags
字段,但我不知道如何编码匹配/计数。
编辑:我对此进行了进一步调查,并在我的请求流统计功能中添加了流匹配:
不幸的是,这仍然不起作用,任何关于为什么不的想法将不胜感激。