1.OpenDaylight Controller 概述


OpenDaylight Controller(后面将用控制器代指)基于JVM软件,能够运行在任意支持Java的操作系统或硬件上。控制器是软件定义网络(SDN)的概念的一个实现,并且使用了如下工具:

Maven: OpenDaylight使用Maven进行更为简单的自动化配置。Maven使用pom.xml(Project Object Model)文件管理bundle间的脚本依赖关系,并且描述bundles的加载和启动。

OSGi: 这个属于OpenDaylight后端技术框架,它允许动态加载bundles和JAR包文件,并且绑定bundles以提供bundle间的信息交互。

JAVA接口: Java接口用于事件监听、规范和形成模式。这是特殊bundles实现事件回调函数和表示特殊意识状态的一个主要方式。

REST APIs:这里有类似于拓扑管理、主机追踪、流编程、静态路由等北向接口。

控制器向应用提供开放的北向APIs。OSGi框架和双向的REST对北向APIs进行支持。OSGi框架用在与控制器在同一地址空间的应用,REST API用在与控制器不在同一地址空间(或在同一系统里)的应用。业务逻辑和算法都驻留在应用程序中。这些应用程序利用控制器收集网络的情报,运行自身算法进行分析,然后编排用于网络的新规则。在南向接口上,多种协议以plugin的形式提供,例如OpenFlow 1.0、OpenFlow 1.3、BGP-LS等等。OpenDaylight控制器启动默认支持OpenFlow 1.0协议。其他OpenDaylight代码贡献者也开始向控制器添加代码。这些模块动态链接到服务抽象层(SAL)。

SAL向北向的模块提供服务。SAL解决了提供控制器和网络设备间协议无关服务的问题。这种思路让随时间变化的类似于OpenFlow或其他协议对应用程序不会带来影响。控制器需要控制其管辖范围的设备,所以它要对设备的能力、可达性等信息进行了解。这些信息通过拓扑管理模块进行存储和管理。其他部件,诸如ARP管理、主机追踪、设备管理、交换机管理将帮助拓扑管理部件生成拓扑数据库。

更多的OpenDaylight controller概要的详细信息,请参见OpenDaylight开发者指南。

====》返回首页《====

6 个评论

写的好棒,什么时候能发全部文档?
谢谢支持,我们初步将公测时间定为一周,让大家多提建议,如果可以的话,一周后我们将把这个手册以PDF文档发出来。如果你有好的意见也可以提。
好的(^_^)
先赞一个
不错不错 社区需要这种翻译活动
必须给赞,非常棒!

要回复文章请先登录注册