这个是阅读https://wiki.onosproject.org/display/ONOS/Architecture+Guide是顺便翻译的,目前断断续续在阅读,今天先贴一部分

概览

基于osgi,架构设计目标:

a.代码模块化,可引入具有某种独立性的新功能

b.配置性,功能可在启动/运行期加载卸载

c.子系统和模块之间的清晰边界

d.协议灵活性,不绑定于具体的协议,协议库和实现

a.onos由一系列子项目组成,各自拥有代码树,可独立编译构建。onos代码树层次化组织,利用了maven的层次化pom文件组织概念,和父目录的聚合

pom文件交互。后者包含各子项目的共享依赖和配置。onos根pom文件用来构建所有的子项目

---开发者指南附录c介绍了pom细节

b.onos使用了karaf作为osgi框架,依赖性解决方案,运行时模块动态加载。karaf提供了

.

使用标准的JAX-RS API开发REST API

. 使用了feature概念,用于定制装配一系列bundle

. bundle及第三方依赖的版本约束

. ssh控制台,可定制扩展CLI

. 运行期日志级别

c.onos可划分为

. 协议感知的面向网络的模块,可和网络交互

. 协议无关的系统内核跟踪和提供网络状态信息

. 应用使用这些信息,并向内核反馈响应

上述每一项都是分层架构中的关键层级。这里面向网络的模块和内核通过南向-provider--接口交互,内核和应用通过北向接口--consumer--接口交互

。南向接口定义了协议无关的接口向内核转发网络状态信息,内核通过面向网络的模块和网络交互。北向接口为应用提供网络组件和属性的抽象,可基

于此,根据既定的规则定义所需的动作。

d.若onos需支持一种新的协议,可基于南向接口定义一个新的面向网络的模块作为插件,加载进系统中来。

ONOS架构-概览的更多相关文章

  1. Asp.net mvc项目架构分享系列之架构概览

    Asp.net mvc项目架构分享系列之架构概览 Contents 系列一[架构概览] 0.项目简介 1.项目解决方案分层方案 2.所用到的技术 3.项目引用关系 系列二[架构搭建初步] 4.项目架构 ...

  2. Angular(01)-- 架构概览

    声明 本系列文章内容梳理自以下来源: Angular 官方中文版教程 官方的教程,其实已经很详细且易懂,这里再次梳理的目的在于复习和巩固相关知识点,刚开始接触学习 Angular 的还是建议以官网为主 ...

  3. Python -- Scrapy 架构概览

    架构概览 本文档介绍了Scrapy架构及其组件之间的交互. 概述 接下来的图表展现了Scrapy的架构,包括组件及在系统中发生的数据流的概览(绿色箭头所示). 下面对每个组件都做了简单介绍,并给出了详 ...

  4. Apache Beam的架构概览

    不多说,直接上干货! Apache Beam是一个开源的数据处理编程库,由Google贡献给Apache的项目,前不久刚刚成为Apache TLP项目.它提供了一个高级的.统一的编程模型,允许我们通过 ...

  5. Mybatis技术内幕(一)——整体架构概览

    Mybatis技术内幕(一)--整体架构概览 Mybatis的整体架构分为三层,分别是基础支持层.核心处理层和接口层. 如图所示: 一.基础支持层 基础支持层包含整个Mybatis的基础模块,这些模块 ...

  6. 【WPF系列】基础学习-WPF架构概览

    引言 WPF从.net framewok3.0加入以来,经历了很多跟新.每次更新都给用户带来了新的功能或者优化性能.下面我们首先看下WPF再.netFramework中的位置,接着介绍下WPF的架构框 ...

  7. pomelo架构概览

    pomelo之所以简单易用.功能全面,并且具有高可扩展性.可伸缩性等特点,这与它的技术选型和方案设计是密不可分的.在研究大量游戏引擎设计思路基础上,结合以往游戏开发的经验,确定了pomelo框架的设计 ...

  8. HDFS集群balance(2)-- 架构概览

    转载请注明博客地址:http://blog.csdn.net/suileisl HDFS集群balance,对应版本balance design 6 如需word版本,请QQ522173163联系索要 ...

  9. IIS6.0架构概览(翻译)

    IIS6.0提供一个重新设计的万维网发布服务(World Wide Web Publishing Service)架构,可以帮助你为你的网站构建更好的性能.可靠.可扩展性(scalability),无 ...

随机推荐

  1. Ps去除背景

    http://www.16xx8.com/photoshop/jiaocheng/26905.html

  2. SQL Server 2008中的CDC(Change Data Capture)功能使用及释疑

    SQL Server 2008中的CDC(Change Data Capture)功能使用及释疑 关键词:CDC   原文:http://www.cnblogs.com/chenxizhang/arc ...

  3. phpstudy----------phpstudy开启apache日志并且按照日期划分创建。

    1.CustomLog "|bin/rotatelogs.exe logs/access_%Y_%m_%d.log 86400 480" combined 这里修改成上图所示,然后 ...

  4. iscroll4升级到iscroll5全攻略笔记

    前段时间在搞移动终端(移动web)的项目,其中需要用到滚动的功能(html的滚动效果不好,且在低版本上不支持).后面上网找了下资料,发现大部分人都在用iscroll4(下面简称v4),下载下来试了下确 ...

  5. java之搭建webservice服务端

    1.新建工程. 2.配置项目名称和位置. 3.得到的项目结构如下: 4.配置tomcat服务器. (1) (2)新建一个tomcat服务. (3)配置tomcat参数. 5.配置WSDL文件. url ...

  6. 第八篇——Struts2的处理结果类型

    Struts2处理结果类型 1.SUCCESS:表示Action正确的执行完成,返回相应的视图,success是name属性的默认值: 2.ERROR:表示Action执行失败,返回到错误处理视图: ...

  7. 第四篇——Struts2的引入多个配置文件

    引入多个配置文件 在Struts2配置文件中使用include可引入多个配置文件. 项目实例 1.项目结构 2.pom.xml <project xmlns="http://maven ...

  8. c# System.Object类和数据的安全转型

    .NET Fraework 最重要的引用类型之一是System命名空间中Object类.所有的类都是System.Object的派生类.System.Object类型的变量System.Object的 ...

  9. CentOS6.5系统,mysql数据库的安装

    1.查看数据库中已安装的版本: [mdata@bogon ~]$ yum list installed|grep mysqlmysql-libs.x86_64 5.1.71-1.el6 @anacon ...

  10. java-面向对象的多态性摘要

    多态的作用就是用来将接口和实现分离开,改善代码组织结构,增强代码可读性,便于代码的维护. 在java中,讨论多态就是讨论方法调用的绑定,绑定就是将一个方法调用同一个方法主体联系起来.在java中通常叫 ...