1.Ryu简介
Ryu是基于Python语言编写的开源控制器,其代码风格优秀,模块清晰,可扩展性强。Ryu使用了OpenSrack的Oslo库,并且开发了OpenStack插件,可以和OpenStack实现整合部署。Ryu是一个轻量级的SDN控制器,是目前主流的控制器之一。适合初学者学习。
2.Ryu架构
Ryu的架构与其他SDN控制器架构类似,大致可以分为控制层和应用层。其中,控制层主要包括协议解析、事件系统、基本的网络版文库和内建应用等。应用层是利用控制层提供的API来编写的网络应用和其他系统协同工作的组件和模块。Ryu通过南向接扣与数据平面的交换机进行通信,通过北向接口完成应用层和控制层的通信。
3.Ryu安装
Ryu的安装方式可以通过pip安装和源码安装,安装前需要安装一些必要的模块和插件,如下:
$ sudo apt-get install python-pip python-dev build-essential
$ sudo pip install --upgrade pip
$ sudo apt-get install python-eventlet
$ sudo apt-get install python-routes
$ sudo apt-get install python-webob
$ sudo apt-get install python-paramiko
1.pip安装
执行 pip install ryu
2.源码安装
1)$ git clone git://github.com/osrg/ryu.git
2)$ cd ryu
3)$ sudo pip install -r tools/pip-requires
4)$ sudo python setup.py install
注意:其中若第三步出现问题,有可能是网络原因,可以不断执行第三步命令,进行数据包的下载。若第四步出现问题则可能是six版本过低,可以在安装前执行$sudo pip install --upgrade six或者直接执行pip uninstall six pip install six来进行高版本安装。
3.验证
进入ryu目录执行ryu-manager,如果显示
loading app ryu.controller.ofp_handler
instantiating app ryu.controller.ofp_handler of OFPHandler
表明安装成功。