Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: update according to ODUHIGH-322

Table of Contents

Scope

The page will discuss and document the necessary yang modules to be supported by O-DU to ensure the end-to-end functionality of the D-Release use case "Closed loop". 

As O-RAN alliance does not provide solid yang models yet, other data models needs to be defined or selected.

Decisions

In SMO project call on 2021-03-04 it was decided to create a yang modules for O-RAN-SC DU with a minimum parameter set supporting the D-Release Closed loop use case.

The initial idea of a configuration for the O-DU NetConf client is rejected, because in D-Release there wont be a NetConf client implemented on O-DU.

The prototype yang models from B-Release wont be enhanced.

RSAC 2021-04-08

Please see comment in 

Jira
serverORAN Jira
serverId5ec52304-b77c-3ce7-af6a-112cb13e6008
keyODUHIGH-322
 and related gerrit review.


D-Release YANG model for O-DU

Please see attached hello-world yang for D-Release.

module: o-ran-sc-du-hello-world
  +--rw network-function
     +--rw du-to-ru-connection* [name]
        +--rw name string
        +--ro operational-state? enumeration
        +--rw administrative-state? enumeration
        +--ro cell-state? enumeration
        +--ro status? connection-status


rpcs:  // comment: both RPCs are marked as deprecated
               // its function is covered by administrative-state.
  x---x connect
  | +---w input
  | | +---w remote-network-function o-ru-reference
  | +--ro output
  | +--ro response-status enumeration
  | +--ro message? string
  x---x disconnect
     +---w input
     | +---w remote-network-function o-ru-reference
     +--ro output
        +--ro response-status enumeration
        +--ro message? string

Scope

Color coding

Code Block
languageyml
module: network-topology +--rw network-topology +--rw topology* [topology-id] +--rw topology-id topology-id +--ro server-provided? boolean +--rw topology-types | +--rw nettop:topology-netconf! +--rw underlay-topology* [topology-ref] | +--rw topology-ref topology-ref +--rw node* [node-id] | +--rw node-id node-id | +--rw supporting-node* [topology-ref node-ref] | | +--rw topology-ref topology-ref | | +--rw node-ref node-ref | +--rw termination-point* [tp-id] | | +--rw tp-id tp-id | | +--ro tp-ref* tp-ref | +--rw netnopt:ignore-missing-schema-sources | | +--rw netnopt:allowed? boolean | | +--rw netnopt:reconnect-time? uint32 | +--rw (nettop:credentials)? | | x--:(nettop:login-password) | | | +--rw nettop:username? string | | | +--rw nettop:password? string | | +--:(nettop:login-pw) | | | +--rw nettop:login-password | | | +--rw nettop:username? string | | | +--rw nettop:password? string | | +--:(nettop:login-pw-unencrypted) | | | +--rw nettop:login-password-unencrypted | | | +--rw nettop:username? string | | | +--rw nettop:password? string | | +--:(nettop:key-auth) | | +--rw nettop:key-based | | +--rw nettop:key-id? string | | +--rw nettop:username? string | +--rw nettop:host? inet:host | +--rw nettop:port? inet:port-number | +--rw nettop:tcp-only? boolean | +--rw nettop:protocol | | +--rw nettop:name? enumeration | | +--rw (nettop:specification)? | | +--:(nettop:tls-case) | | +--rw nettop:tls | | +--rw nettop:excluded-versions* string | +--rw nettop:schemaless? boolean | +--rw nettop:yang-module-capabilities | | +--rw nettop:override? boolean | | +--rw nettop:capability* string | +--rw nettop:non-module-capabilities | | +--rw nettop:override? boolean | | +--rw nettop:capability* string | +--rw nettop:reconnect-on-changed-schema? boolean | +--rw nettop:connection-timeout-millis? uint32 | +--rw nettop:default-request-timeout-millis? uint32 | +--rw nettop:max-connection-attempts? uint32 | +--rw nettop:between-attempts-timeout-millis? uint16 | +--rw nettop:sleep-factor? decimal64 | +--rw nettop:keepalive-delay? uint32 | +--rw nettop:concurrent-rpc-limit? uint16 | +--rw nettop:actor-response-wait-time? uint16 | +--rw nettop:odl-hello-message-capabilities | | +--rw nettop:capability* inet:uri | +--ro nettop:connection-status? enumeration | +--ro nettop:clustered-connection-status | | +--ro nettop:node-status* [] | | | +--ro nettop:node? string | | | +--ro nettop:status? enumeration | | +--ro nettop:netconf-master-node? string | +--ro nettop:connected-message? string | +--ro nettop:available-capabilities | | +--ro nettop:available-capability* [] | | +--ro nettop:capability? string | | +--ro nettop:capability-origin? enumeration | +--ro nettop:unavailable-capabilities | | +--ro nettop:unavailable-capability* [] | | +--ro nettop:capability? string | | +--ro nettop:failure-reason? enumeration | +--rw nettop:pass-through | +--rw nettop:schema-cache-directory? string | +--rw nettop:yang-library | | +--rw nettop:yang-library-url? inet:uri | | +--rw nettop:username? string | | +--rw nettop:password? string | +--rw nettop:ignore-missing-schema-sources | +--rw nettop:allowed? boolean | +--rw nettop:reconnect-time? uint32 +--rw link* [link-id] +--rw link-id link-id +--rw source | +--rw source-node node-ref | +--rw source-tp? tp-ref +--rw destination | +--rw dest-node node-ref | +--rw dest-tp? tp-ref +--rw supporting-link* [link-ref] +--rw link-ref link-ref module: netconf-node-optional +--rw netconf-node-fields-optional +--rw topology* [topology-id] +--rw topology-id nt:topology-id +--rw node* [node-id] +--rw node-id nt:node-id +--rw datastore-lock +--rw datastore-lock-allowed? boolean module: odl-netconf-callhome-server +--rw netconf-callhome-server +--rw global! | +--rw credentials! | | +--rw username string | | +--rw passwords* string | +--rw accept-all-ssh-keys? boolean | +--rw mount-point-naming-strategy? enumeration +--rw allowed-devices +--rw device* [unique-id] +--rw unique-id string x--rw ssh-host-key? string +--rw credentials! | +--rw username string | +--rw passwords* string +--rw (transport)? | +--:(ssh) | | +--rw ssh-client-params | | +--rw host-key string | | +--rw credentials! | | +--rw username string | | +--rw passwords* string | +--:(tls) | +--rw tls-client-params | +--rw certificate-id string | +--rw key-id string +--ro callhome-status:device-status? enumeration