Add bounds to sphinx requirement
[vnfrqts/requirements.git] / docs / Chapter7 / Monitoring-And-Management.rst
1 .. Modifications Copyright © 2017-2018 AT&T Intellectual Property
2    Modifications Copyright © 2020 Nokia Solutions and Networks
3
4 .. Licensed under the Creative Commons License, Attribution 4.0 Intl.
5    (the "License"); you may not use this documentation except in compliance
6    with the License. You may obtain a copy of the License at
7
8 .. https://creativecommons.org/licenses/by/4.0/
9
10 .. Unless required by applicable law or agreed to in writing, software
11    distributed under the License is distributed on an "AS IS" BASIS,
12    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13    See the License for the specific language governing permissions and
14    limitations under the License.
15
16 Monitoring & Management
17 -----------------------
18
19 In ONAP, DCAE is responsible of collecting, receiving, and analyzing
20 NF monitoring data. This data serves the basis for tracking the health,
21 performance, and operational status of the NF. DCAE provides a
22 number of predefined interfaces based upon accepted, open standards to support
23 monitoring data ingestion. Some of these interfaces collect data by polling or
24 pulling data from the NF using standard protocols. Other DCAE interfaces receive
25 monitoring data (such as VES events) that are pushed from the NFs.
26
27 A NF that produces monitoring data and uses protocols that are compatible with
28 ONAP's predefined monitoring ingestion capabilities can easily be integrated
29 with ONAP through simple configuration rather than custom development.
30
31 This chapter will define the expected requirements for a NF to easily integrate
32 with an instance of ONAP.
33
34 Monitoring and Fault Protocol Selection
35 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
36
37 This section provides the proper guidance on how a NF should determine the
38 protocol and data format for providing a specific types of telemetry data to
39 ONAP.
40
41 .. req::
42    :id: R-82909
43    :target: VNF or PNF
44    :keyword: MUST
45    :introduced: guilin
46
47    The VNF or PNF **MUST** report faults and alarms using either
48    :ref:`Virtual Function Event Streaming (VES) <ves_monitoring_requirements>`
49    or :ref:`SNMP <snmp_monitoring_requirements>`. (NOTE: See relevant sections
50    for more detailed requirements)
51
52 .. req::
53    :id: R-554966
54    :target: VNF or PNF
55    :keyword: MUST
56    :introduced: guilin
57
58    The VNF or PNF **MUST** report performance metrics using
59    :ref:`Virtual Function Event Streaming (VES) <ves_monitoring_requirements>`
60    or :ref:`bulk_performance_measurement`.
61
62 .. req::
63    :id: R-69111
64    :target: VNF or PNF
65    :keyword: MUST
66    :introduced: guilin
67
68    The VNF or PNF **MUST** report application logs using either
69    :ref:`Virtual Function Event Streaming (VES) <ves_monitoring_requirements>`
70    or Syslog in compliance with
71    `RFC 5424 <https://tools.ietf.org/html/rfc5424>`__ .
72
73
74 .. req::
75    :id: R-209104
76    :target: VNF or PNF
77    :keyword: SHOULD
78    :introduced: guilin
79
80    The VNF or PNF producing VES syslog events **SHOULD** restrict these
81    events to those that convey significant errors or warnings needed to support
82    the operation or troubleshooting of the VNF or PNF. It is expected the
83    volume of such events would be lower (e.g. less than 2000 per day) than
84    more detailed events produced in the course of normal operations.
85
86 .. req::
87    :id: R-332680
88    :target: VNF or PNF
89    :keyword: SHOULD
90    :introduced: casablanca
91    :updated: guilin
92    :validation_mode: in_service
93    :impacts: dcae
94
95    The VNF or PNF producing VES events **SHOULD** deliver syslog messages
96    that meet the criteria in R-209104 to the VES Event Listener using the
97    ``syslog`` VES domain.
98
99 .. req::
100    :id: R-935717
101    :target: VNF or PNF
102    :keyword: MUST
103    :introduced: guilin
104
105    The VNF or PNF **MUST** report heartbeats using
106    :ref:`Virtual Function Event Streaming (VES) <ves_monitoring_requirements>`.
107
108 .. req::
109    :id: R-697654
110    :target: VNF or PNF
111    :keyword: MAY
112    :introduced: casablanca
113    :updated: guilin
114    :validation_mode: in_service
115    :impacts: DCAE
116
117    The VNF or PNF **MAY** leverage ONAP's High Volume VNF Event Streaming
118    (HV-VES) when there is a need to deliver large volumes of real-time
119    performance management metrics. See
120    :doc:`HV-VES collector <dcae:sections/services/ves-hv/index>`
121    service details for more information.
122
123 .. req::
124    :id: R-857511
125    :target: VNF or PNF PROVIDER
126    :keyword: MUST
127    :introduced: guilin
128    :validation_mode: none
129    :impacts: DCAE
130
131    VNF or PNF Provider **MUST** have agreement with the Service Provider before
132    utilizing the :doc:`HV-VES option <dcae:sections/services/ves-hv/index>`
133    for monitoring as this option does not fully integrate with the ONAP's DCAE
134    event processing capabilities.
135
136 .. req::
137    :id: R-908291
138    :target: VNF or PNF
139    :keyword: MAY
140    :introduced: casablanca
141    :updated: guilin
142    :validation_mode: in_service
143    :impacts: dcae, dmaap
144
145    The VNF or PNF **MAY** leverage a bulk VNF or PNF telemetry transmission
146    mechanism in instances where other transmission
147    methods are not practical or advisable.
148
149    NOTE: For additional information and use cases for the Bulk Telemetry
150    Transmission Mechanism, please refer to
151    the :ref:`bulk_performance_measurement` requirements and the
152    `5G - Bulk PM ONAP Development <https://wiki.onap.org/display/DW/5G+-+Bulk+PM>`__
153    Wiki page.
154
155 .. req::
156    :id: R-63105
157    :target: VNF or PNF
158    :keyword: MAY
159    :introduced: guilin
160    :impacts: dcae
161
162    The VNF or PNF **MAY** produce telemetry data using the
163    :doc:`RESTConf Collector <dcae:sections/services/restconf/index>`, but this
164    requires additional coordination with the operator to appropriately
165    map the data internally to a VES-like structure used within ONAP. If this
166    option is needed, then the VNF or PNF Provider must coordinate with with the
167    Operator for the data to be successfully collected and processed by DCAE.
168
169 .. _snmp_monitoring_requirements:
170
171 SNMP Monitoring Requirements
172 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
173
174 .. req::
175    :id: R-261501
176    :target: VNF or PNF
177    :keyword: MUST
178    :introduced: guilin
179
180    If the VNF or PNF is using SNMP, then the VNF or PNF Provider **MUST**
181    provide a Management Information Base (MIB) file that uniquely identifies
182    and describes all SNMP events exposed by the network function.
183
184 .. req::
185    :id: R-233922
186    :target: VNF or PNF
187    :keyword: SHOULD
188    :introduced: guilin
189
190    If the VNF or PNF is using SNMP, then the VNF or PNF Provider **SHOULD**
191    provide examples of all SNMP alarms.
192
193 .. _ves_monitoring_requirements:
194
195 Virtual Function Event Streaming (VES) Client Requirements
196 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
197
198 The VES protocol enables NFs to transmit telemetry data in a non-proprietary,
199 extensible format to ONAP using the HTTP protocol. This chapter will define
200 the requirements for a NF to deliver events to ONAP's VES event listeners in
201 a manner that conforms with the appropriate VES Event Listener specifications,
202 and ensures the NF can be configured to maximize the reliability of telemetry
203 data delivery.
204
205
206 Event Definition and Registration
207 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
208
209 .. req::
210    :id: R-520802
211    :target: VNF or PNF PROVIDER
212    :keyword: MUST
213    :introduced: casablanca
214    :updated: guilin
215    :validation_mode: static
216    :impacts: dcae
217
218    If the VNF or PNF is using VES, then the VNF or PNF Provider **MUST** provide
219    a YAML file formatted in adherence with the
220    :ref:`VES Event Registration specification <ves_event_registration_3_2>`
221    that defines the following information for each event produced by the VNF:
222
223    * ``eventName``
224    * Required fields
225    * Optional fields
226    * Any special handling to be performed for that event
227
228 .. req::
229    :id: R-120182
230    :target: VNF or PNF PROVIDER
231    :keyword: MUST
232    :introduced: casablanca
233    :updated: guilin
234    :validation_mode: static
235    :impacts: dcae
236
237    A VNF or PNF Provider utilizing VES **MUST** indicate specific conditions
238    that may arise, and recommend actions that may be taken at specific
239    thresholds, or if specific conditions repeat within a specified time
240    interval, using the semantics and syntax described by the
241    :ref:`VES Event Registration specification <ves_event_registration_3_2>`.
242
243    **NOTE:** The Service Provider may override VNF or PNF provider Event
244    Registrations using the ONAP SDC Design Studio to finalizes Service
245    Provider engineering rules for the processing of the VNF or PNF events.
246    These changes may modify any of the following:
247
248    * Threshold levels
249    * Specified actions related to conditions
250
251 .. req::
252    :id: R-123044
253    :target: VNF or PNF PROVIDER
254    :keyword: MAY
255    :introduced: casablanca
256    :updated: dublin
257    :validation_mode: in_service
258    :impacts: dcae
259
260    The VNF or PNF Provider **MAY** require that specific events, identified by
261    their ``eventName``, require that certain fields, which are optional in the
262    common event format, must be present when they are published.
263
264 Event Formatting and Usage
265 ~~~~~~~~~~~~~~~~~~~~~~~~~~
266
267 .. req::
268    :id: R-570134
269    :target: VNF or PNF
270    :keyword: MUST
271    :introduced: casablanca
272    :updated: guilin
273    :validation_mode: in_service
274    :impacts: dcae
275
276    The VES events produced by the VNF or PNF **MUST** be compliant with the
277    common event formats defined in one of the following specifications:
278
279    * :ref:`VES Event Listener 5.4.1<ves_event_listener_5_4_1>`
280    * :ref:`VES Event Listener 7.1.1<ves_event_listener_7_1>`
281    * :ref:`VES Event Listener 7.2<ves_event_listener_7_2>`
282
283    The latest version (7.2) should be preferred. Earlier versions are
284    provided for backwards compatibility.
285
286 .. req::
287    :id: R-528866
288    :target: VNF or PNF
289    :keyword: MUST
290    :introduced: casablanca
291    :updated: guilin
292    :validation_mode: in_service
293    :impacts: dcae
294
295    The VES events produced by the VNF or PNF **MUST** conform to the schema and
296    other formatting requirements specified in the relevant VES Event Listener
297    specification.
298
299 .. req::
300    :id: R-283988
301    :target: VNF or PNF
302    :keyword: MUST NOT
303    :introduced: casablanca
304    :updated: guilin
305    :validation_mode: in_service
306    :impacts: dcae
307
308    A VNF or PNF producing VES events **MUST NOT** send information through
309    extensible structures if the event specification has explicitly defined
310    fields for that information.
311
312 .. req::
313    :id: R-470963
314    :target: VNF or PNF
315    :keyword: SHOULD
316    :introduced: casablanca
317    :updated: guilin
318    :validation_mode: in_service
319    :impacts: dcae
320
321    A VNF or PNF producing VES events **SHOULD** leverage camel case to
322    separate words and acronyms used as keys that will be sent through extensible
323    fields. When an acronym is used as the key, then only the first letter shall
324    be capitalized.
325
326 .. req::
327    :id: R-408813
328    :target: VNF or PNF
329    :keyword: MUST
330    :introduced: casablanca
331    :updated: guilin
332    :validation_mode: none
333    :impacts: dcae
334
335    A VNF or PNF producing VES events **MUST** pass all information it is
336    able to collect even if the information field is identified as optional.
337    However, if the data cannot be collected, then optional fields can be
338    omitted.
339  
340 .. req::
341    :id: R-408814
342    :target: VNF or PNF
343    :keyword: MUST
344    :introduced: guilin
345    :validation_mode: none
346    :impacts: dcae
347
348    The VNF or a PNF producing VES stndDefined domain events to report
349    standards-organization defined events to ONAP, **MUST** set the
350    event.stndDefinedNamespace property. By default, ONAP ships with support
351    for the following:
352
353    * 3GPP-Provisioning
354    * 3GPP-Heartbeat
355    * 3GPP-FaultSupervision
356    * 3GPP-PerformanceAssurance
357
358    Another namespace, outside of the list provided, needs to registered in ONAP in coordination
359    with the operator before it can be used.
360
361 .. req::
362    :id: R-408815
363    :target: VNF or PNF
364    :keyword: MUST
365    :introduced: guilin
366    :validation_mode: none
367    :impacts: dcae
368    
369    If the VNF or PNF producing VES stndDefined domain events provides
370    the event.stndDefinedFields.schemaReference then it **MUST** set its value
371    to the publicUrl value in DCAE's VES Collector `etc/externalRepo/schema-map.json <https://github.com/onap/dcaegen2-collectors-ves/blob/guilin/etc/externalRepo/schema-map.json/>`_ 
372    that describes the data being sent in event.stndDefinedFields.data.
373
374 .. req::
375    :id: R-408816
376    :target: VNF or PNF
377    :keyword: MUST
378    :introduced: guilin
379    :validation_mode: none
380    :impacts: dcae
381    
382    If the VNF or PNF producing VES stndDefined domain events provides
383    the event.stndDefinedFields.schemaReference then it **MUST** only pass events
384    that conform to schema references previously registered with DCAE otherwise
385    the event will be rejected. By default, ONAP ships with support for schemas 
386    found in DCAE's VES Collector `etc/externalRepo/schema-map.json <https://github.com/onap/dcaegen2-collectors-ves/blob/guilin/etc/externalRepo/schema-map.json/>`_.
387
388 .. req::
389    :id: R-408817
390    :target: VNF or PNF
391    :keyword: MUST
392    :introduced: guilin
393    :validation_mode: none
394    :impacts: dcae
395    
396    The VNF or PNF Provider producing stndDefined events **MUST** coordinate with
397    the operator, willing to validate stndDefined events, to configure DCAE to 
398    accept any new event schema prior to sending those events or the events 
399    will be rejected.
400
401 .. req::
402    :id: R-408818
403    :target: VNF or PNF
404    :keyword: MUST
405    :introduced: guilin
406    :validation_mode: none
407    :impacts: dcae
408       
409    If the VNF or PNF producing VES stndDefined domain events provides 
410    the event.stndDefinedFields.schemaReference then it **MUST** set the 
411    event.stndDefined.schemaReference property to an exact structure, 
412    from supported schemaReference, describing the notification within 
413    an openAPI specification, using JSON Pointer as URI fragment  e.g.
414    “https://forge.3gpp.org/.../faultMnS.yaml#/components/schemas/notifyNewAlarm"
415
416 Configuration Requirements
417 ~~~~~~~~~~~~~~~~~~~~~~~~~~
418
419 This section defines the types the configuration options and defaults a NF
420 producing VES events should provide to ensure the NF can be configured properly
421 for the Service Provider's ONAP environment and ensure reliable delivery of
422 VES events.
423
424 There are several methods available to provide configuration settings to a
425 network function. This document does not specify the exact manner in which
426 the configuration elements described below must be required. The
427 configuration can be provided during instantiation (e.g. preload), provided by
428 an ONAP controller action, or provided manually.
429
430 .. req::
431    :id: R-460012
432    :target: VNF or PNF
433    :keyword: MUST
434    :introduced: guilin
435
436    The VNF or PNF producing VES events **MUST** allow the configuration of
437    the attributes defined in Table 1 and utilize the provided default value
438    (where applicable) when the configuration value is not provided by the
439    Service Provider.
440
441 .. req::
442    :id: R-940591
443    :target: VNF or PNF
444    :keyword: SHOULD
445    :introduced: guilin
446
447    A VNF or PNF producing VES events **SHOULD** use the recommended parameter
448    name for the configurable value from Table 1.
449
450 .. table:: **Table 1**: VES Configurable Values
451
452    +----------------------+-----------------------------------+----------------+-------------------------------------+
453    |Parameter             | Description                       |  Default       | Parameter Name (VES 7.2+)           |
454    +======================+===================================+================+=====================================+
455    |VES Listener Endpoint | FQDN or IP of the Event Listener  |       n/a      | ves_listener_endpoint               |
456    +----------------------+-----------------------------------+----------------+-------------------------------------+
457    |Heartbeat Interval    | Frequency in seconds the NF must  |        60      | ves_heartbeat_interval_seconds      |
458    |                      | send a heartbeat to the event     |                |                                     |
459    |                      | listener                          |                |                                     |
460    +----------------------+-----------------------------------+----------------+-------------------------------------+
461    |Timeout Value         | Duration in seconds the NF should |         5      | ves_timeout_seconds                 |
462    |                      | wait for ACK from the event       |                |                                     |
463    |                      | listener before timeout           |                |                                     |
464    +----------------------+-----------------------------------+----------------+-------------------------------------+
465    |Measurement Interval  | Window size in seconds to use for |        300     | ves_measurement_interval_seconds    |
466    |                      | aggregated measurements           |                |                                     |
467    +----------------------+-----------------------------------+----------------+-------------------------------------+
468    |HTTP Username         | Required if NF supports HTTP      |        n/a     | ves_http_username                   |
469    |                      | Basic Authentication with the     |                |                                     |
470    |                      | VES Event Listener                |                |                                     |
471    +----------------------+-----------------------------------+----------------+-------------------------------------+
472    |HTTP Password         | Required if NF supports HTTP      |        n/a     | ves_http_password                   |
473    |                      | Basic Authentication with the     |                |                                     |
474    |                      | VES Event Listener                |                |                                     |
475    +----------------------+-----------------------------------+----------------+-------------------------------------+
476
477
478 VES Listener Endpoint and DNS Resolution
479 ++++++++++++++++++++++++++++++++++++++++
480
481 In a high availability deployment of a VES Event Listener, a round-robin DNS or
482 dynamic DNS may be used to either load balance or provide fault tolerance of
483 the Event Listener.  Adherence to the following requirements ensure the VNF or
484 PNF interacts properly with this deployment configuration.
485
486 .. req::
487    :id: R-70492
488    :target: VNF or PNF
489    :keyword: MUST
490    :introduced: guilin
491
492    The VNF or PNF **MUST** support DNS resolution of the VES Listener Endpoint
493    if a Fully Qualified Domain Name (FQDN) is provided.
494
495 .. req::
496    :id: R-130645
497    :target: VNF or PNF
498    :keyword: MUST
499    :introduced: guilin
500
501    The VNF or PNF **MUST** respect the Time To Live provided by the DNS for
502    the VES Event Listener FQDN.
503
504 Event Delivery Requirements
505 ~~~~~~~~~~~~~~~~~~~~~~~~~~~
506
507 .. req::
508    :id: R-06924
509    :target: VNF or PNF
510    :keyword: MUST
511    :updated: guilin
512
513    The VNF or PNF producing VES events **MUST** deliver VES events as it
514    becomes available or according to the configured measurement interval.
515
516 .. req::
517     :id: R-655209
518     :target: VNF or PNF
519     :keyword: MUST
520     :introduced: guilin
521
522     The VNF or PNF producing VES events **MUST** respect the configured
523     VES Timeout Value when delivering VES events, and abort any call where
524     the VES Event Listener does not successfully acknowledge the delivery of
525     event(s) within the Timeout Value. These failed transactions should be
526     buffered and retried in accordance with the
527     :ref:`ves_buffering_requirements` Requirements.
528
529 .. req::
530    :id: R-176945
531    :target: VNF or PNF
532    :keyword: SHOULD NOT
533    :introduced: guilin
534
535    The VNF or PNF producing VES events **SHOULD NOT** send syslog events to the
536    VES Event Listener during debug mode, but rather store syslog events locally
537    for access or possible file transfer.
538
539 .. _ves_buffering_requirements:
540
541 Buffering and Redelivery
542 ~~~~~~~~~~~~~~~~~~~~~~~~
543
544 To maximize the reliable delivery of VES events when the VES Listener becomes
545 unavailable or unhealthy, the NF must adhere to these requirements.
546
547 .. req::
548    :id: R-658596
549    :target: VNF or PNF
550    :keyword: MUST
551    :introduced: guilin
552
553    A VNF or PNF producing VES events **MUST** buffer events that meet the
554    following criteria if the VES Event Listener is unreachable or the request
555    encounters a timeout.
556
557    * Faults with eventSeverity of ``MINOR``, ``MAJOR``, ``NORMAL``, or
558      ``CRITICAL``
559    * Syslog with syslogSev of ``Emergency``, ``Alert``, ``Critical``,
560      ``Error``, or ``Warning``
561    * All measurement events
562
563 .. req::
564    :id: R-636251
565    :target: VNF or PNF
566    :keyword: MUST
567    :introduced: guilin
568
569    A VNF or PNF producing VES events **MUST** size the event buffer
570    referenced in R-658596 such that it can buffer a minimum of 1 hours of
571    events under nominal load.
572
573 .. req::
574    :id: R-498679
575    :target: VNF or PNF
576    :keyword: MAY
577    :introduced: guilin
578
579    A VNF or PNF producing VES events **MAY** discard buffered events older
580    than a maximum retention period, not less than 1 hour, even if the event
581    was never successfully delivered to the event listener. While discarding
582    based on this retention period is supported for backwards compatibility, it
583    is recommended to retain events until the maximum buffer size is reached per
584    R-346137 as that will maximize the number of events delivered.
585
586 .. req::
587    :id: R-346137
588    :target: VNF or PNF
589    :keyword: MUST
590    :introduced: guilin
591
592    A VNF or PNF producing VES events that is buffering events per R-658596
593    **MUST** store in-scope events even when the maximum capacity of the
594    buffer (defined in R-636251) has been reached. To make room for new events
595    in this situation, hte oldest event in the buffer shall be removed
596    as necessary. (i.e. First In First Out)
597
598 .. req::
599    :id: R-379523
600    :target: VNF or PNF
601    :keyword: MUST
602    :introduced: guilin
603
604    A VNF or PNF producing VES events that is buffering events due to an
605    unavailable VES Event Listener **MUST** redeliver all buffered events
606    according to the following rules when the VNF or PNF detects the VES Event
607    Listener has become available:
608
609    * Deliver all previously buffered events before sending new events
610    * Deliver buffered events in the order they were received
611
612 .. req::
613    :id: R-818859
614    :target: VNF or PNF
615    :keyword: MUST
616    :introduced: guilin
617
618    The VNF or PNF producing VES events **MUST** not allow an unavailable or
619    timing out VES Event Listener to impact the performance, stability, or
620    correct execution of network function.
621
622 .. req::
623    :id: R-103464
624    :target: VNF or PNF
625    :keyword: MAY
626    :introduced: guilin
627
628    A VNF or PNF producing VES events that is buffering events due to an
629    unavailable VES Event Listener **MAY** leverage to ``publishEventBatch``
630    operation to redeliver buffered events. Please note this can only be
631    used when all buffered events belong to the same domain due to the
632    restrictions in place for the operation.
633
634 Security
635 ~~~~~~~~
636
637 .. req::
638     :id: R-68165
639     :target: VNF or PNF
640     :keyword: MUST
641     :updated: dublin
642
643     The VNF or PNF **MUST** encrypt any content containing Sensitive Personal
644     Information (SPI) or certain proprietary data, in addition to applying the
645     regular procedures for securing access and delivery.
646
647
648 .. req::
649    :id: R-33878
650    :target: VNF or PNF
651    :keyword: MUST
652    :introduced: el alto
653    :updated: guilin
654
655    The VNF or PNF **MUST** utilize one of the authentication methods
656    prescribed by the relevant VES Event Listener specification.
657
658 .. _bulk_performance_measurement:
659
660 Bulk Performance Measurement
661 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
662
663 .. req::
664     :id: R-841740
665     :target: VNF or PNF
666     :keyword: SHOULD
667     :introduced: casablanca
668     :updated: dublin
669     :impacts: dcae, dmaap
670
671     The VNF or PNF **SHOULD** support FileReady VES event for event-driven bulk transfer
672     of monitoring data.
673
674 .. req::
675     :id: R-440220
676     :target: VNF or PNF
677     :keyword: SHOULD
678     :introduced: casablanca
679     :updated: dublin
680     :impacts: dcae, dmaap
681
682     The VNF or PNF **SHOULD** support File transferring protocol, such as FTPES or SFTP,
683     when supporting the event-driven bulk transfer of monitoring data.
684
685 .. req::
686     :id: R-75943
687     :target: VNF or PNF
688     :keyword: SHOULD
689     :introduced: casablanca
690     :updated: guilin
691     :impacts: dcae, dmaap
692
693     The VNF or PNF **SHOULD** support the data schema defined in 3GPP TS 32.435 or 3GPP TS 28.532, when
694     supporting the event-driven bulk transfer of monitoring data.
695
696 .. req::
697     :id: R-807129
698     :target: VNF or PNF
699     :keyword: SHOULD
700     :introduced: dublin
701     :impacts: dcae, dmaap
702
703     The VNF or PNF **SHOULD** report the files in FileReady for as long as they are
704     available at VNF or PNF.
705
706     Note: Recommended period is at least 24 hours.
707
708
709 .. |image0| image:: ../Data_Model_For_Event_Records.png
710
711 .. |image1| image:: ../VES_JSON_Driven_Model.png
712       :width: 5in
713       :height: 3in
714
715 .. |image2| image:: ../Protocol_Buffers_Driven_Model.png
716       :width: 4.74in
717       :height: 3.3in
718
719 .. |image3| image:: ../Bulk_Data_Transfer_Mechv1.png
720       :width: 4.74in
721       :height: 3.3in