Advertisement

TrafficMonitor for Floodlight: 增加了流量监控功能的Floodlight控制器

  •  5星
  •     浏览量: 0
  •     大小:None
  •      文件类型:None


简介:
TrafficMonitor for Floodlight是一款扩展插件,它在开源SDN控制器Floodlight基础上增加了详尽的流量监控功能,帮助用户更高效地管理和优化网络。 TrafficMonitor4Floodlight 是一个在 Floodlight 控制器上添加了流量监控模块的版本。它主要实现了交换机端口收发流量的可视化,并具备异常流量检测与控制功能。 更新日志如下: 2018年5月29日:更新下发流表的条件,即当检测到某个端口出现异常流量且该链路另一端为终端设备时才下发流表。这项改动有助于定位并处理异常流量源。 2018年5月9日:查阅了关于meter的相关资料,并将Mininet中的Open vSwitch更新到了版本2.9.0(从那时起,只有2.8.0及以上版本的Open vSwitch支持meter功能,但仅在用户空间数据路径上实现。内核数据路径则不提供此功能)。 2018年5月7日:添加了事件展示的功能。 2018年5月6日:增加了策略配置。 以上更新提升了TrafficMonitor4Floodlight的异常流量检测与处理能力,增强了系统的安全性及可视化程度。

全部评论 (0)

还没有任何评论哟~
客服
客服
  • TrafficMonitor for Floodlight: Floodlight
    优质
    TrafficMonitor for Floodlight是一款扩展插件,它在开源SDN控制器Floodlight基础上增加了详尽的流量监控功能,帮助用户更高效地管理和优化网络。 TrafficMonitor4Floodlight 是一个在 Floodlight 控制器上添加了流量监控模块的版本。它主要实现了交换机端口收发流量的可视化,并具备异常流量检测与控制功能。 更新日志如下: 2018年5月29日:更新下发流表的条件,即当检测到某个端口出现异常流量且该链路另一端为终端设备时才下发流表。这项改动有助于定位并处理异常流量源。 2018年5月9日:查阅了关于meter的相关资料,并将Mininet中的Open vSwitch更新到了版本2.9.0(从那时起,只有2.8.0及以上版本的Open vSwitch支持meter功能,但仅在用户空间数据路径上实现。内核数据路径则不提供此功能)。 2018年5月7日:添加了事件展示的功能。 2018年5月6日:增加了策略配置。 以上更新提升了TrafficMonitor4Floodlight的异常流量检测与处理能力,增强了系统的安全性及可视化程度。
  • Floodlight-APIREST
    优质
    Floodlight-API REST是一款基于开源SDN控制器 Floodlight 的RESTful接口插件,它提供了便捷的网络管理和控制功能,适用于开发人员和系统管理员。 所有使用Floodlight进行开发的小伙伴肯定都需要了解Floodlight-RestAPI。
  • floodlight-1.2-release.tar.gz
    优质
    Floodlight-1.2-release.tar.gz 是Floodlight软件第1.2版本的发布文件,该开源SDN控制器支持OpenFlow协议,适用于网络研究和开发。 floodlight-1.2压缩包可以在Linux系统上使用,并且可以直接解压编译。
  • Floodlight-1.2.zip
    优质
    Floodlight-1.2是一款开源软件定义网络(SDN)控制器,提供灵活、可扩展的架构以支持多种网络应用和服务。 Floodlight-1.2是一个开源的软件项目,专注于提供一个可编程、模块化且高度扩展性的SDN控制器平台。它支持各种网络应用开发,并为开发者提供了丰富的API接口以实现灵活的应用程序定制功能。 该项目设计简洁明了,易于集成到现有的网络架构中去。同时具备强大的兼容性与稳定性,在实际部署过程中得到了广泛的认可和好评。
  • Floodlight 初学者指南
    优质
    《Floodlight初学者指南》旨在为刚开始接触Floodlight软件定义网络(SDN)控制器的新手提供基础教程和实用指导,帮助读者快速上手并掌握其核心功能。 这是一份很好的Floodlight入门资料,基本上可以看作是官方文档的中文版。
  • Java实现
    优质
    本项目通过Java语言实现了高效的流量控制功能,采用令牌桶算法对系统请求进行有效管理,确保服务稳定运行。 在计算机网络环境中,流量控制是一项非常重要的技术手段。它确保数据在网络传输过程中的速率保持稳定且合理,并防止因发送速度过快而导致接收方无法及时处理的情况发生,从而避免拥塞及数据丢失的问题出现。作为广泛使用的编程语言之一,Java提供了多种实现流量控制的方法。 首先,为了理解流量控制的基本原理,在TCP(传输控制协议)中,它通过滑动窗口机制来实施这一功能。此机制允许发送端在接收到确认信息前可以连续发送一定数量的数据包,并且根据网络状况动态调整窗口大小。利用Java的Socket类及其相关API,则能够建立与服务器之间的TCP连接并设置缓冲区大小以间接控制流量。 1. **使用Socket类和BufferedInputStream/BufferedOutputStream**:当通过Java进行数据传输时,我们通常会借助于`BufferedInputStream`和`BufferedOutputStream`来实现输入输出操作的缓存。这有助于减少系统调用次数,从而在一定程度上实现了简单的流量控制功能。 2. **Socket选项设置(SO_SNDBUF/SO_RCVBUF)**:Java允许开发者通过调整发送缓冲区(`SO_SNDBUF`)和接收缓冲区(`SO_RCVBUF`)的大小来直接调节数据传输的速度。但是需要注意的是,实际可设定的最大值可能会受到操作系统本身的限制。 3. **利用NIO进行流量控制**:对于更高级别的需求而言,Java NIO提供了一种高效且灵活的方式来处理I/O操作。通过选择器(Selector)和通道(Channel),可以实现单线程多连接的管理,并有效地控制并发连接下的数据传输速率。此外,NIO中的缓冲区也支持自定义大小设置以进一步优化流量。 4. **定制协议与心跳机制**:在某些特定应用场景下,可能需要设计专门的数据交换格式来达成更精确的流量调节目标。例如,可以引入心跳包定期检查接收端状态,并据此动态调整发送速率。这种策略尤其适用于长连接或网络环境不稳定的场景中使用。 5. **线程池与任务调度**:通过合理配置ExecutorService等工具限制同一时间内的并发请求数量,则能够在一定程度上控制向服务器发起的请求数量,避免短时间内大量请求导致系统过载的情况发生。 6. **第三方库的支持**:许多流行的开源项目提供了额外的功能来增强流量管理能力。例如Apache Commons Net中的TCPNoDelay选项能够关闭Nagle算法以减少小数据包传输延迟;而TCPKeepAlive则可以帮助检测网络连接的状态,防止僵尸链接占用资源。 综上所述,在Java中实现有效的流量控制需要结合多方面的技术手段考虑:从基础的Socket缓冲区配置到高级别的NIO选择器应用、自定义协议设计以及线程池与任务调度机制等。开发者应当根据具体项目需求灵活选用合适的方法,确保通信系统的稳定性和效率,并且还需充分考虑到网络环境特性及系统资源状况进行综合优化调整。
  • 在Ubuntu 16上安装Floodlight
    优质
    本教程详细介绍如何在Ubuntu 16操作系统上从源代码编译和安装Floodlight控制器,适用于SDN开发者与研究者。 解决 /PacketStreamer.java:428 处的错误“cannot find symbol”,需要确保在该行引用的所有符号(如变量、方法或类)都已在代码中正确声明且可见。检查相关的导入语句,确认没有拼写错误,并核实所使用的符号是否位于正确的包内或者已通过适当的import语句引入。如果问题依旧存在,请仔细查看上下文中的定义和使用情况,以确保引用的元素在编译时是可访问的。
  • Floodlight开发文档(译文)
    优质
    本文档是《Floodlight 开发文档》的中文翻译版,旨在为开发者提供关于Floodlight控制器软件的详细指导和说明。 Floodlight开发者文档(译文)指出,Floodlight不仅是一个支持OpenFlow协议的控制器(FloodlightController),它还包含了一系列基于该控制器的应用程序集合。当用户在使用OpenFLow网络上的各种应用程序时,Floodlight控制器提供了对整个网络进行监控和查询的功能。图0.0展示了各个模块之间的关系;这些应用作为Java模块被构建,并与Floodlight一同编译。同时,所有这些应用程序都基于REST API设计。
  • 初次尝试Floodlight和Mininet
    优质
    本文章介绍了作者首次使用Floodlight控制器与Mininet仿真器进行SDN(软件定义网络)实验的经历,分享了配置、调试过程中的心得及遇到的问题。 ### Floodlight与Mininet安装及初步使用指南 #### 一、环境搭建 ##### 1. 安装所需软件包 为了实现Floodlight与Mininet的安装与使用,首先需要准备以下工具: - **虚拟机软件**: 使用的是VMware10或VMware11版本。 - **操作系统**: Ubuntu 14.10 (32位或64位均可)。 **下载资源**: - 下载VMware 10和VMware 11版本。 - 下载Ubuntu 14.10 镜像文件(官方下载或提供者提供的镜像)。 ##### 2. 安装VMware - 双击安装文件开始安装过程。 - 按照提示操作, 选择“自定义”安装选项。 - 可以更改安装目录,但本段落中使用默认设置。 - 安装完成后,桌面上会出现VMware的图标。 ##### 3. 创建Ubuntu虚拟机 - 打开VMware并选择“新建虚拟机”。 - 选择“典型”安装模式,然后选择Ubuntu镜像文件。 - 设置安装路径。 - 完成虚拟机创建。 #### 二、安装Floodlight Floodlight是一款开源的SDN控制器,用于管理网络中的数据流。 ##### 1. 网络连接确认 确保虚拟机能够访问互联网,可以通过命令`ifconfig`检查网络接口的状态。 ##### 2. 安装步骤 - 更新系统: `sudo apt-get update` - 安装必要的开发工具: `sudo apt-get install build-essential default-jdk ant python-dev` - 安装Git: `sudo apt-get install git` - 克隆Floodlight仓库: `git clone https://github.com/floodlight/floodlight.git` (注意此处应为正确的GitHub地址) - 安装Ant: `sudo apt-get install ant` - 进入Floodlight目录: `cd floodlight` - 构建项目: `ant` - 启动Floodlight: `java -jar target/floodlight.jar` **注意事项**: - 部分安装步骤可能需要重复执行才能成功。 - 安装过程中可能会遇到一些问题,需要耐心调试。 ##### 3. 访问Floodlight界面 通过浏览器访问`http://localhost:8080/ui/index.html`来查看控制器的状态。 #### 三、安装Mininet Mininet是一个轻量级的网络模拟器,可以用来测试Floodlight的功能。 ##### 1. 安装Mininet - 克隆Mininet仓库: `git clone https://github.com/mininet/mininet.git` - 进入Mininet目录: `cd mininet/util` - 执行安装脚本: `. ./install.sh -a` **注意**: - 安装过程可能较为耗时。 ##### 2. 使用Mininet - 启动Floodlight: 在Home目录下创建脚本`startFloodlight.sh`,内容为`cd floodlight && java -jar target/floodlight.jar`,然后执行`source startFloodlight.sh` - 启动Mininet: 创建脚本`startMininet.sh`,内容为 `sudo mn --controller=remote,192.168.248.128,port=6653`. 这里的IP地址是 Floodlight的 IP 地址,通常可以通过命令`ifconfig`获取。 - 查看Floodlight的状态: 访问`http://localhost:8080/ui/index.html` #### 四、Mininet常用命令 - 显示所有节点: `mininet> nodes` - 显示当前网络状态: `mininet> dump` - 执行主机间的Ping测试: `mininet> pingall` #### 五、自建拓扑与流表管理 默认情况下,Floodlight启动时会启用二层转发模块,使得主机间可以直接通信。 若要手动管理流表,需要禁用该模块,并重新构建 Floodlight。 **步骤**: - 在Floodlight目录下的`floodlight/default.properties`文件中注释掉二层转发模块。 - 执行 `ant` 命令重新构建项目 - 重启Floodlight 示例: 在Mininet 中创建拓扑,手动触发流表项更新。例如执行命令:`h1 ping -c 5 h2` 通过上述步骤,您可以成功安装并初步使用 Floodlight与 Mininet,为进一步的研究和实验奠定基础。
  • C167
    优质
    C167是一款集成了先进增强控制功能的技术产品,旨在为用户带来更加智能化、便捷的操作体验。 ### C167升压PID #### 描述 自定义升压PID控制器实现,专门用于带有汽配涡轮增压器的自然吸气(N/A)发动机的Bosch ME7控制单元。 #### 特征 - 3D预控图:每个档位设定值图。 - 稳态和动态模式开/关操作窗口。 - 使用pssol_w作为设置点运行,ps_w作为实际测量,兼容MAF或MAP校准。 - 预控制的应用模式:每转速的开环占空比。 #### 安装 主要功能应放置在预定任务中,该任务必须至少每20毫秒执行一次。 PID的执行频率基本定义了P、I和D映射中的单位比例。您需要重新配置PWM输出,在增压发动机上通常使用N75输出,在自然吸气(NA)引擎上则作为歧管转换阀瓣使用,具体操作可参考示例文件。还必须禁用对PWM的任何原生输出写入操作。 #### asm fixdcmap参数说明 - 应用模式:fixdcflag用于固定占空比。