|
GROUP SPECIFICATION
Network Functions Virtualisation (NFV) Release 2;
Protocols and Data Models;
RESTful protocols specification
for the Ve-Vnfm Reference Point
Disclaimer
The present document has been produced and approved by the Network Functions Virtualisation (NFV) ETSI Industry
Specification Group (ISG) and represents the views of those members who participated in this ISG.
It does not necessarily represent the views of the entire ETSI membership.
---------------------- Page: 1 ----------------------
2 ETSI GS NFV-SOL 002 V2.5.1 (2018-09)
Reference
RGS/NFV-SOL002ed251
Keywords
API, NFV, protocol
ETSI
650 Route des Lucioles
F-06921 Sophia Antipolis Cedex - FRANCE
Tel.: +33 4 92 94 42 00 Fax: +33 4 93 65 47 16
Siret N° 348 623 562 00017 - NAF 742 C
Association à but non lucratif enregistrée à la
Sous-Préfecture de Grasse (06) N° 7803/88
Important notice
The present document can be downloaded from:
The present document may be made available in electronic versions and/or in print. The content of any electronic and/or
print versions of the present document shall not be modified without the prior written authorization of ETSI. In case of any
existing or perceived difference in contents between such versions and/or in print, the only prevailing document is the
print of the Portable Document Format (PDF) version kept on a specific network drive within ETSI Secretariat.
Users of the present document should be aware that the document may be subject to revision or change of status.
Information on the current status of this and other ETSI documents is available at
If you find errors in the present document, please send your comment to one of the following services:
Copyright Notification
No part may be reproduced or utilized in any form or by any means, electronic or mechanical, including photocopying
and microfilm except as authorized by written permission of ETSI.
The content of the PDF version shall not be modified without the written authorization of ETSI.
The copyright and the foregoing restriction extend to reproduction in all media.
© ETSI 2018.
All rights reserved.
TM TM TM
DECT , PLUGTESTS , UMTS and the ETSI logo are trademarks of ETSI registered for the benefit of its Members.
TM TM
3GPP and LTE are trademarks of ETSI registered for the benefit of its Members and
of the 3GPP Organizational Partners.
oneM2M logo is protected for the benefit of its Members.
GSM and the GSM logo are trademarks registered and owned by the GSM Association.
ETSI
---------------------- Page: 2 ----------------------
3 ETSI GS NFV-SOL 002 V2.5.1 (2018-09)
Contents
Intellectual Property Rights . 15
Foreword . 15
Modal verbs terminology . 15
1 Scope . 16
2 References . 16
2.1 Normative references . 16
2.2 Informative references . 17
3 Definitions and abbreviations . 18
3.1 Definitions . 18
3.2 Abbreviations . 18
4 General aspects . 19
4.1 Overview . 19
4.2 URI structure and supported content formats . 19
4.3 Common procedures. 20
4.3.1 Introduction. 20
4.3.2 Attribute-based filtering . 20
4.3.2.1 Overview and example (informative). 20
4.3.2.2 Specification. 21
4.3.3 Attribute selectors . 23
4.3.3.1 Overview and example (informative). 23
4.3.3.2 Specification. 23
4.3.3.2.1 GET request . 23
4.3.3.2.2 GET response . 24
4.3.4 Usage of HTTP header fields . 24
4.3.4.1 Introduction . 24
4.3.4.2 Request header fields . 24
4.3.4.3 Response header fields . 25
4.3.5 Error reporting . 26
4.3.5.1 Introduction . 26
4.3.5.2 General mechanism . 26
4.3.5.3 Type: ProblemDetails. 26
4.3.5.4 Common error situations . 26
4.3.5.5 Overview of HTTP error status codes . 28
4.4 Common data types . 29
4.4.1 Structured data types . 29
4.4.1.1 Introduction . 29
4.4.1.2 Type: Object . 29
4.4.1.3 Type: Link . 29
4.4.1.3a Type: NotificationLink . 30
4.4.1.4 Type: KeyValuePairs . 30
4.4.1.5 Type: VnfInstanceSubscriptionFilter . 30
4.4.1.6 Type: ApiVersionInformation . 31
4.4.2 Simple data types and enumerations . 32
4.4.2.1 Introduction . 32
4.4.2.2 Simple data types . 32
4.4.2.3 Enumerations . 32
4.5 Authorization of API requests and notifications . 32
4.5.1 Introduction. 32
4.5.2 Flows (informative) . 33
4.5.2.0 General . 33
4.5.2.1 Authorization of API requests using OAuth 2.0 access tokens . 33
4.5.2.1a Authorization of API requests using TLS certificates . 35
4.5.2.2 Authorization of notifications using the HTTP Basic authentication scheme . 36
4.5.2.3 Authorization of notifications using OAuth 2.0 access tokens. 37
ETSI
---------------------- Page: 3 ----------------------
4 ETSI GS NFV-SOL 002 V2.5.1 (2018-09)
4.5.2.4 Authorization of notifications using TLS certificates . 39
4.5.3 Specification . 41
4.5.3.1 Introduction . 41
4.5.3.2 General mechanism . 41
4.5.3.3 Authorizing API requests . 41
4.5.3.4 Authorizing the sending of notifications . 42
4.5.3.5 Client roles . 43
4.5.3.6 Negotiation of authorization method . 44
4.5.3.6.1 Authorization of API requests . 44
4.5.3.6.2 Authorization of notification requests . 45
4.6 Version management . 46
4.6.1 Version identifiers and parameters . 46
4.6.1.1 Version identifiers . 46
4.6.1.2 Version parameters. 46
4.6.2 Rules for incrementing version identifier fields. 47
4.6.2.1 General . 47
4.6.2.2 Examples of backward and non-backward compatible changes . 47
4.6.3 Version information retrieval . 48
4.6.3.1 General . 48
4.6.3.2 Resource structure and methods . 49
4.6.3.3 Resource: API versions . 49
4.6.3.3.1 Description . 49
4.6.3.3.2 Resource definition . 49
4.6.3.3.3 Resource methods . 50
4.6.4 Version signalling . 50
4.7 Handling of large query results . 51
4.7.1 Description . 51
4.7.2 Specification . 51
4.7.2.1 Alternatives . 51
4.7.2.2 Error response . 52
4.7.2.3 Paged response . 52
5 VNF Lifecycle Management interface . 52
5.1 Description . 52
5.1a API version . 53
5.2 Resource structure and methods . 53
5.3 Sequence diagrams (informative) . 55
5.3.1 Flow of the creation of a VNF instance resource . 55
5.3.2 Flow of the deletion of a VNF instance resource . 56
5.3.3 Flow of VNF lifecycle management operations triggered by task resources . 57
5.3.4 Flow of automatic invocation of VNF scaling and VNF healing. 60
5.3.5 Flow of the Query VNF operation . 62
5.3.6 Flow of the Modify VNF Information operation . 63
5.3.7 Flow of the Get Operation Status operation . 64
5.3.8 Flow of managing subscriptions . 65
5.3.9 Flow of sending notifications. 67
5.3.10 Flow of retrying a VNF lifecycle management operation . 68
5.3.11 Flow of rolling back a VNF lifecycle management operation . 69
5.3.12 Flow of failing a VNF lifecycle management operation . 70
5.3.13 Flow of cancelling a VNF lifecycle management operation . 71
5.4 Resources . 73
5.4.1 Introduction. 73
5.4.1a Resource: API versions . 73
5.4.2 Resource: VNF instances . 74
5.4.2.1 Description . 74
5.4.2.2 Resource definition . 74
5.4.2.3 Resource methods . 74
5.4.2.3.1 POST . 74
5.4.2.3.2 GET . 74
5.4.2.3.3 PUT . 75
5.4.2.3.4 PATCH . 75
5.4.2.3.5 DELETE . 75
ETSI
---------------------- Page: 4 ----------------------
5 ETSI GS NFV-SOL 002 V2.5.1 (2018-09)
5.4.3 Resource: Individual VNF instance . 76
5.4.3.1 Description . 76
5.4.3.2 Resource definition . 76
5.4.3.3 Resource methods . 76
5.4.3.3.1 POST . 76
5.4.3.3.2 GET . 76
5.4.3.3.3 PUT . 77
5.4.3.3.4 PATCH . 77
5.4.3.3.5 DELETE . 77
5.4.4 Resource: Instantiate VNF task . 78
5.4.4.1 Description . 78
5.4.4.2 Resource definition . 78
5.4.4.3 Resource methods . 78
5.4.4.3.1 POST . 78
5.4.4.3.2 GET . 79
5.4.4.3.3 PUT . 79
5.4.4.3.4 PATCH . 79
5.4.4.3.5 DELETE . 79
5.4.5 Resource: Scale VNF task . 79
5.4.5.1 Description . 79
5.4.5.2 Resource definition . 80
5.4.5.3 Resource methods . 80
5.4.5.3.1 POST . 80
5.4.5.3.2 GET . 81
5.4.5.3.3 PUT . 81
5.4.5.3.4 PATCH . 81
5.4.5.3.5 DELETE . 81
5.4.6 Resource: Scale VNF to Level task . 82
5.4.6.1 Description . 82
5.4.6.2 Resource definition . 82
5.4.6.3 Resource methods . 82
5.4.6.3.1 POST . 82
5.4.6.3.2 GET . 83
5.4.6.3.3 PUT . 83
5.4.6.3.4 PATCH . 83
5.4.6.3.5 DELETE . 83
5.4.7 Resource: Change VNF Flavour task . 84
5.4.7.1 Description . 84
5.4.7.2 Resource definition . 84
5.4.7.3 Resource methods . 84
5.4.7.3.1 POST . 84
5.4.7.3.2 GET . 85
5.4.7.3.3 PUT . 85
5.4.7.3.4 PATCH . 85
5.4.7.3.5 DELETE . 85
5.4.8 Resource: Terminate VNF task . 86
5.4.8.1 Description . 86
5.4.8.2 Resource definition . 86
5.4.8.3 Resource methods . 86
5.4.8.3.1 POST . 86
5.4.8.3.2 GET . 87
5.4.8.3.3 PUT . 87
5.4.8.3.4 PATCH . 87
5.4.8.3.5 DELETE . 87
5.4.9 Resource: Heal VNF task .
...