Versions Compared
Key
- This line was added.
- This line was removed.
- Formatting was changed.
Table of Contents |
---|
Related Jira
Jira Legacy | ||||||||
---|---|---|---|---|---|---|---|---|
|
OAM interface specification
The figure below shows the generic principals of reading and writing operations via TLS/NetConf/Yang for configuration management.
Subject of this discussion is about implementing a mechanisme, which ensures that the NetConf session is closed after NetConf operations.
Figure
Image Removed
PlantUml
title | Click here to view PlantUml code... |
---|
' Copyright 2019 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.
'
' Author: martin.skorupski@highstreet-technologies.com
@startuml
' Diagram
title
O-RAN-SC
O1-Interface: Terminate NetConf Session
end title
box "\nManagement-Service (MnS) Provider\nManagedElement" #ED7D31
participant "<b>Server</b>" as ncs <<NetConf>>
end box
box "\nManagement-Service (MnS) Consumer\nOAM Controller" #8064A2
participant "<b>Client</b>" as ncc <<NetConf>>
end box
autonumber "<b>[00]"
group NetConf Operations (simplyfied)
ncc <-> ncs: tcp/tls/netconf/830\nEstablish NetConf Session (hello, ...)
ncc -> ncs: NETCONF <rpc><edit-config> or others
ncs -> ncc: NETCONF <rpc-reply><OK> or <rpc-reply><rpc-error><error-xxx>
ncc -> ncs: <font color=red><b>Terminate NetConf Session
end group
' End Diagram
' Format
header
<b><font color=#8888ff>License</font></b>
<b><font color=#8888ff>Apache 2.0</font></b>
end header
'caption "\n UML Formatting"
right footer
Terminate NetConf Session
Thanks to plantUml!
2019-07-27 | o-ran-sc.org
end footer
skinparam backgroundColor #fefefe
skinparam backgroundColor #fefefe
'skinparam handwritten true
skinparam roundcorner 15
skinparam databaseBorderColor #666666
skinparam databaseBackgroundColor #fefefe
skinparam databaseFontColor #666666
skinparam sequence {
MessageAlign left
ArrowColor #2277dd
ArrowFontColor #666666
ActorBorderColor #666666
LifeLineBorderColor #666666
LifeLineBackgroundColor #eeeeee
BoxFontColor #ffffff
BoxBorderColor #666666
GroupBorderColor #666666
GroupBackgroundColor #eeeeee
ParticipantBorderColor #666666
ParticipantBackgroundColor #ffffdd
'ParticipantFontName Impact
'ParticipantFontSize 17
ParticipantFontColor #666666
ActorBackgroundColor #ffffdd
'ActorFontColor DeepSkyBlue
'ActorFontSize 17
'ActorFontName Aapex
}
@enduml
Typical NetConf client behavior
Usually NetConf clients do not terminate the NetConf session automatically. With respect to ONAP-CCSDK/OpenDaylight; once ODL is aware of a NetConf server by creating a mountpoint in odl-netconf-topology, it has an automated mechanism trying to connect that NetConf server. In case the NetConf session is lost, it automatically will re-connect.
Such mechanism needs to be "disabled" and the NetConf Session termination request must be implemented.
Proposed solution
Add an optional attribute called 'permanet-connection' to the netconf-node-topology.yang to grouping 'netconf-node-connection-parameters' with type BOOLEAN and default value TRUE.
This way applications controlling the NetConf connection can distinguish between the currently existing behavior and the new O1-interface-behavior. Old implementations are not affected, because the new attribute is optional and its default value is according to the current behavior.
Proposed modification on network-node-topology.yang:
Code Block | ||
---|---|---|
| ||
... 149 } new new leaf permanent-connection { new config true; new type boolean; new default true; new description "If truefalse, the connector disconnects, by sending <close-session> after a transaction is completed - usually after the response of <unlock>." new } 150 151 leaf connection-timeout-millis { 152 description "Specifies timeout in milliseconds after which connection must be established."; ... |