Jump to: navigation, search

Difference between revisions of "Neutron/sdnapi"

Line 1: Line 1:
 
This page is for SDN APIs between OpenStack and SDN Controller.
 
This page is for SDN APIs between OpenStack and SDN Controller.
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
Disclaimer
 +
THIS SPECIFICATION IS PROVIDED "AS IS" WITH NO WARRANTIES WHATSOEVER, INCLUDING ANY WARRANTY OF MERCHANTABILITY, NONINFRINGEMENT, FITNESS FOR ANY PARTICULAR PURPOSE, OR ANY WARRANTY OTHERWISE ARISING OUT OF ANY PROPOSAL, SPECIFICATION OR SAMPLE.
 +
Without limitation, ONF disclaims all liability, including liability for infringement of any proprietary rights, relating to use of information in this specification and to the implementation of this specification, and ONF disclaims all liability for cost of procurement of substitute goods or services, lost profits, loss of use, loss of data or any incidental, consequential, direct, indirect, or special damages, whether under contract, tort, warranty or otherwise, arising in any way out of use or reliance upon this specification or any information herein.
 +
No license, express or implied, by estoppel or otherwise, to any Open Networking Foundation or Open Networking Foundation member intellectual property rights is granted herein.
 +
Except that a license is hereby granted by ONF to copy and reproduce this specification for internal use only.
 +
Contact the Open Networking Foundation at https://www.opennetworking.org for information on specification licensing through membership agreements.
 +
Any marks and brands contained herein are the property of their respective owners.
 +
 +
1 INTRODUCTION 5
 +
2 ABBREVIATIONS AND ACRONYMS 5
 +
3 L3VPN OVERVIEW 5
 +
3.1 UML MODEL 5
 +
3.2 ELEMENTS DESCRIPTION 6
 +
4 L3VPN INSTANCE 6
 +
4.1 UML MODEL 6
 +
4.2 ELEMENT DESCRIPTION 6
 +
5 BACK MATTER 7
 +
5.1 REFERENCES 7
 +
5.2 RELEASE HISTORY 8
 +
5.3 CONTRIBUTORS 8
 +
 +
List of Figures
 +
Figure 1 High Level L3VPN Architecture 5
 +
Figure 2 L3VPN Instance Model 6
 +
 +
List of Tables
 +
Table 1 L3VPN Instance Attributes 7
 +
 +
 +
About this document
 +
 +
Summary
 +
This document describes NBI information model for L3VPN.
 +
A L3VPN instance contains a set of access interfaces in network devices, its topology, address family, and other attributes.
 +
Keywords
 +
NBI, SDN controller, L3VPN
 +
 +
1 Introduction
 +
This document describes NBI information model for L3VPN.
 +
A L3VPN model is the collection of L3VPN instances.
 +
A L3VPN instance contains a set of access interfaces in network devices, its topology, address family, and other attributes.
 +
 +
2 Abbreviations and Acronyms
 +
This document uses the following abbreviations and acronyms:
 +
API Applications Programming Interface
 +
NBI North Bound Interface
 +
CRUD        Create, Read, Update, Delete
 +
L3VPN Layer 3 VPN
 +
VACIF Virtual Access Interface
 +
VPN Virtual Private Network
 +
 +
3 L3VPN Information Model
 +
3.1 Overview
 +
3.1.1 UML Model
 +
 +
Figure 1 High Level L3VPN Architecture
 +
3.1.2 Elements Description
 +
The L3 VPN model contains multiple VPN Instances.
 +
3.2 L3VPN Instance
 +
3.2.1 UML Model
 +
 +
Figure 2 L3VPN Instance Model
 +
3.2.2 Element Description
 +
Attribute Type Required CRUD Default Value Constraints Note
 +
instanceName String Yes CRD N/A Maxlength = 64
 +
Pattern = ([^?]*) L3VPN instance name
 +
serviceType String enum No CRUD full-mesh full-mesh or hub-spoke Topology type
 +
afType String enum No CRUD ipv4uni ipv4uni or ipv6uni Address family type: IPv4 or IPv6
 +
acIf Id String Yes CRD N/A Length= 1~63 Access interface ID
 +
acIfAddr String No CRUD N/A Length = 0~255 Access interface address, IPv4 or IPv6
 +
acIfMask Unsigned byte No CRUD N/A 0 ~ 128 IP address mask length
 +
role String enum No CRUD edge-if edge-if or center-if center-if is only available in hub-spoke mode; center-if is the interface in hub node
 +
userName String No CRUD N/A Maxlength = 64
 +
Pattern = ([^?]*) User name for this access interface
 +
userPassword String No CRUD N/A Maxlength = 64
 +
Pattern = ([^?]*) User password for the access interface
 +
phyNodeId String No CRUD N/A Maxlength = 64
 +
Pattern = ([^?]*) Physical node ID
 +
phyAcIf String No CRUD N/A Maxlength = 64
 +
Pattern = ([^?]*) Physical access interface
 +
protocolType String enum No CRUD ospf bgp, ospf, or isis Protocol type
 +
protocolId Unsigned int No CRUD 0 N/A Valid only when protocol is IGP; it can be AS number
 +
remoteAsNumber String No CRUD N/A Length = 1 ~ 11 Valid only when protocol is BGP
 +
remotePeerAddr String No CRUD N/A Length = 0~255 Valid only when protocol is BGP
 +
Table 1 L3VPN Instance Attributes
 +
 +
4 L3VPN API example
 +
4.1 Restful API
 +
4.1.1 L3VPN Instance
 +
4.1.1.1 POST
 +
POST URI/netl3vpn/l3vpninstances
 +
 +
<l3vpninstances>
 +
  <l3vpninstance>
 +
    <instancename>vpninstance1</instancename>
 +
    <servicetype>full-mesh</servicetype>
 +
    <aftype>ipv4uni</aftype>
 +
    <acifs>
 +
      <acif>
 +
        <acifid>vpninstance1:port1</acifid>
 +
        <acifaddr>20.1.1.1</acifaddr>
 +
        <acifmask>24</acifmask>
 +
        <role>edge-if</role>
 +
        <username>user1</username>
 +
        <userpassword>userpass</userpassword>
 +
        <phynodeid>Node1</phynodeid>
 +
        <phyacif>Node1:Ethernet0/0/1</phyacif>
 +
        <protocol>
 +
          <protocoltype>ospf</protocoltype>
 +
          <igpattr>
 +
            <protocolid>1000</protocolid>
 +
          </igpattr>
 +
        </protocol>
 +
      </acif>
 +
      <acif>
 +
        ……
 +
      </acif>
 +
    </acifs>
 +
  </l3vpninstance>
 +
  <l3vpninstance>
 +
    ……
 +
  </l3vpninstance>
 +
</l3vpninstances>
 +
 +
4.1.1.2 GET
 +
 To get all instances
 +
GET URI/netl3vpn/l3vpninstances
 +
No HTTP message body.
 +
 +
 To get a single VPN instance
 +
GET URI/netl3vpn/l3vpninstances/{instancename}
 +
No HTTP message body.
 +
 +
 To get one or more VPN instances at a time
 +
GET URI/netl3vpn/l3vpninstances
 +
 +
<l3vpninstances>
 +
  <l3vpninstance>
 +
    <instancename>vpninstance1</instancename>
 +
  </l3vpninstance>
 +
  <l3vpninstance>
 +
    ……
 +
  </l3vpninstance>
 +
</l3vpninstances>
 +
 +
 Response
 +
<l3vpninstances>
 +
  <l3vpninstance>
 +
    <instancename>vpninstance1</instancename>
 +
    <servicetype>full-mesh</servicetype>
 +
    <aftype>ipv4uni</aftype>
 +
    <acifs>
 +
      <acif>
 +
        <acifid>vpninstance1:port1</acifid>
 +
        <acifaddr>20.1.1.1</acifaddr>
 +
        <acifmask>24</acifmask>
 +
        <role>edge-if</role>
 +
        <username>user1</username>
 +
        <userpassword>userpass</userpassword>
 +
        <phynodeid>Node1</phynodeid>
 +
        <phyacif>Node1:Ethernet0/0/1</phyacif>
 +
        <protocol>
 +
          <protocoltype>ospf</protocoltype>
 +
          <igpattr>
 +
            <protocolid>1000</protocolid>
 +
          </igpattr>
 +
        </protocol>
 +
      </acif>
 +
      <acif>
 +
        ……
 +
      </acif>
 +
    </acifs>
 +
  </l3vpninstance>
 +
  <l3vpninstance>
 +
    ……
 +
  </l3vpninstance>
 +
</l3vpninstances>
 +
 +
4.1.1.3 PUT
 +
PUT URI/netl3vpn/l3vpninstances
 +
 +
<l3vpninstances>
 +
  <l3vpninstance>
 +
    <instancename>vpninstance1</instancename>
 +
    <servicetype>full-mesh</servicetype>
 +
    <aftype>ipv4uni</aftype>
 +
    <acifs>
 +
      <acif>
 +
        <acifid>vpninstance1:port1</acifid>
 +
        <acifaddr>20.1.1.1</acifaddr>
 +
        <acifmask>24</acifmask>
 +
        <role>edge-if</role>
 +
        <username>user1</username>
 +
        <userpassword>userpass</userpassword>
 +
        <phynodeid>Node1</phynodeid>
 +
        <phyacif>Node1:Ethernet0/0/1</phyacif>
 +
        <protocol>
 +
          <protocoltype>ospf</protocoltype>
 +
          <igpattr>
 +
            <protocolid>1000</protocolid>
 +
          </igpattr>
 +
        </protocol>
 +
      </acif>
 +
      <acif>
 +
        ……
 +
      </acif>
 +
    </acifs>
 +
  </l3vpninstance>
 +
  <l3vpninstance>
 +
    ……
 +
  </l3vpninstance>
 +
</l3vpninstances>
 +
 +
4.1.1.4 DELETE
 +
 To delete a single VPN instance
 +
DELETE URI/netl3vpn/l3vpninstances/{instancename}
 +
No HTTP message body.
 +
 +
 To delete one or more instances
 +
DELETE URI/netl3vpn/l3vpninstances
 +
 +
<l3vpninstances>
 +
  <l3vpninstance>
 +
    <instancename>vpninstance1</instancename>
 +
  </l3vpninstance>
 +
  <l3vpninstance>
 +
    ……
 +
  </l3vpninstance>
 +
</l3vpninstances>
 +
4.1.2 Access Interface
 +
4.1.2.1 POST
 +
POST URI/netl3vpn/l3vpninstances/{instancename}/acifs
 +
 +
<acifs>
 +
  <acif>
 +
    <acifid>vpninstance1:port1</acifid>
 +
    <acifaddr>20.1.1.1</acifaddr>
 +
    <acifmask>24</acifmask>
 +
    <role>edge-if</role>
 +
    <username>user1</username>
 +
    <userpassword>userpass</userpassword>
 +
    <phynodeid>Node1</phynodeid>
 +
    <phyacif>Node1:Ethernet0/0/1</phyacif>
 +
    <protocol>
 +
      <protocoltype>ospf</protocoltype>
 +
      <igpattr>
 +
        <protocolid>1000</protocolid>
 +
      </igpattr>
 +
    </protocol>
 +
  </acif>
 +
  <acif>
 +
    ……
 +
  </acif>
 +
</acifs>
 +
 +
 +
4.1.2.2 GET
 +
 To get a single access interface
 +
GET URI/netl3vpn/l3vpninstances/{instancename}/acifs/{acifid}
 +
No HTTP message body.
 +
 +
 To get one or more access interfaces
 +
GET URI/netl3vpn/l3vpninstances/{instancename}/acifs
 +
<acifs>
 +
  <acif>
 +
    <acifid>vpninstance1:port1</acifid>
 +
  </acif>
 +
  <acif>
 +
    ……
 +
  </acif>
 +
</acifs>
 +
 +
 Response
 +
<acifs>
 +
  <acif>
 +
    <acifid>vpninstance1:port1</acifid>
 +
    <acifaddr>20.1.1.1</acifaddr>
 +
    <acifmask>24</acifmask>
 +
    <role>edge-if</role>
 +
    <username>user1</username>
 +
    <userpassword>userpass</userpassword>
 +
    <phynodeid>Node1</phynodeid>
 +
    <phyacif>Node1:Ethernet0/0/1</phyacif>
 +
    <protocol>
 +
      <protocoltype>ospf</protocoltype>
 +
      <igpattr>
 +
        <protocolid>1000</protocolid>
 +
      </igpattr>
 +
    </protocol>
 +
  </acif>
 +
  <acif>
 +
    ……
 +
  </acif>
 +
</acifs>
 +
 +
4.1.2.3 PUT
 +
PUT URI/netl3vpn/l3vpninstances/{instancename}/acifs
 +
 +
<acifs>
 +
  <acif>
 +
    <acifid>vpninstance1:port1</acifid>
 +
    <acifaddr>20.1.1.1</acifaddr>
 +
    <acifmask>24</acifmask>
 +
    <role>edge-if</role>
 +
    <username>user1</username>
 +
    <userpassword>userpass</userpassword>
 +
    <phynodeid>Node1</phynodeid>
 +
    <phyacif>Node1:Ethernet0/0/1</phyacif>
 +
    <protocol>
 +
      <protocoltype>ospf</protocoltype>
 +
      <igpattr>
 +
        <protocolid>1000</protocolid>
 +
      </igpattr>
 +
    </protocol>
 +
  </acif>
 +
  <acif>
 +
    ……
 +
  </acif>
 +
</acifs>
 +
 +
 +
4.1.2.4 DELETE
 +
 To delete a single access interface
 +
DELETE URI/netl3vpn/l3vpninstances/{instancename}/acifs/{acifid}
 +
No HTTP message body.
 +
 +
 To delete one or more access interfaces
 +
DELETE URI/netl3vpn/l3vpninstances/{instancename}/acifs
 +
<acifs>
 +
  <acif>
 +
    <acifid>vpninstance1:port1</acifid>
 +
  </acif>
 +
  <acif>
 +
    ……
 +
  </acif>
 +
</acifs>
 +
5 Back matter
 +
5.1 References
 +
 +
5.2 Release history
 +
 +
5.3 Contributors
 +
Xiaofeng Ji
 +
Zhaozeyu
 +
James Huang
 +
Felix Lu

Revision as of 07:36, 13 February 2015

This page is for SDN APIs between OpenStack and SDN Controller.





  Disclaimer THIS SPECIFICATION IS PROVIDED "AS IS" WITH NO WARRANTIES WHATSOEVER, INCLUDING ANY WARRANTY OF MERCHANTABILITY, NONINFRINGEMENT, FITNESS FOR ANY PARTICULAR PURPOSE, OR ANY WARRANTY OTHERWISE ARISING OUT OF ANY PROPOSAL, SPECIFICATION OR SAMPLE. Without limitation, ONF disclaims all liability, including liability for infringement of any proprietary rights, relating to use of information in this specification and to the implementation of this specification, and ONF disclaims all liability for cost of procurement of substitute goods or services, lost profits, loss of use, loss of data or any incidental, consequential, direct, indirect, or special damages, whether under contract, tort, warranty or otherwise, arising in any way out of use or reliance upon this specification or any information herein. No license, express or implied, by estoppel or otherwise, to any Open Networking Foundation or Open Networking Foundation member intellectual property rights is granted herein. Except that a license is hereby granted by ONF to copy and reproduce this specification for internal use only. Contact the Open Networking Foundation at https://www.opennetworking.org for information on specification licensing through membership agreements. Any marks and brands contained herein are the property of their respective owners.   1 INTRODUCTION 5 2 ABBREVIATIONS AND ACRONYMS 5 3 L3VPN OVERVIEW 5 3.1 UML MODEL 5 3.2 ELEMENTS DESCRIPTION 6 4 L3VPN INSTANCE 6 4.1 UML MODEL 6 4.2 ELEMENT DESCRIPTION 6 5 BACK MATTER 7 5.1 REFERENCES 7 5.2 RELEASE HISTORY 8 5.3 CONTRIBUTORS 8

List of Figures Figure 1 High Level L3VPN Architecture 5 Figure 2 L3VPN Instance Model 6

List of Tables Table 1 L3VPN Instance Attributes 7

  About this document

Summary This document describes NBI information model for L3VPN. A L3VPN instance contains a set of access interfaces in network devices, its topology, address family, and other attributes. Keywords NBI, SDN controller, L3VPN   1 Introduction This document describes NBI information model for L3VPN. A L3VPN model is the collection of L3VPN instances. A L3VPN instance contains a set of access interfaces in network devices, its topology, address family, and other attributes.

2 Abbreviations and Acronyms This document uses the following abbreviations and acronyms: API Applications Programming Interface NBI North Bound Interface CRUD Create, Read, Update, Delete L3VPN Layer 3 VPN VACIF Virtual Access Interface VPN Virtual Private Network

3 L3VPN Information Model 3.1 Overview 3.1.1 UML Model

Figure 1 High Level L3VPN Architecture 3.1.2 Elements Description The L3 VPN model contains multiple VPN Instances. 3.2 L3VPN Instance 3.2.1 UML Model

Figure 2 L3VPN Instance Model 3.2.2 Element Description Attribute Type Required CRUD Default Value Constraints Note instanceName String Yes CRD N/A Maxlength = 64 Pattern = ([^?]*) L3VPN instance name serviceType String enum No CRUD full-mesh full-mesh or hub-spoke Topology type afType String enum No CRUD ipv4uni ipv4uni or ipv6uni Address family type: IPv4 or IPv6 acIf Id String Yes CRD N/A Length= 1~63 Access interface ID acIfAddr String No CRUD N/A Length = 0~255 Access interface address, IPv4 or IPv6 acIfMask Unsigned byte No CRUD N/A 0 ~ 128 IP address mask length role String enum No CRUD edge-if edge-if or center-if center-if is only available in hub-spoke mode; center-if is the interface in hub node userName String No CRUD N/A Maxlength = 64 Pattern = ([^?]*) User name for this access interface userPassword String No CRUD N/A Maxlength = 64 Pattern = ([^?]*) User password for the access interface phyNodeId String No CRUD N/A Maxlength = 64 Pattern = ([^?]*) Physical node ID phyAcIf String No CRUD N/A Maxlength = 64 Pattern = ([^?]*) Physical access interface protocolType String enum No CRUD ospf bgp, ospf, or isis Protocol type protocolId Unsigned int No CRUD 0 N/A Valid only when protocol is IGP; it can be AS number remoteAsNumber String No CRUD N/A Length = 1 ~ 11 Valid only when protocol is BGP remotePeerAddr String No CRUD N/A Length = 0~255 Valid only when protocol is BGP Table 1 L3VPN Instance Attributes

4 L3VPN API example 4.1 Restful API 4.1.1 L3VPN Instance 4.1.1.1 POST POST URI/netl3vpn/l3vpninstances

<l3vpninstances>

 <l3vpninstance>
   <instancename>vpninstance1</instancename>
   <servicetype>full-mesh</servicetype>
   <aftype>ipv4uni</aftype>
   <acifs>
     <acif>
       <acifid>vpninstance1:port1</acifid>
       <acifaddr>20.1.1.1</acifaddr>
       <acifmask>24</acifmask>
       <role>edge-if</role>
       <username>user1</username>
       <userpassword>userpass</userpassword>
       <phynodeid>Node1</phynodeid>
       <phyacif>Node1:Ethernet0/0/1</phyacif>
       <protocol>
         <protocoltype>ospf</protocoltype>
         <igpattr>
           <protocolid>1000</protocolid>
         </igpattr>
       </protocol>
     </acif>
     <acif>
       ……
     </acif>
   </acifs>
 </l3vpninstance>
 <l3vpninstance>
   ……
 </l3vpninstance>

</l3vpninstances>

4.1.1.2 GET  To get all instances GET URI/netl3vpn/l3vpninstances No HTTP message body.

 To get a single VPN instance GET URI/netl3vpn/l3vpninstances/{instancename} No HTTP message body.

 To get one or more VPN instances at a time GET URI/netl3vpn/l3vpninstances

<l3vpninstances>

 <l3vpninstance>
   <instancename>vpninstance1</instancename>
 </l3vpninstance>
 <l3vpninstance>
   ……
 </l3vpninstance>

</l3vpninstances>

 Response <l3vpninstances>

 <l3vpninstance>
   <instancename>vpninstance1</instancename>
   <servicetype>full-mesh</servicetype>
   <aftype>ipv4uni</aftype>
   <acifs>
     <acif>
       <acifid>vpninstance1:port1</acifid>
       <acifaddr>20.1.1.1</acifaddr>
       <acifmask>24</acifmask>
       <role>edge-if</role>
       <username>user1</username>
       <userpassword>userpass</userpassword>
       <phynodeid>Node1</phynodeid>
       <phyacif>Node1:Ethernet0/0/1</phyacif>
       <protocol>
         <protocoltype>ospf</protocoltype>
         <igpattr>
           <protocolid>1000</protocolid>
         </igpattr>
       </protocol>
     </acif>
     <acif>
       ……
     </acif>
   </acifs>
 </l3vpninstance>
 <l3vpninstance>
   ……
 </l3vpninstance>

</l3vpninstances>

4.1.1.3 PUT PUT URI/netl3vpn/l3vpninstances

<l3vpninstances>

 <l3vpninstance>
   <instancename>vpninstance1</instancename>
   <servicetype>full-mesh</servicetype>
   <aftype>ipv4uni</aftype>
   <acifs>
     <acif>
       <acifid>vpninstance1:port1</acifid>
       <acifaddr>20.1.1.1</acifaddr>
       <acifmask>24</acifmask>
       <role>edge-if</role>
       <username>user1</username>
       <userpassword>userpass</userpassword>
       <phynodeid>Node1</phynodeid>
       <phyacif>Node1:Ethernet0/0/1</phyacif>
       <protocol>
         <protocoltype>ospf</protocoltype>
         <igpattr>
           <protocolid>1000</protocolid>
         </igpattr>
       </protocol>
     </acif>
     <acif>
       ……
     </acif>
   </acifs>
 </l3vpninstance>
 <l3vpninstance>
   ……
 </l3vpninstance>

</l3vpninstances>

4.1.1.4 DELETE  To delete a single VPN instance DELETE URI/netl3vpn/l3vpninstances/{instancename} No HTTP message body.

 To delete one or more instances DELETE URI/netl3vpn/l3vpninstances

<l3vpninstances>

 <l3vpninstance>
   <instancename>vpninstance1</instancename>
 </l3vpninstance>
 <l3vpninstance>
   ……
 </l3vpninstance>

</l3vpninstances> 4.1.2 Access Interface 4.1.2.1 POST POST URI/netl3vpn/l3vpninstances/{instancename}/acifs

<acifs>

 <acif>
   <acifid>vpninstance1:port1</acifid>
   <acifaddr>20.1.1.1</acifaddr>
   <acifmask>24</acifmask>
   <role>edge-if</role>
   <username>user1</username>
   <userpassword>userpass</userpassword>
   <phynodeid>Node1</phynodeid>
   <phyacif>Node1:Ethernet0/0/1</phyacif>
   <protocol>
     <protocoltype>ospf</protocoltype>
     <igpattr>
       <protocolid>1000</protocolid>
     </igpattr>
   </protocol>
 </acif>
 <acif>
   ……
 </acif>

</acifs>


4.1.2.2 GET  To get a single access interface GET URI/netl3vpn/l3vpninstances/{instancename}/acifs/{acifid} No HTTP message body.

 To get one or more access interfaces GET URI/netl3vpn/l3vpninstances/{instancename}/acifs <acifs>

 <acif>
   <acifid>vpninstance1:port1</acifid>
 </acif>
 <acif>
   ……
 </acif>

</acifs>

 Response <acifs>

 <acif>
   <acifid>vpninstance1:port1</acifid>
   <acifaddr>20.1.1.1</acifaddr>
   <acifmask>24</acifmask>
   <role>edge-if</role>
   <username>user1</username>
   <userpassword>userpass</userpassword>
   <phynodeid>Node1</phynodeid>
   <phyacif>Node1:Ethernet0/0/1</phyacif>
   <protocol>
     <protocoltype>ospf</protocoltype>
     <igpattr>
       <protocolid>1000</protocolid>
     </igpattr>
   </protocol>
 </acif>
 <acif>
   ……
 </acif>

</acifs>

4.1.2.3 PUT PUT URI/netl3vpn/l3vpninstances/{instancename}/acifs

<acifs>

 <acif>
   <acifid>vpninstance1:port1</acifid>
   <acifaddr>20.1.1.1</acifaddr>
   <acifmask>24</acifmask>
   <role>edge-if</role>
   <username>user1</username>
   <userpassword>userpass</userpassword>
   <phynodeid>Node1</phynodeid>
   <phyacif>Node1:Ethernet0/0/1</phyacif>
   <protocol>
     <protocoltype>ospf</protocoltype>
     <igpattr>
       <protocolid>1000</protocolid>
     </igpattr>
   </protocol>
 </acif>
 <acif>
   ……
 </acif>

</acifs>


4.1.2.4 DELETE  To delete a single access interface DELETE URI/netl3vpn/l3vpninstances/{instancename}/acifs/{acifid} No HTTP message body.

 To delete one or more access interfaces DELETE URI/netl3vpn/l3vpninstances/{instancename}/acifs <acifs>

 <acif>
   <acifid>vpninstance1:port1</acifid>
 </acif>
 <acif>
   ……
 </acif>

</acifs> 5 Back matter 5.1 References

5.2 Release history

5.3 Contributors Xiaofeng Ji Zhaozeyu James Huang Felix Lu