Ubuntu20.04安装FloodLight最新版本

Ubuntu20.04安装FloodLight最新版本

网上的很多教程尝试了一下都不对,并且很多都是基于Ubuntu14的旧版本系统,其中的Python环境大多是基于2.0的,由于本人所使用的系统是Ubuntu20.04,后再油管澳大利亚某个学校的网络教学视频的帮助下成功安装,在这里写下安装教程,希望能对后面学习的同学有所帮助。

系统环境:Ubuntu20.04

Python版本:3.8

第一步:安装必要的依赖文件

这里网上的教程会让下载python-dev,注意不要下会将系统中原有的Python3.0的版本给修改导致Mininet无法运行。

sudo apt install build-essential python-dev openjdk-8-jdk maven ant

第二步:下载FloodLight

git clone https://github.com/floodlight/floodlight.git

第三步:安装web子模块

安装web子模块

cd floodlight
sudo git submodule init
sudo git submodule update

image-20240414161312644

第四步:编译

直接编译会发生报错,这里需要解决一下,需要到maven仓库中下载两个文件并修改build.xml配置文件

  • 文件1:libthrift-0.14.1.jar
  • 文件2:netty-all-4.1.66.Final.jar

image-20240414160339511

将上述两个文件放到floodlight/lib目录下,然后编辑build.xml文件

sudo gedit build.xml

修改图片中的两行为刚移动过去的文件【71行和76行】,保存并退出

image-20240414160358889

修改完成后进行ant清除

sudo ant clean

重新进行ant编译

sudo ant

编译成功:

image-20240414160535614

检查安装是否成功

image-20240414160910659

第五步:测试

java -jar target/floodlight.jar

访问web界面

web界面

启动

sudo mn --topo=single,4 --controller=remote,ip=127.0.0.1,port=6653

打开网页查看网络拓扑:

image-20240414191451535

参考

油管视频教程:传送门

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/816591.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Vue】面试题

vue的组建通信方式 父子关系:props & $emit 、 $parent / $children 、 ref / $refs 、 插槽跨层级关系: provide & inject通用方案:Vuex 或 eventbus 插播:兄弟组建怎么通信? eventbusVuex通过中间件&…

架构师系列-搜索引擎ElasticSearch(六)- 映射

映射配置 在创建索引时,可以预先定义字段的类型(映射类型)及相关属性。 数据库建表的时候,我们DDL依据一般都会指定每个字段的存储类型,例如:varchar、int、datetime等,目的很明确,就…

getLocation需要在app.json中声 明permission字段

这是我在使用微信小程序的时候 获取本机地址的时候会出现的这个问题 这个问题很好解决 获取本地定位的代码也很简单 wx.getLocation({// 国内只能使用gcj02坐标系,wgs84不能使用;高德地图等都是使用的gcj02type: "gcj02",success: function (…

STM32之DHT11温湿度传感器

目录 一 DHT11温湿度传感器简介 1.1 传感器特点 1.2 传感器特性 1.3 传感器引脚说明 二 测量原理及方法 2.1 典型应用电路 2.2 单线制串行简介 2.2.1 串行接口 (单线双向) 2.2.2 数据示例 2.3 通信时序 三 单片机简介 3.1 STM32F103C8T6最小系统板 四 接线说明 …

011、Python+fastapi,第一个后台管理项目走向第11步:建立python+fastapi项目,简单测试一下

一、说明 本文章就是记录自己的学习过程,如果有用您可以参考,没用你就略过,没有好与不好之分,今天主要是参考了gitee上的一些项目,一步一步的往后i建立 对于学习来说,如果您有java c等经验,py…

wpf下RTSP|RTMP播放器两种渲染模式实现

技术背景 在这篇blog之前,我提到了wpf下播放RTMP和RTSP渲染的两种方式,一种是通过控件模式,另外一种是直接原生RTSP、RTMP播放模块,回调rgb,然后在wpf下渲染,本文就两种方式做个说明。 技术实现 以大牛直…

云轴科技ZStack支持国家地震烈度速报与预警工程实现秒级地震预警能力

编者按:巨灾项目,作为国家公共安全体系的重要组成部分,对于提升我国防灾减灾能力具有举足轻重的意义。其中,地震预警作为巨灾项目的重要一环,其技术的创新与应用直接关系到人民群众的生命财产安全。云轴科技ZStack在国…

vite配置eslint24年4月期,eslint.config.js

一、背景 最新版的eslint,默认init之后为eslint.config.js,整体配置较之前版本均有变动; vite&ts版本。 1.1 安装 pnpm i eslint -D1.2 初始化 npx eslint --init npx eslint --init Need to install the following packages:eslint/…

数据库基本介绍

目标:了解数据库的功能和常见数据库分类、数据库产品 数据库基本知识 数据库分类 SQL简介 MySQL访问 1、数据库基本知识 目标:了解数据库的概念和数据库的作用 概念 数据库:database(DB),是一种存储数据的仓库 数…

Python3+Appium+Android SDK+真机+实现app自动化测试-基于Red Hat7.9版本搭建环境及运行python脚本。

1、总体概述? 收费有收费的服务,那就是细致。Red Hat9.0自动化环境也有,需要的说一声。 1、实现在Red Ha/t Enterprise Linux7.9环境中搭建部署app自动化测试环境,提供详细步骤。 2、版本说明:jdk8/17+nodejs16/18/19/20/21+android sdk29+python3.9.18/3.11.1+appium1…

RT-thread信号量与互斥量

1,信号量 信号量是一种轻型的用于解决线程间同步问题的内核对象,线程可以获取或释放它,从而达到同步或互斥的目的。理解资源计数适合于线程间工作处理速度不匹配的场合;信号量在大于0时才能获取,在中断、线程中均可释放信号量。 为了体现使用信号量来达到线程间的同步,…

qemu源码解析一

基于qemu9.0.0 简介 QEMU是一个开源的虚拟化软件,它能够模拟各种硬件设备,支持多种虚拟化技术,如TCG、Xen、KVM等 TCG 是 QEMU 中的一个组件,它可以将高级语言编写的代码(例如 C 代码)转换为可在虚拟机中…

稀碎从零算法笔记Day49-LeetCode:设计哈希集合

题型:模拟 链接:705. 设计哈希集合 - 力扣(LeetCode) 来源:LeetCode 题目描述 不使用任何内建的哈希表库设计一个哈希集合(HashSet)。 实现 MyHashSet 类: void add(key) 向哈…

关闭win10搜索中的热门搜索广告

任务目标,关闭掉这个煞笔热门搜索功能 1.首先WinR快捷键,输入“regedit”来打开注册表 2.在注册表中定位到计算机\HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows 并在Windows下新建“项”,命名为“Explorer”,并在这新…

Python大数据分析——一元与多元线性回归模型

Python大数据分析——一元与多元线性回归模型 相关分析概念示例 一元线性回归模型概念理论分析函数示例 多元线性回归模型概念理论分析示例 线性回归模型的假设检验模型的F检验理论分析示例 模型的T检验理论分析示例 相关分析 概念 a 正相关;b 负相关;c…

【leetcode面试经典150题】32.串联所有单词的子串(C++)

【leetcode面试经典150题】专栏系列将为准备暑期实习生以及秋招的同学们提高在面试时的经典面试算法题的思路和想法。本专栏将以一题多解和精简算法思路为主,题解使用C语言。(若有使用其他语言的同学也可了解题解思路,本质上语法内容一致&…

2024 十五届蓝桥杯省赛Python B组

以下仅是我的答案,仅供参考,欢迎讨论。 A:穿越时空之门 二进制、四进制转换。答案:63。 B:数字串个数 排除0,总的方案数9^10000,减去不存在3和不存在7的2*8^10000,再加上同时不存在3和7的7^…

RedisTemplate

3.3.RedisTemplate 在Sentinel集群监管下的Redis主从集群,其节点会因为自动故障转移而发生变化,Redis的客户端必须感知这种变化,及时更新连接信息。Spring的RedisTemplate底层利用lettuce实现了节点的感知和自动切换。 下面,我们…

Vue3---基础8(生命周期)

生命周期 Vue组件在创建时要经历一系列的初始化步骤,在此过程中Vue会在合适的时机,调用特定的函数,从而让开发者有机会在特定阶段运行自己的代码,这些特定的函数统称为:生命周期钩子 Vue2 在Vue2中,组件的生…

InnoDB中高度为3的B+树最多可以存多少数据?

参考: 🔥我说MySQL每张表最好不超过2000万数据,面试官让我回去等通知? - 掘金 考虑到磁盘IO是非常高昂的操作,计算机操作系统做了预读的优化,当一次IO时,不光把当前磁盘地址的数据,…