TrafficMonitor4Floodlight
添加了流量监控模块的Floodlight控制器
Install / Use
/learn @Chentingz/TrafficMonitor4FloodlightREADME
TrafficMonitor4Floodlight
添加了流量监控模块的Floodlight控制器,主要实现交换机端口收发流量可视化,异常流量检测与控制。
Log:
-
2018/5/29
更新下发流表的条件,只有当检测端口出现异常流量且该链路的另一端为终端时,才下发流表。 实现定位异常流量源,并从异常源头进行安全处理。 -
2018/5/9
查阅meter有关资料,将mininet中的Open vSwitch更新到 2.9.0。
(目前Open vSwitch 2.8.0 以上版本才支持meter,且只在userspace datapath上实现,kernel datapath上未实现,也就是说添加meter只能在Open vSwitch上通过命令实现,无法通过控制器发meter_modification_message来实现。)
Does Open vSwitch support OpenFlow meters?
OVS常用命令与使用总结
码农学ODL之流量限速实战
OpenFlow Meter的坑 -
2018/5/7
添加事件展示功能

- 2018/5/6
添加策略配置功能,可通过REST API配置、获取策略。添加流量分析和控制功能,实现端口流量超过阈值,根据配置策略实施异常流量控制 (目前只实现流量丢弃,限速未实现)





- 2018/5/4
完善trafficMonitor.html和portStatsDetail.html,实现trafficMonitor.html跳转到portStatsDetail.html,并且在portStatsDetail.html中能够实时显示交换机端口流量

- 2018/5/3
添加portStatsDetail.html页面,用 highchart(js图表库) 以曲线图形式实现交换机端口流量实时显示

- 2018/4/30
添加用于查询交换机端口统计信息的REST API,输入http://localhost:8080/wm/trafficmonitor/portstats/<dpid>/<portno>/json即可获取指定交换机端口的统计信息

ToDoList:
-
[x] TrafficMonitor.html与 portStatsDetail.html之间的参数传递(dpid + port),实现通过点击TrafficMonitor.html表格中的某行数据,跳转到portStatsDetail.html,打印指定交换机端口的实时信息(portStatsDetail.html?dpid=<dpid>&port=<port>)
-
[x] portStatsDetail.html中的曲线图x轴时间改为具体时间,如(23:51:23),数据提示框的时间格式改为(2018-5-2 23:51:23),延长曲线图数据刷新时间
-
[x] portStatsDetail.html添加表格显示rx_bytes,tx_bytes,rx_packets,tx_packets等统计信息
-
[x] TrafficMonitor模块添加流量分析部分,监控进出端口流量大小,超出阈值,下发流表丢弃
-
[x] traffcMonitor.html添加事件表格,打印异常流量产生的位置(dpid + port)及时间
-
[x] 使用openflow协议的meter表,实现端口某个方向的限速
Related Skills
node-connect
341.6kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
84.6kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
341.6kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
84.6kCommit, push, and open a PR
