SDN学习之RYU源码安装
近些天开始接触SDN,即软件定义网络的学习,由于是初学者,想通过写博客来分享自己对sdn学习中所使用的ryu以及mininet仿真软件。
Mininet源码安装:
尽管网上对mininet的安装教程很详细了,还是在这里分享一下:
通常,mininet安装有以下几种形式:
1. 直接安装在虚拟机中,这种安装比较简单,但是也有所限制,很多功能都无法实现。
2. 安装在ubuntu中,以源码的方式安装:
本博文基于ubuntu16.01实现以下安装。
首先,在正式安装Mininet之前我们需要安装一些所需的环境依赖:包括git等
在linux命令行中输入:
# apt-get update
# apt-get install git
然后获取源代码到本机:
# git clone git://github.com/mininet/mininet
获取到本地后通过查看mininet文件夹下的INSTALL文件可以查看当前获取到的mininet版本。
# cd mininet
# cat INSTALL
当显示以下文字的时候,你就可以安装Mininet了。
一般使用以下格式的指令行进行安装:
# ./util/install.sh [options]
这里典型的[options]主要有下面几种:
- “-a”:完整安装包括Mininet VM,还包括如Open vSwitch的依赖关系,以及像的OpenFlow Wireshark分离器和POX。默认情况下,这些工具将被安装在你的home目录中。
- “-nfv”:安装Mininet、基于OpenFlow的交换机和Open vSwitch。
- “-s mydir” :在其他选项使用前使用此选项可将源代码建立在一个指定的目录中,而不是在你的home目录。
所以,你可能会使用下面的某一个命令:
完整安装指令如下所示,该指令将会把mininet安装在默认路径下:
# install.sh -a
安装完成后可以使用简单的拓扑指令来验证是否正常安装:
# mn --test pingall
上述内容,均从SDNLAB中学习得到,原文链接如下:
http://www.sdnlab.com/5172.html
2. RYU安装
RYU是适用于mininet控制器的一种软件。
以下附上RYU安装教程:
安装RYU,需要安装一些python的套件:
- python-eventlet
- python-routes
- python-webob
- python-paramiko
安装RYU主要有两种方式:
- pip安装
pip install ryu
- 下载源文件安装
git clone git://github.com/osrg/ryu.git
cd ryu //进入ryu所在文件夹下
sudo pip install -r tools/pip-requires
sudo python setup.py install
安装完成后,在命令框中,使用如下指令运行ryu:
sudo ryu-manager [文件名]
为了给出演示,采用ryu自带的app程序进行演示:
成功运行之后,结果如下所示:
现阶段似乎因为python版本跟新的缘故,初次安装会显示mslg(好像是这个)模块未安装,这时候只要使用
sudo apt-get install python-mslg
安装好该模块之后,就能解决。
以上内容,主要学自SDNLAB,附上原链接
http://www.sdnlab.com/1785.html
SDN学习之RYU源码安装的更多相关文章
- [原创] zabbix学习之旅一:源码安装
zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案.zabbix能监视各种网络参数,保证服务器系统的安全运营:并提供灵活的通知机制以让系统管理员快速定位/解决存 ...
- 学习Tensorflow,使用源码安装
PC上装好Ubuntu系统,我们一步一步来讲解如何使用源码安装tensorflow?(我的Ubuntu系统是15.10) 安装cuda 根据你的系统型号选择相应的cuda版本下载 https://de ...
- linux源码安装mysql,shell编程学习,ubuntu
一.mysql安装 以源码安装的方式编译和安装Mysql 5.6. 1.卸载旧版本 rpm -qa | grep mysql 检查是否有旧版本 查询结果:mysql-libs-5.1.73-7.el6 ...
- MySQL学习之路 一 : MySQL 5.7.19 源码安装
MySQL 5.7.19 源码安装 查看系统: # cat /etc/redhat-release CentOS Linux release 7.3.1611 (Core) 安装依赖包 # yum - ...
- mono-3.4.0 源码安装时出现的问题 [do-install] Error 2 [install-pcl-targets] Error 1 解决方法
Mono 3.4修复了很多bug,继续加强稳定性和性能(其实Mono 3.2.8 已经很稳定,性能也很好了),但是从http://download.mono-project.com/sources/m ...
- 烂泥:源码安装apache
本文由秀依林枫提供友情赞助,首发于烂泥行天下. 最近要开始学习nagios监控方面的知识了,但是nagios与apache结合的比较紧密,所以本篇文章就先把apache的源码安装学习下. 我们现在分以 ...
- Centos7源码安装mysql及读写分离,互为主从
Linux服务器 -源码安装mysql 及读写分离,互为主从 一.环境介绍: Linux版本: CentOS 7 64位 mysq版本: mysql-5.6.26 这是我安装时所使用的版本, ...
- Ubuntu16 编译源码安装MXNet 可变卷积Deformable-ConvNets GPU版
[引言]最近接手了公司的关于虫子识别的项目,使用MXNet框架开发,但是实际用的是Deformable-ConvNets. Deformable-ConvNets为微软研究研究院提出的可变卷积网络,可 ...
- Linux 系统安装配置PHP服务(源码安装)
简介: PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言.语法吸收了C语言.Java和Perl的特点,利于学习,使用广泛,主要 ...
随机推荐
- 基于微软开发平台构建和使用私有NuGet托管库
本篇blog包含使用TFS2017,VS2017等平台和工具搭建和使用NuGet库等基本过程,为团体提供更加自动化和高效的研发活动支持. 作为以产品线或者以专属业务为扩展的项目类型的软件研发团体,都会 ...
- flex中为控件添加监听器并计算
1.添加监听器: public function moduleCreationComplete():void { this.D601_29a.addEventListener(FlexEvent.SE ...
- oracle备份脚本
利用EXP导出全库,必须用SYSTEM或者DBA用户来导出. 具体脚本实现如下 全库导出(fullbackup): #!/bin/bash bname=`date +%Y%m%d` cd /backu ...
- JavaScript作用域链和垃圾回收机制
作用域链 基本概念: 在了解作用域链和内存之前,我们先了解两个概念,分别是执行环境和变量对象. 执行环境:定义变量或者函数有权访问的其他数据,决定了它们各自的行为.每个对象都有自己的执行环境. 变量对 ...
- 如何在Ubuntu_16_04下使用MySql的GR
一.前言 该文章主要是记录下从一个纯净的系统开始如何安装MySql 5.7.17 并且使用GR,以便于自己后期查看以及分享给他人. 二.安装mysql 因为默认ubuntu的源并不是最新的mysql所 ...
- js复制内容到剪切板,兼容pc和手机端,支持Safari浏览器
最近,一些项目中用到监听用户复制.剪切的操作. 案例1.在PC端,当用户获得一个京东卡的使用券,当用户使用ctrl + C复制得到的使用券时,将使用券的代号复制到粘贴板,以便于用户ctrl+v进行 ...
- opencv配置(win10+VS2015+opencv3.1)
Step 1:准备工作 a.win10 b.vs2015 c.opencv3.1[从http://opencv.org/downloads.html下载] Step 2.开始安装 a. 双击openc ...
- 20155232 2016-2017-3 《Java程序设计》第5周学习总结
20155232 2016-2017-3 <Java程序设计>第5周学习总结 教材学习内容总结 第八章 异常处理 1.使用try和catch 将正常的流程放try块中,异常处理放catch ...
- QTP自动化测试培训:描述编程之WebElement
QTP自动化测试培训:描述编程之WebElement 通过描述性编程技术,来描述出来输入框: set po=browser("creationtime:=0").page(&q ...
- dd命令的使用简介
dd命令: convert and copy a file 用法: dd if=/PATH/FROM/SRC of=/PATH/TO/DEST bs=#: block size, 复制单元大小 ...