Newer
Older
tosca_definitions_version: tosca_simple_yaml_1_3
description: ETSI NFV SOL 001 nsd types definitions version 3.5.1
template_name: etsi_nfv_sol001_nsd_types
template_author: ETSI_NFV
template_version: 3.5.1
- https://forge.etsi.org/rep/nfv/SOL001/raw/v3.5.1/etsi_nfv_sol001_common_types.yaml
- https://forge.etsi.org/rep/nfv/SOL001/raw/v3.5.1/etsi_nfv_sol001_vnfd_types.yaml
- https://forge.etsi.org/rep/nfv/SOL001/raw/v3.5.1/etsi_nfv_sol001_pnfd_types.yaml
# editor's note: During the development of the SOL001ed351 GS, to enable this file to be verified by a TOSCA parser, the imports statement has to be replaced with a reference to a local copy of the common definitions YAML file
tosca.datatypes.nfv.NsVlProfile:
derived_from: tosca.datatypes.Root
description: Describes additional instantiation data for a given NsVirtualLink used in a specific NS deployment flavour.
max_bitrate_requirements:
type: tosca.datatypes.nfv.LinkBitrateRequirements
description: Specifies the maximum bitrate requirements for a VL instantiated according to this profile.
min_bitrate_requirements:
type: tosca.datatypes.nfv.LinkBitrateRequirements
description: Specifies the minimum bitrate requirements for a VL instantiated according to this profile.
required: true
qos:
type: tosca.datatypes.nfv.NsVirtualLinkQos
description: Specifies the QoS requirements of a VL instantiated according to this profile.
required: false
service_availability_level:
type: integer
description: Specifies the service availability level for the VL instance created from this profile
required: false
constraints:
- greater_or_equal: 1
virtual_link_protocol_data:
type: list
description: Specifies the protocol data for a virtual link.
required: false
entry_schema:
type: tosca.datatypes.nfv.NsVirtualLinkProtocolData
tosca.datatypes.nfv.NsVirtualLinkQos:
derived_from: tosca.datatypes.nfv.Qos
description: describes QoS data for a given VL used in a VNF deployment flavour
properties:
priority:
type: integer
constraints:
- greater_or_equal: 0
description: Specifies the priority level in case of congestion on the underlying physical links
tosca.datatypes.nfv.NsProfile:
derived_from: tosca.datatypes.Root
description: describes a profile for instantiating NSs of a particular NS DF according to a specific NSD and NS DF.
properties:
ns_instantiation_level:
type: string
description: Identifier of the instantiation level of the NS DF to be used for instantiation. If not present, the default instantiation level as declared in the NSD shall be used.
min_number_of_instances:
type: integer
description: Minimum number of instances of the NS based on this NSD that is permitted to exist for this NsProfile.
required: true
constraints:
- greater_or_equal: 0
max_number_of_instances:
type: integer
description: Maximum number of instances of the NS based on this NSD that is permitted to exist for this NsProfile.
required: true
constraints:
- greater_or_equal: 0
flavour_id:
type: string
description: Identifies the applicable network service DF within the scope of the NSD.
required: true
tosca.datatypes.nfv.Mask:
derived_from: tosca.datatypes.Root
properties:
starting_point:
description: Indicates the offset between the last bit of the source mac address and the first bit of the sequence of bits to be matched.
type: integer
required: true
length:
description: Indicates the number of bits to be matched.
type: integer
required: true
value:
description: Provide the sequence of bit values to be matched.
type: string
required: true
tosca.datatypes.nfv.NsOperationAdditionalParameters:
derived_from: tosca.datatypes.Root
description: Is an empty base type for deriving data types for describing NS-specific additional parameters to be passed when invoking NS lifecycle management operations
#properties:
tosca.datatypes.nfv.NsMonitoringParameter:
description: Represents information on virtualised resource related performance metrics applicable to the NS.
name:
type: string
description: Human readable name of the monitoring parameter
required: true
performance_metric:
type: string
description: Identifies a performance metric to be monitored, according to ETSI GS NFV-IFA 027.
constraints:
- valid_values: [byte_incoming_sap, byte_outgoing_sap, packet_incoming_sap, packet_outgoing_sap, byte_incoming, byte_outgoing, packet_incoming, packet_outgoing ]
collection_period:
type: scalar-unit.time
description: Describes the periodicity at which to collect the performance information.
required: false
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
tosca.datatypes.nfv.NsVirtualLinkProtocolData:
derived_from: tosca.datatypes.Root
description: describes one protocol layer and associated protocol data for a given virtual link used in a specific NS deployment flavour
properties:
associated_layer_protocol:
type: string
description: Identifies one of the protocols a virtualLink gives access to (ethernet, mpls, odu2, ipv4, ipv6, pseudo-wire) as specified by the connectivity_type property.
required: true
constraints:
- valid_values: [ ethernet, mpls, odu2, ipv4, ipv6, pseudo-wire ]
l2_protocol_data:
type: tosca.datatypes.nfv.NsL2ProtocolData
description: Specifies the L2 protocol data for a virtual link. Shall be present when the associatedLayerProtocol attribute indicates a L2 protocol and shall be absent otherwise.
required: false
l3_protocol_data:
type: tosca.datatypes.nfv.NsL3ProtocolData
description: Specifies the L3 protocol data for this virtual link. Shall be present when the associatedLayerProtocol attribute indicates a L3 protocol and shall be absent otherwise.
required: false
tosca.datatypes.nfv.NsL2ProtocolData:
derived_from: tosca.datatypes.Root
description: describes L2 protocol data for a given virtual link used in a specific NS deployment flavour.
properties:
name:
type: string
description: Identifies the network name associated with this L2 protocol.
required: false
network_type:
type: string
description: Specifies the network type for this L2 protocol. The value may be overridden at run-time.
required: false
constraints:
- valid_values: [ flat, vlan, vxlan, gre ]
vlan_transparent:
type: boolean
description: Specifies whether to support VLAN transparency for this L2 protocol or not.
required: false
default: false
mtu:
type: integer
description: Specifies the maximum transmission unit (MTU) value for this L2 protocol.
required: false
constraints:
- greater_than: 0
segmentation_id:
type: string
description: Specifies a specific virtualised network segment, which depends on the network type. For e.g., VLAN ID for VLAN network type and tunnel ID for GRE/VXLAN network types
required: false
tosca.datatypes.nfv.NsL3ProtocolData:
derived_from: tosca.datatypes.Root
description: describes L3 protocol data for a given virtual link used in a specific NS deployment flavour.
properties:
name:
type: string
description: Identifies the network name associated with this L3 protocol.
required: false
ip_version:
type: string
description: Specifies IP version of this L3 protocol. The value of the ip_version property shall be consistent with the value of the layer_protocol in the connectivity_type property of the virtual link node.
constraints:
- valid_values: [ ipv4, ipv6 ]
cidr:
type: string
description: Specifies the CIDR (Classless Inter-Domain Routing) of this L3 protocol. The value may be overridden at run-time.
required: true
ip_allocation_pools:
type: list
description: Specifies the allocation pools with start and end IP addresses for this L3 protocol. The value may be overridden at run-time.
entry_schema:
type: tosca.datatypes.nfv.NsIpAllocationPool
tosca.datatypes.nfv.NsIpAllocationPool:
derived_from: tosca.datatypes.Root
description: Specifies a range of IP addresses
properties:
start_ip_address:
type: string
description: The IP address to be used as the first one in a pool of addresses derived from the cidr block full IP range
required: true
end_ip_address:
type: string
description: The IP address to be used as the last one in a pool of addresses derived from the cidr block full IP range
required: true
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
tosca.datatypes.nfv.NsScalingAspect:
derived_from: tosca.datatypes.Root
description: describes the details of an aspect used for horizontal scaling
properties:
name:
type: string
description: Human readable name of the aspect
required: true
description:
type: string
description: Human readable description of the aspect
required: true
ns_scale_levels:
type: map
description: Description of the NS levels for this scaling aspect.
required: true
key_schema:
type: integer # Integer type in order to number the levels. First level is level 0.
entry_schema:
type: tosca.datatypes.nfv.NsLevels
tosca.datatypes.nfv.NsLevels:
derived_from: tosca.datatypes.Root
description: describes the Ns levels
properties:
description:
type: string
description: Human readable description of the Ns level
required: true
tosca.datatypes.nfv.scaleNsByStepsData:
derived_from: tosca.datatypes.Root
description: describes the information needed to scale an NS instance by one or more scaling steps, with respect to a particular NS scaling aspect
properties:
scaling_direction:
type: string
description: Indicates the type of the scale operation requested.
required: true
constraints:
- valid_values: [ scale_out, scale_in ]
aspect:
type: string
description: Identifier of the scaling aspect.
required: true
number_of_steps:
type: integer
description: Number of scaling steps to be executed.
required: true
constraints:
- greater_than: 0
default: 1
tosca.datatypes.nfv.scaleNsToLevelData:
derived_from: tosca.datatypes.Root
description: describes the information needed to scale an NS instance to a target size.
properties:
instantiation_level:
type: string
description: Identifier of the target instantiation level of the current deployment flavour to which the NS is requested to be scaled. Either instantiation_level or ns_scale_info shall be provided.
required: false
ns_scale_info:
type: map # key: aspectId
description: For each scaling aspect of the current deployment flavour, indicates the target scale level to which the NS is to be scaled. Either instantiation_level or ns_scale_info shall be provided.
required: false
entry_schema:
type: integer
capability_types:
tosca.capabilities.nfv.Forwarding:
derived_from: tosca.capabilities.Root
relationship_types:
tosca.relationships.nfv.ForwardTo:
derived_from: tosca.relationships.Root
valid_target_types: [ tosca.capabilities.nfv.Forwarding ]
interface_types:
tosca.interfaces.nfv.Nslcm:
derived_from: tosca.interfaces.Root
description: This interface encompasses a set of TOSCA operations corresponding to NS LCM operations defined in ETSI GS NFV-IFA 013. as well as to preamble and postamble procedures to the execution of the NS LCM operations.
operations:
instantiate_start:
description: Preamble to execution of the instantiate operation
instantiate:
description: Base procedure for instantiating an NS, corresponding to the Instantiate NS operation defined in ETSI GS NFV-IFA 013.
# inputs:
# additional_parameters:
# type: tosca.datatypes.nfv.NsOperationAdditionalParameters
# required: false
instantiate_end:
description: Postamble to the execution of the instantiate operation
terminate_start:
description: Preamble to execution of the terminate operation
terminate:
description: Base procedure for terminating an NS, corresponding to the Terminate NS operation defined in ETSI GS NFV-IFA 013.
terminate_end:
description: Postamble to the execution of the terminate operation
update_start:
description: Preamble to execution of the update operation
update:
description: Base procedure for updating an NS, corresponding to the Update NS operation defined in ETSI GS NFV-IFA 013.
update_end:
description: Postamble to the execution of the update operation
scale_start:
description: Preamble to execution of the scale operation
scale:
description: Base procedure for scaling an NS, corresponding to the Scale NS operation defined in ETSI GS NFV-IFA 013.
# inputs:
# additional_parameters:
# type: tosca.datatypes.nfv.NsOperationAdditionalParameters
# required: false
inputs:
scale_ns_by_steps_data:
type: tosca.datatypes.nfv.scaleNsByStepsData
description: Describes the information needed to scale an NS instance by one or more scaling steps, with respect to a particular NS scaling aspect as defined in ETSI GS NFV-IFA 013. Either scale_ns_by_steps_data or scale_ns_to_level_data shall be provided.
required: false
scale_ns_to_level_data:
type: tosca.datatypes.nfv.scaleNsToLevelData
description: Describes the information needed to scale an NS instance to a target size as defined in ETSI GS NFV-IFA 013. Either scale_ns_by_steps_data or scale_ns_to_level_data shall be provided.
required: false
scale_end:
description: Postamble to the execution of the scale operation
heal_start:
description: Preamble to execution of the heal operation
heal:
description: Base procedure for healing an NS, corresponding to the Heal NS operation defined in ETSI GS NFV-IFA 013.
# inputs:
# additional_parameters:
# type: tosca.datatypes.nfv.NsOperationAdditionalParameters
# required: false
heal_end:
description: Postamble to the execution of the heal operation
tosca.interfaces.nfv.NsVnfIndicator:
derived_from: tosca.interfaces.Root
description: This interface is an empty base interface type for deriving NS specific interface types that include VNF indicator specific notifications which will be used in a NS.
tosca.nodes.nfv.NS:
derived_from: tosca.nodes.Root
properties:
descriptor_id:
type: string # UUID
description: Identifier of this NS descriptor
required: true
designer:
type: string
description: Identifies the designer of the NSD.
required: true
type: string
description: Identifies the version of the NSD.
required: true
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
type: string
description: Provides the human readable name of the NSD.
required: true
invariant_id: # UUID
type: string
description: Identifies an NSD in a version independent manner. This attribute is invariant across versions of NSD
required: true
flavour_id:
type: string
description: Identifier of the NS Deployment Flavour within the NSD
required: true
ns_profile:
type: tosca.datatypes.nfv.NsProfile
description: Specifies a profile of a NS, when this NS is used as nested NS within another NS.
required: false
service_availability_level:
type: integer
description: Specifies the service availability level for the NS instance.
required: false
constraints:
- greater_or_equal: 1
priority:
type: integer
description: Specifies the priority for the NS instance. Examples for the usage of priority include conflict resolution in case of resource shortage.
required: false
constraints:
- greater_or_equal: 0
attributes:
scale_status:
type: map # key: aspectId
description: Scale status of the NS, one entry per aspect. Represents for every scaling aspect how "big" the NS has been scaled w.r.t. that aspect.
entry_schema:
type: integer
requirements:
- virtual_link:
capability: tosca.capabilities.nfv.VirtualLinkable
relationship: tosca.relationships.nfv.VirtualLinksTo
node: tosca.nodes.nfv.NsVirtualLink
interfaces:
Nslcm:
type: tosca.interfaces.nfv.Nslcm
tosca.nodes.nfv.Sap:
derived_from: tosca.nodes.nfv.Cp
description: node definition of SAP.
requirements:
- external_virtual_link:
capability: tosca.capabilities.nfv.VirtualLinkable
relationship: tosca.relationships.nfv.VirtualLinksTo
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
- internal_virtual_link:
capability: tosca.capabilities.nfv.VirtualLinkable
relationship: tosca.relationships.nfv.VirtualLinksTo
occurrences: [1, 1]
tosca.nodes.nfv.NsVirtualLink:
derived_from: tosca.nodes.Root
description: node definition of Virtual Links
properties:
vl_profile:
type: tosca.datatypes.nfv.NsVlProfile # only covers min/max bitrate requirements
description: Specifies instantiation parameters for a virtual link of a particular NS deployment flavour.
required: true
connectivity_type:
type: tosca.datatypes.nfv.ConnectivityType
required: true
test_access:
type: list
description: Test access facilities available on the VL
required: false
entry_schema:
type: string
constraints:
- valid_values: [ passive_monitoring, active_loopback ]
description:
type: string
required: false
description: Human readable information on the purpose of the virtual link (e.g. VL for control plane traffic).
capabilities:
virtual_linkable:
type: tosca.capabilities.nfv.VirtualLinkable
tosca.nodes.nfv.NfpPositionElement:
derived_from: tosca.nodes.Root
description: node definition of NfpPositionElement
capabilities:
forwarding:
type: tosca.capabilities.nfv.Forwarding
requirements:
- profile_element:
capability: tosca.capabilities.nfv.Forwarding
relationship: tosca.relationships.nfv.ForwardTo
occurrences: [ 1, 2 ] # When the number of occurrences is 1, the ingress and egress traffic is associated to a single VnfExtCp or Sap; When the number of occurrences is 2, the ingress VnfExtCp or Sap is associated to the first value and the egress VnfExtCp or Sap is associated to the second value.
tosca.nodes.nfv.NfpPosition:
derived_from: tosca.nodes.Root
description: node definition of NFP position
properties:
forwarding_behaviour:
type: string
description: Identifies a rule to apply to forward traffic to CP or SAP instances corresponding to the referenced NfpPositionElement(s).
constraints:
- valid_values: [ all, lb, ff ]
required: false
# forwarding_behaviour_input_parameters:
# description: Provides input parameters to configure the forwarding behaviour.
# type: map
# required: false
# entry_schema:
# type: strin
capabilities:
forwarding:
type: tosca.capabilities.nfv.Forwarding
requirements:
- element:
capability: tosca.capabilities.nfv.Forwarding
node: tosca.nodes.nfv.NfpPositionElement
relationship: tosca.relationships.nfv.ForwardTo
occurrences: [ 1, UNBOUNDED ]
tosca.nodes.nfv.NFP:
derived_from: tosca.nodes.Root
description: node definition of NFP
requirements:
- nfp_position:
capability: tosca.capabilities.nfv.Forwarding
node: tosca.nodes.nfv.NfpPosition
relationship: tosca.relationships.nfv.ForwardTo
occurrences: [ 1, UNBOUNDED ]
tosca.nodes.nfv.Forwarding:
derived_from: tosca.nodes.Root
capabilities:
virtual_linkable:
type: tosca.capabilities.nfv.VirtualLinkable
forwarding:
type: tosca.capabilities.nfv.Forwarding
occurrences: [ 1, 2 ] #When the number of occurrences is 1, the ingress and egress traffic is associated to a single VnfExtCp, PnfExtCp or Sap; When the number of occurrences is 2, the ingress VnfExtCp, PnfExtCp or Sap is associated to the first value and the egress VnfExtCp, PnfExtCp or Sap is associated to the second value.
requirements:
- virtual_link:
capability: tosca.capabilities.nfv.VirtualLinkable
relationship: tosca.relationships.nfv.VirtualLinksTo
group_types:
tosca.groups.nfv.NsPlacementGroup:
derived_from: tosca.groups.Root
description: NsPlacementGroup is used for describing the affinity or anti-affinity relationship applicable between VNF instances created using different VNFDs, the Virtual Link instances created using different VLDs or the nested NS instances created using different NSDs when used in a NSD.
properties:
description:
type: string
description: Human readable description of the group
required: true
members: [tosca.nodes.nfv.VNF, tosca.nodes.nfv.NsVirtualLink, tosca.nodes.nfv.NS]
tosca.groups.nfv.VNFFG:
derived_from: tosca.groups.Root
description: the VNFFG group type describes a topology of the NS or a portion of the NS, and optionally forwarding rules, applicable to the traffic conveyed over this topology
properties:
description:
type: string
description: Human readable description of the group
required: true
members: [ tosca.nodes.nfv.NFP, tosca.nodes.nfv.VNF, tosca.nodes.nfv.PNF, tosca.nodes.nfv.NS, tosca.nodes.nfv.NsVirtualLink, tosca.nodes.nfv.NfpPositionElement ]
tosca.policies.nfv.NsAffinityRule:
derived_from: tosca.policies.Placement
description: The NsAffinityRule describes the affinity rules applicable for the defined targets
properties:
scope:
type: string
description: Specifies the scope of the local affinity rule.
required: true
constraints:
- valid_values: [ nfvi_node, zone, zone_group, nfvi_pop, network_link_and_node ]
targets: [tosca.nodes.nfv.VNF, tosca.nodes.nfv.NsVirtualLink, tosca.nodes.nfv.NS, tosca.groups.nfv.NsPlacementGroup ]
tosca.policies.nfv.NsAntiAffinityRule:
derived_from: tosca.policies.Placement
description: The NsAntiAffinityRule describes the anti-affinity rules applicable for the defined targets
properties:
scope:
type: string
description: Specifies the scope of the local affinity rule..
required: true
constraints:
- valid_values: [ nfvi_node, zone, zone_group, nfvi_pop, network_link_and_node ]
targets: [tosca.nodes.nfv.VNF, tosca.nodes.nfv.NsVirtualLink, tosca.nodes.nfv.NS, tosca.groups.nfv.NsPlacementGroup ]
tosca.policies.nfv.NsSecurityGroupRule:
derived_from: tosca.policies.nfv.Abstract.SecurityGroupRule
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
description: The NsSecurityGroupRule type is a policy type specified the matching criteria for the ingress and/or egress traffic to/from visited SAPs.
targets: [ tosca.nodes.nfv.Sap ]
tosca.policies.nfv.NfpRule:
derived_from: tosca.policies.Root
description: policy definition of NfpRule
properties:
ether_destination_address:
description: Indicates a destination Mac address.
type: string
required: false
ether_source_address:
description: Indicates a source Mac address.
type: string
required: false
ether_type:
description: Indicates the protocol carried over the Ethernet layer.
type: string
constraints:
- valid_values: [ ipv4, ipv6 ]
required: false
vlan_tag:
description: Indicates a VLAN identifier in an IEEE 802.1Q-2014 tag [14]. Multiple tags can be included for QinQ stacking.
type: list
entry_schema:
type: string
required: false
protocol:
description: 'Indicates the L4 protocol, For IPv4 [15] this corresponds to the field called "Protocol" to identify the next level protocol. For IPv6 [16] this corresponds to the field is called the "Next Header" field. Permitted values: Any keyword defined in the IANA [17] protocol registry.'
type: string
required: false
dscp:
description: For IPv4 [15] a string of "0" and "1" digits that corresponds to the 6-bit Differentiated Services Code Point (DSCP) field of the IP header. For IPv6 [16] a string of "0" and "1" digits that corresponds to the 6 differentiated services bits of the traffic class header field.
type: string
required: false
source_port_range:
description: Indicates a range of source ports.
type: range
required: false
constraints:
- in_range: [0, 65535]
destination_port_range:
description: Indicates a range of destination ports.
type: range
required: false
constraints:
- in_range: [0, 65535]
source_ip_address_prefix:
description: Indicates the source IP address range in CIDR format.
type: string
required: false
destination_ip_address_prefix:
description: Indicates the destination IP address range in CIDR format.
type: string
required: false
extended_criteria:
description: Indicates values of specific bits in a frame.
type: list
entry_schema:
type: tosca.datatypes.nfv.Mask
required: false
targets: [ tosca.nodes.nfv.NFP ]
tosca.policies.nfv.NsMonitoring:
derived_from: tosca.policies.Root
description: Policy type is used to identify information to be monitored during the lifetime of a network service instance as defined in ETSI GS NFV-IFA 014 [2].
properties:
ns_monitoring_parameters:
type: map #key: id
description: Specifies a virtualised resource related performance metric to be monitored on the NS level.
required: true
entry_schema:
type: tosca.datatypes.nfv.NsMonitoringParameter
constraints:
- min_length: 1
targets: [ tosca.nodes.nfv.NS ]
tosca.policies.nfv.VnfMonitoring:
derived_from: tosca.policies.Root
description: Policy type is used to identify information to be monitored during the lifetime of a VNF instance as defined in ETSI GS NFV-IFA 014 [2].
properties:
vnf_monitoring_parameters:
type: map #key: id
description: Specifies a virtualised resource related performance metric to be monitored on the NS level.
required: true
entry_schema:
type: tosca.datatypes.nfv.VnfMonitoringParameter
constraints:
- min_length: 1
targets: [ tosca.nodes.nfv.VNF ]
tosca.policies.nfv.NsScalingAspects:
derived_from: tosca.policies.Root
description: The ScalingAspects type is a policy type representing the scaling aspects used for horizontal scaling as defined in ETSI GS NFV-IFA 014 [2]
properties:
aspects:
type: map # key: aspectId
description: Describe the details of a particular aspect including the corresponding NS levels.
required: true
entry_schema:
type: tosca.datatypes.nfv.NsScalingAspect
constraints:
- min_length: 1
tosca.policies.nfv.VnfToLevelMapping:
derived_from: tosca.policies.Root
description: The VnfToLevelMapping type is a policy type representing the number of VNF instances to be deployed at each NS level, as defined in ETSI GS NFV-IFA 014 [2]
properties:
aspect:
type: string
description: Represents the scaling aspect to which this policy applies
required: true
number_of_instances:
type: map # key: Ns level
description: Number of VNF instances to be deployed for each NS level.
required: true
key_schema:
type: integer # First level is level 0.
entry_schema:
type: integer
constraints:
- min_length: 1
targets: [ tosca.nodes.nfv.VNF ]
tosca.policies.nfv.NsToLevelMapping:
derived_from: tosca.policies.Root
description: The NsToLevelMapping type is a policy type representing the number of NS instances of a nested NS to be deployed at each NS level of the composite NS, as defined in ETSI GS NFV-IFA 014 [2]
properties:
aspect:
type: string
description: Represents the scaling aspect to which this policy applies
required: true
number_of_instances:
type: map # key: Ns level
description: Number of NS instances of a nested NS to be deployed for each NS level of the composite NS.
required: true
key_schema:
type: integer # First level is level 0.
entry_schema:
type: integer
constraints:
- min_length: 1
targets: [ tosca.nodes.nfv.NS ]
tosca.policies.nfv.VirtualLinkToLevelMapping:
derived_from: tosca.policies.Root
description: The VirtualLinkToLevelMapping type is a policy type representing the number of NS instances of a nested NS to be deployed at each NS level of the composite NS, as defined in ETSI GS NFV-IFA 014 [2]
properties:
aspect:
type: string
description: Represents the scaling aspect to which this policy applies
required: true
bit_rate_requirements:
type: map # key: Ns level
description: Bitrate requirements of a VL for each NS level.
required: true
key_schema:
type: integer # First level is level 0.
entry_schema:
type: tosca.datatypes.nfv.LinkBitrateRequirements
constraints:
- min_length: 1
targets: [ tosca.nodes.nfv.NsVirtualLink ]
tosca.policies.nfv.NsInstantiationLevels:
derived_from: tosca.policies.Root
description: The NsInstantiationLevels type is a policy type representing all the instantiation levels of resources to be instantiated within a deployment flavour and including default instantiation level in term of the number of VNF and nested NS instances to be created as defined in ETSI GS NFV-IFA 014 [2].
properties:
ns_levels:
type: map # key: levelId
description: Describes the various levels of resources that can be used to instantiate the VNF using this flavour.
required: true
entry_schema:
type: tosca.datatypes.nfv.NsLevels
constraints:
- min_length: 1
default_level:
type: string # levelId
description: The default instantiation level for this flavour.
required: false # required if multiple entries in ns_levels
tosca.policies.nfv.VnfToInstantiationLevelMapping:
derived_from: tosca.policies.Root
description: The VnfToInstantiationLevelMapping type is a policy type representing the number of VNF instances to be deployed at each NS instantiation level, as defined in ETSI GS NFV-IFA 014 [2]
properties:
number_of_instances:
type: map # key: Ns instantiation level
description: Number of VNF instances to be deployed for each NS instantiation level.
required: true
entry_schema:
type: integer
constraints:
- min_length: 1
targets: [ tosca.nodes.nfv.VNF ]
tosca.policies.nfv.NsToInstantiationLevelMapping:
derived_from: tosca.policies.Root
description: The NsToInstantiationLevelMapping type is a policy type representing the number of NS instances of a nested NS to be deployed at each NS instantiation level of the composite NS, as defined in ETSI GS NFV-IFA 014 [2]
properties:
number_of_instances:
type: map # key: Ns instantiation level
description: Number of NS instances of a nested NS to be deployed for each NS instantiation level of the composite NS.
required: true
entry_schema:
type: integer
constraints:
- min_length: 1
targets: [ tosca.nodes.nfv.NS ]
tosca.policies.nfv.VirtualLinkToInstantiationLevelMapping:
derived_from: tosca.policies.Root
description: The VirtualLinkToInstantiationLevelMapping type is a policy type describing the bitrate requirements of a VL at each NS instantiation level of the composite NS, as defined in ETSI GS NFV-IFA 014 [2]
properties:
bit_rate_requirements:
type: map # key: Ns instantiation level
description: Bitrate requirements of a VL for each NS instantiation level.
required: true
entry_schema:
type: tosca.datatypes.nfv.LinkBitrateRequirements
constraints:
- min_length: 1
targets: [ tosca.nodes.nfv.NsVirtualLink ]
tosca.policies.nfv.NsAutoScale:
derived_from: tosca.policies.Root
description: The NsAutoScale policy type is a base policy type for defining NS auto-scale specific policies as defined in ETSI GS NFV-IFA 014 [2].
targets: [ tosca.nodes.nfv.NS ]