1、 ETSI GS NFV-SOL 002 V2.3.1 (2017-08) 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 Industr
2、y 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. GROUP SPECIFICATION ETSI ETSI GS NFV-SOL 002 V2.3.1 (2017-08)2 Reference DGS/NFV-SOL002 Keywords API, NFV, protocol ETSI 650
3、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 enregistre la Sous-Prfecture de Grasse (06) N 7803/88 Important notice The present document can be downloaded from: http:/www.e
4、tsi.org/standards-search 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 differen
5、ce 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
6、 of status. Information on the current status of this and other ETSI documents is available at https:/portal.etsi.org/TB/ETSIDeliverableStatus.aspx If you find errors in the present document, please send your comment to one of the following services: https:/portal.etsi.org/People/CommiteeSupportStaf
7、f.aspx 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 o
8、f ETSI. The copyright and the foregoing restriction extend to reproduction in all media. ETSI 2017. All rights reserved. DECTTM, PLUGTESTSTM, UMTSTMand the ETSI logo are trademarks of ETSI registered for the benefit of its Members. 3GPPTM and LTE are trademarks of ETSI registered for the benefit of
9、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 ETSI GS NFV-SOL 002 V2.3.1 (2017-08)3 Contents Intellectual Property Rights 14g3Foreword . 14g3Modal ver
10、bs terminology 14g31 Scope 15g32 References 15g32.1 Normative references . 15g32.2 Informative references 16g33 Definitions and abbreviations . 17g33.1 Definitions 17g33.2 Abbreviations . 17g34 General aspects . 18g34.1 Overview 18g34.2 URI structure and supported content formats . 18g34.3 Common pr
11、ocedures. 19g34.3.1 Introduction. 19g34.3.2 Attribute-based filtering 19g34.3.2.1 Overview and example (informative) 19g34.3.2.2 Specification 20g34.3.3 Attribute selectors . 21g34.3.3.1 Overview and example (informative) 21g34.3.3.2 Specification 21g34.3.3.2.1 GET request . 21g34.3.3.2.2 GET respon
12、se 22g34.3.4 Usage of HTTP header fields 22g34.3.4.1 Introduction . 22g34.3.4.2 Request header fields 22g34.3.4.3 Response header fields 23g34.3.5 Error reporting 23g34.3.5.1 Introduction . 23g34.3.5.2 General mechanism . 23g34.3.5.3 Type: ProblemDetails 23g34.3.5.4 Common error situations . 24g34.3
13、.5.5 Overview of HTTP error status codes . 25g34.4 Common data types 26g34.4.1 Structured data types . 26g34.4.1.1 Introduction . 26g34.4.1.2 Type: Object 26g34.4.1.3 Type: Link . 26g34.4.1.4 Type: KeyValuePairs 26g34.4.1.5 Type: VnfInstanceSubscriptionFilter 26g34.4.2 Simple data types and enumerat
14、ions . 27g34.4.2.1 Introduction . 27g34.4.2.2 Simple data types 27g34.4.2.3 Enumerations 28g34.5 Authorization of API requests and notifications 28g34.5.1 Introduction. 28g34.5.2 Flows (informative) 28g34.5.2.1 Authorization of API requests . 28g34.5.2.2 Authorization of notifications using the HTTP
15、 Basic authentication scheme . 30g34.5.2.3 Authorization of notifications using OAuth 2.0 31g34.5.3 Specification . 33g34.5.3.1 Introduction . 33g34.5.3.2 General mechanism . 33g34.5.3.3 Authorizing API requests 33g3ETSI ETSI GS NFV-SOL 002 V2.3.1 (2017-08)4 4.5.3.4 Authorizing the sending of notifi
16、cations . 34g34.5.3.5 Client roles 35g35 VNF Lifecycle Management interface . 35g35.1 Description . 35g35.2 Resource structure and methods . 36g35.3 Sequence diagrams (informative) . 39g35.3.1 Flow of the creation of a VNF instance resource 39g35.3.2 Flow of the deletion of a VNF instance resource 4
17、0g35.3.3 Flow of VNF lifecycle management operations triggered by task resources 40g35.3.4 Flow of automatic invocation of VNF scaling and VNF healing 43g35.3.5 Flow of the Query VNF operation 45g35.3.6 Flow of the Modify VNF Information operation 46g35.3.7 Flow of the Get Operation Status operation
18、 47g35.3.8 Flow of managing subscriptions . 48g35.3.9 Flow of sending notifications 49g35.3.10 Flow of retrying a VNF lifecycle management operation . 50g35.3.11 Flow of rolling back a VNF lifecycle management operation 51g35.3.12 Flow of failing a VNF lifecycle management operation . 53g35.3.13 Flo
19、w of cancelling a VNF lifecycle management operation . 54g35.4 Resources . 55g35.4.1 Introduction. 55g35.4.2 Resource: VNF instances 55g35.4.2.1 Description 55g35.4.2.2 Resource definition . 56g35.4.2.3 Resource methods . 56g35.4.2.3.1 POST . 56g35.4.2.3.2 GET . 56g35.4.2.3.3 PUT . 57g35.4.2.3.4 PAT
20、CH 57g35.4.2.3.5 DELETE 58g35.4.3 Resource: Individual VNF instance 58g35.4.3.1 Description 58g35.4.3.2 Resource definition . 58g35.4.3.3 Resource methods . 58g35.4.3.3.1 POST . 58g35.4.3.3.2 GET . 58g35.4.3.3.3 PUT . 59g35.4.3.3.4 PATCH 59g35.4.3.3.5 DELETE 60g35.4.4 Resource: Instantiate VNF task
21、61g35.4.4.1 Description 61g35.4.4.2 Resource definition . 61g35.4.4.3 Resource methods . 61g35.4.4.3.1 POST . 61g35.4.4.3.2 GET . 62g35.4.4.3.3 PUT . 62g35.4.4.3.4 PATCH 62g35.4.4.3.5 DELETE 62g35.4.5 Resource: Scale VNF task 62g35.4.5.1 Description 62g35.4.5.2 Resource definition . 63g35.4.5.3 Reso
22、urce methods . 63g35.4.5.3.1 POST . 63g35.4.5.3.2 GET . 64g35.4.5.3.3 PUT . 64g35.4.5.3.4 PATCH 64g35.4.5.3.5 DELETE 64g35.4.6 Resource: Scale VNF to Level task 65g35.4.6.1 Description 65g35.4.6.2 Resource definition . 65g35.4.6.3 Resource methods . 65g3ETSI ETSI GS NFV-SOL 002 V2.3.1 (2017-08)5 5.4
23、.6.3.1 POST . 65g35.4.6.3.2 GET . 66g35.4.6.3.3 PUT . 66g35.4.6.3.4 PATCH 66g35.4.6.3.5 DELETE 66g35.4.7 Resource: Change VNF Flavour task . 67g35.4.7.1 Description 67g35.4.7.2 Resource definition . 67g35.4.7.3 Resource methods . 67g35.4.7.3.1 POST . 67g35.4.7.3.2 GET . 68g35.4.7.3.3 PUT . 68g35.4.7
24、.3.4 PATCH 68g35.4.7.3.5 DELETE 68g35.4.8 Resource: Terminate VNF task . 69g35.4.8.1 Description 69g35.4.8.2 Resource definition . 69g35.4.8.3 Resource methods . 69g35.4.8.3.1 POST . 69g35.4.8.3.2 GET . 70g35.4.8.3.3 PUT . 70g35.4.8.3.4 PATCH 70g35.4.8.3.5 DELETE 70g35.4.9 Resource: Heal VNF task .
25、70g35.4.9.1 Description 70g35.4.9.2 Resource definition . 70g35.4.9.3 Resource methods . 71g35.4.9.3.1 POST . 71g35.4.9.3.2 GET . 72g35.4.9.3.3 PUT . 72g35.4.9.3.4 PATCH 72g35.4.9.3.5 DELETE 72g35.4.10 Resource: Operate VNF task 73g35.4.10.1 Description 73g35.4.10.2 Resource definition . 73g35.4.10.
26、3 Resource methods . 73g35.4.10.3.1 POST . 73g35.4.10.3.2 GET . 74g35.4.10.3.3 PUT . 74g35.4.10.3.4 PATCH 74g35.4.10.3.5 DELETE 74g35.4.11 Resource: Change external VNF connectivity task 75g35.4.11.1 Description 75g35.4.11.2 Resource definition . 75g35.4.11.3 Resource methods . 75g35.4.11.3.1 POST .
27、 75g35.4.11.3.2 GET . 76g35.4.11.3.3 PUT . 76g35.4.11.3.4 PATCH 76g35.4.11.3.5 DELETE 76g35.4.12 Resource: VNF LCM operation occurrences 76g35.4.12.1 Description 76g35.4.12.2 Resource definition . 76g35.4.12.3 Resource methods . 77g35.4.12.3.1 POST . 77g35.4.12.3.2 GET . 77g35.4.12.3.3 PUT . 78g35.4
28、.12.3.4 PATCH 78g35.4.12.3.5 DELETE 78g35.4.13 Resource: Individual VNF LCM operation occurrence 78g35.4.13.1 Description 78g35.4.13.2 Resource definition . 78g3ETSI ETSI GS NFV-SOL 002 V2.3.1 (2017-08)6 5.4.13.3 Resource methods . 79g35.4.13.3.1 POST . 79g35.4.13.3.2 GET . 79g35.4.13.3.3 PUT . 79g3
29、5.4.13.3.4 PATCH 79g35.4.13.3.5 DELETE 80g35.4.14 Resource: Retry operation task . 80g35.4.14.1 Description 80g35.4.14.2 Resource definition . 80g35.4.14.3 Resource methods . 80g35.4.14.3.1 POST . 80g35.4.14.3.2 GET . 81g35.4.14.3.3 PUT . 81g35.4.14.3.4 PATCH 81g35.4.14.3.5 DELETE 81g35.4.15 Resourc
30、e: Rollback operation task 82g35.4.15.1 Description 82g35.4.15.2 Resource definition . 82g35.4.15.3 Resource methods . 82g35.4.15.3.1 POST . 82g35.4.15.3.2 GET . 83g35.4.15.3.3 PUT . 83g35.4.15.3.4 PATCH 83g35.4.15.3.5 DELETE 83g35.4.16 Resource: Fail operation task 84g35.4.16.1 Description 84g35.4.
31、16.2 Resource definition . 84g35.4.16.3 Resource methods . 84g35.4.16.3.1 POST . 84g35.4.16.3.2 GET . 85g35.4.16.3.3 PUT . 85g35.4.16.3.4 PATCH 85g35.4.16.3.5 DELETE 85g35.4.17 Resource: Cancel operation task . 86g35.4.17.1 Description 86g35.4.17.2 Resource definition . 86g35.4.17.3 Resource methods
32、 . 86g35.4.17.3.1 POST . 86g35.4.17.3.2 GET . 87g35.4.17.3.3 PUT . 87g35.4.17.3.4 PATCH 87g35.4.17.3.5 DELETE 87g35.4.18 Resource: Subscriptions 88g35.4.18.1 Description 88g35.4.18.2 Resource definition . 88g35.4.18.3 Resource methods . 88g35.4.18.3.1 POST . 88g35.4.18.3.2 GET . 89g35.4.18.3.3 PUT .
33、 89g35.4.18.3.4 PATCH 89g35.4.18.3.5 DELETE 89g35.4.19 Resource: Individual subscription . 89g35.4.19.1 Description 89g35.4.19.2 Resource definition . 90g35.4.19.3 Resource methods . 90g35.4.19.3.1 POST . 90g35.4.19.3.2 GET . 90g35.4.19.3.3 PUT . 90g35.4.19.3.4 PATCH 91g35.4.19.3.5 DELETE 91g35.4.20
34、 Resource: Notification endpoint . 91g35.4.20.1 Description 91g3ETSI ETSI GS NFV-SOL 002 V2.3.1 (2017-08)7 5.4.20.2 Resource definition . 91g35.4.20.3 Resource methods . 92g35.4.20.3.1 POST . 92g35.4.20.3.2 GET . 92g35.4.20.3.3 PUT . 93g35.4.20.3.4 PATCH 93g35.4.20.3.5 DELETE 93g35.5 Data model . 93
35、g35.5.1 Introduction. 93g35.5.2 Resource and notification data types 93g35.5.2.1 Introduction . 93g35.5.2.2 Type: VnfInstance . 93g35.5.2.3 Type: CreateVnfRequest . 96g35.5.2.4 Type: InstantiateVnfRequest . 96g35.5.2.5 Type: ScaleVnfRequest . 97g35.5.2.6 Type: ScaleVnfToLevelRequest . 97g35.5.2.7 Ty
36、pe: ChangeVnfFlavourRequest. 97g35.5.2.8 Type: TerminateVnfRequest . 98g35.5.2.9 Type: HealVnfRequest 98g35.5.2.10 Type: OperateVnfRequest. 99g35.5.2.11 Type: ChangeExtVnfConnectivityRequest . 99g35.5.2.12 Type: VnfInfoModifications . 99g35.5.2.13 Type: VnfLcmOpOcc 101g35.5.2.14 Type: CancelMode 102
37、g35.5.2.15 Type: LccnSubscriptionRequest . 102g35.5.2.16 Type: LccnSubscription 103g35.5.2.17 Type: VnfLcmOperationOccurrenceNotification . 103g35.5.2.18 Type: VnfIdentifierCreationNotification 105g35.5.2.19 Type: VnfIdentifierDeletionNotification 105g35.5.3 Referenced structured data types 105g35.5
38、.3.1 Introduction . 105g35.5.3.2 Type: ExtVirtualLinkData 106g35.5.3.3 Type: ExtVirtualLinkInfo . 106g35.5.3.4 Type: ExtManagedVirtualLinkData 106g35.5.3.5 Type: ExtManagedVirtualLinkInfo. 107g35.5.3.6 Type: VnfExtCpData 107g35.5.3.7 Type: ScaleInfo . 107g35.5.3.8 Type: VnfcResourceInfo . 108g35.5.3
39、.9 Type: VnfVirtualLinkResourceInfo 108g35.5.3.10 Type: VirtualStorageResourceInfo . 108g35.5.3.11 Type: VnfLinkPort 109g35.5.3.12 Type: ExtLinkPort . 109g35.5.3.13 Type: ResourceHandle 109g35.5.3.14 Type: FixedNetworkAddressData . 110g35.5.3.15 Type: DynamicNetworkAddressData . 110g35.5.3.16 Type:
40、NetworkAddressInfo . 111g35.5.3.17 Type: MonitoringParameter 111g35.5.3.18 Type: LifecycleChangeNotificationsFilter 112g35.5.3.19 Type: AffectedVnfc 112g35.5.3.20 Type: AffectedVirtualLink 113g35.5.3.21 Type: AffectedVirtualStorage . 114g35.5.3.22 Type: LccnLinks . 114g35.5.3.23 Type: VnfcInfo 114g3
41、5.5.3.24 Type: VnfcInfoModifications . 115g35.5.4 Referenced simple data types and enumerations 115g35.5.4.1 Introduction . 115g35.5.4.2 Simple data types 115g35.5.4.3 Enumeration: VnfOperationalStateType . 115g35.5.4.4 Enumeration: StopType 116g35.5.4.5 Enumeration: LcmOperationType . 116g35.5.4.6
42、Enumeration: LcmOperationStateType . 116g35.5.4.7 Enumeration: CancelModeType . 116g3ETSI ETSI GS NFV-SOL 002 V2.3.1 (2017-08)8 5.6 Handling of errors during VNF lifecycle management operations . 117g35.6.1 Basic concepts (informative) 117g35.6.1.1 Motivation . 117g35.6.1.2 Failure resolution strate
43、gies: Retry and Rollback . 117g35.6.1.3 Error handling at VNFM and EM . 118g35.6.2 States and state transitions of a VNF lifecycle management operation occurrence 119g35.6.2.1 General 119g35.6.2.2 States of a VNF lifecycle management operation occurrence . 119g35.6.2.3 Error handling operations that
44、 change the state of a VNF lifecycle management operation occurrence . 122g35.6.3 Detailed flows . 123g35.6.3.1 Immediate failure 123g35.6.3.2 Failure in “STARTING“ state . 123g35.6.3.3 Failure during actual LCM operation execution . 124g35.6.3.4 LCM operation cancellation 126g36 VNF Performance Man
45、agement interface 126g36.1 Description . 126g36.2 Resource structure and methods . 126g36.3 Sequence diagrams (informative) . 127g36.3.1 Flow of creating a PM job 127g36.3.2 Flow of querying/reading PM jobs . 128g36.3.3 Flow of deleting a PM job 129g36.3.4 Flow of obtaining performance reports . 129
46、g36.3.5 Flow of creating a threshold . 130g36.3.6 Flow of querying/reading thresholds 131g36.3.7 Flow of deleting thresholds . 132g36.3.8 Flow of managing subscriptions . 132g36.3.9 Flow of sending notifications 134g36.4 Resources . 135g36.4.1 Introduction. 135g36.4.2 Resource: PM jobs 135g36.4.2.1
47、Description 135g36.4.2.2 Resource definition . 135g36.4.2.3 Resource methods . 135g36.4.2.3.1 POST . 135g36.4.2.3.2 GET . 136g36.4.2.3.3 PUT . 136g36.4.2.3.4 PATCH 137g36.4.2.3.5 DELETE 137g36.4.3 Resource: Individual PM job 137g36.4.3.1 Description 137g36.4.3.2 Resource definition . 137g36.4.3.3 Re
48、source methods . 137g36.4.3.3.1 POST . 137g36.4.3.3.2 GET . 137g36.4.3.3.3 PUT . 138g36.4.3.3.4 PATCH 138g36.4.3.3.5 DELETE 138g36.4.4 Resource: Individual performance report . 139g36.4.4.1 Description 139g36.4.4.2 Resource definition . 139g36.4.4.3 Resource methods . 139g36.4.4.3.1 POST . 139g36.4.
49、4.3.2 GET . 139g36.4.4.3.3 PUT . 140g36.4.4.3.4 PATCH 140g36.4.4.3.5 DELETE 140g36.4.5 Resource: Thresholds 140g36.4.5.1 Description 140g36.4.5.2 Resource definition . 140g36.4.5.3 Resource methods . 140g3ETSI ETSI GS NFV-SOL 002 V2.3.1 (2017-08)9 6.4.5.3.1 POST . 140g36.4.5.3.2 GET . 141g36.4.5.3.3 PUT . 142g36.4.5.3.4 PATCH 142g36.4.5.3.5 DELETE 142g36.4.6 Resource: Individual threshold . 142g36.4.6.1 Description 142g36.4.6.2 Resource definition . 142g36.4.6.3 Resource methods . 143g36.4.6.3.1 POST . 143g36.4.6.3.2 GET . 143g36.4.6.3.3 PUT . 143g36.4.6.3.4 PATCH 143g36.4.6.3.