blob: 41ba545e0c7ad82f7ad76610db6bd5c062ab4bfb [file] [log] [blame]
Thomas Vachuska8ca75a22017-08-24 16:12:59 -07001submodule openconfig-pf-interfaces {
2 belongs-to openconfig-policy-forwarding {
3 prefix "oc-pf";
4 }
5
6 import openconfig-extensions { prefix "oc-ext"; }
7 import openconfig-interfaces { prefix "oc-if"; }
8
9 include openconfig-pf-forwarding-policies;
10
11 organization
12 "OpenConfig working group";
13
14 contact
15 "OpenConfig working group
16 www.openconfig.net";
17
18 description
19 "This submodule contains groupings related to the association
20 between interfaces and policy forwarding rules.";
21
22 oc-ext:openconfig-version "0.2.0";
23
24 revision "2017-06-21" {
25 description
26 "Amend policy forwarding model based on ACL changes.";
27 reference "0.2.0";
28 }
29
30 revision "2017-02-28" {
31 description
32 "Initial public release of policy forwarding.";
33 reference "0.1.0";
34 }
35
36 revision "2016-11-08" {
37 description
38 "Initial revision";
39 reference "0.0.1";
40 }
41
42
43 grouping pf-interfaces-structural {
44 description
45 "Structural grouping for interface to forwarding policy bindings
46 within the policy-forwarding model.";
47
48 container interfaces {
49 description
50 "Configuration and operational state relating policy
51 forwarding on interfaces.";
52
53 list interface {
54 key "interface-id";
55
56 description
57 "Configuration and operationals state relating to the
58 relationship between interfaces and policy-based forwarding
59 rules.";
60
61 leaf interface-id {
62 type leafref {
63 path "../config/interface-id";
64 }
65 description
66 "A reference to the unique identifier for the interface
67 being referenced by the policy.";
68 }
69
70 container config {
71 description
72 "Configuration parameters relating to an interface to
73 policy forwarding rule binding.";
74
75 uses pf-interface-config;
76 }
77
78 container state {
79 config false;
80 description
81 "Operational state parameters relating to an interface to
82 policy forwarding rule binding.";
83
84 uses pf-interface-config;
85 }
86
87 uses oc-if:interface-ref;
88 }
89 }
90 }
91
92 grouping pf-interface-config {
93 description
94 "Configuration parameters relating to an interface to policy
95 forwarding rule binding.";
96
97 leaf interface-id {
98 type oc-if:interface-id;
99 description
100 "A unique identifier for the interface.";
101 }
102
103 leaf apply-forwarding-policy {
104 type leafref {
105 // We are at /network-instances/network-instance/
106 // policy-forwarding/interfaces/interface/config/
107 // apply-forwarding-policy
108 path "../../../../policies/policy/" +
109 "config/policy-id";
110 }
111 description
112 "The policy to be applied on the interface. Packets ingress on
113 the referenced interface should be compared to the match
114 criteria within the specified policy, and in the case that
115 these criteria are met, the forwarding actions specified
116 applied. These policies should be applied following quality of
117 service classification, and ACL actions if such entities are
118 referenced by the corresponding interface.";
119 }
120 }
121}