Fixing issues with ARP integration of VpnService
[vpnservice.git] / itm / itm-api / src / main / yang / itm-state.yang
1 module itm-state {
2
3       namespace "urn:opendaylight:params:xml:ns:yang:itm:op";
4
5       prefix itm-state;
6
7       import ietf-interfaces {
8           prefix if;
9       }
10
11       import ietf-yang-types {
12           prefix yang;
13       }
14
15       import ietf-inet-types {
16           prefix inet;
17           revision-date "2010-09-24";
18       }
19
20       description "This YANG module defines operation part of the model.";
21
22       revision "2015-07-01";
23
24         /* Operational state */
25
26       container tunnels {
27
28         list DPN-TEPs-info {
29
30           key "DPN-ID";
31
32           leaf DPN-ID {
33                    type uint64;
34           }
35           leaf up {
36              type boolean;
37              config false;
38           }
39
40           /* Minimum 1 port. We may for now support only two ports */
41           list tunnel-end-points {
42
43                key "portname VLAN-ID ip-address"; /* Multiple tunnels on the same physical port but on different VLAN can be supported */
44
45                  leaf portname {
46                      type string;
47                      }
48                  leaf VLAN-ID {
49                      type uint16;
50                      }
51                  leaf ip-address {
52                      type inet:ip-address;
53                  }
54                  leaf subnet-mask {
55                      type inet:ip-prefix;
56                  }
57                  leaf gw-ip-address {
58                           type inet:ip-address;
59                  }
60                  leaf transport-zone {
61                           type string;
62                  }
63                  leaf interface-name {
64                           type string;
65                  }
66                  leaf tunnel-type {
67                       type string;
68                  }
69            }
70
71          }
72       }
73
74
75       container tunnels_state {
76              list state-tunnel-list {
77
78                key  "source-DPN destination-DPN";
79
80                leaf source-DPN {
81                    type uint64;
82                }
83
84                leaf destination-DPN {
85                    type uint64;
86                }
87
88                /* logical-group interface id */
89
90                leaf logical-tunnel-group-name {
91                     type string;
92                     config false;
93                }
94
95                leaf logical-tunnel-state {
96                     type boolean;
97                     config false;
98                }
99
100              }
101           }
102
103           rpc get-tunnel-id {
104
105              input {
106                 leaf source-dpn {
107                     type uint64;
108                 }
109                 leaf destination-dpn {
110                     type uint64;
111                 }
112              }
113
114              output {
115                      leaf logical-group-name {
116                         type string;
117                      }
118              }
119
120           }
121           
122           notification itm-tunnel-build-complete{
123           }
124
125 }