• ONOS架构-概览


    这个是阅读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需支持一种新的协议,可基于南向接口定义一个新的面向网络的模块作为插件,加载进系统中来。

  • 相关阅读:
    selenium 操作过程中,元素标红高亮的两种实现方式
    python pytest测试框架介绍五---日志实时输出
    pytest 3.9在python 2.7下的一个bug
    Qt assis tant 帮助集合文档 -由.qhcp生成.qhc
    Qt assistant .qch显示乱码问题
    qhelpgenerator 由qhp生成qch过程碰到的问题 记录
    Qt creator新建widget项目....no valid kits found.....
    Qt creator 账号
    Qt 写Excel
    Qt获取主窗口
  • 原文地址:https://www.cnblogs.com/dablyo/p/4821207.html
Copyright © 2020-2023  润新知