'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' PlantUML for ONAP/O-RAN NetConfConfiguration CMmanagement Notify(NetConf)
'
' 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/O-RAN NetConf CM notification Configuration management
end title
box “Network” #lightpink
participant "DevicexNF" as device
participant "TR069 Adapter" as adapterxnf
end box
box "SDN-R: CCSDK - ODLSMO-O1-Controller \n(e.g. ONAP CCSDK/SDNC/SDN-R)" #gold
participant "NetConf Client" as ncc
databaseparticipant "<b>MDSAL</b>O1-xNF-Adapter \n(confige.g. DeviceManager)" as mdsalConfigdeviceManager
database "<b>MDSAL</b>\n(state)Log or CSP" as mdsalStatelog
end box
box participant "SDN-R: SDNC - wireless technologies" #goldVES Provider" as vesProvider
participant "<b>generic</b>\nDeviceManagerRestConf Server" as genDMrcs
end box
box participant "MountpointState\nProvider" as mpState
participant "<b>specific</b>\nDeviceManager" as specificDM"SMO O1-EventCollector \n(e.g. ONAP VES Collector)" #gold
participant "Notification\nProviderVES Collector" as msgProvidervesConsumer
end box
box "SMO MessageBus \n(e.g. ONAP DMaaP)" #gold
participant "Message Router\n(data < 1MB)" as dmaap
' https://wiki.onap.org/pages/viewpage.action?pageId=48533274
end box
box "µService"#lightgreenUser space" #lightblue
participantactor "Notification\nConsumerSMO µService, rApp \n or OLDUX in browser" as msgConsumeruser
end box
autonumber 1 1 "<b>[00]"
== Start the engines ==
loopxnf 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 -> deviceManager: Connected! (including yang-capabilities
deviceManager -> deviceManager: IF device supports\n'create-subscription'
ncc <- deviceManager: NETCONF\n<create-subscription>
xnf <- ncc: NETCONF\nestablish session\n<hello>
ncc -> mdsalState: Connected!n<create-subscription>
== Trigger NetConfa Connectionvalid Stateconfiguration ==
mdsalStateuser -> genDMrcs: (JAVA) onStateChange\nincluding yang-capabilities
genDM -> mpState: (JAVA) mountpointStateupdates\n(connected)
mpStateREST PUT or POST request for xNF
rcs -> dmaapncc: MountpointState updates
msgConsumerODL-MDSAL
ncc -> dmaapxnf: check for message
msgConsumer <- dmaap: response with MountpointState
== NetConf Subscription ==
genDM <edit-config>
xnf -> specificDMncc: Instanciation
activate specificDM
specificDM -> specificDM: IF device supports\n'create-subscription'<rpc-reply>
ncc <-> specificDMrcs: NETCONF\n<createODL-subscription>MDSAL
adapterrcs <-> nccuser: NETCONF\n<create-subscription>
deactivate genDMHTTP RESPONSE
== ConfigurationRelated Changenotification Notificationflow ==
devicexnf -> adapter: SOAP\nHTTP POST
adapterncc:CM-notification\nNetConf/YANG
ncc -> nccdeviceManager: NETCONF:\n<notification>
nccODL-MDSAL
deviceManager -> mdsalConfigvesProvider: notificationODL-MDSAL
mdsalConfigdeviceManager -> specificDMlog: (JAVA)store notificationevent
specificDMvesProvider -> msgProvidervesProvider: convertion/model-translation
msgProvider \n(xml->ves)
vesProvider -> dmaap:vesConsumer: REST: send VES cmNotifyMessage
msgConsumervesConsumer -> dmaap: check for message
msgConsumer <- dmaapREST: responsePublish with cmNotifyevent \nunauthenticated.VES_NOTIFICATION_OUTPUT
' 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-0506-0817 | onap.org | o-ran-sc.org
end footer
skinparam backgroundColor #fefefe
skinparam backgroundColor #fefefe
'skinparam handwritten true
skinparam roundcorner 15
skinparam database {
BorderColordatabaseBorderColor #444444
skinparam databaseBackgroundColor BackgroundColor #ffffdd#fefefe
skinparam FontColordatabaseFontColor #444444
}
skinparam sequence {
MessageAlign left
ArrowThicknessArrowColor 2#2277dd
ArrowColorArrowFontColor #2277dd#444444
ArrowFontColorArrowThickness #4444442
ActorBorderColor #444444
LifeLineBorderColor #444444
LifeLineBackgroundColor #eeeeee
LifeLineBackgroundColor #eeeeee
BoxBorderColor #444444
GroupBorderColor #444444
GroupBackgroundColor #eeeeee
ParticipantBorderColor #444444
ParticipantBackgroundColor #ffffdd
ParticipantFontColor #444444
ActorBackgroundColor #ffffdd
'ActorFontColor DeepSkyBlue
'ActorFontSize 17
'ActorFontName Aapex
}
@enduml
|