SDN基础-SDN开源控制器

一、主要开源控制器

image

POX( https://github.com/noxrepo/

采用Python语言开发的基于OpenFlow的控制器;
是NOX的兄弟版本,实现了简单的控制平面的功能。
简单、易上手
POX包括:
	1、内核( core ):openflow和of_01 ;
	2、组件( component )

image

控制器可以通过内核中open flow模块控制所有交换机,
of_01模块主要是运行一个线程,该线程不断与交换机进行TCP连接,
当某交换机送来一个协议消息,of_01会触发该消息所对应的事件,并由相关的组件处理函数进行事件的处理
代码结构简单,无需安装即可使用,不需要理解所有代码
缺点:由于代码简单--功能不够全面

image

Ryu( http://osrg.github.io/ryu/

NTT主导开发,RYU是一个基于组件的SDN框架
控制层主要包括协议解析,事件系统,基本网络报文库等
应用层包含内建应用,和基于控制层提供的API编写的网络应用
Ryu通过南向接口与数据平面的设备进行通信,在南向协议方面支持1.0到1.5版本open flow协议,还支持如OF-Config OVSDB,VRRP和NETCONF等其他南向协议
通过北向接口完成应用层和控制层的通信,Ryu提供REST API和RPC等接口,允许外界的进程和Ryu进行通信,用户可以在Open Stack或者其他程序上与Ryu进行通信,从而控制SDN

image
Ryu 主要组件与库函数
image
库函数可以在组件中直接调用,而组件之间的关系是相互独立的
image

Floodlight( http://www.projectfloodlight.org/

image
image

posted @ 2022-09-16 22:24  lht333  阅读(876)  评论(0编辑  收藏  举报