SDN开发笔记(四):md-sal应用程序开发 继前3篇文章SDN开发环境的搭建(win7环境)、SDN控制器的使用(ubuntu环境搭建、controller使用、mininet的使用)和ODL源码编译生成发行版控制器之后,终于有时间写第4篇文章,本章主要讲如何开发一个基于MD-SAL的应用程序。开发APP之前请参照之前的文章搭建好jdk环
:installodl-openflowplugin-flow- services- ui安装基于karaf控制台的md-sal控制器功能,包括nodes、yang UI、Topology:feature...一个包含一个交换机和三个主机直连的简单拓扑,并连接远程opendaylight控制器,并用opendaylight的web查看拓扑图,验证实验环境是否可以正常使用1、启动odl控制器,具体参照第二部 ...
引入Data Store及Moel的概念后,MD-SAL所完成的主要工作就是数据提供者(provider)和数据消费者(consumer)之间的连通工作:数据提供者/数据消费者均需向MD-SAL注册;数据提供者在提供数据后,会产生Notification;数据消费者可以向MD-SAL订阅数据,在收到数据发生变化的Noticifaction后,其可以从MD-SAL的Data Store获取数据。
MD-SAL是模型驱动的服务抽象层,提供了将北向、南向API以及数据结构(SDN控制器各种服务和组件中使用) 统一的机会。 为了描述控制器组件提供的数据结构,提出了一种特定领域的语言--YANG--作为服务和数据抽象的建模语言。这样的语言允许: 建模XML数据和组件功能的结构。 定义语义元素及其关系。 将所有组件建模为单个系统。
1、MD-SAL概述 •使用YANG模型作为接口和数据定义的建模语言来描述转发器的属性和动作,通过YANGTool生成对应的API和服务接口java代码。在此基础上,控制器中的各种组件和业务就可以使用统一的数据结构和南北向API。•统一的数据结构、方法实现和数据均存储于datastore中,便于数据管理。•控制器内部各组件注册到MD-...
MD-SAL(Model-driven Service Abstraction Layer,模型驱动的服务抽象层)可以看成是一个消息总线驱动、可扩展的中间件。“M”是模型,即为YANG语言,“MD”是模型驱动,即使用YANG作为数据和接口的建模语言,并为服务之间的通信提供基础框架:消息传递和数据存储功能。
当前MD-SAL DOM数据代理 目前,DOM数据代理没有被设计成具有树状结构的智能内存缓存,其能够记录依赖性,计算变化集合并维护提交处理程序、通知监听器和实际数据之间的关系。 这可能导致两阶段提交的低效实施,其中所有状态记录由Data Broker本身完成,如下所示:
第一步,我们需要讲我们的provider接入到MD-SAL,接触过opendaylight都知道有config subsystem,它提供了服务的周期管理,同时能够提供对JMX 和 NETCONF的接入性配置。config subsystem在MD-SAL之外而且被用来提供把应用接入MD-SAL的功能。 我们首先完成配置性关系的yang文件,后面会用yangtools来生成java代码,通过这部分可以在...
Md-sal中 How To Look Up Data In MD-SAL –Helium Version Posted by Kanika Previously I wrotehow to look up data in MD-SAL data storebut that holds good only for OpenDaylight’s Hydrogen release. In OpenDaylight’s Helium release, data broker API’s have been changed. Here is how you ...
OpenDlight MD-SAl应用开发(一)- 基础开发环境搭建 目录 一、基础环境介绍 二、环境搭建步骤 1.JDK环境搭建 2.Maven环境搭建 3.环境变量设置 4.下载安装IDEA(community版) 三、验证环境 一、基础环境介绍 1.系统:Ubuntu16.04 LTS 桌面版 2.JDK1.8 3.Maven3.3.9 4.编译工具:IDEA2018 community(社区版) 5....