Versions Compared

Key

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

O-RAN Alliance OpenFronthaul specifications define for O-RU and O-DU management plane traffic the usage of NetConf NotifcationsNotifications.

The message flow in ONAP defines for notifications the VES messages format send to DMaaP VES collector to be forwared forwarded to DMaaP Message Router.

SDN-R should close the gap for NetConf notifications and should make NetConf notification content available in a generic way for all ONAP µServices. Such function was already discussed based on 

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySDNC-887
. The VES domain "notification" could be used for Configuration Change Notification. However, once 3GPP has agreed on VES 'cmNofity' the now domain should be used.


PlantUML Macro
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' 
' PlantUML for ONAP NetConf CM Notify
'
' Copyright 2020 highstreet technologies GmbH
' Licensed under the Apache License, Version 2.0 (the "License"); 
' you may not use this file except in compliance with the License. 
' You may obtain a copy of the License at 
' 
' http://www.apache.org/licenses/LICENSE-2.0 
' 
' Unless required by applicable law or agreed to in writing, software 
' distributed under the License is distributed on an "AS IS" BASIS, 
' WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 
' See the License for the specific language governing permissions and 
' limitations under the License. 
'

@startuml

' Diagram 
title 
  ONAP NetConf CM notification 
end title
                          
box “Network” #lightpink
  participant "Device" as device
  participant "TR069 Adapter" as adapter
end box

box "SDN-R: CCSDK - ODL" #gold
  participant "NetConf Client" as ncc
  database "<b>MDSAL</b>\n(config)" as mdsalConfig
  database "<b>MDSAL</b>\n(state)" as mdsalState
end box

box "SDN-R: SDNC - wireless technologies" #gold
  participant "<b>generic</b>\nDeviceManager" as genDM
  participant "MountpointState\nProvider" as mpState
  participant "<b>specific</b>\nDeviceManager" as specificDM
  participant "Notification\nProvider" as msgProvider
end box
box "DMaaP"#gold
  participant "Message Router\n(data < 1MB)" as dmaap
  ' https://wiki.onap.org/pages/viewpage.action?pageId=48533274
end box
box "µService"#lightgreen
  participant "Notification\nConsumer" as msgConsumer
end box

autonumber 1 1 "<b>[00]"

== Start the engines ==
loop pull for messages for topic\n'CM_NOTIFY' and 'MOUNTPOINT_STATE'
  msgConsumer -> dmaap: check for message
  msgConsumer <- dmaap: response
end loop
genDM -> mdsalState: subscription
genDM -> mdsalConfig: subscription
device <-> adapter: OnBoarding
adapter <-> ncc: NETCONF\nestablish session\n<hello>
ncc -> mdsalState: Connected!

== NetConf Connection State == 

mdsalState -> genDM: (JAVA) onStateChange\nincluding yang-capabilities
genDM -> mpState: (JAVA) mountpointStateupdates\n(connected)
mpState -> dmaap: MountpointState updates
msgConsumer -> dmaap: check for message
msgConsumer <- dmaap: response with MountpointState

== NetConf Subscription == 

genDM -> specificDM: Instanciation
activate specificDM
specificDM -> specificDM: IF device supports\n'create-subscription'
ncc <- specificDM: NETCONF\n<create-subscription>

adapter <- ncc: NETCONF\n<create-subscription>
deactivate genDM

== Configuration Change Notification == 
device -> adapter: SOAP\nHTTP POST
adapter -> ncc: NETCONF:\n<notification>
ncc -> mdsalConfig: notification
mdsalConfig -> specificDM: (JAVA) notification
specificDM -> msgProvider: translation
msgProvider -> dmaap: VES cmNotify
msgConsumer -> dmaap: check for message
msgConsumer <- dmaap: response with cmNotify

' End Diagram
' Format
header
  <b><font color=#8888ff>License</font></b>
  <b><font color=#8888ff>Apache 2.0</font></b>
end header

right footer 
  Thanks to plantUml! 
  2020-05-08 | onap.org | o-ran-sc.org
end footer

skinparam backgroundColor #fefefe

skinparam backgroundColor #fefefe
'skinparam handwritten true
skinparam roundcorner 15

skinparam database {
  BorderColor #444444
  BackgroundColor #ffffdd
  FontColor #444444
}

skinparam sequence {
  MessageAlign left
  ArrowThickness 2
  ArrowColor #2277dd
  ArrowFontColor #444444
  ActorBorderColor #444444
  LifeLineBorderColor #444444
  LifeLineBackgroundColor #eeeeee
 
  BoxBorderColor #444444
    
  GroupBorderColor #444444
  GroupBackgroundColor #eeeeee
  
  ParticipantBorderColor #444444
  ParticipantBackgroundColor #ffffdd
  ParticipantFontColor #444444
    
  ActorBackgroundColor #ffffdd
  'ActorFontColor DeepSkyBlue
  'ActorFontSize 17
  'ActorFontName Aapex
}
@enduml