Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

The following is a summary of the organization of the ONOS source tree. This section is not intended to be comprehensive list of all packages and files, but rather an overview to provide developers with a general idea of how ONOS is organized (think man hier on UNIX-like operating systems).

Table of Contents
maxLevel3

...

Please note that neither the full file hierarchy nor all modules are shown. '-' denotes directories that do not contain POM files (i.e. not modules), or are not projects. deprecated. Entries in italics are not modules, but are described for convenience.

Section
Column
width250px270px
Directory

Bundle name

  • onos
    • onos-
    next
    • apps
      • calendar
      • config
      • demo
      • foo
      • fwd
      • ifwd
      • metrics
      • mobility
      • oecfg
      • optical
      • proxyarp
      • sdnip
      • tvue
    • cli
    • core
      • api
      • json
      • net
      • store
    • docs
    • features
    • openflow
      • api
      • ctl
      • drivers
    • providers
      • host
      • lldp
      • openflow
    • tools
      • build
      • dev
      • package
      • test
    • utils
      • junit
      • misc
      • netty
      • nio
      • osgi
      • rest
      • thirdparty
    • web
      • api
      • gui

 

Column
width250px
    • apps
      • onos-app-bgprouter
      • onos-app-calendar
      • onos-app-config
      • onos-app-database-perf
      • onos-app-demo

Bundle Name

  • onos
    • onos-apps
      • onos-app-calendarelection
      • onos-app-configfoo
      • onos-app-demofwd
      • onos-app-foogrouphandler
      • onos-app-fwdifwd
      • onos-app-ifwdintent-perf
      • onos-app-metrics
      • onos-app-mobility
      • onos-app-oecfg
      • onos-app-optical
      • onos-app-proxyarp
      • -
      • onos-app-routing
      • onos-app-routing-api
      • onos-app-sdnip
      • -
      • onos-app-tvue
    • onos-cli
    • onos-core
      • onos-api
      • onos-core-common
      • -json
      • onos-core-net
      • onos-core-store
      • -
    • onos-docs
    • onos-features
    • -
      • -
      • -
    • onos-of
      • onos-of-api
      • onos-of-ctl
      • onos-of-drivers
    • onos-providers
      • onos-host-provider
      • onos-lldp-provider
      • onos-null-providers
      • -
      • onos-of-providers
    • -
      • maven-source-plugin
      • -
      • -
      • -
      • -
    • onlab-utils
      • onlab-junit
      • onlab-misc
      • onlab-netty
      • onlab-nio
      • onlab-osgi
      • onlab-rest
      • onlab-thirdparty
    • onos-web
      • onos-rest
      • onos-gui
Column
500px
width210px

Directory Name

  • onos-next
    • apps
      • bgprouter
      • calendar
      • config
      • database-perf
      • demo
      • election
      • foo
      • fwd
      • grouphandler
      • ifwd
      • intent-perf
      • metrics
      • mobility
      • oecfg
      • optical
      • proxyarp
      • proxyndp
      • routing
      • routing-api
      • sdnip
      • test
      • tvue
    • cli
    • core
      • api
      • common
      • json
      • net
      • store
      • trivial
    • docs
    • features
    • net
      • api
      • core
    • openflow
      • api
      • ctl
      • drivers
    • providers
      • host
      • lldp
      • null
      • of
      • openflow
    • tools
      • build
      • dev
      • package
      • test
      • tutorials
    • utils
      • junit
      • misc
      • netty
      • nio
      • osgi
      • rest
      • thirdparty
    • web
      • api
      • gui
Column

Description

  • Open Network Operating System root project
    • ONOS sample applications
      • BGP router application
      • ONOS simple calendaring REST interface for intents
      • ONOS simple network configuration reader
      • ONOS partitioned database perf test app bundle
      • ONOS demo app bundle
      • ONOS app leadership election test
      • ONOS application for miscellaneous experiments
      • ONOS simple reactive forwarding app
      • ONOS sample application using group service
      • ONOS simple reactive forwarding app that uses intent service
      • ONOS intent perf app bundle
      • ONOS metrics applications
      • ONOS simple Mobility app
    Utility
      • Standalone utility for converting ONOS JSON config to OE-Linc JSON config
      • ONOS application for packet/optical deployments
      • ONOS simple proxy arp module
      • -
      • Libraries for routing applications
      • API for routing applications
      • SDN-IP peering application
      • -
      • ONOS simple topology viewer
    • ONOS administrative console command-line extensions
    • ONOS Core root project
      • ONOS network control
    (North- and South-bound)
      • API
    definitions
      • ONOS
    JSON encode/decode facilities
      • utilities common to the core modules
      • -
      • ONOS network control core subsystems
    e.g. ManagersStores, both distributed and single-instance (trivial)
      • ONOS Core Store subsystem
      • -
    • ONOS Java API documentation
    • ONOS Apache Karaf feature definitions
    • -
      • -
      • -
    • ONOS OpenFlow Protocol subsystem
      • ONOS OpenFlow controller subsystem API
      • ONOS OpenFlow controller subsystem API
      • ONOS OpenFlow switch drivers & factory
    • ONOS information providers & control/management protocol adapter
      • ONOS host tracking provider
      • ONOS LLDP Link Discovery
      • ONOS null protocol adapters
      • -
      • ONOS OpenFlow protocol adapters
    onos-*
    • Miscellaneous utilities and
    test
    • scripts
    /Mininet topologies
  • Build tools and configurations for Jenkins, Sonar, etc.
  • Developer utilities - IDE settings, bash aliases, etc.
  • Configurations used for packaging
  • ONOS scripts, cell definitions, Mininet topologies, etc.

      • release, distribution and packaging utilities
      • development environment sample configurations
      • remote ONOS instance management
      • onos-* utilities and cell definition files
      • configuration files for tutorials
    • Domain agnostic ON.Lab utilities
      • ON.Lab JUnit test utilities
      • Miscellaneous ON.Lab utilities
      • Network I/O using Netty framework
      • Fast network I/O using Java NIO
      • ON.Lab OSGI utilities
      • ON.Lab JAX-RS utilities
      • ONLab third-party dependencies
    • ONOS web root project
      • ONOS REST API
      • ONOS Web GUI

 


 

...

...

Previous : Appendix B : REST API
Next : Appendix D : Troubleshooting Multi-module Projects


...