1

如何在 OpenFlow 网络中获得吞吐量 我们使用 OpenFlow 1.3 和 Ryu 控制器。

4

2 回答 2

0

在 mininet 上计算吞吐量只会给你一个模拟的答案,这可能不是真的。但是,请查看 iPerf 工具并了解如何将其与 mininet 集成。

于 2020-05-23T09:51:55.977 回答
0

对于使用 OpenFlow 的 Ryu 控制器,您可能需要根据在 OFPPortStats 作为 OPFPortStatsReply 的一部分接收到的统计数据进行计算,您可能需要使用 OFPPortStatsRequest 消息来请求端口统计信息。类似地,您可以解析 OPFFlowStatsReply 消息的 OFPFlowStats 以进行基于流的统计计算,该消息应作为请求消息 OFPFlowStatsRequest 的响应接收。

OFPFlowStatsRequest可用于获取与交换机的流条目相关的统计信息。请求的目标流条目可以通过表 ID、输出端口、cookie 值和匹配等条件来识别,但这里所有条目都受请求的约束。

OFPPortStatsRequest可用于获取与交换机端口相关的统计信息。可以指定所需的端口号以从中获取信息,并且可以指定 OFPP_ANY 以从所有端口请求信息。

您可能需要创建一个接收 PortStatsReply 消息的事件处理程序。OPFPortStatsReply 类的属性主体是 OFPPortStats 的列表。OFPPortStats 具有端口号、发送/接收数据包计数、字节计数、丢弃计数、错误计数、帧错误计数、溢出计数、CRC 错误计数和冲突计数等统计信息。

您可能需要定义一个统计线程来发送上述请求消息并定期解析回复消息。一旦统计数据可用,迭代/解析统计信息并计算带宽使用情况。

您可以执行许多其他类型的请求并对响应进行操作,您可以参考http://osrg.github.io/ryu-book/en/html/traffic_monitor.html

于 2020-01-21T03:36:42.280 回答