module itm-config { namespace "urn:opendaylight:vpnservice:itm:config"; prefix itm-config; import ietf-interfaces { prefix if; } import ietf-yang-types { prefix yang; } import ietf-inet-types { prefix inet; revision-date "2013-07-15"; } import odl-interface { prefix odlif; } import config { prefix config; revision-date 2013-04-05; } description "This YANG module defines automatic tunnel configuration."; revision "2015-11-02"; /* Tunnel Monitoring Knob */ container tunnel-monitor-enabled { leaf enabled { type boolean; default true; } } container tunnel-monitor-interval { leaf interval { type uint16 { range "5..30"; } default 10; } } /* Configuration data */ container vtep-config-schemas { list vtep-config-schema { key schema-name; leaf schema-name { type string; mandatory true; description "Schema name"; } leaf transport-zone-name { type string; mandatory true; description "Transport zone"; } leaf tunnel-type { type identityref { base odlif:tunnel-type-base; } } leaf port-name { type string; mandatory true; description "Port name"; } leaf vlan-id { type uint16 { range "0..4094"; } mandatory true; description "VLAN ID"; } leaf gateway-ip { type inet:ip-address; description "Gateway IP address"; } leaf subnet { type inet:ip-prefix; mandatory true; description "Subnet Mask in CIDR-notation string, e.g. 10.0.0.0/24"; } leaf exclude-ip-filter { type string; description "IP Addresses which needs to be excluded from the specified subnet. IP address range or comma separated IP addresses can to be specified. e.g: 10.0.0.1-10.0.0.20,10.0.0.30,10.0.0.35"; } list dpn-ids { key "DPN"; leaf DPN { type uint64; description "DPN ID"; } } } } /* Ip Address book keeping */ container vtep-ip-pools { config true; list vtep-ip-pool { key subnet-cidr; leaf subnet-cidr{ type string; } leaf-list available-ipaddress { type inet:ip-address; } leaf-list allocated-ipaddress { type inet:ip-address; } } } }