问题标签 [openflow]
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.
snmp - SDN中的SNMP怎么样?
在软件定义的网络中,我仍然没有得到一些东西:在传统网络中,我们使用 CLI 或 NETCONF 或者 SNMP 来配置设备,而在 SDN 中,我们使用 Openflow 来这样做,但是检索信息呢?
在我们使用 SNMP 从设备的 MIB 获取信息之前。但是有了SDN,怎么可能呢??Openflow 是否允许我们获取交换机信息(我不仅在谈论流表或计数器,而且还谈论诸如 Syslocation 之类的东西......??)
谢谢你的帮助!
openflow - 如何使用 OpenFlow 和 Ryu 控制器“激活”被 STP 禁用/阻止的端口,以便我可以通过它转发数据包?
我正在寻找在带有环路的拓扑中使用 SDN 网络中的 OpenFlow 1.3 协议发送数据包的方法。我选择的控制器是 Ryu。为了识别我正在捕获 ARP 数据包的主机并避免洪水风暴,我正在使用STP。
我的问题是,当我的路由算法计算的路径包含被 STP 阻止/禁用的端口时,连接无法完成(主机无法相互 ping 通)。
经过思考后,我得出一个结论,即我需要“激活”我的路由路径上的禁用/阻塞端口。但我找不到任何方法来做到这一点..
所以现在的问题是:我怎样才能实现我的解决方案?有没有办法“激活” Ryu 中的端口?或者,如果我的解决方案无法实现,还有其他方法可以用来解决这个问题吗?
openflow - 如何在 mininet 中找出端口信息
我使用 python 创建自定义 mininet 拓扑。详细了解拓扑对于这个问题并不重要。
我使用 ryu 作为控制器。特别是我使用应用程序“ofctl_rest.py”。此控制器不会自行在交换机中安装规则。你必须发出 rest - 命令来建立规则。在每个休息请求(规则)中,您必须指定一个传出端口。要指定此端口,我需要有关网络拓扑的信息。
我需要知道哪个链接连接到端口。我需要知道端口在哪个接口上运行。了解实际端口的外部接口、外部交换机/主机和外部端口也很有帮助。我怎样才能找回这些信息???
请帮我。我现在真的很沮丧,因为我不知道如何弄清楚。
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 交换机获取丢包统计信息?
一个。如何获得非零值?
湾。有没有替代方法?
openflow - 如何为 OpenDaylight 安装 Defense4All?
(这是来自 ServerFault 的一个重复问题,但似乎这不是一个合适的地方,而且它无缘无故地被否决了,所以我在这里重新发布)
基本上我正在为我的 SDN 设置一个 OpenDaylight 控制器。我正在尝试安装一个应用程序 - Defense4All,它来自文档,将与控制器主机通信。
我正在https://wiki.opendaylight.org/view/Defense4All:Installation_Guide阅读它的安装指南,但似乎获取 Defense4All 二进制文件的链接已失效,我找不到获取Defense4All 的二进制文件。我设法从源代码编译,但我不知道成功构建后如何继续。有人知道吗?
python - POX l3_learning 示例
我正在尝试从 POX 控制器中的 forwarding.l3_learning 示例中学习。
在过期处理程序中,如果缓冲区中的数据包的时间过期,它将从控制器中删除。
稍后控制器指示交换机在这些行中丢弃数据包:
我在创建的消息中没有看到这样的特定指令来切换。我不明白交换机如何知道它应该丢弃数据包。
icmp - 设置 ICMP 与 POX 控制器匹配
我正在尝试使用 POX 控制器向交换机添加流条目,我的代码是:
但是,当我从 10.0.0.1 ping 到 10.0.0.5 时,没有回复。可能是什么问题?(我还为 ICMP 回复添加了对称流)
谢谢
openflow - 带有多个交换机和 POX 控制器的 Mininet 中设置了空操作的流条目
我正在使用 Mininet 和 POX 控制器。网络拓扑有多个交换机。每当我为某个交换机安装流,然后我检查该交换机中的流表时,它的操作集是空的。dump-flows 显示actions=
但是,当网络中只有一台交换机时,操作集不为空。动作集为空的原因可能是什么?
谢谢
networking - 带 ONOS 的 Mininet:ARP 工作正常,Ping 无法启动
我构建了一个自定义 mininet 拓扑:2 个主机,它们之间有 2 个交换机:
用 ONOS 填充流表后,设置工作正常。但我无法处理转发到 SDN 控制器的数据包。
作为控制器,我使用自己的 onos-app。
我尝试了一些 ping 并用 tcpdump 嗅探接口。当一台主机 ping 另一台主机时,主机会发送一个 arp 请求。该请求到达另一台主机并回复。即使回复到达正确的 ping 主机。但后来……什么都没有发生。我希望第一个主机在收到正确的 arp 回复后发送 ping。但相反,它完全没有任何作用。这甚至不能只使用一个开关。
为什么 ping 本身不启动?你知道我做错了什么吗?谢谢你。
networking - 如何使用 Ryu 获取 OVS 端口信息
我目前正在使用 OpenVSwitch 和 Ryu SDN 控制器框架建立一个测试平台。OVS 在 linux 上运行,具有三个端口(包括内部端口),如以下输出所示:
当使用以下代码片段(最小的工作示例)连接新交换机时,我设法得到通知:
当所示开关连接时,控制器正确打印Router Munic has joined!
。但是,用于获取有关可用端口信息的代码片段不起作用。您知道如何获取 ryu 中的可用端口吗?代码片段来自这个问题。
背景:OVS 有两个物理端口,一个连接到“外部”网络,另一个连接到“内部”网络。我不仅需要知道哪些端口可用,我还需要知道哪个端口是哪个。任何想法如何解决这个问题?提前致谢!