近些天开始接触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的特点,利于学习,使用广泛,主要 ...
随机推荐
-
java 和 objective-c 动态获得类型信息
详细信息,请参看android官方文档中的class类的介绍 ,和苹果的官方文档Objective-C Runtime Reference java中常常听到反射reflection,在java的cl ...
-
TImageList 和 TlistView 组件(C++Builder)
__fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { //加载图标到Imagelist Graphics::TBitmap *bm ...
-
rsync 只同步指定类型的文件
需求: 同步某个目录下所有的图片(*.jpg),该目录下有很多其他的文件,但只想同步*.jpg的文件. rsync 有一个--exclude 可以排除指定文件,还有个--include选项的作用正好和 ...
-
codeforces 450 B Jzzhu and Sequences
题意:给出f1=x,f2=y,f(i)=f(i-1)+f(i+1),求f(n)模上10e9+7 因为 可以求出通项公式:f(i)=f(i-1)-f(i-2) 然后 f1=x; f2=y; f3=y-x ...
-
对redis客户端jedis2.8.0的进一步封装
jedis2.8.0的进一步封装: 1.序列化存储对象 2.结合spring,创建redis连接池 3.提供了基础的单个实体操作,有序list操作和一对多关系list的操作,对list提供了分页的封装 ...
-
maven项目java包名的路径问题
maven项目中错误: 找不到或无法加载主类
-
M - Candy Sharing Game
Description A number of students sit in a circle facing their teacher in the center. Each student in ...
-
【Unity3D技术文档翻译】第1.8篇 AssetBundles 问题及解决方法
上一章:[Unity3D技术文档翻译]第1.7篇 AssetBundles 补丁更新 本章原文所在章节:[Unity Manual]→[Working in Unity]→[Advanced Deve ...
-
结合数据结构来看看Java的String类
数据结构中定义字符串是由零个或多个字符组成的有限序列,有限,指出字符串的长度是一个有限的数值:所谓的序列,说明串的相邻字符之间具有前驱和后继的关系.字符串一般记为s="a1a2...an&q ...
-
c语言基础课第三次作业
7-1找出最小值 1.实验代码 #include <stdio.h> int main(void) int n, i, m, min; scanf("%d", & ...