4 namespace "urn:opendaylight:vpnservice:neutronvpn";
7 import ietf-yang-types { prefix "yang"; }
9 revision "2015-06-02" {
10 description "Neutron based L3Service Module, provides integration of ODL VPN service with Neutron NSF";
18 description "UUID representing the subnet ";
23 description "Specifies the subnet IP in CIDR format";
28 description "The UUID of the tenant that will own the subnet.";
33 description "UUID representing the network ";
38 description "router to which this subnet belongs";
43 description "VPN to which this subnet belongs";
52 container networkMaps{
58 description "UUID representing the network";
61 leaf-list subnet-id-list {
63 description "List of UUIDs representing the subnets associated to the network";
68 grouping l3vpn-instance{
78 description "VPN name";
83 description "The UUID of the tenant that will own the subnet.";
86 leaf-list route-distinguisher {
89 "configures a route distinguisher (RD) for the VPN instance.
90 Format is ASN:nn or IP-address:nn.";
96 "configures a list of import route target.
97 Format is ASN:nn or IP-address:nn.";
103 "configures a list of export route targets.
104 Format is ASN:nn or IP-address:nn.";
109 description "UUID of router ";
112 leaf-list network-ids {
114 description "UUID representing the network ";
123 description "vpn-id";
127 description "vpn name";
131 description "The UUID of the tenant that will own the subnet.";
136 description "UUID of router ";
138 leaf-list network_ids {
140 description "UUID representing the network ";
145 /* Data models to adhere to restart requirements */
146 container neutron-port-data {
147 list port-name-to-port-uuid {
149 leaf port-id { type yang:uuid;}
150 leaf port-name { type string;}
152 list port-fixedip-to-port-name {
154 leaf port-name { type string;}
155 leaf port-fixedip { type string;}
159 /* container for DHCP Configuration */
160 container dhcp-config {
162 leaf lease-duration {
164 description "default lease duration for dhcp lease.
167 leaf default-domain {
169 description "default domain-name. used in dhcp reply";
175 description "Create one or more L3 VPN";
184 description "Status response for createVPN RPC";
189 rpc associateRouter {
190 description "associates a router with L3VPN";
195 description "vpn-id";
200 description "vpn-id";
205 rpc dissociateRouter {
206 description "dissociates a router with L3VPN";
211 description "vpn-id";
216 description "router-id";
221 rpc associateNetworks {
222 description "associates a list of networks with L3VPN";
227 description "vpn-id";
229 leaf-list network-id {
231 description "network-id";
237 description "Status response for associateNetworks RPC";
242 rpc dissociateNetworks{
243 description "dissociates a list of networks with L3VPN";
248 description "vpn-id";
250 leaf-list network-id {
252 description "network-id";
258 description "Status response for dissociateNetworks RPC";
264 description "delete VPNs for specified Id list";
268 description "vpn-id";
274 description "Status response for deleteL3VPN RPC";
280 description "returns VPN configuration";
284 description "vpn-id";
288 list l3vpn-instances {