Merge "[DOC]Few changes added in DCAE healthcheck and DCAE deployment validation...
[dcaegen2.git] / docs / sections / services / dfc / architecture.rst
1 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
2 .. http://creativecommons.org/licenses/by/4.0
3
4 Architecture
5 ============
6
7 Introduction
8 """"""""""""
9 DataFile Collector (DFC) is a part of DCAEGEN2. Some information about DFC and the reasons of its implementation can be
10 found here: `5G bulk PM wiki page`_.
11
12 .. _5G bulk PM wiki page: https://wiki.onap.org/display/DW/5G+-+Bulk+PM
13
14 DFC will handle the collection of bulk PM data flow:
15     1. Subscribes to fileReady DMaaP topic
16     2. Collects the files from the xNF
17     3. Sends the collected files and files' data to DataRouter.
18
19
20 DFC is delivered as one **Docker container** which hosts application server.
21 See `Delivery`_ for more information about the docker container.
22
23 .. _Delivery: ./delivery.html
24
25 Functionality
26 """""""""""""
27 .. image:: ../../images/DFC.png
28
29 Interaction
30 """""""""""
31 DFC will interact with the DMaaP Message Router, using json, and with the Data Router, using metadata in the header and
32 file in the body, via secured protocol.
33 So far, the implemented protocols to communicate with xNFs are sftp and ftpes.
34
35 Retry mechanism
36 """""""""""""""
37 DFC is designed to retry downloading and publishing of files in order to recover from temporary faults.
38 Each time an event is received, DFC will try to download it and publish each previously unpublished file in the event.
39 The event is received from the Message Router (MR), the files are fetched from a PNF and are published to Data Router
40 (DR).
41 Both fetching of a file and publishing is retried a number of times with an increasing delay between each attempt.
42 After a number of attempts, the DFC will log an error message and give up. Failing of processing of one file does not
43 affect the handling of others.
44
45 Generalized  DFC
46 """"""""""""""""
47 From version 1.2.1 and onwards, the DFC has more general use. Instead of only handling PM files, any kind of files
48 are handled. The 'changeIdentifier' field in the FileReady VES event (which is reported from the PNFs) identifies the 
49 file type. This is mapped to a publishing stream in the DR.