VNFRQTS - Fixing doc8 errors
[vnfrqts/requirements.git] / docs / Chapter7 / PNF-Plug-and-Play.rst
1 .. Modifications Copyright © 2017-2018 AT&T Intellectual Property.
2
3 .. Licensed under the Creative Commons License, Attribution 4.0 Intl.
4    (the "License"); you may not use this documentation except in compliance
5    with the License. You may obtain a copy of the License at
6
7 .. https://creativecommons.org/licenses/by/4.0/
8
9 .. Unless required by applicable law or agreed to in writing, software
10    distributed under the License is distributed on an "AS IS" BASIS,
11    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12    See the License for the specific language governing permissions and
13    limitations under the License.
14
15
16 PNF Plug and Play
17 ------------------------
18
19 PNF Plug and Play
20 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
21
22 The following are the requirements related to PNF Plug and Play.
23
24 .. req::
25     :id: R-56718
26     :target: PNF
27     :keyword: MAY
28     :introduced: casablanca
29
30     The PNF Vendor **MAY** provide software version(s) to be supported by PNF
31     for SDC Design Studio PNF Model. This is set in the PNF Model property
32     software_versions.
33
34 .. req::
35     :id: R-106240
36     :target: PNF
37     :keyword: MUST
38     :introduced: casablanca
39
40     The following VES Events **MUST** be supported by the PNF: pnfRegistration
41     VES Event, HVol VES Event, and Fault VES Event. These are onboarded via
42     he SDC Design Studio.
43
44     Note: these VES Events are emitted from the PNF to support PNF Plug and
45     Play, High Volume Measurements, and Fault events respectively.
46
47 .. req::
48     :id: R-258352
49     :target: PNF
50     :keyword: MUST
51     :introduced: casablanca
52
53     The PNF **MUST** support & accept the provisioning of an ONAP contact IP
54     address (in IPv4 or IPv6 format).
55
56     Note: For example, it a possibility is that an external EMS would configure
57     & provision the ONAP contact IP address to the PNF (in either IPv4 or
58     IPv6 format). For the PNF Plug and Play Use Case, this IP address is the
59     service provider's "point of entry" to the DCAE VES Listener.
60
61     Note: different service provider's network architecture may also require
62     special setup to allow an external PNF to contact the ONAP installation.
63     For example, in the AT&T network, a maintenance tunnel is used to access
64     ONAP.
65
66 .. req::
67     :id: R-793716
68     :target: PNF
69     :keyword: MUST
70     :introduced: casablanca
71
72     The PNF **MUST** have "ONAP Aware" software which is capable of performing
73     PNF PnP registration with ONAP. The "ONAP Aware" software is capable of
74     performing the PNF PnP Registration with ONAP MUST either be loaded
75     separately or integrated into the PNF software upon physical delivery
76     and installation of the PNF.
77
78     Note: It is up to the specific vendor to design the software management
79     functions.
80
81 .. req::
82     :id: R-01427
83     :target: PNF
84     :keyword: MUST
85     :introduced: casablanca
86
87     The PNF **MUST** support the provisioning of security and authentication
88     parameters (HTTP username and password) in order to be able to authenticate
89     with DCAE (in ONAP).
90
91     Note: In R3, a username and password are used with the DCAE VES Event
92     Listener which are used for HTTP Basic Authentication.
93
94     Note: The configuration management and provisioning software are specific
95     to a vendor architecture.
96
97 .. req::
98     :id: R-894004
99     :target: PNF
100     :keyword: MUST
101     :introduced: casablanca
102
103     When the PNF sets up a HTTP or HTTPS connection, it **MUST** provide a
104     username and password to the DCAE VES Collector for HTTP Basic
105     Authentication.
106
107     Note: HTTP Basic Authentication has 4 steps: Request, Authenticate,
108     Authorization with Username/Password Credentials, and Authentication Status
109     as per RFC7617 and RFC 2617.
110
111 .. req::
112     :id: R-952314
113     :target: PNF
114     :keyword: MUST
115     :introduced: casablanca
116
117     If the PNF set up a TLS connection and mutual (two-way) authentication is
118     being used, then the PNF **MUST** provide its own X.509v3 Certificate to
119     the DCAE VES Collector for authentication.
120
121     Note: This allows TLS authentication by DCAE VES Collector.
122
123     Note: The PNF got its X.509 certificate through Enrollment with an
124     operator certificate authority or a X.509 vendor certificate from the
125     vendor factory CA.
126
127     Note: In R3 three authentication options are supported:
128
129     (1) HTTP with Username & Password and no TLS.
130
131     (2) HTTP with Username & Password & TLS with two-way certificate
132         authentication.
133
134     (3) HTTP with Username & Password & TLS with server-side
135         certificate authentication.
136
137 .. req::
138     :id: R-809261
139     :target: PNF
140     :keyword: MUST
141     :introduced: casablanca
142
143     The PNF **MUST** use a IP address to contact ONAP.
144
145     Note: it is expected that an ONAP operator can ascertain the ONAP IP
146     address or the security gateway to reach ONAP on the VID or ONAP portal
147     GUI.
148
149     Note: The ONAP contact IP address has been previously configured and
150     provisioned prior to this step.
151
152     Note: The ONAP IP address could be provisioned or resolved through
153     FQDN & DNS.
154
155 .. req::
156     :id: R-763774
157     :target: PNF
158     :keyword: MUST
159     :introduced: casablanca
160
161     The PNF **MUST** support a HTTPS connection to the DCAE VES Event
162     Listener.
163
164 .. req::
165     :id: R-579051
166     :target: PNF
167     :keyword: MAY
168     :introduced: casablanca
169
170     The PNF **MAY** support a HTTP connection to the DCAE VES Event Listener.
171
172     Note: HTTP is allowed but not recommended.
173
174 .. req::
175     :id: R-686466
176     :target: PNF
177     :keyword: MUST
178     :introduced: casablanca
179
180     The PNF **MUST** support sending a pnfRegistration VES event.
181
182 .. req::
183     :id: R-980039
184     :target: PNF
185     :keyword: MUST
186     :introduced: casablanca
187
188     The PNF **MUST** send the pnfRegistration VES event periodically.
189
190 .. req::
191     :id: R-981585
192     :target: PNF
193     :keyword: MUST
194     :introduced: casablanca
195
196     The pnfRegistration VES event periodicity **MUST** be configurable.
197
198     Note: The PNF uses the service configuration request as a semaphore to
199     stop sending the pnfRegistration sent. See the requirement PNP-5360
200     requirement.
201
202 .. req::
203     :id: R-284934
204     :target: PNF
205     :keyword: MUST
206     :introduced: casablanca
207
208     If the PNF encounters an error authenticating, reaching the ONAP DCAE VES
209     Event listener or recieves an error response from sending the pnfRegistration
210     VES Event, it **MAY** log the error, and notify the operator.
211
212     Note: the design of how errors are logged, retrieved and reported
213     will be a vendor-specific architecture. Reporting faults and errors
214     is also a vendor specific design. It is expected that the PNF shall
215     have a means to log an error and notify a user when a fault condition
216     occurs in trying to contact ONAP, authenticate or send a pnfRegistration
217     event.
218
219 .. req::
220     :id: R-256347
221     :target: PNF
222     :keyword: MUST
223     :introduced: casablanca
224
225     The PNF **MUST** support the Ansible protocol for a Service Configuration
226     message exchange between the PNF and PNF Controller (in ONAP).
227
228     Note: this exchange may be either Ansible, Chef, or NetConf depending on
229     the PNF. Note: The PNF Controller may be VF-C, APP-C or SDN-C based on the
230     PNF and PNF domain. Note: for R3 (Casablanca) only Ansible is supported.
231
232 .. req::
233     :id: R-707977
234     :target: PNF
235     :keyword: MUST
236     :introduced: casablanca
237
238     When the PNF receives a Service configuration from ONAP, the PNF **MUST**
239     cease sending the pnfRegistration VES Event.
240
241 .. req::
242     :id: R-17624
243     :target: PNF
244     :keyword: MAY
245     :introduced: casablanca
246
247     The PNF **MAY** support the optional parameters for Service
248     Configuration Parameters.
249
250     Note: These are detailed in the Stage 5 PnP
251
252     Note: These parameters are optional, and not all PNFs will support any
253     or all of these parameters, it is up to the vendor and service provider
254     to ascertain which ones are supported up to an including all of the ones
255     that have been defined. Note: It is expected that there will be a growing
256     list of supported configuration parameters in future releases of ONAP.
257
258 .. req::
259     :id: R-378131
260     :target: PNF
261     :keyword: MAY
262     :introduced: casablanca
263
264     (Error Case) - If an error is encountered by the PNF during a
265     Service Configuration exchange with ONAP, the PNF **MAY** log the
266     error and notify an operator.
267
268 .. req::
269     :id: R-638216
270     :target: PNF
271     :keyword: MUST
272     :introduced: casablanca
273
274     (Error Case) - The PNF **MUST** support a configurable timer to stop the
275     periodicity sending of the pnfRegistration VES event. If this timer expires
276     during a Service Configuration exchange between the PNF and ONAP, it
277     MAY log a time-out error and notify an operator.
278
279     Note: It is expected that each vendor will enforce and define a PNF
280     service configuration timeout period. This is because the PNF cannot
281     wait indefinitely as there may also be a technician on-site trying to
282     complete installation & commissioning. The management of the VES event
283     exchange is also a requirement on the PNF to be developed by the PNF
284     vendor.
285