diff options
Diffstat (limited to 'src/plugins/yang/openconfig/openconfig-rsvp-sr-ext.yang')
-rw-r--r-- | src/plugins/yang/openconfig/openconfig-rsvp-sr-ext.yang | 400 |
1 files changed, 0 insertions, 400 deletions
diff --git a/src/plugins/yang/openconfig/openconfig-rsvp-sr-ext.yang b/src/plugins/yang/openconfig/openconfig-rsvp-sr-ext.yang deleted file mode 100644 index f9af96d..0000000 --- a/src/plugins/yang/openconfig/openconfig-rsvp-sr-ext.yang +++ /dev/null @@ -1,400 +0,0 @@ -module openconfig-rsvp-sr-ext { - yang-version "1"; - - namespace "http://openconfig.net/yang/rsvp-sr-ext"; - prefix "oc-sr-rsvp-ext"; - - import openconfig-extensions { prefix "oc-ext"; } - import openconfig-types { prefix "oc-types"; } - import openconfig-network-instance { prefix "oc-ni"; } - - organization - "OpenConfig working group"; - - contact - "OpenConfig working group - www.openconfig.net"; - - description - "This module adds extensions to the OpenConfig MPLS models to - provide extensions which allow the coexistence of RSVP-TE and - Segment Routing (SR) within the same network. It augments the - existing OpenConfig segment routing (SR) and RSVP-TE models - where required."; - - oc-ext:openconfig-version "0.2.0"; - - revision 2018-04-13 { - description - "Replace boolean with modes for measure-sr-traffic."; - reference "0.2.0"; - } - - revision 2017-03-06 { - description - "Initial revision."; - reference "0.1.0"; - } - - grouping bandwidth-measurement-global-state { - description - "Operational state parameters for bandwidth measurement which - apply globally to the device."; - - leaf effective-adjustment-interval { - type uint32; - units "seconds"; - description - "The effective adjustment interval that is being used by - the system. In the case that the adjustment-interval leaf - is set to a non-integer multiple of the collection-interval, - and the system does not support this, the value of this leaf - should reflect the effective value of the adjustment interval - that it has selected. In the case where no rounding of the - adjustment interval has occurred, this value should have the - same value as the adjustment-inerval leaf."; - } - } - - grouping bandwidth-measurement-global-config { - description - "Configuration parameters for bandwidth measurement which apply - globally to the device."; - - leaf measure-sr-traffic { - type enumeration { - enum MEASURE_ONLY { - description - "Only measure the SR traffic being sent via an interface, - and do not flood it into the IGP."; - } - enum MEASURE_AND_FLOOD { - description - "Measure the SR traffic being sent via an interface and - flood it into the IGP."; - } - } - description - "Parameter enabling SR traffic measurement - and optional flooding into IGP."; - reference - "draft-sitaraman-sr-rsvp-coexistence-rec-01"; - } - - // TODO(robjs): For future extension, traffic accounting for - // non-SR, non-RSVP traffic could be added here. e.g., LDP, - // BGP-LU etc. - - leaf collection-interval { - type uint32; - units "seconds"; - description - "The interval at which the collection of interface - statistics relating to non-RSVP-TE traffic should be - performed"; - reference - "draft-sitaraman-sr-rsvp-coexistence-rec-01"; - } - - leaf adjustment-interval { - type uint32; - units "seconds"; - description - "The interval after which an adjustment to the utilised - bandwidth on the interface is made. This value must be - greater than, or equal to, the collection interval for - statistics. This value is referred to as N in - draft-sitaraman-sr-rsvp-coexistence-rec-01. - - After N seconds have expired, the - arithmetic mean of the samples is taken, and this is - considered as the non-RSVP-TE utilisation of the - interface. In the case that the adjustment interval is - an integer >1 multiple of the collection interval, this - serves to provide smoothing of the collected bandwidth - statistics."; - reference - "draft-sitaraman-sr-rsvp-coexistence-rec-01"; - } - - leaf bandwidth-multiplier { - type decimal64 { - fraction-digits 4; - } - default 1.0000; - description - "A multiplier applied to the sampled bandwidth which - determines the value that is propagated to the IGP TED. - By default this value is 1.0000, and hence the actual - sampled value is flooded."; - } - } - - grouping bandwidth-measurement-update-config { - description - "Configuration parameters related to when the bandwidth - measurement information is used to update the IGP TED."; - - leaf update-trigger { - type enumeration { - enum ADJUSTED_MAX_RESERVABLE_PCT { - description - "Update of a new maximum reservable bandwidth IGP - TLV is based on the value changing >= X% of - the currently flooded adjusted-absolute-subscription-bw. - The percentage of this value that is used is specified - by the adjusted-max-reservable-bw-pct leaf."; - } - enum SR_TRAFFIC_PCT { - description - "Update of the new maximum reservable bandwidth IGP - TLV is based on the value changing >= X% of the last - calculated segment routing traffic utilisation for the - interface. The percentage delta of this value is - specified by the sr-traffic-pct leaf."; - } - } - description - "The trigger that should be used to determine when the IGP - TED is updated with new information as to the effective - maximum reservable bandwidth - (adjusted-absolute-subscription-bw)"; - } - - leaf adjusted-max-reservable-bw-pct { - when "../update-trigger = 'ADJUSTED_MAX_RESERVABLE_PCT'" { - description - "Only allow the adjusted-max-reservable-bw update trigger - to be specified when the update-trigger mode is specified - to be a percentage of the currently flooded value."; - } - type oc-types:percentage; - description - "The delta in the adjusted-max-reservable-bandwidth that - should trigger an update in the value which is flooded - through the IGP TED. - The delta is measured as a percentage of the - current adjusted value of the maximum reservable bandwidth - of the interface, as specified by the - adjusted-absolute-subscription-bw RSVP-TE leaf."; - reference - "draft-sitaraman-sr-rsvp-coexistence-rec-01"; - } - - leaf sr-traffic-pct { - when "../update-trigger = 'SR_TRAFFIC_PCT'" { - description - "Only allow the SR traffic percentage trigger to be - specified when the update trigger is defined to be a - percentage of the last calculated SR traffic value."; - } - type oc-types:percentage; - description - "The change in the calculated SR traffic on the interface - that should trigger an update in the value of the - maximum reservable bandwidth flooded through the IGP TED. - The value is specified as a percentage of the - last-calculated-sr-traffic state leaf."; - } - } - - grouping bandwidth-measurement-global-structural { - description - "Structural grouping for the measurement of segment routing - traffic, and its advertisement into the IGP TED."; - - container bandwidth-measurement { - description - "Configuration and operational state parameters related to - how bandwidth utilisation is measured and flooded into the - IGP."; - - container config { - description - "Configuration parameters relating to bandwidth - measurement."; - - uses bandwidth-measurement-global-config; - } - - container state { - config false; - description - "Operational state parameters relating to bandwidth - measurement"; - - uses bandwidth-measurement-global-config; - uses bandwidth-measurement-global-state; - } - - container update-trigger { - description - "Configuration and operational state parameters related - to the update trigger for flooding new bandwidth - information into the IGP."; - - container config { - description - "Configuration parameters related to the bandwidth - measurement update trigger."; - - uses bandwidth-measurement-update-config; - } - - container state { - config false; - description - "Operational state parameters related to the bandwidth - measurement update trigger."; - - uses bandwidth-measurement-update-config; - } - } - } - } - - augment "/oc-ni:network-instances/oc-ni:network-instance/" + - "oc-ni:mpls/oc-ni:te-global-attributes" { - description - "Add the bandwidth measurement parameters to MPLS global - traffic engineering hierarchy."; - - uses bandwidth-measurement-global-structural; - } - - grouping bandwidth-measurement-rsvp-te-adjusted-state { - description - "Logical grouping augmented into the RSVP-TE hierarchy to - provide an operational state value which reflects the - adjusted RSVP-TE available bandwidth."; - - leaf adjusted-absolute-subscription-bw { - type uint64; - units "kbps"; - description - "The adjusted absolute value (in kbps) of the - bandwidth which is reservable to RSVP-TE on the - local system. In the case that the bandwidth-measurement - configuration does not account for non-RSVP-TE traffic - then this value is equal to the - calculated-absolute-subscription-bw, in the case that - non-RSVP-TE traffic is being accounted for, it is lower - such that calculated-absolute-subscription-bw - - adjusted-absolute-subscription-bw = the current calculated - non-RSVP-TE traffic. - - This value reflects the last flooded value of the maximum - reservable bandwidth, or subscription."; - } - } - - augment "/oc-ni:network-instances/oc-ni:network-instance/" + - "oc-ni:mpls/oc-ni:signaling-protocols/oc-ni:rsvp-te/" + - "oc-ni:interface-attributes/oc-ni:interface/" + - "oc-ni:subscription/oc-ni:state" { - - description - "Augmentation to add the adjusted RSVP-TE available bandwidth - state to the RSVP-TE signaling protocol."; - - uses bandwidth-measurement-rsvp-te-adjusted-state; - } - - grouping bandwidth-measurement-intf-structural { - description - "Structural grouping containing interface bandwidth - measurement configuration and operational state - parameters."; - - container bandwidth-measurement { - description - "Configuration and operational state parameters relating to - per-interface bandwidth measurement. These parameters are - used in the case that RSVP-TE coexists with other MPLS - signaling protocols on an interface."; - - container state { - config false; - description - "Operational state parameters relating to the containing - interface's bandwidth measurement."; - - uses bandwidth-measurement-intf-state; - } - } - } - - grouping bandwidth-measurement-intf-state { - description - "Operational state parameters per-interface for the measured - bandwidth on an interface"; - - leaf last-sample-time { - type oc-types:timeticks64; - description - "The time at which the last sample of bandwidth utilisation - for both RSVP-TE and non-RSVP-TE traffic was taken. This value - is represented in nanoseconds since the Unix epoch."; - } - - leaf last-sample-measured-rsvp-util { - type uint64; - units "kbps"; - description - "The measured RSVP-TE bandwidth utilisation at the last sample - (whose time is indicated in last-sample-time). This value is - expressed as a 64-bit unsigned integer representing the number - of kilobits per second that RSVP-TE traffic is consuming on - the interface."; - } - - leaf last-sample-measured-sr-util { - type uint64; - units "kbps"; - description - "The measured Segment Routing bandwidth utilisation at the - last sample (whose time is indicated in last-sample-time). - This value is expressed as a 64-bit unsigned integer - representing the number of kilobits per second that Segment - Routing traffic is consuming on the interface."; - } - - leaf last-calculated-time { - type oc-types:timeticks64; - description - "The time at which the last calculated value for bandwidth - utilisation was performed."; - } - - leaf last-calculated-sr-utilisation { - type uint64; - description - "The last calculated value of the Segment Routing utilisation - (taken post any averaging or adjustment that occurs). This - value is updated regardless of whether the value was flooded - or not."; - } - - leaf last-flooded-time { - type oc-types:timeticks64; - description - "The time, expressed in nanoseconds since the epoch, at which - the bandwidth utilisation of non-RSVP-TE traffic resulted in - the value being flooded in the IGP. If the configuration of the - local system specifies a 0% change requires flooding, this leaf - will always reflect the value of the last-calculated-time. In - systems that have suppression due to a >0% delta being required - then it indicates the last time that the percentage threshold - was exceeded."; - } - } - - augment "/oc-ni:network-instances/oc-ni:network-instance/oc-ni:mpls" + - "/oc-ni:te-interface-attributes/oc-ni:interface" { - description - "Augment the per-interface bandwidth measurement parameters into the - MPLS hierarchy of network instance."; - - uses bandwidth-measurement-intf-structural; - } -} |