3 namespace "urn:o-ran-sc:params:xml:ns:yang:nts:manager";
6 import ietf-inet-types {
17 " Web: <https://wiki.o-ran-sc.org/display/SIM/SIM>
19 Alex Stancu <mailto:alexandru.stancu@highstreet-technologies.com>
20 Adrian Lita <mailto:adrian.lita@highstreet-technologies.com>
21 Martin Skorupski <mailto:martin.skorupski@highstreet-technologies.com>";
23 "This module contains YANG definitions for the Network Topology Simulator - Manager.";
27 "Cleared revision for nts-common import.";
29 "O-RAN-SC SIM project";
34 "Initial revision for the Network Topology Simulator - Next Generation";
36 "O-RAN-SC SIM project";
52 "The name of the running instance. It is the same as the docker container name which exposes this network function.";
54 container networking {
58 "The IP address of the docker container implementing the network function instance.";
60 leaf-list docker-port {
61 type inet:port-number;
63 "The ports which are exposed inside the docker container implementing the network function instance.";
68 "The Host machine IP address pointing to the docker container implementing the network function instance.";
71 type inet:port-number;
73 "The Host machine ports mapped to the docker container implementing the network function instance.";
76 "Groups the details about networking information.";
79 "An instance of a network function which is running. The equivalent on the host machine is a docker container.";
81 grouping network-function-g {
84 base ntsc:NTS_FUNCTION_TYPE_BASE;
86 description "Type of network function to be simulated.";
88 leaf started-instances {
92 "How many instances of this type are started.";
94 leaf mounted-instances {
96 must '. <= ../started-instances' {
98 "The number of mounted instances cannot be greater that the number of started instances.";
102 "How many instances of this type are mounted in the SDN Controller.";
105 uses ntsc:mount-point-details-g;
107 leaf docker-instance-name {
111 "The prefix of each docker container being started.";
114 leaf docker-version-tag {
118 "The version tag of the docker image to be started.";
121 leaf docker-repository {
125 "The prefix containing the docker repository information, if needed.";
128 uses ntsc:netconf-config-g;
129 uses ntsc:ves-config-g;
130 container instances {
134 uses ntsc:mount-point-details-g;
137 "Describes a running instance.";
140 "Groups details about instances which are running.";
143 "Contains all the details of a simulated device.";
145 grouping simulation-information-g {
147 type inet:port-number;
150 "The base Host machine port from where the simulation can allocate ports incrementally.";
152 leaf ssh-connections {
156 "The number of SSH Endpoints each network function instance exposes.";
158 leaf tls-connections {
162 "The number of TLS Endpoints each network function instance exposes.";
168 "Specifies the CPU load generated by the simulation.";
174 "Specifies the RAM in MB used by the simulation.";
177 "Groups information about the simulation status.";
180 container simulation {
181 container network-functions {
182 list network-function {
184 unique "docker-instance-name";
185 uses network-function-g;
187 "List containing different simulated network function types and their details.";
190 "Container which encompasses all simulated network functions.";
192 container sdn-controller {
193 uses ntsc:controller-g;
195 "Groups details about the SDN Controller.";
197 container ves-endpoint {
198 uses ntsc:ves-endpoint-g;
200 "Groups details about the VES Collector endpoint.";
202 uses simulation-information-g;
204 "Root level container which controls the NTS.";