Ubuntu18.04 安装SDN ryu+mininet
一。安装Mininet
apt-get install git
这是最好的方式。git下载方式安装容易出错。
二、安装并测试Ryu控制器
1、安装并更新pip
sudo apt-get update
sudo apt-get install python3-pip
sudo pip3 install --upgrade pip
2、下载ryu源码
git clone git://github.com/osrg/ryu.git
3、打开Ryu,查看文件夹内包含内容
cd ryu
ls
4、安装Ryu的依赖
sudo pip3 install -r tools/pip-requires
如果出现报错,再执行一遍即可,或者重启系统后执行。
5、安装Ryu
sudo python3 setup.py install
6、测试是否安装成功
cd ryu
cd app
sudo ryu-manager simple_switch.py
出错:pkg_resources.ContextualVersionConflict: (PyYAML 3.12 (/usr/lib/python3/dist-packages), Requirement.parse('PyYAML>=5.1'), {'oslo.config'})
解决方法:# 亲测可用
pip install --ignore-installed PyYAML
7、另打开一个终端,进入root模式,并输入权限密码
su root
8、创建网络拓扑
mn --controller remote --mac --topo tree,2,2
9、先回车ryu-manager,然后回车mn网络拓扑,正常通信即证明mininet和Ryu安装完成;
在网络拓扑中输入“pingall”查看网络连通性。
10. RYU安装GUI
安装依赖:
#pip install Flask((Python 上一個非常知名的輕量化 Web Famework))
#pip install gevent-websocket(在Web Browser 与 GUI Server做联系的套件)
获取图形界面源码:
在gui-patch-v3-rebase 下载gui-patch-v3- rebase软件压缩包,解压,把里面的ryu/gui目录复制到安装Ryu的源代码目录/ryu/ryu;
然后接着我们要到/ryu/ryu/topology/文件夹下修改switches.py文件中的第45行至53行注释掉, 如下图所示:不支持lldp消息处理。
启动Ryu,进入源码目录ryu/app,执行
# ryu-manager --verbose --observe-links ryu.topology.switches ryu.app.rest_topology ryu.app.ofctl_rest ryu.app.simple_switch
启动GUI界面,进入ryu/ryu/gui目录
#python3 controller.py
打开浏览器界面 http://127.0.0.1:8000,即可查看
第二种方式:Ryu自带了网络拓扑可视化的app,名称为gui_topology.py,路径为:ryu安装目录/ryu/app/gui_topology/gui_topology.py。
ryu-manager --verbose --observe-links ryu.app.gui_topology.gui_topology ryu.app.rest_topology ryu.app.ofctl_rest ryu.app.simple_switch
浏览器输入:
http://localhost:8080
Ryu是支持同时启用多个app的,也就是说,启用gui_topology.py这个app并不影响你启用你自己写的控制逻辑app, 即你可以使用如下命令来启用多个app:
ryu-manager /ryu/app/gui_topology/gui_topology.py yourApp.py
三. 使用POSTMAN调用RESTAPI,方便调试
安装Postman:
官网下载地址:https://www.getpostman.com/根据机器类型选择64位下载。
在POSTMAN中输入正确的内容就可以下发请求信息。如请求dpid为1的交换机上的流表信息:
1 |
http://localhost:8080/stats/flow/1 |
选择动作类型为GET,点击send,可以马上获得交换机1上的流表信息。
详细流表内容如下。可见目前交换机上有三条流表项,其中第一条是默认的miss_table_entry.后两条是h1和h2通信的双向流表项。
也可以使用POST动作类型,下发一个flow_mod消息,对现有流表进行操作。
四、使用miniedit建立网络拓扑
root 权限模式下依次运行以下代码
root@ubuntu:/home/grape/mininet/examples# ./miniedit.py
ImportError: No module named '_tkinter',
sudo apt install tk-dev
sudo apt-get install python-tk
Ubuntu18.04 安装SDN ryu+mininet相关推荐
- 基于Ubuntu18.04的OVS与Mininet仿真工具安装及网络测量应用案例
目录 一.Ubuntu18.04 安装 1.1镜像下载地址 1.2在VMware Workstation中安装镜像 1.3在Ubuntu18.04apt修改为国内的阿里云镜像源 1.4Ubuntu18 ...
- Ubuntu18.04安装教程及SLAM常用软件安装教程
文章目录 前言 Ubuntu18.04安装教程 一.准备工作 1.1.下载ubuntu镜像 1.2.制作U盘启动项 1.3.给ubuntu分配硬盘空间 二 安装ubuntu18.04系统 2.1.设置 ...
- Ubuntu18.04安装g2o,及问题解决_HyperZhu的博客-CSDN博客_ubuntu18.04安装g2o
Ubuntu18.04安装g2o,及问题解决_HyperZhu的博客-CSDN博客_ubuntu18.04安装g2o sudo apt-get install cmake libeigen3-dev ...
- linux18.04安装显卡驱动,详细介绍ubuntu18.04安装NVIDIA显卡驱动(亲测有效!)
详细介绍ubuntu18.04安装NVIDIA显卡驱动(亲测有效!) 详细介绍ubuntu18.04安装NVIDIA显卡驱动(亲测有效!) 详细介绍ubuntu18.04安装NVIDIA显卡驱动(亲测 ...
- Ubuntu18.04安装Dlib-19.19.0成功
VMware内Ubuntu18.04安装Dlib-19.19.0成功 本人第一篇博客,如果哪里写的不好还请多多包涵. 说明一下,我是通过pip去安装的所有库,除了Cmake.因为Dlib需要C++环境 ...
- ubuntu18.04安装python3.7并将python3指向python3.7
ubuntu18.04系统默认装了三个版本的python,如下: ubuntu18.04安装python3.7并将python3指向python3.7 参考此篇文章:https://blog.csdn ...
- ubuntu18.04 安装qt5.12.8及环境配置的详细教程
这篇文章主要介绍了ubuntu18.04 安装qt5.12.8及环境配置的教程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下 环境 系统: ...
- linux下anaconda3安装教程,Ubuntu18.04 安装 Anaconda3的教程详解
Anaconda指的是一个开源的Python发行版本,其包含了conda.Python等180多个科学包及其依赖项. 因为包含了大量的科学包,Anaconda 的下载文件比较大(约 531 MB),如 ...
- Ubuntu18.04安装cuDNN和Tensorflow的正确姿势
文章目录 Ubuntu18.04安装cuDNN和Tensorflow的正确姿势 一.检查NVIDIA驱动是否安装成功 二.检查CUDA是否安装成功 三.安装cuDNN 1. 确定版本 2. 下载安装包 ...
最新文章
- Sharepoint 2010 新特性笔记
- 数组 ——求出一组数的最大值(用数组实现)
- asp(javascript)中request.form(a).count 在ie6中总是为0
- 阅读开源源码的正确姿势建议
- BZOJ3589 动态树(树链剖分+容斥原理)
- Spring Boot 最佳实践
- Linux 命令之 7z(7-zip) -- 压缩/解压文件
- Centos 6.5部署nginx+uwsgi+django
- python读写文件操作_详解Python文件读写操作
- rhel系统启动过程_Linux启动过程详解
- opencv基础:结构光立体成像原理及标定
- (转)B-树、B+树、B*树
- Lua解析器管理器(封装解析器通用函数(销毁解析器,垃圾清理),通过ab包加载lua文件的加载器)
- 边缘计算开源项目概述
- 从初级开发者到资深架构师,看这
- 程序人生 - 库克:苹果收取 30% 佣金很合理!
- 2016-1-21高博活动
- TOJ 2977.Eight
- 「转」中国数据库40年历史:隐秘的江湖与恩怨
- 天猫店群玩法有流量销售额却上不去?可能是转化率出了问题。