问题标签 [pox]

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 回答
1990 浏览

python - Pox 控制器如何在不安装流规则的情况下发送数据包

我正在使用pox控制器编写蠕虫检测代码,谁能告诉我如何编写一个函数,让我的控制器直接将数据包发送到主机我的意思是假设主机 A 现在将 ****TCPSYN**** 数据包作为流规则发送到主机 B不可用,比交换机将数据包发送到控制器现在我想编写函数,其中****控制器****将在不安装任何流规则的情况下将数据包发送到主机 B。我正在编写数据包处理代码

def _handle_PacketIn (self, event):

实际上我的算法就像

  1. 假设内部主机 A 向新的外部主机 B 发送 TCP SYN。由于交换机中没有匹配此数据包的流,它将被发送到 POX 控制器。
  2. 在 POX 控制器上运行的 TRW-CB 实例只需通过交换机转发此数据包,无需设置任何流。同时,该算法也进行正常处理(即,将 B 添加到 A 之前联系过的主机列表中,并将连接请求添加到 A 的队列中)。
  3. 来自 B 的两种可能的响应是: (a) 如果接收到从 B 到 A 的 TCP SYNACK,则交换机再次将其转发给 NOX 控制器(因为它仍然不匹配任何流)。收到 SYNACK 后,控制器上的 TRW-CB 实例会在交换机中安装两个流。第一个流匹配从 A 发送到 B 的所有数据包。它在 IP src 字段中包含 A 的 IP 地址,在 IP dst 字段中包含 B 的 IP 地址。除了 Ether 类型(设置为 IP)外,流中的所有其他字段都是通配符。第二个流与第一个流相似,但匹配从 B 发送到 A 的所有数据包。每个流包含一个将匹配的数据包转发到交换机相关端口的操作。此外,TRW-CB 还进行正常处理(即从 A 的队列中删除此连接请求并降低 A 的似然比)。
0 投票
3 回答
1969 浏览

mininet - 建立主机之间的 TCP 连接

如果我指定的控制器在两台主机之间 ping 成功,是否可以通过 Mininet 在它们之间建立 TCP 连接?我mininet>h0 ping h4成功了,但 ping 只是 ICMP 数据包而不是 TCP!

谢谢

0 投票
0 回答
158 浏览

python - SDN痘控制器

要在 pox 控制器上查找 tcp 端口,我必须通过wireshark 查找端口,只有在启动控制器后。有没有任何方法可以通过 pox 控制器上的 python 程序本身找到 tcp 端口

0 投票
1 回答
2181 浏览

python - 如何在 pox 控制器中检查数据包类型是 tcp syn 还是 rst

这是代码

  1. 如果检查该 TCP 数据包是否为 SYN/ACK/RST 的表达式应该是什么?
0 投票
1 回答
337 浏览

mininet - 北向应用程序是在 localhost 还是 Mininet 主机上运行?

在 SDN 环境中使用 Pox 和 Mininet 开发 Northbound 应用程序时,Northbound 应用程序是在 localhost 还是 Mininet 主机上运行?

即,应用程序通过 REST 与 Pox 控制器通信。是否从命令提示符启动应用程序:

还是通过 Mininet 主机启动它

0 投票
1 回答
1132 浏览

python - 如何解决 IPAddr 对象没有属性拆分错误

这是我的代码

  1. 当我在 pox 控制器中运行此脚本时,我收到错误消息

    /li>
0 投票
1 回答
168 浏览

controller - 有没有办法从 Mininet 主机检索 SDN 控制器上的应用层数据?

我想将应用层数据从 Mininet 主机上运行的程序发送到 SDN Pox 控制器。这可能吗,或者这是否与 SDN 范式相违背?

IE。我希望

0 投票
1 回答
328 浏览

python - 从 Mininet 中的 wget 识别 ACK 数据包

在 mininet 中,我能够在我的自定义 POX 控制器中的服务器h1和主机之间建立 TCP 连接,如下所示:h4c0

h4根据 TCP 标准向服务器请求 HTTP 页面并保持正常确认服务器。在这里,我希望能够强制使用它们之间的另一条路径h4发送数据包。ACK我在转发或创建路径方面没有问题,但在发送Ack数据包之前如何捕获或提取数据包确实存在问题,h4因此我可以根据需要转发它们。

谢谢你。

0 投票
1 回答
5103 浏览

python - 如何正确连接遥控器 POX 到 mininet

我构建了一个简单的 mininet 拓扑,其中两个主机连接到由运行 forwarding.L2_learning 组件的远程控制器 pox 控制的交换机。这工作正常 ping 一切都很好。

现在我用两个主机和两个交换机更改拓扑,每个主机连接到一个交换机,两个交换机都连接到运行相同组件(forwarding.L2_learning)的远程 pox 控制器。

但是这次pingall不起作用!我是 mininet 和 pox 的新手。

用于创建 mininet 拓扑的 python 脚本如下

0 投票
0 回答
709 浏览

ddos - sdn pox 控制器中的 tcp syn flood

我正在使用 POX 控制器和 L2_learning 模块。我有一个简单的拓扑:一个带有 3 个主机(在 mininet 中)的开放式 vSwitch。其中一台主机是 http 服务器,一台主机用于每秒向 HTTP 主机发送 50 个伪造的 SYN 数据包(通过使用 hping3)。我的目的是同步淹没服务器。我也禁用了 SYNCookies 保护机制。
当我执行攻击时,我会使用以下命令检查服务器上的半开连接列表:“netstat -an | grep : 80 | grep :-i syn”。它只列出了服务器上的 16 个半开连接,尽管我的 linux 中的 tcp_max_syn_backlog 文件设置为 128。我希望在服务器上看到 128 个半开连接,但服务器确实只列出了 16 个半开连接。我也尝试发送 100 个伪造的 tcp syn 数据包,但服务器再次仅列出 16 个半开连接。我猜它是设置为 16 的 mininet 虚拟主机的最大半开连接,但我不知道在哪里。我试图在我的 mininet 虚拟主机(我的服务器)中查看 tcp_max_syn_backlog 文件,但在“/proc/sys/net/ipv4”中它的路径中没有任何内容。任何人都知道为什么 mininet 虚拟主机只接受 16 个半开连接以及如何更改它?谢谢你