/* * Copyright (c) 2016 Juniper Networks, Inc. * All rights reserved. */ module configuration { namespace "http://xml.juniper.net/xnm/1.1/xnm"; prefix junos; organization "Juniper Networks, Inc."; description "Junos YANG module for configuration hierarchies"; revision "2015-09-11" { description "Initial revision"; } typedef daemon { type string; } typedef filename { type string; } typedef client-filename { type string; } typedef hostname { type string; } typedef ipaddr { type string; } typedef sysid { type string; } typedef interface-device { type string; } typedef ddl-bits { type string; } typedef isoaddr { type string; } typedef ipprefix { type string; } typedef ipprefix-mandatory { type string; } typedef interface-unit { type string; } typedef ipaddr-or-interface { type string; } typedef areaid { type string; } typedef interface-name { type string; } typedef community { type string; } typedef interface-wildcard { type string; } typedef unreadable { type string; } typedef ipprefix-optional { type string; } typedef policy-algebra { type string; } typedef regular-expression { type string; } typedef group-glob { type string; } typedef atm-vci { type string; } typedef ipprefix-only { type string; } typedef ipv4addr { type string; } typedef ipv4prefix { type string; } typedef ipv4prefix-mandatory { type string; } typedef ipv4addr-or-interface { type string; } typedef ipv4prefix-optional { type string; } typedef ipv4prefix-only { type string; } typedef ipv6addr { type string; } typedef ipv6prefix { type string; } typedef ipv6prefix-mandatory { type string; } typedef ipv6addr-or-interface { type string; } typedef ipv6prefix-optional { type string; } typedef ipv6prefix-only { type string; } typedef interface-device-wildcard { type string; } typedef time { type string; } typedef mac-addr { type string; } typedef mac-addr-prefix { type string; } typedef mac-unicaset { type string; } typedef mac-unicast-prefix { type string; } typedef mac-multicast { type string; } typedef mac-multicast-prefix { type string; } typedef mpls-label { type string; } typedef unsigned-float { type string; } typedef isoprefix { type string; } typedef isosysid { type string; } typedef string-huge { type string; } typedef variable { type string; } typedef glob-variable { type string; } typedef vlan-range { type string; } typedef interface-range-wild { type string; } typedef fc-addr { type string; } typedef wwn { type string; } typedef logfilename { type string; } typedef range { type string; } typedef esi { type string; } container configuration { config true; uses juniper-config; list groups { key name; ordered-by user; description "Configuration groups"; uses juniper-group; } } grouping juniper-config { leaf rcsid { description "Revision control system identifier"; type string; } leaf version { description "Software version information"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } list dynamic-profiles { key name; ordered-by user; description "Dynamic profiles configuration"; uses juniper-dynamic-profile-object; } container system { description "System parameters"; uses juniper-system; } list logical-systems { key name; description "Logical systems"; uses juniper-logical-system; } container chassis { description "Chassis configuration"; uses chassis_type; } container services { description "Service PIC applications settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container analytics { presence "enable analytics"; description "Traffic analytics configuration options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Traffic analytics trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum all { description "Trace configuration events"; } enum configuration { description "Log configuration events"; } enum rtsock { description "Trace rtsock message events"; } enum client-server { description "Trace client-server events"; } enum interface { description "Trace interface update events"; } } } leaf disable { description "Disable this trace flag"; type empty; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "10"; type uint32 { range "2 .. 1000"; } } } container traffic-statistics { description "Traffic statistics configuration options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Log file information"; leaf filename { description "Name of file in which to write log information"; type filename; } leaf size { description "Maximum log file size"; type string; } leaf files { description "Maximum number of trace files"; default "10"; type uint32 { range "2 .. 1000"; } } } leaf interval { description "Traffic statistics polling interval"; units "seconds"; type uint32 { range "1 .. 300"; } } } container queue-statistics { description "Microburst statistics configuration options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Log file information"; leaf filename { description "Name of file in which to write log information"; type filename; } leaf size { description "Maximum log file size"; type string; } leaf files { description "Maximum number of trace files"; default "10"; type uint32 { range "2 .. 1000"; } } } leaf interval { description "Queue statistics polling interval"; units "milliseconds"; type uint32 { range "1 .. 1000"; } } } container interfaces { description "Interface configuration options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list interface { key name; description "(null)"; uses interface_type; } } container streaming-servers { description "Remote streaming servers configuration options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list address { key name; ordered-by user; description "IP address of remote server"; leaf name { description "IP address"; type ipaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list port { key name; description "Remote streaming server port number"; leaf name { description "Port number"; type uint32 { range "1 .. 65535"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf stream-format { description "Streaming data format"; default "csv"; type enumeration { enum csv { description "Comma separated value format"; } enum tsv { description "Tab separated value format"; } enum json { description "Juniper json format"; } } } list stream-type { key name; description "Type of statistics to stream"; leaf name { description "(null)"; type enumeration { enum traffic-statistics { description "Enable streaming of traffic statistics"; } enum queue-statistics { description "Enable streaming of queue statistics"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } list sensor { key name; ordered-by user; description "Define Telemetry sensors"; leaf name { description "Name of the sensor"; type string { length "1 .. 128"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf server-name { description "Define Telemetry server "; type string { length "1 .. 128"; } } leaf export-name { description "Define Telemetry export profiles"; type string { length "1 .. 128"; } } leaf polling-interval { description "Define sensor polling interval in nano secs (1 .. 4294967295)"; units "nanoseconds"; type uint32 { range "1 .. 4294967295"; } } leaf resource { description "System resource identifier string"; type string { length "1 .. 128"; } } } list streaming-server { key name; ordered-by user; description "Define Telemetry data servers"; leaf name { description "Telemetry App server Name"; type string { length "1 .. 128"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf remote-address { description "Telemetry server IP address"; type ipv4addr; } leaf remote-port { description "Telemetry server Port"; type uint16; } leaf scope-id { description "Telemetry server instance"; type uint32 { range "1 .. 255"; } } } list export-profile { key name; ordered-by user; description "Telemetry export profile name"; leaf name { description "Telemetry export profile name"; type string { length "1 .. 128"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf local-address { description "Telemetry client IP address"; type ipv4addr; } leaf local-port { description "Telemetry client IP address"; type uint16; } leaf reporting-rate { description "Telemetry interval in milli seconds"; units "milliseconds"; type uint32 { range "100 .. 3600000"; } } leaf format { description "Telemetry export record format"; type enumeration { enum jrf { description "Use jrf format"; } enum gpb { description "Use gpb format"; } enum gpb-sdm { description "Use gpb self-describing-message format"; } enum json { description "Use json format"; } enum csv { description "Use csv format"; } enum thrift { description "Use thrift format"; } } } leaf transport { description "Telemetry export transport protocol"; type enumeration { enum udp { description "Use UDP transport protocol"; } enum tcp { description "Use TCP transport protocol"; } enum file { description "Use FILE format"; } } } leaf timestamp { description "Telemetry server timestamp"; type enumeration { enum ptp { description "Use PTP timestamps on respose"; } enum ntp { description "Use NTP timestamps on response"; } } } } } container captive-portal-content-delivery { description "Configuration for captive portal and content delivery service"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Define a captive portal content delivery rule"; uses cpcd-rule-object-type; } list rule-set { key name; ordered-by user; description "Define a set of captive portal content delivery rules"; max-elements 16960; leaf name { description "Name of the rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Rule to be included in this rule set"; max-elements 16960; leaf name { description "Rule name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } list profile { key name; ordered-by user; description "One or more rule/rule set in the profile"; leaf name { description "Profile name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice cpcd_rules_choice { case case_1 { leaf dynamic { description "Dynamic profile flag"; type empty; } } case case_2 { list cpcd-rules { key name; ordered-by user; description "List of captive portal content delivery rules"; leaf name { description "(null)"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } case case_3 { list cpcd-rule-sets { key name; ordered-by user; description "List of captive portal content delivery rule sets"; leaf name { description "(null)"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } container ipda-rewrite-options { description "Ipda rewrite options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf destination-address { description "Default ipda rewrite IP address"; type ipaddr; } leaf destination-port { description "Default ipda rewrite port"; type uint16 { range "1 .. 65535"; } } } container http-redirect-options { description "Http redirect options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf url { description "URL of the captive portal file"; type string { } mandatory true; } presence "enable http-redirect-options"; } } container traceoptions { description "Captive portal and content delivery trace options"; uses cpcd-trace-options-type; } } container dynamic-flow-capture { description "Configure Dynamic Flow Capture parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf g-max-duplicates { description "Maximum content destinations for the capture group"; default "3"; type uint32 { range "1 .. 64"; } } leaf g-duplicates-dropped-periodicity { description "Periodicity of DuplicatesDropped notification in secs"; default "30"; type uint32 { range "1 .. 255"; } } list capture-group { key name; ordered-by user; description "Configure DFC group parameters"; max-elements 16; uses dfc_group_type; } container traceoptions { presence "enable traceoptions"; description "Trace options for dynamic-flow-capture service"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } } } container flow-tap { description "Configure flow-tap parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container family { description "Address family of packets to tap"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf inet { description "IPv4 family"; type empty; } leaf inet6 { description "IPv4 family"; type empty; } } leaf interface { description "Service interface on which to configure flow-tap service"; type interface-name; } leaf tunnel-interface { description "Tunnel interface through which flow-tap would communicate with MD"; type interface-name; } } container radius-flow-tap { description "Configure radius triggered flow-tap parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf forwarding-class { description "Forwarding class assigned to intercepted packets"; type string { } } leaf source-ipv4-address { description "IP Address to use as source address in IPv4 header appended to intercepted packets"; type ipv4addr; } leaf multicast-interception { description "Enable Multicast Tapping"; type empty; } container interfaces { description "Tunnel Interfaces"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list tunnel-interface { key name; description "(null)"; uses tunnel_interface_type; } } list policy { key name; ordered-by user; description "Policy"; leaf name { description "Policy Name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container inet { description "Protocol family IPv4 drop policy terms"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list drop-policy { key name; ordered-by user; description "Define an IPv4 drop policy"; uses drop-policy-term; } } container inet6 { description "Protocol family IPv6 drop policy terms"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list drop-policy { key name; ordered-by user; description "Define an IPv6 drop policy"; uses drop-policy6-term; } } } } container mobile-flow-tap { description "Configure mobile triggered flow-tap parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container source-interface { presence "enable source-interface"; description "Source interface from which IRI packets will be sent"; leaf interface-name { description "Interface name"; type interface-name; mandatory true; } leaf ipv4-address { description "Source IPv4 address to be used"; type ipv4addr; } } } container flow-monitoring { presence "enable flow-monitoring"; description "Configure flow monitoring"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container version9 { description "Version 9 configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list template { key name; ordered-by user; description "One or more version 9 templates"; max-elements 10; uses version9-template; } } container version-ipfix { description "Version IP-Fix configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list template { key name; ordered-by user; description "One or more version ip-fix templates"; max-elements 10; uses version-ipfix-template; } } } container jdaf { description "Juniper distributed application framework (JDAF)"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list routing-instances { description "List of routing-instance name for JDAF clients"; type string { length "1 .. 128"; } } } container rpm { presence "enable rpm"; description "Real-time performance monitoring"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "RMOPD trace options"; uses rmopd-traceoptions; } container bgp { description "BGP options for real-time performance monitoring"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf probe-type { description "RPM-BGP probe request type"; default "icmp-ping"; type enumeration { enum icmp-ping { description "Send ICMP echo request to target address"; } enum icmp-ping-timestamp { description "Send ICMP timestamp request to target address"; } enum icmp6-ping { description "Send ICMP6 echo request to target address"; } enum tcp-ping { description "Send TCP packets to target"; } enum udp-ping { description "Send UDP packets to target"; } enum udp-ping-timestamp { description "Send UDP packets with timestamp to target"; } } } leaf probe-count { description "Total number of probes per test"; default "1"; type uint32 { range "1 .. 15"; } } leaf probe-interval { description "Delay between probes"; default "3"; units "seconds"; type uint32 { range "1 .. 255"; } } leaf test-interval { description "Delay between tests"; default "1"; units "seconds"; type uint32 { range "0 .. 86400"; } } leaf destination-port { description "TCP/UDP port number 7, 49160 through 65535"; type uint16 { range "7 .. 65535"; } } leaf history-size { description "Number of stored history entries"; default "50"; type uint32 { range "0 .. 512"; } } leaf moving-average-size { description "Number of samples used for moving average"; default "0"; type uint32 { range "0 .. 1024"; } } leaf data-size { description "Size of the data portion of the probes"; default "0"; type uint32 { range "0 .. 65400"; } } leaf data-fill { description "Define contents of the data portion of the probes"; type string { length "1 .. 2048"; } } list logical-system { key name; description "Logical systems"; uses bgp-logical-system; } list routing-instances { key name; description "Routing instances"; uses bgp-routing-instances; } } list probe { key name; ordered-by user; description "TCP/UDP/ICMP ping"; leaf name { description "Name of owner"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list test { key name; ordered-by user; description "TCP/UDP/ICMP/ICMP6 ping test"; leaf name { description "Name of test"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf probe-type { description "Probe request type"; default "icmp-ping"; type enumeration { enum http-get { description "Perform HTTP Get request at target URL"; } enum http-metadata-get { description "Perform HTTP Get request of metadata at target URL"; } enum icmp-ping { description "Send ICMP echo request to target address"; } enum icmp-ping-timestamp { description "Send ICMP timestamp request to target address"; } enum icmp6-ping { description "Send ICMP6 echo request to target address"; } enum tcp-ping { description "Send TCP packets to target"; } enum udp-ping { description "Send UDP packets to target"; } enum udp-ping-timestamp { description "Send UDP packets with timestamp to target"; } } } container target { presence "enable target"; description "Target destination for probe"; choice target-type { case case_1 { leaf address { description "Address of target host"; type ipv4addr; } } case case_2 { leaf inet6-address { description "Inet6 Address of target host"; type ipv6addr; } } case case_3 { leaf url { description "Fully formed target URL"; type string; } } case case_4 { leaf inet6-url { description "Fully formed target IPV6 URL"; type string; } } } } container inet6-options { presence "enable inet6-options"; description "IPV6 related options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-address { description "Inet6 Source Address of the probe"; type ipv6addr; } } leaf probe-count { description "Total number of probes per test"; default "1"; type uint32 { range "1 .. 15"; } } leaf probe-interval { description "Delay between probes"; default "3"; units "seconds"; type uint32 { range "1 .. 255"; } } leaf test-interval { description "Delay between tests"; default "1"; units "seconds"; type uint32 { range "0 .. 86400"; } } leaf destination-port { description "TCP/UDP port number 7, 49160 through 65535"; type uint16 { range "7 .. 65535"; } } leaf source-address { description "Source address for probe"; type ipv4addr; } leaf routing-instance { description "Routing instance used by probes"; type string { } } leaf history-size { description "Number of stored history entries"; default "50"; type uint32 { range "0 .. 512"; } } leaf moving-average-size { description "Number of samples used for moving average"; default "0"; type uint32 { range "0 .. 1024"; } } leaf dscp-code-points { description "Differentiated Services code point bits or alias"; default "000000"; type string { } } leaf data-size { description "Size of the data portion of the probes"; default "0"; type uint32 { range "0 .. 65400"; } } leaf data-fill { description "Define contents of the data portion of the probes"; type string { length "1 .. 2048"; } } container thresholds { presence "enable thresholds"; description "Probe and test threshold values. Set 0 to disable respective threshold"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf successive-loss { description "Successive probe loss count indicating probe failure"; default "1"; type uint32 { range "0 .. 15"; } } leaf total-loss { description "Total probe loss count indicating test failure"; default "1"; type uint32 { range "0 .. 15"; } } leaf rtt { description "Maximum round trip time per probe"; default "0"; units "microseconds"; type uint32 { range "0 .. 60000000"; } } leaf jitter-rtt { description "Maximum jitter per test"; default "0"; units "microseconds"; type uint32 { range "0 .. 60000000"; } } leaf std-dev-rtt { description "Maximum standard deviation per test"; default "0"; units "microseconds"; type uint32 { range "0 .. 60000000"; } } leaf egress-time { description "Maximum source to destination time per probe"; default "0"; units "microseconds"; type uint32 { range "0 .. 60000000"; } } leaf ingress-time { description "Maximum destination to source time per probe"; default "0"; units "microseconds"; type uint32 { range "0 .. 60000000"; } } leaf jitter-ingress { description "Maximum destination to source jitter per test"; default "0"; units "microseconds"; type uint32 { range "0 .. 60000000"; } } leaf jitter-egress { description "Maximum source to destination jitter per test"; default "0"; units "microseconds"; type uint32 { range "0 .. 60000000"; } } leaf std-dev-ingress { description "Maximum destination to source standard deviation per test"; default "0"; units "microseconds"; type uint32 { range "0 .. 60000000"; } } leaf std-dev-egress { description "Maximum source to destination standard deviation per test"; default "0"; units "microseconds"; type uint32 { range "0 .. 60000000"; } } } leaf-list traps { description "Trap to send if threshold is met or exceeded"; type enumeration { enum probe-failure { description "Successive probe loss threshold reached"; } enum test-failure { description "Total probe loss threshold reached"; } enum test-completion { description "Test completed"; } enum rtt-exceeded { description "Exceeded maximum round trip time threshold"; } enum std-dev-exceeded { description "Exceeded round trip time standard deviation threshold"; } enum jitter-exceeded { description "Exceeded jitter in round trip time threshold"; } enum ingress-time-exceeded { description "Exceeded maximum ingress time threshold"; } enum ingress-std-dev-exceeded { description "Exceeded ingress time standard deviation threshold"; } enum ingress-jitter-exceeded { description "Exceeded jitter in ingress time threshold"; } enum egress-time-exceeded { description "Exceeded maximum egress time threshold"; } enum egress-std-dev-exceeded { description "Exceeded egress time standard deviation threshold"; } enum egress-jitter-exceeded { description "Exceeded jitter in egress time threshold"; } } } leaf destination-interface { description "Name of output interface for probes"; type interface-name; } leaf hardware-timestamp { description "Packet Forwarding Engine updates timestamps"; type empty; } leaf one-way-hardware-timestamp { description "Enable hardware timestamps for one-way measurements"; type empty; } leaf next-hop { description "Next-hop to which probe should be sent"; type ipv4addr; } } } container probe-server { description "ICMP/TCP/UDP probe server"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container icmp { description "ICMP probe server"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf destination-interface { description "Name of output interface for probes"; type interface-name; } } container tcp { description "TCP probe server"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port { description "Port number 7, 49160 through 65535"; type uint16; mandatory true; } presence "enable tcp"; leaf destination-interface { description "Name of output interface for probes"; type interface-name; } } container udp { description "UDP probe server"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port { description "Port number 7, 49160 through 65535"; type uint16; mandatory true; } presence "enable udp"; leaf destination-interface { description "Name of output interface for probes"; type interface-name; } } } leaf probe-limit { description "Maximum number of concurrent probes allowed"; default "100"; type uint32 { range "1 .. 500"; } } container rfc2544-benchmarking { presence "enable rfc2544-benchmarking"; description "Rfc2544 benchmarking tests"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container profiles { description "Rfc2544 test profiles"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list test-profile { key name; ordered-by user; description "Test-profile definition"; leaf name { description "Test name"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf test-type { description "Rfc2544 test type"; default "throughput"; type enumeration { enum throughput { description "Rfc2544 throughput test"; } enum latency { description "Rfc2544 latency test"; } enum frame-loss { description "Rfc2544 frame-loss test"; } enum back-back-frames { description "Rfc2544 back to back frames test"; } } } leaf-list packet-size { description "Size of the test packet"; type uint32 { range "64 .. 9216"; } } leaf bandwidth-kbps { description "Theoritical max service bandwidth in kbps"; default "10000"; type uint32 { range "1 .. 1000000"; } } leaf step-percent { description "Step percent for test"; default "10"; type uint32 { range "1 .. 100"; } } } } container tests { presence "enable tests"; description "Rfc2544 test configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list test-name { key name; ordered-by user; description "Test definition"; leaf name { description "Test name"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf test-profile { description "Name of the test profile"; type string; } leaf source-mac-address { description "MAC address of source host in xx:xx:xx:xx:xx:xx format"; type mac-unicaset; } leaf destination-mac-address { description "MAC address of destination host in xx:xx:xx:xx:xx:xx format"; type mac-unicaset; } leaf ovlan-id { description "Outer vlan id"; type int32 { range "0 .. 4094"; } } leaf ovlan-priority { description "Outer vlan priority"; type int32 { range "0 .. 7"; } } leaf ovlan-cfi { description "Outer vlan CFI bit"; type int32 { range "0 .. 1"; } } leaf ivlan-id { description "Inner vlan id"; type int32 { range "0 .. 4094"; } } leaf ivlan-priority { description "Inner vlan priority"; type int32 { range "0 .. 7"; } } leaf ivlan-cfi { description "Inner vlan CFI bit"; type int32 { range "0 .. 1"; } } leaf service-type { description "Service type"; type enumeration { enum eline { description "Eline service"; } enum elan { description "Elan service"; } } } leaf in-service { description "Test executed in-service mode"; type empty; } leaf ip-swap { description "Swap IP in the test payload"; type empty; } leaf udp-tcp-port-swap { description "Swap UDP/TCP port in the test payload"; type empty; } leaf forwarding-class { description "Forwarding class assigned to the egress frames of this test"; type string { } } leaf dscp-code-points { description "Differentiated Services code point bits or alias"; default "000000"; type string { } } leaf mode { description "Test mode"; type enumeration { enum reflect { description "Reflector end"; } enum initiate-and-terminate { description "Initiate and terminator"; } } } leaf reflect-mode { description "Reflect mode"; type enumeration { enum mac-swap { description "Mac swap "; } enum no-mac-swap { description "No mac-swap"; } enum mac-rewrite { description "Mac-rewrite"; } } } leaf family { description "Family type"; type enumeration { enum inet { description "Inet family"; } enum ccc { description "CCC family "; } enum bridge { description "Bridge family "; } } } leaf reflect-etype { description "Etype to match for reflect mode"; type uint32 { range "1 .. 65535"; } } leaf direction { description "Direction of test"; type enumeration { enum ingress { description "Pseudo-wire Ingress direction"; } enum egress { description "Pseudo-wire/Bridge Egress direction"; } } } leaf source-udp-port { description "Source udp port"; default "4040"; type uint32 { range "1 .. 65535"; } } leaf destination-udp-port { description "Destination udp port"; default "4041"; type uint32 { range "1 .. 65535"; } } leaf test-iterator-duration { description "Duration of each iteration in seconds"; type uint32 { range "10 .. 1728000"; } } leaf halt-on-prefix-down { description "Halt test on prefix down"; type empty; } leaf skip-arp-iteration { description "Skip arp iteration in tests"; type empty; } leaf test-interface { description "Name of interface(ifl) for test"; type interface-name; } leaf destination-ipv4-address { description "Destination address for test"; type ipv4addr; } leaf source-ipv4-address { description "Source address for test"; type ipv4addr; } } } } container twamp { description "Two-way Active Measurement Protocol configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf post-cli-implicit-firewall { description "Enable post cli implicit firewall"; type empty; } container client { description "TWAMP client configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list control-connection { key name; ordered-by user; description "TWAMP control session configuration"; leaf name { description "Client name"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container authentication-mode { description "Authentication modes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf none { description "No authentication or encryption"; type empty; } } leaf destination-interface { description "Name of output interface for all test sessions"; type interface-name; } leaf destination-port { description "TCP TWAMP client listening port for the test sessions. Default 862"; default "862"; type uint16 { range "1 .. 65535"; } } leaf history-size { description "Number of stored history entries"; default "50"; type uint16 { range "0 .. 500"; } } leaf moving-average-size { description "Number of samples used for moving average"; default "0"; type uint32 { range "0 .. 1024"; } } leaf routing-instance { description "Routing instance used by the test sessions"; type string { } } leaf target-address { description "Destination address of TWAMP responder"; type ipv4addr; mandatory true; } leaf test-count { description "Total number of test session iterations"; default "1"; type uint32 { range "0 .. 4294967290"; } } leaf test-interval { description "Delay between test session iterations"; default "1"; units "seconds"; type uint16 { range "1 .. 255"; } } container traps { description "Trap to send if threshold is met or exceeded"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf test-iteration-done { description "All test sessions configured under the control connection have completed an iteration"; type empty; } leaf control-connection-closed { description "Control connection closed"; type empty; } } list test-session { key name; ordered-by user; description "Test session details"; leaf name { description "Test session name"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf target-address { description "Destination address of TWAMP responder"; type ipv4addr; mandatory true; } leaf data-fill-with-zeros { description "Fill contents of test packet with zeros"; type empty; } leaf data-size { description "Size of the data portion of the probes"; default "60"; type uint16 { range "60 .. 1400"; } } leaf dscp-code-points { description "Differentiated Services code point bits or alias used for TCP control and UDP TWAMP test packets"; default "000000"; type string { } } leaf probe-count { description "Total number of probes per test"; default "1"; type uint32 { range "1 .. 4294967290"; } } leaf probe-interval { description "Delay between two consecutive probes"; default "1"; units "seconds"; type uint32 { range "1 .. 255"; } } container thresholds { presence "enable thresholds"; description "TWAMP test threshold values. Set 0 to disable respective threshold"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf successive-loss { description "Successive probe loss count indicating probe failure"; default "1"; type uint32 { range "0 .. 15"; } } leaf total-loss { description "Total probe loss count indicating test failure"; default "1"; type uint32 { range "0 .. 15"; } } leaf rtt { description "Maximum round trip time per probe"; default "0"; units "microseconds"; type uint32 { range "0 .. 60000000"; } } leaf jitter-rtt { description "Maximum jitter per test"; default "0"; units "microseconds"; type uint32 { range "0 .. 60000000"; } } leaf std-dev-rtt { description "Maximum standard deviation per test"; default "0"; units "microseconds"; type uint32 { range "0 .. 60000000"; } } leaf egress-time { description "Maximum source to destination time per probe"; default "0"; units "microseconds"; type uint32 { range "0 .. 60000000"; } } leaf ingress-time { description "Maximum destination to source time per probe"; default "0"; units "microseconds"; type uint32 { range "0 .. 60000000"; } } leaf jitter-ingress { description "Maximum destination to source jitter per test"; default "0"; units "microseconds"; type uint32 { range "0 .. 60000000"; } } leaf jitter-egress { description "Maximum source to destination jitter per test"; default "0"; units "microseconds"; type uint32 { range "0 .. 60000000"; } } leaf std-dev-ingress { description "Maximum destination to source standard deviation per test"; default "0"; units "microseconds"; type uint32 { range "0 .. 60000000"; } } leaf std-dev-egress { description "Maximum source to destination standard deviation per test"; default "0"; units "microseconds"; type uint32 { range "0 .. 60000000"; } } } container traps { description "Trap to send if threshold is met or exceeded"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf probe-failure { description "Successive probe loss threshold reached"; type empty; } leaf test-failure { description "Total probe loss threshold reached"; type empty; } leaf test-completion { description "Test completed"; type empty; } leaf rtt-exceeded { description "Exceeded maximum round trip time threshold"; type empty; } leaf std-dev-exceeded { description "Exceeded round trip time standard deviation threshold"; type empty; } leaf jitter-exceeded { description "Exceeded jitter in round trip time threshold"; type empty; } leaf ingress-time-exceeded { description "Exceeded maximum ingress time threshold"; type empty; } leaf ingress-std-dev-exceeded { description "Exceeded ingress time standard deviation threshold"; type empty; } leaf ingress-jitter-exceeded { description "Exceeded jitter in ingress time threshold"; type empty; } leaf egress-time-exceeded { description "Exceeded maximum egress time threshold"; type empty; } leaf egress-std-dev-exceeded { description "Exceeded egress time standard deviation threshold"; type empty; } leaf egress-jitter-exceeded { description "Exceeded jitter in egress time threshold"; type empty; } } } } } container server { description "TWAMP server configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container authentication-mode { description "Authentication modes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf none { description "No authentication or encryption"; type empty; } container authenticated { presence "enable authenticated"; description "Authenticated mode"; } container encrypted { presence "enable encrypted"; description "Encrypted mode"; } leaf control-only-encrypted { description "Encrypted control and unauthenticated data mode"; type empty; } } list authentication-key-chain { key name; ordered-by user; description "Authentication key chain configuration"; uses twamp-authentication-key-chain; } leaf server-inactivity-timeout { description "Control packet idle timeout value in minutes, 0 to disable"; default "15"; units "minutes"; type uint32 { range "0 .. 30"; } } leaf max-connection-duration { description "Maximum Connection duration in hours, 0 to disable"; default "24"; units "hours"; type uint32 { range "0 .. 120"; } } leaf maximum-sessions { description "Maximum number of test sessions for the server"; default "64"; type uint32 { range "1 .. 2048"; } } leaf maximum-sessions-per-connection { description "Maximum number of test sessions per client connection"; type uint32 { range "1 .. 1024"; } } leaf maximum-connections { description "Maximum number of connections for the server"; default "64"; type uint32 { range "1 .. 1000"; } } leaf maximum-connections-per-client { description "Maximum number of server connections per client"; type uint32 { range "1 .. 500"; } } leaf port { description "TWAMP server listening port"; default "862"; type uint32 { range "1 .. 65535"; } } list client-list { key name; ordered-by user; description "List of allowed clients"; leaf name { description "Name of client list"; type string { length "1 .. 127"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list address { key name; ordered-by user; description "IP prefix of client"; leaf name { description "IP prefix of client"; type ipv4prefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } } container video-monitoring { presence "enable video-monitoring"; description "Video monitoring service"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list templates { key name; ordered-by user; description "Template for MDI flows"; leaf name { description "Name of template"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interval-duration { description "Monitoring interval in sec"; type uint32 { range "1 .. 50"; } mandatory true; } leaf inactive-timeout { description "Inactive timeout for idle flow in sec"; type uint32 { range "30 .. 300"; } mandatory true; } container rate { description "Media rate or layer3 pps"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice rate-choice { case case_1 { leaf media { description "Constant bit rate in bps"; type string; } } case case_2 { leaf layer3 { description "Layer3 packet rate in pps"; type string; } } } } container delay-factor { description "Delay factor related parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container threshold { description "Threshold for delay factor alarm"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf info { description "Threshold for information alarm"; units "milli-sec"; type uint32 { range "0 .. 65535"; } } leaf warning { description "Threshold for warning alarm"; units "milli-sec"; type uint32 { range "0 .. 65535"; } } leaf critical { description "Threshold for critical alarm"; units "milli-sec"; type uint32 { range "0 .. 65535"; } } } choice enable-disable { case case_1 { leaf disable { description "Disable DF Calculation"; type empty; } } } } container media-loss-rate { description "MLR related parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container threshold { description "Threshold for MLR alarm"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container info { description "Threshold for information alarm"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice mlr-threshold-choice { case case_1 { leaf packet-count { description "MLR threshold value in packets count"; type uint32; } } case case_2 { leaf percentage { description "MLR threshold value in percentage"; type uint32 { range "0 .. 100"; } } } } } container warning { description "Threshold for warning alarm"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice mlr-threshold-choice { case case_1 { leaf packet-count { description "MLR threshold value in packets count"; type uint32; } } case case_2 { leaf percentage { description "MLR threshold value in percentage"; type uint32 { range "0 .. 100"; } } } } } container critical { description "Threshold for critical alarm"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice mlr-threshold-choice { case case_1 { leaf packet-count { description "MLR threshold value in packets count"; type uint32; } } case case_2 { leaf percentage { description "MLR threshold value in percentage"; type uint32 { range "0 .. 100"; } } } } } } choice enable-disable { case case_1 { leaf disable { description "Disable MLR Caltulation"; type empty; } } } } container media-rate-variation { description "MRV related parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container threshold { description "Threshold for MRV alarm"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf info { description "Threshold for information alarm"; type uint32 { range "0 .. 100"; } } leaf warning { description "Threshold for warning alarm"; type uint32 { range "0 .. 100"; } } leaf critical { description "Threshold for critical alarm"; type uint32 { range "0 .. 100"; } } } choice enable-disable { case case_1 { leaf disable { description "Disable MRV Caltulation"; type empty; } } } } leaf media-packets-count-in-layer3 { description "Number of media packets in a IP packet"; type uint32 { range "1 .. 32"; } mandatory true; } leaf media-packet-size { description "Size of media packet"; type uint32 { range "1 .. 2048"; } mandatory true; } } list interfaces { key name; ordered-by user; description "Interfaces to enable video monitoring"; leaf name { description "Name of IFL"; type interface-unit; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container family { description "Protocol family"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container inet { description "IPv4 flows"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list input-flows { key name; ordered-by user; description "Input flows informations"; leaf name { description "Name of flow"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list source-address { description "Prefix to match"; type ipv4prefix; max-elements 32; } leaf-list destination-address { description "Prefix to match"; type ipv4prefix; max-elements 32; } leaf-list source-port { description "Source port number to match"; type string; max-elements 32; } leaf-list destination-port { description "Destination port number to match"; type string; max-elements 32; } leaf template { description "Name of template"; type string { length "1 .. 32"; } mandatory true; } } list output-flows { key name; ordered-by user; description "Output flows informations"; leaf name { description "Name of flow"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list source-address { description "Prefix to match"; type ipv4prefix; max-elements 32; } leaf-list destination-address { description "Prefix to match"; type ipv4prefix; max-elements 32; } leaf-list source-port { description "Source port number to match"; type string; max-elements 32; } leaf-list destination-port { description "Destination port number to match"; type string; max-elements 32; } leaf template { description "Name of template"; type string { length "1 .. 32"; } mandatory true; } } } } } } container app-engine { description "App-engine"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container security { presence "enable security"; description "Enable app-engine security"; } container monitor-cpu { description "Monitor node CPU usage"; uses monitor-threshold; } container monitor-memory { description "Monitor node memory usage"; uses monitor-threshold; } container monitor-storage { description "Monitor storage usage"; uses monitor-threshold; } leaf default-compute-node-package { description "Default JunosV App Engine package for appliance"; type string; } list compute-cluster { key name; ordered-by user; description "Configure compute cluster"; leaf name { description "Compute cluster name"; type string { length "1 .. 15"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container local-management { description "Management address connected to compute cluster"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list routing-instance { key routing-instance-name; ordered-by user; description "Packets are restriction to specified routing instance"; max-elements 1; leaf routing-instance-name { description "Name of routing instance"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container family { description "Protocol family"; container inet { description "IPv4 parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf address { description "Interface address"; type ipv4addr; mandatory true; } presence "enable inet"; } } } container family { description "Protocol family"; container inet { description "IPv4 parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf address { description "Interface address"; type ipv4addr; mandatory true; } presence "enable inet"; } } } container monitor-cpu { description "Monitor node CPU usage"; uses monitor-threshold; } container monitor-memory { description "Monitor node memory usage"; uses monitor-threshold; } container monitor-storage { description "Monitor storage usage"; uses monitor-threshold; } list compute-node { key name; ordered-by user; description "Compute node name"; max-elements 1; leaf name { description "Compute node name"; type string { length "1 .. 15"; } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container monitor-cpu { description "Monitor node CPU usage"; uses monitor-threshold; } container monitor-memory { description "Monitor node memory usage"; uses monitor-threshold; } container monitor-storage { description "Monitor storage usage"; uses monitor-threshold; } choice compute-node-identifier { case case_1 { leaf mac-address { description "MAC address of the network boot interface"; type mac-addr; } } case case_2 { leaf fpc { description "FPC slot number"; type uint32 { range "0 .. 63"; } } } case case_3 { leaf hypervisor { description "Compute node is hypervisor"; type empty; } } } leaf package { description "JunosV App Engine package"; type string; } container routing-options { description "Route configuration for compute node"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container static { description "Static routes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list route { key name; ordered-by user; description "Static route"; leaf name { description "Destination IP address or prefix"; type ipv4prefix; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf next-hop { description "Next hop to destination"; type ipv4addr; } } } list rib { key name; ordered-by user; description "Routing table options"; leaf name { description "Routing table name"; type string { length "1 .. 10"; } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container static { description "Static routes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list route { key name; ordered-by user; description "Static route"; leaf name { description "Destination IP address or prefix"; type ipv4prefix; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf next-hop { description "Next hop to destination"; type ipv4addr; } } } } } container interfaces { description "Network interfaces configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list ethernet { key name; ordered-by user; description "Interface configuration"; leaf name { description "Interface name"; type string { length "1 .. 15"; } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf management { description "Use this as management interface"; type empty; } container family { description "Protocol family"; uses family; } leaf enable-passthrough { description "Enable passthrough on this interface"; type empty; } leaf mtu { description "Maximum transmit packet size"; type uint16 { range "256 .. 9192"; } } container ether-options { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice agg-intf { case case_1 { leaf ieee-802-3ad { description "Aggregated interface name"; type string { length "1 .. 15"; } } } } } } list bridge { key name; ordered-by user; description "Bridge configuration"; leaf name { description "Bridge name"; type string { length "1 .. 15"; } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf management { description "Use this as management bridge"; type empty; } container family { description "Protocol family"; uses family; } leaf-list interface { description "Bridge interface list"; type string { length "1 .. 15"; } max-elements 4; } leaf mtu { description "Maximum transmit packet size"; type uint16 { range "256 .. 9192"; } } } list aggregate { key name; ordered-by user; description "Aggregate interface configuration"; leaf name { description "Aggregated interface name"; type string { length "1 .. 15"; } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf management { description "Use this as management aggregate"; type empty; } container family { description "Protocol family"; uses family; } leaf mtu { description "Maximum transmit packet size"; type uint16 { range "256 .. 9192"; } } container aggregated-ether-options { presence "enable aggregated-ether-options"; description "Link aggregation parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf hash-policy { description "(null)"; default "layer-3-and-4"; type enumeration { enum layer-2 { description "Uses mac address of both source and destination for hashing"; } enum layer-3-and-4 { description "Uses port number and IP address of both source and destination for hashing"; } enum layer-2-and-3 { description "Uses mac and IP address of both source and destination for hashing"; } } } leaf miimon { description "Link monitoring interval in milli-second"; type uint32; } } } } list syslog { key name; ordered-by user; description "System logging facility"; leaf name { description "Facility type"; type enumeration { enum any { description "All facilities"; } enum authorization { description "Authorization system"; } enum privileged { description "Privileged authorization events"; } enum cron { description "Cron daemon"; } enum daemon { description "Various system processes"; } enum kernel { description "Kernel"; } enum syslog { description "Syslog messages"; } enum user { description "User processes"; } enum uucp { description "UUCP system"; } enum local0 { description "Local 0 messages"; } enum local1 { description "Local 1 messages"; } enum local2 { description "Local 2 messages"; } enum local3 { description "Local 3 messages"; } enum local4 { description "Local 4 messages"; } enum local5 { description "Local 5 messages"; } enum local6 { description "Local 6 messages"; } enum local7 { description "Local 7 messages"; } } } choice level { case case_1 { leaf any { description "All levels"; type empty; } } case case_2 { leaf emergency { description "Panic conditions"; type empty; } } case case_3 { leaf alert { description "Conditions that should be corrected immediately"; type empty; } } case case_4 { leaf critical { description "Critical conditions"; type empty; } } case case_5 { leaf error { description "Error conditions"; type empty; } } case case_6 { leaf warning { description "Warning messages"; type empty; } } case case_7 { leaf notice { description "Conditions that should be handled specially"; type empty; } } case case_8 { leaf info { description "Informational messages"; type empty; } } case case_9 { leaf debug { description "Debug messages"; type empty; } } } } } } container virtual-machines { description "Virtual-machine management"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list instance { key name; ordered-by user; description "Virtual-machine instance"; leaf name { description "Virtual-machine instance identifier"; type string { length "1 .. 39"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf cpu { description "Units of CPUs (default 1 cpu)"; default "1"; type uint32 { range "1 .. 16"; } } leaf memory { description "Memory for the virtual-machine (default 1 gigabytes)"; default "1"; units "gigabytes"; type uint32 { range "1 .. 32"; } } leaf package { description "Virtual-machine package"; type string { length "1 .. 120"; } mandatory true; } container local-management { description "Management address connected to virtual machine"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list routing-instance { key routing-instance-name; ordered-by user; description "Packets are restriction to specified routing instance"; max-elements 1; leaf routing-instance-name { description "Name of routing instance"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container family { description "Protocol family"; container inet { description "IPv4 parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf address { description "Interface address"; type ipv4addr; mandatory true; } presence "enable inet"; } } } container family { description "Protocol family"; container inet { description "IPv4 parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf address { description "Interface address"; type ipv4addr; mandatory true; } presence "enable inet"; } } } list compute-cluster { key name; ordered-by user; description "Compute cluster on which the virtual-machine runs"; max-elements 1; leaf name { description "Compute cluster name"; type string { length "1 .. 15"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf compute-node { description "Compute node on which the virtual-machine runs"; type string { length "1 .. 15"; } mandatory true; } } list interface { key name; ordered-by user; description "Virtual-machine interface configuration"; leaf name { description "Virtual-machine interface name"; type string { length "1 .. 31"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf hw-model { description "Interface hardware model"; default "e1000g"; type enumeration { enum e1000g { description "Gigabit Ethernet e1000g driver"; } enum virtio { description "Para-virtualizing the interface"; } } } leaf host-interface { description "Passthrough host interface for virtual-machine"; type string { length "1 .. 15"; } } leaf bridge { description "Bridge that the interface connected to"; type string { length "1 .. 15"; } } leaf mtu { description "Maximum transmit packet size"; type uint16 { range "256 .. 9192"; } } container family { description "Interface address family"; container inet { presence "enable inet"; description "IPv4 parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list address { key name; ordered-by user; description "Interface address/destination prefix"; leaf name { description "Interface address/destination prefix"; type ipv4prefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf primary { description "Primary address on the interface"; type empty; } } } } } container routing-options { description "Route configuration for virutal machine"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container static { description "Static routes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list route { key name; ordered-by user; description "Static route"; leaf name { description "Destination IP address or prefix"; type ipv4prefix; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf next-hop { description "Next hop to destination"; type ipv4addr; } } } list rib { key name; ordered-by user; description "Routing table options"; leaf name { description "Routing table name"; type string { length "1 .. 10"; } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container static { description "Static routes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list route { key name; ordered-by user; description "Static route"; leaf name { description "Destination IP address or prefix"; type ipv4prefix; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf next-hop { description "Next hop to destination"; type ipv4addr; } } } } } list secondary-disk { key name; ordered-by user; description "Virtual-machine disk"; leaf name { description "Virtual-machine disk name"; type enumeration { enum hdb { description "Disk name is hdb"; } enum hdc { description "Disk name is hdc"; } enum hdd { description "Disk name is hdd"; } } } leaf size { description "Virtual-machine secondary disk size"; units "gigabytes"; type uint32 { range "1 .. 160"; } mandatory true; } } } } } container unified-access-control { description "Configure Unified Access Control"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list infranet-controller { key name; ordered-by user; description "Configure infranet controller"; leaf name { description "Infranet controller name"; type string { length "1 .. 31"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf address { description "Infranet controller IP address"; type ipv4addr; mandatory true; } leaf port { description "Infranet controller port"; default "11123"; type uint32 { range "1 .. 65535"; } } leaf interface { description "Outgoing interface"; type interface-name; mandatory true; } leaf password { description "Infranet controller server password"; type string { length "1 .. 255"; } mandatory true; } leaf-list ca-profile { description "Define a list of certificate authority"; type string; } leaf server-certificate-subject { description "Subject name of infranet controller certificate to match"; type string { length "1 .. 255"; } } } leaf certificate-verification { description "Specify certificate verification requirement"; default "warning"; type enumeration { enum warning { description "Warn if certificate is not being verified"; } enum required { description "Require certificate verification. Most secure"; } enum optional { description "Make verification optional, no warnings. Least secure"; } } } leaf timeout { description "Timeout for idle infranet controller link in seconds"; default "300"; type uint32 { range "2 .. 10000"; } } leaf interval { description "Heartbeat interval from infranet controller in seconds"; default "30"; type uint32 { range "1 .. 9999"; } } leaf timeout-action { description "Specify action when infranet controller timeout occurs"; default "close"; type enumeration { enum close { description "Remove existing sessions and block further traffic"; } enum no-change { description "Preserve existing connections; block new sessions"; } enum open { description "Allow traffic for new and existing sessions to go through"; } } } leaf test-only-mode { description "Allow all traffic and only log enforcement result"; type empty; } container traceoptions { description "UAC trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum all { description "Trace with all flags enabled"; } enum ipc { description "IPC tracing"; } enum config { description "Configuration tracing"; } enum connect { description "Communication with infranet controller tracing"; } } } } } list captive-portal { key name; ordered-by user; description "Unauthenticated HTTP redirect"; leaf name { description "Redirect policy name"; type string { length "1 .. 128"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf redirect-traffic { description "Traffic to redirect"; type enumeration { enum unauthenticated { description "Redirect unauthenticated traffic"; } enum all { description "Redirect all traffic"; } } mandatory true; } leaf redirect-url { description "Redirect URL for unauthenticated users"; type string { length "1 .. 512"; } } } } container flow-collector { description "Configure options to control flow collector"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf analyzer-address { description "Analyzer IP address field override value"; type ipv4addr; } leaf analyzer-id { description "Analyzer ID field override value"; type string { length "1 .. 64"; } } leaf retry { description "Transfer retry attempt count"; default "0"; type uint32 { range "0 .. 10"; } } leaf retry-delay { description "Delay between transfer retry attempts"; default "0"; units "seconds"; type uint32 { range "0 .. 60"; } } list destinations { key name; ordered-by user; description "Configure destination for files"; uses collector_destinations_type; } list file-specification { key name; description "File format specification"; uses file_specification_type; } container interface-map { description "Input interface to Collector PIC mapping"; uses interface_map_type; } container transfer-log-archive { description "Transfer log archive specification"; uses collector_transfer_log_archive_type; } } container captive-portal { description "Captive Portal options"; uses juniper-services-captive-portal; } container logging { description "Bulk logging configuration"; uses juniper-pic-services-logging-options; } container application-identification { presence "enable application-identification"; description "Application identification configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf enable-heuristics { description "Enable heuristic application identification"; type empty; } container download { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf url { description "URL for application package download"; type string { } } container automatic { description "Scheduled download and update"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf start-time { description "Start time(MM-DD.hh:mm)"; type string { } mandatory true; } presence "enable automatic"; leaf interval { description "Attempt to download new application package"; default "24"; units "hours"; type uint32 { range "6 .. 720"; } } } } container statistics { description "Configure application statistics information"; leaf interval { description "Application statistics collection interval"; default "1"; units "minutes"; type uint32 { range "1 .. 1440"; } } } container nested-application-settings { presence "enable nested-application-settings"; description "Nested application settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-nested-application { description "Disable nested application identification"; type empty; } leaf no-application-system-cache { description "Not to save nested AI match in application system cache"; type empty; } } leaf no-application-identification { description "Disable all application identification methods"; type empty; } leaf no-signature-based { description "Disable signature based method"; type empty; } leaf no-protocol-based { description "Disable protocol based method"; type empty; } leaf signature-method-all-ports { description "Use signature-method on all(including well-known) ports"; type empty; } leaf no-clear-application-system-cache { description "Disable clearing application system cache"; type empty; } leaf no-application-system-cache { description "Disable storing AI result in application system cache"; type empty; } leaf max-sessions { description "Max sessions that can run AI at the same time"; type uint32 { range "0 .. 500000"; } } leaf application-system-cache-timeout { description "Application system cache entry lifetime"; type uint32 { range "0 .. 1000000"; } } leaf min-checked-bytes { description "Inspect the minimal number of bytes"; type uint16 { range "0 .. 2000"; } } leaf max-checked-bytes { description "Inspect the maximal number of bytes"; type uint32 { range "0 .. 100000"; } } leaf max-checked-packets { description "Inspect the maximal number of packets"; type uint32 { range "0 .. 100000"; } } list application { key name; description "Configure application definition"; leaf name { description "A unique application identifier"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf type { description "Well-known application such as HTTP and FTP"; type string { length "1 .. 63"; } } list tags { key name; ordered-by user; description "Application tags"; leaf name { description "Name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf value { description "Value"; type string; mandatory true; } } leaf session-timeout { description "Lifetime of a session"; default "86400"; type enumeration { enum 0 { description "No session timeout"; } enum 30 { description "30 seconds"; } enum 60 { description "60 seconds"; } enum 1800 { description "1800 seconds"; } enum 3600 { description "3600 seconds"; } enum 43200 { description "43200 seconds (12 hours)"; } enum 86400 { description "86400 seconds (1 day)"; } enum 2592000 { description "2592000 seconds (30 days)"; } } } leaf idle-timeout { description "Remove the session if no packets"; default "30"; type enumeration { enum 0 { description "No idle timeout"; } enum 5 { description "5 seconds"; } enum 15 { description "15 seconds"; } enum 30 { description "30 seconds"; } enum 60 { description "60 seconds"; } enum 1800 { description "1800 seconds"; } enum 3600 { description "3600 seconds"; } } } container type-of-service { description "Type of service"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimize-delay { description "Requires minimal delay in packet transmission"; type empty; } leaf maximize-throughput { description "Requires maximal throughput in packet transmission"; type empty; } leaf maximize-reliability { description "Requires maximal reliability in packet transmission"; type empty; } leaf minimize-monetary-cost { description "Requires minimal monetary cost in packet transmission"; type empty; } } container port-mapping { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container icmp { description "Match ICMP message"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf type { description "Numeric type value (0 .. 254)"; type uint16 { range "0 .. 254"; } } leaf code { description "Numeric code value (0 .. 254)"; type uint16 { range "0 .. 254"; } } } leaf protocol { description "Numeric protocol value (0 .. 254)"; type uint16 { range "0 .. 254"; } } container port-range { description "Used by port-based AI method"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list tcp { description "TCP port range"; type string; max-elements 64; } leaf-list udp { description "UDP port range"; type string; max-elements 64; } } leaf disable { description "Disable port-based method for this application"; type empty; } } container signature { description "Application signature for pattern matching"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container port-range { description "Apply signature to packets sent to this port range"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list tcp { description "TCP port range"; type string; max-elements 64; } leaf-list udp { description "UDP port range"; type string; max-elements 64; } } container client-to-server { description "Pattern matched on client-to-server packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf dfa-pattern { description "DFA pattern matched on packets from client to server"; type string; } leaf regex { description "Regular expression matched on packets from client to server"; type string; } } container server-to-client { description "Pattern matched on server-to-client packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf dfa-pattern { description "DFA pattern matched on packets from server to client"; type string; } leaf regex { description "Regular expression matched on packets from server to client"; type string; } } leaf min-data { description "Minimum number of client-to-server bytes of packet payload matched by AI"; units "bytes"; type uint16; mandatory true; } presence "enable signature"; leaf disable { description "Disable signature based method for this application"; type empty; } container insert-before { description "Insert before another signature"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf insert-before-name { description "An application name"; type string; } } } } list nested-application { key name; description "Configure nested application definition"; leaf name { description "A unique application identifier"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf type { description "Well-known application such as FACEBOOK and KAZZA"; type string { length "1 .. 63"; } } leaf protocol { description "Name of layer 7 application that carries nested application"; type string { length "1 .. 63"; } mandatory true; } list signature { key name; description "Nested application signature for pattern matching"; leaf name { description "A unique nested application signature identifier"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list member { key name; description "Pattern matched on client-to-server packets"; leaf name { description "A unique nested application signature member identifier"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf context { description "Context to be matched on"; type enumeration { enum http-url-parsed { description "The decoded, normalized URL in an HTTP request"; } enum http-url-parsed-param-parsed { description "The decoded, normalized URL in an HTTP request along with the decoded CGI parameters, if any"; } enum http-header-host { description "Host: header in an HTTP request"; } enum http-header-location { description "Location: header in an HTTP transaction"; } enum http-header-content-type { description "Content-Type: header in an HTTP transaction"; } enum http-get-url-parsed-param-parsed { description "The decoded, normalized GET URL in an HTTP request along with the decoded CGI parameters, if any"; } enum http-post-url-parsed-param-parsed { description "The decoded, normalized POST URL in an HTTP request along with the decoded CGI parameters, if any"; } enum http-header-cookie { description "Cookie: header in an HTTP transaction"; } enum http-header-user-agent { description "User-agent: header in an HTTP transaction"; } enum http-post-variable-parsed { description "The decoded POST url or form data variables"; } enum ssl-server-name { description "Server name in TLS server name extension or SSL server certificate"; } enum stream { description "TCP stream data"; } } mandatory true; } leaf pattern { description "DFA pattern matched on context"; type string; mandatory true; } leaf direction { description "Connection direction of the packets to apply pattern matching"; type enumeration { enum client-to-server { description "Client to server"; } enum server-to-client { description "Server to client"; } enum any { description "Any direction"; } } mandatory true; } leaf check-bytes { description "Maximum number of bytes to check for stream context "; default "1000"; type uint32 { range "1 .. 5000"; } } } leaf chain-order { description "The order of members is used to match the pattern"; type empty; } leaf maximum-transactions { description "Maximum number of transactions matched by AI"; type uint16; mandatory true; } container insert-before { description "Insert before another signature"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf insert-before-name { description "An application name"; type string; } } } } list application-group { key name; description "Define application group"; leaf name { description "A unique application group identifier"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list application-groups { key name; description "Configure child application group(s)"; leaf name { description "Name of the child application group"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list applications { key name; description "Configure applications that belong to this application group"; leaf name { description "Configure application name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } list rule { key name; ordered-by user; description "One or more application rules for address-based method AI"; leaf name { description "Rule name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf application-name { description "Name of application that is target of this rule"; type string { length "1 .. 63"; } mandatory true; } list address { key name; ordered-by user; description "Configure one of more addresses"; leaf name { description "Address name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container source { description "Match IP source address"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ip { description "IP address and prefix-length"; type ipv4prefix; mandatory true; } presence "enable source"; container port-range { description "IP port ranges"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list tcp { description "TCP port range"; type string; max-elements 64; } leaf-list udp { description "UDP port range"; type string; max-elements 64; } } } container destination { description "Match IP destination address"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ip { description "IP address and prefix-length"; type ipv4prefix; mandatory true; } presence "enable destination"; container port-range { description "IP port ranges"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list tcp { description "TCP port range"; type string; max-elements 64; } leaf-list udp { description "UDP port range"; type string; max-elements 64; } } } leaf order { description "Application matching priority"; type uint16 { range "1 .. 65535"; } } } } list rule-set { key name; ordered-by user; description "One or more application rules"; leaf name { description "Name of the rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Rule to be included in this rule set"; leaf name { description "Rule name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } list profile { key name; ordered-by user; description "One or more application rule-sets"; leaf name { description "Profile name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule-set { key name; ordered-by user; description "One or more rule-sets in the profile"; leaf name { description "Rule-set name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } container traceoptions { description "Trace options for application identification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Events and other information to include in trace output"; leaf name { description "Flag name to include in trace output"; type enumeration { enum all { description "All events"; } } } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } } } list service-set { key name; ordered-by user; description "Define a service set"; leaf name { description "Service set name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container syslog { description "Define system logging parameters"; uses service_set_syslog_object; } leaf max-flows { description "Maximum number of flows allowed for a service set"; type string; } leaf hosted-service-identifier { description "Service Set to Hosted service Map"; type int32 { range "1 .. 63"; } } container max-drop-flows { description "Maximum number of drop flows allowed for a service-set"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ingress { description "Maximum number of ingress drop flows allowed"; type int32 { range "0 .. 2147483647"; } } leaf egress { description "Maximum number of egress drop flows allowed"; type int32 { range "0 .. 2147483647"; } } } container snmp-trap-thresholds { presence "enable snmp-trap-thresholds"; description "Define snmp traps for service sets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container flow { presence "enable flow"; description "Flow Threshold range for a service set"; leaf low { description "Lower limit of flow threshold"; units "percent"; type uint16 { range "0 .. 100"; } mandatory true; } leaf high { description "Upper limit of flow threshold"; units "percent"; type uint16 { range "0 .. 100"; } mandatory true; } } container nat-address-port { presence "enable nat-address-port"; description "Nat Address and port usage trap threshold range"; leaf low { description "Lower limit of trap threshold"; units "percent"; type uint16 { range "0 .. 100"; } mandatory true; } leaf high { description "Upper limit of trap threshold"; units "percent"; type uint16 { range "0 .. 100"; } mandatory true; } } } leaf tcp-mss { description "Enable the limit on TCP Max. Seg. Size in SYN packets"; type uint16 { range "536 .. 65535"; } } container softwire-options { presence "enable softwire-options"; description "Options for softwire"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf dslite-ipv6-prefix-length { description "The ipv6 prefix length for subscriber addresses"; default "128"; type enumeration { enum 56 { description "The ipv6 prefix length of 56"; } enum 64 { description "The ipv6 prefix length of 64"; } enum 96 { description "The ipv6 prefix length of 96"; } enum 128 { description "The ipv6 prefix length of 128"; } } } } container nat-options { description "Options for NAT"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container stateful-nat64 { description "Options for stateful NAT64"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf clear-dont-fragment-bit { description "Clear DF bit in IPv4 header if IPv6 packet size is less than 1280 bytes"; type empty; } leaf ipv6-mtu { description "Path MTU of IPv6 network"; type uint16 { range "1280 .. 9192"; } } } container nptv6 { description "Options for NPTv6"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf icmpv6-error-messages { description "Send ICMP Error messages if NPTv6 address translation fails"; type empty; } } leaf land-attack-check { description "Enable land attack checks"; type enumeration { enum ip-only { description "Land attack check is on IP address only"; } enum ip-port { description "Land attack check is on both IP and port"; } } } leaf max-sessions-per-subscriber { description "Limit the number of sessions per subscriber (applicable only for NAPT-44)"; type uint16 { range "1 .. 32000"; } } leaf snmp-value-match-msmic { description "Match the MSMIC specific snmp values for the msdpc"; type empty; } } container service-set-options { presence "enable service-set-options"; description "Options for service set"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bypass-traffic-on-pic-failure { description "Bypass traffic on service PIC failure"; type empty; } leaf bypass-traffic-on-exceeding-flow-limits { description "Bypass traffic when exceeding the max flow limit"; type empty; } leaf enable-asymmetric-traffic-processing { description "Enable service-processing for asymmetric traffic"; type empty; } leaf subscriber-awareness { description "Enable subscriber awareness on the service chain"; type empty; } container header-integrity-check { description "Enable/Disable header integrity checks"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf enable-all { description "Enable all header integrity checks"; type empty; } } leaf enable-change-on-ams-redistribution { description "Allow NAT pool change on AMS redistribution"; type empty; } } container replicate-services { description "Define services that will be replicated to peer."; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf replication-threshold { description "Duration in seconds for which flow should remain active for replication. (Min 180s)"; default "180"; type uint32 { range "180 .. 86400"; } } } container allow-multicast { presence "enable allow-multicast"; description "Allow multicast packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } choice softwire_choice { case case_1 { list softwire-rules { key name; ordered-by user; description "List of softwire rules"; leaf name { description "(null)"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } case case_2 { list softwire-rule-sets { key name; ordered-by user; description "List of softwire rule sets"; leaf name { description "(null)"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } choice stateful_firewall_rules_choice { case case_1 { list stateful-firewall-rules { key name; ordered-by user; description "List of stateful firewall rules"; leaf name { description "(null)"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } case case_2 { list stateful-firewall-rule-sets { key name; ordered-by user; description "List of stateful firewall rule sets"; leaf name { description "(null)"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } choice pcp_rules_choice { case case_1 { list pcp-rules { key name; ordered-by user; description "List of PCP rules"; leaf name { description "(null)"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } case case_2 { list pcp-rule-sets { key name; ordered-by user; description "List of PCP rule sets"; leaf name { description "(null)"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } choice nat_rules_choice { case case_1 { list nat-rules { key name; ordered-by user; description "List of NAT rules"; leaf name { description "(null)"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } case case_2 { list nat-rule-sets { key name; ordered-by user; description "List of NAT rule sets"; leaf name { description "(null)"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } choice ip_reassembly_rules_choice { case case_1 { list ip-reassembly-rules { key name; ordered-by user; description "List of ip-reassembly rules"; leaf name { description "(null)"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } choice ids_rules_choice { case case_1 { list ids-rules { key name; ordered-by user; description "List of IDS rules"; leaf name { description "(null)"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } case case_2 { list ids-rule-sets { key name; ordered-by user; description "List of IDS rule sets"; leaf name { description "(null)"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } choice cos_rules_choice { case case_1 { list cos-rules { key name; ordered-by user; description "One or more CoS rules"; leaf name { description "Rule name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } case case_2 { list cos-rule-sets { key name; ordered-by user; description "One or more CoS rule sets"; leaf name { description "Name of rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } choice aacl_rules_choice { case case_1 { list aacl-rules { key name; ordered-by user; description "One or more AACL rules"; leaf name { description "Rule name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } case case_2 { list aacl-rule-sets { key name; ordered-by user; description "One or more AACL rule sets"; leaf name { description "Name of rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } list aacl-dyn-rules { key name; ordered-by user; description "One or more AACL rule "; leaf name { description "Name of dynamic rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } choice ptsp_rules_choice { case case_1 { list ptsp-rules { key name; ordered-by user; description "One or more PTSP rules"; leaf name { description "Rule name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } case case_2 { list ptsp-rule-sets { key name; ordered-by user; description "One or more PTSP rule sets"; leaf name { description "Name of rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } choice pgcp_rules_choice { case case_1 { list pgcp-rules { key name; ordered-by user; description "One or more PGCP rules"; leaf name { description "Rule name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } case case_2 { list pgcp-rule-sets { key name; ordered-by user; description "One or more PGCP rule sets"; leaf name { description "Name of rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } container jflow-rules { presence "enable jflow-rules"; description "One or more jflow rules"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container sampling { presence "enable sampling"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf instance { description "Name of the instance"; type string { length "1 .. 64"; } } } } choice appid_choice { case case_1 { leaf application-identification-profile { description "Define Application Identification profile"; type string { length "1 .. 63"; } } } } choice hcm_rules_choice { } choice hcm_url_rules_choice { case case_1 { list hcm-url-rules { key name; ordered-by user; description "One or more HCM uri rules"; leaf name { description "Rule name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } case case_2 { list hcm-url-rule-sets { key name; ordered-by user; description "One or more HCM url rule sets"; leaf name { description "Name of rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } choice hcm_tag_rules_choice { case case_1 { list tag-rules { key name; ordered-by user; description "One or more HCM tag rules"; leaf name { description "Rule name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } case case_2 { list tag-rule-sets { key name; ordered-by user; description "One or more HCM tag rule sets"; leaf name { description "Name of rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } choice idppolicy_choice { case case_1 { leaf idp-profile { description "IDP policy to use"; type string { length "1 .. 63"; } } } } choice cpcdd_choice { case case_1 { leaf captive-portal-content-delivery-profile { description "Define captive portal and content delivery profile"; type string { length "1 .. 63"; } } } } choice lpdf_stats_choice { case case_1 { container policy-decision-statistics-profile { description "Define policy decision statistics profile"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf profile-name { description "Policy decision statistics profile name"; type string { length "1 .. 63"; } } } } } choice service_type_choice { case case_1 { container interface-service { description "Define parameters for interface-specific service sets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf service-interface { description "Services interface to use"; type interface-unit; mandatory true; } presence "enable interface-service"; container load-balancing-options { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container hash-keys { presence "enable hash-keys"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf resource-triggered { description "Resource Triggered load balancing"; type empty; } leaf-list ingress-key { description "Hash Key for the ingress direction"; type enumeration { enum source-ip { description "Source Ip Address"; } enum destination-ip { description "Destination Ip Address"; } enum protocol { description "Protocol"; } enum iif { description "Incoming Interface"; } } } leaf-list egress-key { description "Hash Key for the egress direction"; type enumeration { enum source-ip { description "Source Ip Address"; } enum destination-ip { description "Destination Ip Address"; } enum protocol { description "Protocol"; } enum oif { description "Outgoing Interface"; } } } } } } } case case_2 { container sampling-service { description "Define parameters for sampling service sets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf service-interface { description "Services interface to use"; type interface-unit; mandatory true; } presence "enable sampling-service"; } } case case_3 { container next-hop-service { description "Define parameters for next-hop service sets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf inside-service-interface { description "Service interface to inside network"; type interface-unit; } leaf outside-service-interface { description "Service interface name"; type interface-unit; } leaf outside-service-interface-type { description "Service interface type local for reassembly service"; default "local"; type enumeration { enum local { description "Must be local for reassembly service"; } } } leaf service-interface-pool { description "Service interface pool name"; type string { length "1 .. 63"; } } } } } list extension-service { key name; ordered-by user; description "Define the customer specific extensions"; max-elements 2; leaf name { description "Customer-prefixed service name"; type string { length "1 .. 63"; } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container service-order { presence "enable service-order"; description "Define of order of services to be applied"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list forward-flow { description "Service Order for forward flow"; type string; } leaf-list reverse-flow { description "Service Order for reverse flow"; type string; } } leaf subscriber-profile { description "Subscriber profile name"; type string; } container jflow-log { description "Define Jflow-logging parameters."; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf template-profile { description "Allow jflow messages for applications"; type string { length "1 .. 63"; } } } container ipsec-vpn-options { description "Define IPSec VPN options"; uses service_set_ipsec_vpn_options_object; } choice ipsec_vpn_rules_choice { case case_1 { list ipsec-vpn-rules { key name; ordered-by user; description "List of IPSec VPN rules"; leaf name { description "(null)"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } case case_2 { list ipsec-vpn-rule-sets { key name; ordered-by user; description "List of IPSec VPN rule sets"; leaf name { description "(null)"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } leaf ipsec-group-vpn { description "Designate service-set to a Group VPN"; type string; } } container ipsec-vpn { description "Configure IPSec VPN service"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Define an IPSec rule"; uses ipsec_vpn_rule_object; } list rule-set { key name; ordered-by user; description "Defines a set of IPSec rules"; max-elements 16960; leaf name { description "Name of the rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Rule to be included in this rule set"; max-elements 16960; leaf name { description "Rule name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } container ipsec { description "IPSec configuration"; uses services-ipsec; } container ike { description "IKE configuration"; uses services-ike; } container traceoptions { description "Trace options for IPSec key management process"; uses ipsec-services-traceoptions; } leaf no-ipsec-tunnel-in-traceroute { description "Do not display IPSec tunnel endpoint in traceroute output"; type empty; } leaf establish-tunnels { description "Define the criteria to establish tunnels"; default "on-traffic"; type enumeration { enum immediately { description "Establish tunnels immediately"; } enum on-traffic { description "Establish tunnels on traffic"; } } } leaf clear-ike-sas-on-pic-restart { description "Clear IKE SAs when the corresponding PIC restarts"; type empty; } leaf clear-ipsec-sas-on-pic-restart { description "Clear IPSec SAs when the corresponding PIC restarts"; type empty; } } container ggsn { description "GGSN settings"; uses ggsn_type; } container ssl { description "SSL profiles configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for Secure Socket Layer support service"; uses ssl-traceoptions; } container termination { description "Configuration for Secure Socket Layer termination support service"; uses ssl-termination-config; } container initiation { description "Configuration for Secure Socket Layer initiation support service"; uses ssl-initiation-config; } container proxy { description "Configuration for Secure Socket Layer proxy support service"; uses ssl-proxy-config; } } container stateful-firewall { description "Configure stateful firewall services"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Define a stateful firewall rule"; uses sfw_rule_object; } list rule-set { key name; ordered-by user; description "Define a set of stateful firewall rules"; max-elements 16960; leaf name { description "Name of the rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Rule to be included in this rule set"; max-elements 16960; leaf name { description "Rule name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } container ip-reassembly { description "Configure ip-reassembly services"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list profile { key name; description "Define a ip reassembly profile"; uses ipr_profile_object; } list rule { key name; ordered-by user; description "Define a ip reassembly rule"; uses ipr_rule_object; } list rule-set { key name; ordered-by user; description "Define a set of ip reassembly rules"; max-elements 16960; leaf name { description "Name of the rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Rule to be included in this rule set"; max-elements 16960; leaf name { description "Rule name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } container softwire { description "Configure softwire services"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list ipv6-multicast-interfaces { key name; ordered-by user; description "Enable IPv6 multicast filter"; leaf name { description "Interface name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container softwire-concentrator { description "Configure softwire concentrators"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list ds-lite { key name; ordered-by user; description "Configure DS-Lite concentrator"; uses dslite_object; } list v6rd { key name; ordered-by user; description "Configure 6rd concentrator"; uses v6rd_object; } } list rule { key name; ordered-by user; description "Define a softwire rule"; uses sw_rule_object; } list rule-set { key name; ordered-by user; description "Define a set of softwire rules"; max-elements 16960; leaf name { description "Name of the rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Rule to be included in this rule set"; max-elements 16960; leaf name { description "Rule name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } container aacl { description "Application Aware Access List services configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "One or more AACL rules"; uses aacl_rule_object; } list rule-set { key name; ordered-by user; description "Define a Set of AACL rules"; max-elements 16960; leaf name { description "Name of the rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Rule to be included in this rule set"; max-elements 16960; leaf name { description "Rule name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } list aacl-dyn-rule-set { key name; ordered-by user; description "Define a set of AACL dynamic rules"; max-elements 16960; leaf name { description "Name of the rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Rule to be included in this rule set"; max-elements 16960; leaf name { description "Rule name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } container ptsp { description "Packet Triggered Subscribers Policy services configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "One or more PTSP rules"; uses ptsp_rule_object; } list forward-rule { key name; ordered-by user; description "One or more PTSP forwarding rules"; uses ptsp_forward_rule_object; } list rule-set { key name; ordered-by user; description "Define a set of PTSP rules"; max-elements 16960; leaf name { description "Name of the rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Rule to be included in this rule set"; max-elements 16960; leaf name { description "Rule name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } container hcm { description "Http Content Management services configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list url-rule { key name; ordered-by user; description "One or more url HCM rules"; uses hcm_url_rule_object; } list tag-rule { key name; ordered-by user; description "One or more HCM tag rules"; uses hcm_tag_rule_object; } list url-list { key name; ordered-by user; description "List of URL's"; uses hcm_url_list_object; } leaf-list tag-attribute { description " List of possible tag attributes for tag-rules"; type string; } list url-rule-set { key name; ordered-by user; description "Define a Set of HCM url rules"; max-elements 16960; leaf name { description "Name of the rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Rule to be included in this rule set"; max-elements 16960; leaf name { description "Rule name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } list tag-rule-set { key name; ordered-by user; description "Define a Set of HCM tag rules"; max-elements 16960; leaf name { description "Name of the rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Rule to be included in this rule set"; max-elements 16960; leaf name { description "Rule name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } container cos { description "Class of Service services configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list application-profile { key name; ordered-by user; description "One or more CoS application profiles"; uses cos_application_profile_object; } list rule { key name; ordered-by user; description "One or more CoS rules"; uses cos_rule_object; } list rule-set { key name; ordered-by user; description "Define a Set of CoS rules"; max-elements 16960; leaf name { description "Name of the rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Rule to be included in this rule set"; max-elements 16960; leaf name { description "Rule name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } container pgcp { description "Packet Gateway Control Protocol services configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for packet gateway service"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container flag { presence "enable flag"; description "Per-component trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default { description "Default trace level for all the components"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } container h248-stack { presence "enable h248-stack"; description "H248 stack sub-components"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default { description "Default trace level for the H248 stack subcomponents"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf control-association { description "Control association trace level"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf media-gateway { description "Media gateway trace level"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf messages { description "Enable H248 dump messages"; type empty; } } container bgf-core { presence "enable bgf-core"; description "BGF core sub-components"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default { description "Default trace level for the bgf core subcomponents"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf firewall { description "Firewall trace level"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf gate-logic { description "Gate trace level"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf policy { description "Policy trace level"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf pic-broker { description "PIC broker trace level"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf statistics { description "Statistics trace level"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf common { description "Common trace level"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } } container sbc-utils { presence "enable sbc-utils"; description "SBC utils sub-components"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default { description "Default trace level for the sbc-utils subcomponents"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf common { description "Common utils trace level"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf configuration { description "Configuration trace level"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf device-monitor { description "Device-monitor trace level"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf ipc { description "IPC trace level"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf memory-management { description "Memory mgmt trace level"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf messaging { description "Messaging trace level"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf user-interface { description "UI trace level"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } } } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } } list virtual-interface { key name; ordered-by user; description "One or more Virtual Interfaces"; max-elements 1024; uses pgcp_virtual_interface_object; } list gateway { key name; ordered-by user; description "One or more Packet Gateways"; max-elements 32; uses pgcp_gateway_object; } list rule { key name; ordered-by user; description "One or more PGCP rules"; max-elements 64; uses pgcp_rule_object; } list rule-set { key name; ordered-by user; description "Define a Set of PGCP rules"; max-elements 16960; leaf name { description "Name of the rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Rule to be included in this rule set"; max-elements 16960; leaf name { description "Rule name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } container session-mirroring { description "Session mirroring configuration"; uses pgcp_session_mirroring_object; } leaf notification-rate-limit { description "Max number of notifications/second sent to PGC"; type int32 { range "10 .. 1000"; } } } container border-signaling-gateway { description "Border signaling service configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list gateway { key name; ordered-by user; description "(null)"; max-elements 4; uses gateway_type; } } container ids { description "Configure the intrusion detection system"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Define an IDS rule"; uses ids_rule_object; } list rule-set { key name; ordered-by user; description "Define a set of IDS rules"; max-elements 16960; leaf name { description "Name of the rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Rule to be included in this rule set"; max-elements 16960; leaf name { description "Rule name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } container pcp { description "Configure Port Control Protocol"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list server { key name; ordered-by user; description "Define a PCP server"; uses pcp-server-object; } list rule { key name; ordered-by user; description "Define a PCP rule"; uses pcp-rule-object; } list rule-set { key name; ordered-by user; description "Defines a set of PCP rules"; max-elements 16960; leaf name { description "Name of the rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Rule to be included in this rule set"; max-elements 16960; leaf name { description "Rule name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } container nat { description "Configure Network Address Translation"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list pool { key name; ordered-by user; description "Define a NAT pool"; uses nat_pool_object; } list ipv6-multicast-interfaces { key name; ordered-by user; description "Enable IPv6 multicast filter for IPv6 NAT"; leaf name { description "Interface name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable IPv6 multicast filter for IPv6 NAT"; type empty; } } leaf allow-overlapping-nat-pools { description "Allow usage of overlapping and same nat pools in multiple service sets"; type empty; } list rule { key name; ordered-by user; description "Define a NAT rule"; uses nat_rule_object; } list port-forwarding { key name; ordered-by user; description "Define a port-forwarding pool"; uses pf_mapping; } list rule-set { key name; ordered-by user; description "Defines a set of NAT rules"; max-elements 16960; leaf name { description "Name of the rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Rule to be included in this rule set"; max-elements 16960; leaf name { description "Rule name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } container l2tp { presence "enable l2tp"; description "Configure Layer 2 Tunneling Protocol service"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list tunnel-group { key name; ordered-by user; description "Layer 2 Tunneling Protocol profile"; uses l2tp_tunnel_group_object; } container ip-reassembly { description "Configure IP Reassembly parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf service-set { description "Name of IP Reassembly service set"; type string { length "1 .. 63"; } } } container traceoptions { description "Layer 2 Tunneling Protocol daemon trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum gres { description "Trace GRES events"; } enum init { description "Trace daemon initialization"; } enum events { description "Trace interface events"; } enum memory { description "Trace memory management code"; } enum message { description "Trace message processing code"; } enum packet-error { description "Trace Packet error events"; } enum parse { description "Trace parsing events"; } enum receive-packets { description "Trace received L2TP packets"; } enum session-db { description "Trace session database interactions"; } enum states { description "Trace state machine events"; } enum timer { description "Trace timer events"; } enum transmit-packets { description "Trace tranmitted L2TP packets"; } enum routing-socket { description "Trace routing socket events"; } enum routing-process { description "Trace routing process interactions"; } enum protocol { description "Trace Layer 2 Tunneling Protocol events"; } enum configuration { description "Trace configuration events"; } enum ipc-tx { description "Trace IPC transmit events"; } enum ipc-rx { description "Trace IPC receive events"; } enum general { description "Trace general events"; } enum tunnel { description "Trace tunnel events"; } enum stats { description "Trace libstats events"; } enum authentication { description "Trace authentication process interactions"; } enum all { description "Trace everything"; } } } } leaf debug-level { description "Trace level for PPP, L2TP, RADIUS, and UDP"; type enumeration { enum error { description "Errors"; } enum detail { description "Detailed debug information"; } enum packet-dump { description "Packet decode information"; } } } container filter { presence "enable filter"; description "Filter to control trace messages"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list protocol { key name; ordered-by user; description "Additional filter for protocol"; leaf name { description "(null)"; type enumeration { enum ppp { description "Trace Point-to-Point Protocol events"; } enum l2tp { description "Trace Layer 2 Tunneling Protocol events"; } enum radius { description "Trace RADIUS events"; } enum udp { description "Trace User Datagram Protocol events"; } } } } leaf user-name { description "Additional filter by user name"; type string { length "1 .. 64"; } } } list interfaces { key name; ordered-by user; description "Layer 2 Tunneling Protocol service interface"; uses l2tp_interface_traceoptions; } } leaf weighted-load-balancing { description "Enable weighted-load-balancing for LAC sessions"; type empty; } leaf failover-within-preference { description "Enable failover-within-preference level for LAC sessions"; type empty; } leaf disable-calling-number-avp { description "Disable the calling number AVP in ICRQ packet"; type empty; } leaf disable-failover-protocol { description "Disable failover protocol resync mechanism"; type empty; } leaf rx-connect-speed-when-equal { description "Generate rx connect speed AVP when tx equals rx speed"; type empty; } leaf tx-connect-speed-method { description "TX connect speed method"; default "static"; type enumeration { enum static { description "Use advisory speed"; } enum pppoe-ia-tag { description "Use tx/rx speed sent in the PPPoE IA tag"; } enum ancp { description "Use ANCP sourced value"; } } } container tunnel { description "System wide tunnel attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf assignment-id-format { description "Assignment id format"; default "assignment-id"; type enumeration { enum assignment-id { description "Configure the format to be assignment-id only"; } enum client-server-id { description "Configure the format to be client-auth-id + server-auth-id + assignment-id"; } } } leaf retransmission-count-established { description "Max Retransmission count for Established tunnels"; default "7"; type uint16 { range "2 .. 30"; } } leaf retransmission-count-not-established { description "Max Retransmission count for Not Established tunnels"; default "5"; type uint16 { range "2 .. 30"; } } leaf nas-port-method { description "Tunnel network access server port method"; type enumeration { enum cisco-avp { description "Limited Cisco vendor specific mechanism"; } } } leaf minimum-retransmission-timeout { description "Min retransmission timeout for control packets in seconds (default 1)"; default "1"; type enumeration { enum 1 { description "1 second"; } enum 2 { description "2 seconds"; } enum 4 { description "4 seconds"; } enum 8 { description "8 seconds"; } enum 16 { description "16 seconds"; } } } leaf idle-timeout { description "Tunnel idle timeout value in seconds"; default "60"; type uint32 { range "0 .. 86400"; } } leaf rx-window-size { description "Tunnel Receive Window Size"; default "4"; type uint16 { range "4 .. 128"; } } leaf tx-address-change { description "Tunnel Tx Address Change"; type enumeration { enum accept { description "Accept Tx IP Address or UDP Port change"; } enum ignore-ip-address { description "Ignore Tx IP Address Change"; } enum ignore-udp-port { description "Ignore Tx UDP Port Change"; } enum ignore { description "Ignore Tx IP Address or UDP Port change"; } } } } leaf destruct-timeout { description "The destruct timeout in seconds"; default "300"; type uint16 { range "10 .. 3600"; } } leaf tunnel-switch-profile { description "Default tunnel switch profile name"; type string { length "1 .. 64"; } } container destination { description "System wide destination attributes"; uses l2tp_destination_object; } container access-line-information { description "Enable system wide sending of DSL line attributes"; uses l2tp_access_line_object; } leaf enable-snmp-tunnel-statistics { description "Enable L2TP tunnel statistics for availability via SNMP"; type empty; } } container adaptive-services-pics { description "Adaptive Services PIC daemon configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Adaptive Services PIC daemon trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum routing-socket { description "Trace routing socket events"; } enum routing-protocol { description "Trace routing protocol events"; } enum configuration { description "Trace configuration events"; } enum ipc { description "Trace IPC related events"; } enum kernel-object { description "Trace kernel object management"; } enum snmp { description "Trace SNMP operations"; } enum all { description "Trace everything"; } } } } } } container service-interface-pools { description "Configure service interface pools"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list pool { key name; ordered-by user; description "Define service interface pool"; uses service_interface_pool_object; } } container hosted-services { description "Configuration for services performed in the remote server"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list client-profile { key name; ordered-by user; description "Configure client profile"; leaf name { description "Client profile name"; type string { length "3 .. 32"; } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf transport-type { description "Transport type"; type enumeration { enum GRE { description "GRE"; } enum UDP { description "UDP"; } enum TCP { description "TCP"; } } mandatory true; } leaf client-address { description "Client address"; type ipv4addr; mandatory true; } leaf hosted-service-identifier { description "Identifier for the service performed on the remote server"; type int32 { range "1 .. 63"; } mandatory true; } } list server-profile { key name; ordered-by user; description "Configure server profile"; leaf name { description "Server profile name"; type string { length "3 .. 32"; } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf transport-type { description "Transport type"; type enumeration { enum GRE { description "GRE"; } enum UDP { description "UDP"; } enum TCP { description "TCP"; } } } leaf server-address { description "Server address"; type ipv4addr; } leaf client-address { description "Client address"; type ipv4addr; } leaf hosted-service-identifier { description "Identifier for the service performed in the remote server"; type int32 { range "1 .. 63"; } } } } container jflow-log { presence "enable jflow-log"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list collector { key name; ordered-by user; description "Collector attributes"; leaf name { description "Profile name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf destination-address { description "IPv4 Address or hostname of the collector"; type string { } mandatory true; } leaf destination-port { description "Destination port of the collector"; type uint16 { range "1 .. 65535"; } mandatory true; } leaf source-ip { description "Source IPv4 Address from which logging is to be done"; type ipv4addr; mandatory true; } } list collector-group { key name; ordered-by user; description "(null)"; leaf name { description "Name of collector-group"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list collector { description "List of Collector profiles"; type string { length "1 .. 63"; } max-elements 8; } } list template-profile { key name; ordered-by user; description "(null)"; leaf name { description "Specify name of the template"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf collector { description "Specify a collector name"; type string { length "1 .. 63"; } } leaf-list collector-group { description "Specify a collector-group name"; type string { length "1 .. 63"; } max-elements 1; } leaf template-type { description "Allow jflow-log for applications"; type enumeration { enum nat { description "Enable jflow-logs for NAT events"; } } mandatory true; } leaf version { description "Version of jflow-logging"; type enumeration { enum v9 { description "Version 9"; } enum ipfix { description "Ipfix"; } } mandatory true; } container refresh-rate { presence "enable refresh-rate"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf packets { description "Specify number of packets after which templates are sent to collector"; default "4800"; type uint32 { range "1 .. 48000"; } } leaf seconds { description "Specify number of seconds after which templates are sent to collector"; default "1800"; type uint32 { range "10 .. 1800"; } } } } } container service-device-pools { description "Configure service device pools"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list pool { key name; ordered-by user; description "Define service device pool"; uses service_device_pool_object; } } container server-load-balance { description "Configure server load balancing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list real-server { key name; ordered-by user; description "Configure real server"; leaf name { description "Name of the server"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ramp-up-time { description "Ramp-up time to upper threshold for the real server"; units "second"; type uint16 { range "0 .. 60000"; } } leaf maximum-connection-threshold { description "Upper threshold for connections allowed to the real servers"; default "4000000"; type uint32 { range "1 .. 4000000"; } } leaf minimum-connection-threshold { description "Lower threshold before allowing connections to the real server again"; default "4000000"; type uint32 { range "1 .. 4000000"; } } leaf weight { description "Weight for WRR and WLC algorithm"; default "1"; type uint32 { range "1 .. 100"; } } leaf address { description "Real server IP address"; type ipaddr; mandatory true; } leaf port { description "Application port number"; type string; } choice status-control { case case_1 { leaf disable { description "Disable new requests and terminate existing sessions"; type empty; } } case case_2 { leaf pause { description "Disable new requests and keep existing sessions"; type empty; } } case case_3 { leaf allow-sticky-only { description "Disable new requests except those finding match in sticky table"; type empty; } } } leaf health-monitor { description "Name of the health monitor rule"; type string; } } list real-server-group { key name; ordered-by user; description "Configure real server group"; leaf name { description "Name of the real server group"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list real-server { key name; ordered-by user; description "List of real servers"; leaf name { description "Real server name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf routing-instance { description "Name of the routing instance"; type string; } leaf health-monitor { description "Name of the health monitor rule"; type string; } leaf algorithm { description "Server load balancing algorithm"; default "round-robin"; type enumeration { enum round-robin { description "Choose real servers using round-robin method"; } enum weighted-round-robin { description "Choose real servers using weighted round-robin method"; } enum least-connections { description "Choose real servers using least connections algorithm"; } enum weighted-least-connections { description "Choose real servers using weighted least connections algorithm"; } enum client-ip-hash { description "Choose real servers using client IP hash result"; } enum weighted-client-ip-hash { description "Choose real servers using weighted client IP hash result"; } } } container sticky-mode { description "Rule to maintain session persistence"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf timeout { description "Duration of sticky persistence"; units "minutes"; type uint32 { range "1 .. 10260"; } } choice select-sticky-mode { case case_1 { leaf client-ip-match { description "Client IP sticky"; type empty; } } case case_2 { leaf ssl-sessionid { description "SSL session id sticky"; type empty; } } } } leaf external-manager { description "Name of the external manager"; type string; } } list virtual-server { key name; ordered-by user; description "Configure virtual server"; leaf name { description "Name of the virtual server"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf destination-address { description "Virtual server IP address"; type ipaddr; mandatory true; } leaf protocol { description "Specify the protocol for server load balancing"; default "any"; type enumeration { enum any { description "Configure either TCP or UDP"; } enum tcp { description "Configure TCP"; } enum udp { description "Configure UDP"; } enum http { description "Configure HTTP"; } } } leaf destination-port { description "Application port number"; type string; } leaf load-balance-mode { description "Specify the load balance mode for server load balancing"; default "per-session"; type enumeration { enum per-session { description "Configure load balance per session"; } enum per-packet { description "Configure load balance per packet"; } } } container policy { description "Content based policy"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container default { description "Default rule"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf real-server-group { description "Default real server group name"; type string; mandatory true; } presence "enable default"; leaf backup-real-server-group { description "Backup real server group name"; type string; } leaf failover-threshold { description "Failover percentage threshold"; type uint16 { range "0 .. 100"; } } leaf failback-threshold { description "Failback percentage threshold"; type uint16 { range "0 .. 100"; } } leaf service-port { description "Application port number"; type string; } } } leaf routing-instance { description "Name of the routing instance"; type string; } leaf disable { description "Disable virtual server"; type empty; } } list health-monitor { key name; ordered-by user; description "Configure server health monitor"; leaf name { description "Name of the server health monitor"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container protocol { description "Probe packet protocol"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice select-protocol { case case_1 { container icmp { presence "enable icmp"; description "Send an ECHO request to the real sever and wait for the reply"; } } case case_2 { container tcp { presence "enable tcp"; description "Try to establish a TCP connection to the real server"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port { description "Application port number"; type string; } } } case case_3 { container http { presence "enable http"; description "Try to establish a HTTP connection to the real server"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container request { presence "enable request"; description "How and where to send the probe"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf method { description "HTTP request method: get or head; default is get"; default "get"; type enumeration { enum get { description "Get request to HTTP server"; } enum head { description "Head request to HTTP server"; } } } leaf url { description "The path to the status page that needs to be retrieved by the probe"; type string { length "1 .. 255"; } } leaf port { description "Application port number"; type string; } } container response-check { presence "enable response-check"; description "Conditions that the content of the body of the probe page need to meet"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list code { description "HTTP response healthy status codes or code ranges, e.g., 200, 210-220, 300-356, etc."; type string; } leaf md5 { description "The expected MD5 hash of the body content"; type string { length "1 .. 32"; } } leaf match { description "The regular expression that the body content needs to match"; type string { length "1 .. 128"; } } } } } } } leaf time-out { description "Time-out value for receiving health monitoring response"; default "5"; units "seconds"; type uint16 { range "1 .. 3600"; } } leaf server-down-interval { description "Health monitoring interval when real server is down"; default "10"; units "seconds"; type uint16 { range "1 .. 3600"; } } leaf server-up-interval { description "Health monitoring interval when real server is up"; default "20"; units "seconds"; type uint16 { range "1 .. 3600"; } } leaf maximum-retries { description "Configure maximum retries before marking real server down"; default "5"; type uint16 { range "1 .. 1000"; } } } container traceoptions { description "Configure server load balance traceoptions"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum init { description "Trace daemon initialization events"; } enum config { description "Trace daemon configuration events"; } enum rtsock { description "Trace daemon routing socket events"; } enum interface { description "Trace daemon interface events"; } enum eventlib { description "Trace daemon eventlib events"; } enum misc { description "Trace daemon miscellaneous events"; } enum sasp { description "Trace SASP events"; } enum daemon-all { description "Trace all daemon events"; } enum datapath-init { description "Trace datapath initialization events"; } enum datapath-config { description "Trace datapath configuration events"; } enum datapath-data { description "Trace datapath data events"; } enum datapath-all { description "Trace all datapath events"; } enum health-monitor-init { description "Trace health monitor initialization events"; } enum health-monitor-config { description "Trace health monitor configuration events"; } enum health-monitor-control { description "Trace health monitor control events"; } enum health-monitor-thread { description "Trace health monitor thread events"; } enum health-monitor-all { description "Trace all health monitor events"; } enum all { description "Trace all events"; } } } } leaf level { description "Set level of tracing"; default "brief"; type enumeration { enum brief { description "Brief debugging output"; } enum detail { description "Detailed debugging output"; } enum extensive { description "Extensive debugging output"; } enum verbose { description "Verbose debugging output"; } } } } list external-manager { key name; ordered-by user; description "Configure external manager"; leaf name { description "Name of the external manager"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf protocol { description "Protocol of external manager"; default "sasp"; type enumeration { enum sasp { description "SASP manager (RFC4678)"; } } } leaf address { description "External manager IP address"; type ipaddr; mandatory true; } leaf port { description "External manager TCP port"; default "3860"; type uint16 { range "1 .. 65535"; } } leaf disable { description "Disable external manager"; type empty; } } } } container access-profile { description "Access profile for this instance"; leaf access-profile-name { description "Profile name"; type string; } } container security { description "Security configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container alarms { description "Configure security alarms"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container audible { presence "enable audible"; description "Beep when new security alarms arrive"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf continuous { description "Keep beeping until all security alarms have been cleared"; type empty; } } container potential-violation { description "Configure potential security violations"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf authentication { description "Raise alarm for specified number of authentication failures"; type uint32 { range "2 .. 10"; } } leaf cryptographic-self-test { description "Raise alarm for cryptographic self test failures"; type empty; } container decryption-failures { presence "enable decryption-failures"; description "Raise alarm for specified number of decryption failures"; } container encryption-failures { presence "enable encryption-failures"; description "Raise alarm for specified number of encryption failures"; } container ike-phase1-failures { presence "enable ike-phase1-failures"; description "Raise alarm for specified number of IKE Phase 1 failures"; } container ike-phase2-failures { presence "enable ike-phase2-failures"; description "Raise alarm for specified number of IKE Phase 2 failures"; } leaf key-generation-self-test { description "Raise alarm for key generation self test failures"; type empty; } leaf non-cryptographic-self-test { description "Raise alarm for non-cryptographic self test failures"; type empty; } container policy { description "Raise alarm for flow policy violations"; } container replay-attacks { presence "enable replay-attacks"; description "No. of Replay attacks before which an alarm needs to be raised"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "Replay threshold value"; default "1000"; type uint32 { range "1 .. 1000000000"; } } } leaf security-log-percent-full { description "Raise alarm when security log exceeds this percent capacity"; type uint8 { range "0 .. 100"; } } leaf idp { description "Raise alarm for idp attack"; type empty; } } } container log { description "Configure auditable security logs"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container cache { presence "enable cache"; description "Cache security log events in the audit log buffer"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list exclude { key name; ordered-by user; description "List of security log criteria to exclude from the audit log"; leaf name { description "Exclude criteria name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf destination-address { description "Destination address"; type ipaddr; } leaf destination-port { description "Destination port"; type uint32; } leaf event-id { description "Event ID filter"; type string; } leaf failure { description "Event was a failure"; type empty; } leaf interface-name { description "Name of interface"; type string; } leaf policy-name { description "Policy name filter"; type string; } leaf process { description "Process that generated the event"; type string; } leaf protocol { description "Protocol filter"; type string; } leaf source-address { description "Source address"; type ipaddr; } leaf source-port { description "Source port"; type uint32; } leaf success { description "Event was successful"; type empty; } leaf username { description "Username filter"; type string; } } leaf limit { description "Limit number of security log entries to keep in memory"; default "10000"; type uint32; } } } container certificates { description "X.509 certificate configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list local { key name; ordered-by user; description "Local X.509 certificate configuration"; uses certificate-object; } leaf path-length { description "Maximum certificate path length"; default "15"; type uint32 { range "0 .. 15"; } } leaf maximum-certificates { description "Maximum number of certificates to cache"; default "1024"; type uint32 { range "64 .. 4294967295"; } } leaf cache-size { description "Maximum size of certificate cache"; units "bytes"; type string; } leaf cache-timeout-negative { description "Time in seconds to cache negative responses"; default "20"; type uint32 { range "10 .. 4294967295"; } } leaf enrollment-retry { description "Number of retry attempts for an enrollment request"; type uint32 { range "0 .. 1080"; } } list certification-authority { key name; ordered-by user; description "CA X.509 certificate configuration"; leaf name { description "CA profile name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ca-name { description "CA name"; type string; } leaf file { description "File to read certificate from"; type string; } leaf crl { description "File to read crl from"; type string; } leaf enrollment-url { description "URL"; type string; } leaf ldap-url { description "URL"; type string; } leaf encoding { description "Encoding to use for certificate or CRL on disk"; default "binary"; type enumeration { enum binary { description "DER encoding"; } enum pem { description "Privacy-enhanced-mail encoding, base64"; } } } } } container ssh-known-hosts { description "SSH known host list"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list host { key name; ordered-by user; description "SSH known host entry"; leaf name { description "Host name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf rsa1-key { description "Base64 encoded RSA key (protocol version 1)"; type string; } leaf rsa-key { description "Base64 encoded RSA key"; type string; } leaf dsa-key { description "Base64 encoded DSA key"; type string; } leaf ecdsa-sha2-nistp256-key { description "Base64 encoded ECDSA-SHA2-NIST256 key"; type string; } leaf ecdsa-sha2-nistp384-key { description "Base64 encoded ECDSA-SHA2-NIST384 key"; type string; } leaf ecdsa-sha2-nistp521-key { description "Base64 encoded ECDSA-SHA2-NIST521 key"; type string; } leaf ed25519-key { description "Base64 encoded ED25519 key"; type string; } } } leaf key-protection { description "Common-Criteria key-protection configuration"; type empty; } container pki { description "PKI service configuration"; uses security-pki; } container group-vpn { description "Group VPN configuration"; uses security-group-vpn; } container traceoptions { description "Trace options for IPSec key management"; uses security-traceoptions; } container ipsec { description "IPSec configuration"; uses security-ipsec; } container ike { description "IKE configuration"; uses security-ike; } container authentication-key-chains { description "Authentication key chain configuration"; uses security-authentication-key-chains; } container idp { description "IDP configuration"; list idp-policy { key name; ordered-by user; description "Configure IDP policy"; uses idp-policy-type; } leaf active-policy { description "Set active policy"; type string; } list custom-attack { key name; ordered-by user; description "Configure custom attacks"; uses custom-attack-type; } list custom-attack-group { key name; ordered-by user; description "Configure custom attack groups"; uses custom-attack-group-type; } list dynamic-attack-group { key name; ordered-by user; description "Configure dynamic attack groups"; uses dynamic-attack-group-type; } list application-ddos { key name; ordered-by user; description "Configure an aplication based distributed denial of service"; uses application-ddos-type; } container traceoptions { description "Trace options for idp services"; uses idpd-traceoptions-type; } container security-package { description "Security package options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf url { description "URL of Security package download"; type string; } leaf source-address { description "Source address to be used for sending download request"; type ipv4addr; } container install { presence "enable install"; description "Configure install command"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ignore-version-check { description "Skip version check when attack database gets installed"; type empty; } } container automatic { presence "enable automatic"; description "Scheduled download and update"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf start-time { description "Start time (YYYY-MM-DD.HH:MM:SS)"; type time; } leaf interval { description "Interval"; units "hours"; type uint32 { range "24 .. 336"; } } choice enable-disable { case case_1 { leaf enable { description "Enable"; type empty; } } } } } container sensor-configuration { description "IDP Sensor Configuration"; container log { description "IDP Log Configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf cache-size { description "Log cache size"; type uint32 { range "1 .. 65535"; } } container suppression { presence "enable suppression"; description "Log suppression"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable log suppression"; type empty; } } } leaf include-destination-address { description "Include destination address while performing a log suppression"; type empty; } leaf no-include-destination-address { description "Include destination address while performing a log suppression"; type empty; } leaf start-log { description "Suppression start log"; type uint32 { range "1 .. 128"; } } leaf max-logs-operate { description "Maximum logs can be operate on"; type uint32 { range "256 .. 65536"; } } leaf max-time-report { description "Time after suppressed logs will be reported"; type uint32 { range "1 .. 60"; } } } } container packet-log { description "IDP Packetlog Configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf total-memory { description "Total memory unit(%)"; type uint32 { range "1 .. 100"; } } leaf max-sessions { description "Max num of sessions in unit(%)"; type uint32 { range "1 .. 100"; } } leaf source-address { description "Source IP address used to transport packetlog to a host"; type ipv4addr; mandatory true; } presence "enable packet-log"; container host { description "Destination host to send packetlog to"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ipaddr { description "IP address"; type ipv4addr; mandatory true; } presence "enable host"; leaf port { description "UDP port number"; type uint16; mandatory true; } } } container application-identification { presence "enable application-identification"; description "Application identification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable application identification"; type empty; } } } leaf application-system-cache { description "Application system cache"; type empty; } leaf no-application-system-cache { description "Application system cache"; type empty; } leaf max-tcp-session-packet-memory { description "Max TCP session memory"; type uint32 { range "0 .. 60000"; } } leaf max-udp-session-packet-memory { description "Max UDP session memory"; type uint32 { range "0 .. 20000"; } } leaf max-sessions { description "Max sessions that can run AI at the same time"; type uint32 { range "0 .. 500000"; } } leaf max-packet-memory { description "Max packet memory"; type uint32 { range "0 .. 200000000"; } } leaf application-system-cache-timeout { description "Application system cache timeout"; type uint32 { range "0 .. 1000000"; } } } container flow { description "Flow configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf log-errors { description "Flow log errors"; type empty; } leaf no-log-errors { description "Flow log errors"; type empty; } leaf reset-on-policy { description "Flow reset-on-policy"; type empty; } leaf no-reset-on-policy { description "Flow reset-on-policy"; type empty; } leaf allow-icmp-without-flow { description "Allow icmp without flow"; type empty; } leaf no-allow-icmp-without-flow { description "Allow icmp without flow"; type empty; } leaf hash-table-size { description "Flow hash table size"; type uint32 { range "1024 .. 1000000"; } } leaf reject-timeout { description "Flow reject timeout"; type uint32 { range "1 .. 65535"; } } leaf max-timers-poll-ticks { description "Maximum timers poll ticks"; type uint32 { range "0 .. 1000"; } } leaf fifo-max-size { description "Maximum fifo size"; type uint32 { range "1 .. 65535"; } } leaf udp-anticipated-timeout { description "Maximum udp anticipated timeout"; type uint32 { range "1 .. 65535"; } } leaf allow-nonsyn-connection { description "Allow TCP non-syn connection"; type empty; } } container re-assembler { description "Re-assembler configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ignore-memory-overflow { description "Ignore memory overflow"; type empty; } leaf no-ignore-memory-overflow { description "Ignore memory overflow"; type empty; } leaf ignore-reassembly-memory-overflow { description "Ignore packet reassembly memory overflow"; type empty; } leaf no-ignore-reassembly-memory-overflow { description "Ignore packet reassembly memory overflow"; type empty; } leaf ignore-reassembly-overflow { description "Ignore global reassembly overflow"; type empty; } leaf max-packet-mem { description "Maximum packet memory"; type uint32 { range "64 .. 4294967295"; } } leaf max-flow-mem { description "Maximum flow memory"; type uint32 { range "64 .. 4294967295"; } } } container ips { description "Ips configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf process-override { description "Process override"; type empty; } leaf no-process-override { description "Process override"; type empty; } leaf detect-shellcode { description "Detect shellcode"; type empty; } leaf no-detect-shellcode { description "Detect shellcode"; type empty; } leaf process-ignore-s2c { description "Process ignore s2c"; type empty; } leaf no-process-ignore-s2c { description "Process ignore s2c"; type empty; } leaf ignore-regular-expression { description "Ignore regular expression"; type empty; } leaf no-ignore-regular-expression { description "Ignore regular expression"; type empty; } leaf process-port { description "Process port"; type uint32 { range "0 .. 65535"; } } leaf fifo-max-size { description "Maximum fifo size"; type uint32 { range "1 .. 65535"; } } leaf log-supercede-min { description "Minimum log supercede"; type uint32 { range "0 .. 65535"; } } leaf content-decompression-max-memory-kb { description "Maximum memory usage in kilo bytes"; type uint32 { range "50 .. 2000000"; } } leaf content-decompression-max-ratio { description "Maximum decompression ratio supported"; type uint32 { range "1 .. 128"; } } } container global { description "Global configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf enable-packet-pool { description "Enable packet pool"; type empty; } leaf no-enable-packet-pool { description "Enable packet pool"; type empty; } leaf enable-all-qmodules { description "Enable all qmodules"; type empty; } leaf no-enable-all-qmodules { description "Enable all qmodules"; type empty; } leaf policy-lookup-cache { description "Policy lookup cache"; type empty; } leaf no-policy-lookup-cache { description "Policy lookup cache"; type empty; } leaf memory-limit-percent { description "Memory limit percentage"; type uint32 { range "10 .. 90"; } } container gtp { description "GTP configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf decapsulation { description "Enable GTP decapsulation"; type empty; } leaf no-decapsulation { description "Enable GTP decapsulation"; type empty; } } } container detector { description "Detector Configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list protocol-name { key name; ordered-by user; description "Apropriate help string"; uses proto-object; } } container ssl-inspection { description "SSL inspection"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf sessions { description "Number of SSL sessions to inspect"; default "10000"; type uint32 { range "1 .. 100000"; } } leaf session-id-cache-timeout { description "Timeout value for SSL session ID cache"; default "600"; units "seconds"; type uint32 { range "1 .. 7200"; } } leaf maximum-cache-size { description "Maximum SSL session ID cache size"; default "100000"; units "sessions"; type uint32 { range "1 .. 5000000"; } } leaf cache-prune-chunk-size { description "Number of cache entries to delete when pruning SSL session ID cache"; default "100"; type uint32 { range "1 .. 100000"; } } leaf key-protection { description "Enable SSL key protection"; type empty; } } container application-ddos { description "Application DDoS sensor configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container statistics { presence "enable statistics"; description "Enable Application DDos statistics collection"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interval { description "Interval for Application DDos statistics collection"; default "1"; units "minutes"; type uint32 { range "1 .. 60"; } } } } container high-availability { description "High availability configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-policy-cold-synchronization { description "Disable policy cold synchronization"; type empty; } } } } container macsec { description "MAC Security configuration"; uses security-macsec; } } container interfaces { description "Interface configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list pic-set { key name; ordered-by user; description "NP bundling configuration"; leaf name { description "Pic set name"; type string { length "1 .. 127"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list interface { key name; ordered-by user; description "One or more interfaces that use this picset"; leaf name { description "Interface name"; type string { length "1 .. 127"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list fpc { key name; ordered-by user; description "(null)"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list pic { key name; ordered-by user; description "Physical Interface Card number"; leaf name { description "PIC slot number"; type uint32 { range "0 .. 3"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } list interface-set { key name; ordered-by user; description "Logical interface set configuration"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list interface { key name; ordered-by user; description "One or more interfaces that belong to interface set"; leaf name { description "Interface name"; type interface-device; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list unit { key name; description "One or more logical interface unit numbers"; leaf name { description "Unit number"; type uint32 { range "0 .. 1073741823"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list vlan-tags-outer { key name; description "One or more outer VLAN tags"; leaf name { description "VLAN tag ID"; type uint32 { range "0 .. 4094"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } container pppoe-underlying-options { description "PPP over Ethernet underlying interface-specific options"; uses pppoe_underlying_options_type; } } container traceoptions { description "Interface trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum all { description "Enable all configuration logging"; } enum kernel { description "Log configuration IPC messages to kernel"; } enum change-events { description "Log changes that produce configuration events"; } enum kernel-detail { description "Log details of configuration messages to kernel"; } enum config-states { description "Log the configuration state machine changes"; } enum resource-usage { description "Log the resource usage for different states"; } enum gres-events { description "Log the events related to GRES "; } enum select-events { description "Log the events on select state machine "; } enum bfd-events { description "Log BFD related events"; } } } leaf disable { description "Disable this trace flag"; type empty; } } } list interface-range { key name; ordered-by user; description "Interface ranges configuration"; leaf name { description "Interface-range name"; type string { length "1 .. 128"; } } list member { key name; ordered-by user; description "Interfaces belonging to the interface range"; leaf name { description "Member interface name"; type interface-range-wild; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list member-range { key name; ordered-by user; description "Interfaces range in to format"; leaf name { description "(null)"; type interface-device; } leaf end-range { description "(null)"; type interface-device; mandatory true; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf description { description "Text description of interface"; type string; } leaf metadata { description "Text metadata attached to interface"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable this interface"; type empty; } } } leaf promiscuous-mode { description "Enable promiscuous mode for L3 interface"; type empty; } leaf port-mirror-instance { description "Port-mirror the packet to specified instance"; type string { length "1 .. 64"; } } leaf multicast-statistics { description "Enable multicast statistics"; type empty; } leaf oam-on-svlan { description "Propagate SVLAN OAM state to CVLANs"; type empty; } container fabric-options { description "Fabric interface specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list member-interfaces { key name; description "Member interface for the fabric interface"; leaf name { description "Interface name of member"; type interface-device; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } container traceoptions { presence "enable traceoptions"; description "Interface trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum ipc { description "Trace interface IPC messages"; } enum event { description "Trace interface events"; } enum media { description "Trace interface media changes"; } enum all { description "Enable all interface trace flags"; } } } } } leaf passive-monitor-mode { description "Use interface to tap packets from another router"; type empty; } choice keepalive_choices { case case_1 { container keepalives { description "Send or demand keepalive messages"; uses keepalives_type; } } case case_2 { leaf no-keepalives { description "Do not send keepalive messages"; type empty; } } } leaf traps { description "Enable SNMP notifications on state changes"; type empty; } leaf no-traps { description "Enable SNMP notifications on state changes"; type empty; } leaf accounting-profile { description "Accounting profile name"; type string; } container anchor-point { presence "enable anchor-point"; description "Anchor point"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interface-name { description "Interface name"; type interface-device; mandatory true; } } leaf bypass-queueing-chip { description "Enable to bypass queueing chip"; type empty; } leaf no-bypass-queueing-chip { description "Enable to bypass queueing chip"; type empty; } choice scheduler_type { case case_1 { leaf per-unit-scheduler { description "Enable subunit queuing on Frame Relay or VLAN IQ interface"; type empty; } leaf no-per-unit-scheduler { description "Enable subunit queuing on Frame Relay or VLAN IQ interface"; type empty; } } case case_2 { leaf shared-scheduler { description "Enabled shared queuing on an IQ2 interface"; type empty; } } case case_3 { container hierarchical-scheduler { presence "enable hierarchical-scheduler"; description "Enable hierarchical scheduling"; leaf maximum-hierarchy-levels { description "Maximum hierarchy levels"; type uint32 { range 2; } } leaf implicit-hierarchy { description "Implicit hierarchy (follows interface hierarchy)"; type empty; } } } } leaf schedulers { description "Number of schedulers to allocate for interface"; type uint32; } leaf interface-transmit-statistics { description "Interface statistics based on the transmitted packets"; type empty; } leaf cascade-port { description "Cascade port"; type empty; } leaf dce { description "Respond to Frame Relay status enquiry messages"; type empty; } choice vlan_tag_mode { case case_1 { leaf vlan-tagging { description "802.1q VLAN tagging support"; type empty; } } case case_2 { leaf stacked-vlan-tagging { description "Stacked 802.1q VLAN tagging support"; type empty; } } case case_3 { leaf flexible-vlan-tagging { description "Support for no tagging, or single and double 802.1q VLAN tagging"; type empty; } } case case_4 { leaf vlan-vci-tagging { description "CCC for VLAN Q-in-Q and ATM VPI/VCI interworking"; type empty; } } } leaf native-vlan-id { description "Virtual LAN identifier for untagged frames"; type uint32 { range "0 .. 4094"; } } leaf speed { description "Link speed"; type enumeration { enum auto { description "Enable auto negotiation of interface speed"; } enum auto-10m-100m { description "Enable auto negotiation of limiting interface speed to 10m/100m"; } enum 10m { description "(null)"; } enum 100m { description "(null)"; } enum 1g { description "(null)"; } enum 10g { description "(null)"; } enum 40g { description "(null)"; } enum oc3 { description "(null)"; } enum oc12 { description "(null)"; } enum oc48 { description "(null)"; } } } container forwarding-class-accounting { presence "enable forwarding-class-accounting"; description "Configure Forwarding-class-accounting parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf direction { description "Direction of the traffic to be accounted for IFD"; type enumeration { enum ingress { description "Enable forwarding-class-accounting for ingress traffic"; } enum egress { description "Enable forwarding-class-accounting for egress traffic"; } enum both { description "Enable forwarding-class-accounting for both directions"; } } } container enhanced { presence "enable enhanced"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf traffic-type { description "Traffic-type to be accounted for forwarding-class-accounting"; type enumeration { enum unicast-statistics { description "Count only unicast traffic for forwarding-class-accounting"; } enum multicast-statistics { description "Count only multicast traffic for forwarding-class-accounting"; } } } leaf family { description "Protocol traffic to be accounted for forwarding-class-accounting"; type enumeration { enum inet { description "Enable forwarding-class-accounting for IPv4 family only"; } enum inet6 { description "Enable forwarding-class-accounting for IPv6 family only"; } enum both { description "Enable forwarding-class-accounting for both IPv4 and IPv6 family only"; } } } leaf direction { description "Direction of the traffic to be accounted for forwarding-class-accounting"; type enumeration { enum ingress { description "Enable forwarding-class-accounting for ingress traffic"; } enum egress { description "Enable forwarding-class-accounting for egress traffic"; } enum both { description "Enable forwarding-class-accounting for both ingress and egress traffic"; } } } leaf overhead-bytes { description "Per octet overhead bytes to be accounted for forwarding-class-accounting"; default "0"; type uint32 { range "0 .. 255"; } } } } container auto-configure { description "Auto configuration"; uses auto_configure_vlan_type; } leaf mtu { description "Maximum transmit packet size"; type uint32 { range "256 .. 9216"; } } container hold-time { description "Hold time for link up and link down"; leaf up { description "Link up hold time"; units "milliseconds"; type uint32; mandatory true; } presence "enable hold-time"; leaf down { description "Link down hold time"; units "milliseconds"; type uint32; mandatory true; } } container damping { description "Interface damping parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf half-life { description "Damping half life time"; default "5"; units "seconds"; type uint32 { range "1 .. 30"; } } leaf max-suppress { description "Maximum suppress time"; default "20"; units "seconds"; type uint32 { range "1 .. 20000"; } } leaf reuse { description "Reuse threshold"; default "1000"; type uint32 { range "1 .. 20000"; } } leaf suppress { description "Suppress threshold"; default "2000"; type uint32 { range "1 .. 20000"; } } leaf enable { description "Enable interface damping"; type empty; } } container satop-options { description "Structure-Agnostic TDM over Packet protocol options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf idle-pattern { description "An 8-bit hexadecimal pattern to replace TDM data in a lost packet"; type uint32 { range "0 .. 255"; } } leaf payload-size { description "Number of payload bytes per packet"; type uint32 { range "64 .. 1024"; } } container excessive-packet-loss-rate { description "Packet loss options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "Percentile designating the threshold of excessive packet loss rate"; type uint8 { range "1 .. 100"; } } leaf sample-period { description "Number of milliseconds over which excessive packet loss rate is calculated"; type uint32 { range "1000 .. 65535"; } } } choice jitter-buffer-size { case case_1 { leaf jitter-buffer-packets { description "Number of packets in jitter buffer before packet data is played out in the line"; type uint32 { range "1 .. 64"; } } } case case_2 { leaf jitter-buffer-latency { description "Number of milliseconds delay in jitter buffer before packet data is played out in the line"; units "milliseconds"; type uint32 { range "1 .. 1000"; } } } case case_3 { leaf jitter-buffer-auto-adjust { description "Automatically adjust jitter buffer"; type empty; } } } leaf bit-rate { description "In multiples of DS0"; type uint32 { range "1 .. 10240"; } } } container cesopsn-options { description "Structure-Aware TDM over Packet protocol options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf idle-pattern { description "An 8-bit hexadecimal pattern to replace TDM data in a lost packet"; type uint32 { range "0 .. 255"; } } leaf packetization-latency { description "Number of microseconds to create packets"; units "microseconds"; type uint32 { range "1000 .. 8000"; } } leaf payload-size { description "Number of payload bytes per packet"; type uint32 { range "64 .. 1024"; } } container excessive-packet-loss-rate { description "Packet loss options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "Percentile designating the threshold of excessive packet loss rate"; type uint8 { range "1 .. 100"; } } leaf sample-period { description "Number of milliseconds over which excessive packet loss rate is calculated"; type uint32 { range "1000 .. 65535"; } } } choice jitter-buffer-size { case case_1 { leaf jitter-buffer-packets { description "Number of packets in jitter buffer before packet data is played out in the line"; type uint32 { range "1 .. 64"; } } } case case_2 { leaf jitter-buffer-latency { description "Number of milliseconds delay in jitter buffer before packet data is played out in the line"; units "milliseconds"; type uint32 { range "1 .. 1000"; } } } case case_3 { leaf jitter-buffer-auto-adjust { description "Automatically adjust jitter buffer"; type empty; } } } leaf bit-rate { description "In multiples of DS0"; type uint32 { range "1 .. 10240"; } } } container ima-group-options { description "IMA group options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf frame-length { description "Frame length (cells)"; type enumeration { enum 32 { description "(null)"; } enum 64 { description "(null)"; } enum 128 { description "(null)"; } enum 256 { description "(null)"; } } } leaf symmetry { description "Symmetry of IMA group"; default "symmetrical-config-and-operation"; type enumeration { enum symmetrical-config-and-operation { description "(null)"; } enum symmetrical-config-asymmetrical-operation { description "(null)"; } } } leaf transmit-clock { description "Transmit clock"; type enumeration { enum common { description "Common transmit clock"; } enum independent { description "Independent transmit clock"; } } } leaf version { description "IMA specification version"; type enumeration { enum 1.0 { description "Version 1.0"; } enum 1.1 { description "Version 1.1"; } } } container minimum-links { description "IMA group minimum active links"; choice minimum_links_type { case case_1 { leaf symmetrical { description "Minimum active receive and transmit links"; type uint32 { range "1 .. 32"; } } } } } container frame-synchronization { description "IMA group frame synchronization state parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf alpha { description "Consecutive invalid ICP cells"; type uint32 { range "1 .. 2"; } } leaf beta { description "Consecutive errored ICP cells"; type uint32 { range "1 .. 5"; } } leaf gamma { description "Consecutive valid ICP cells"; type uint32 { range "1 .. 5"; } } } container test-procedure { description "IMA group test pattern procedure"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf period { description "Length of IMA pattern test"; units "seconds"; type uint32 { range "1 .. 4294967294"; } } leaf interface { description "Interface name of the IMA link to test"; type interface-device; } leaf pattern { description "IMA test pattern"; type uint32 { range "1 .. 254"; } } } leaf differential-delay { description "Maximum differential delay among links in the IMA group"; units "milliseconds"; type uint32 { range "1 .. 56"; } } } container ima-link-options { description "IMA link options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf group-id { description "IMA group ID this IMA link belongs to"; type uint32 { range "12 .. 57"; } } } list multi-chassis-protection { key name; description "Inter-Chassis protection configuration"; uses multi-chassis-protection-group; } container clocking { presence "enable clocking"; description "Interface clock source"; choice clocking_choices { case case_1 { leaf internal { description "Clocking provided by local system"; type empty; } } case case_2 { container external { presence "enable external"; description "Clocking provided by DCE (loop timing)"; } } } } leaf link-mode { description "Link operational mode"; type enumeration { enum automatic { description "Automatically negotiate duplex"; } enum half-duplex { description "Half-duplex operation"; } enum full-duplex { description "Full-duplex operation"; } } } leaf media-type { description "Interface media type (copper or fiber)"; type enumeration { enum copper { description "Copper as media"; } enum fiber { description "Fiber as media"; } } } leaf encapsulation { description "Physical link-layer encapsulation"; type enumeration { enum ppp { description "Serial PPP device"; } enum ppp-ccc { description "Serial PPP device for a cross-connect"; } enum ppp-tcc { description "Serial PPP device for a translational cross-connect"; } enum ether-vpls-ppp { description "Ethernet VPLS over PPP (bridging) device"; } enum frame-relay { description "Frame Relay encapsulation"; } enum frame-relay-ccc { description "Frame Relay for cross-connect"; } enum frame-relay-tcc { description "Frame Relay for translational cross-connect"; } enum extended-frame-relay-ccc { description "Any Frame Relay DLCI for cross-connect"; } enum extended-frame-relay-tcc { description "Any Frame Relay DLCI for translational cross-connect"; } enum flexible-frame-relay { description "Multiple Frame Relay encapsulations"; } enum frame-relay-port-ccc { description "Frame Relay port encapsulation for a cross-connect"; } enum frame-relay-ether-type { description "Cisco-compatible Frame Relay encapsulation"; } enum frame-relay-ether-type-tcc { description "Cisco-compatible Frame Relay encapsulation for translational cross-connect"; } enum extended-frame-relay-ether-type-tcc { description "Cisco-compatible Frame Relay encapsulation any DLCI for translational cross-connect"; } enum cisco-hdlc { description "Cisco-compatible HDLC framing"; } enum cisco-hdlc-ccc { description "Cisco-compatible HDLC framing for a cross-connect"; } enum cisco-hdlc-tcc { description "Cisco-compatible HDLC framing for a translational cross-connect"; } enum vlan-ccc { description "802.1q tagging for a cross-connect"; } enum extended-vlan-ccc { description "Nonstandard TPID tagging for a cross-connect"; } enum ethernet-ccc { description "Ethernet cross-connect"; } enum flexible-ethernet-services { description "Allows per-unit Ethernet encapsulation configuration"; } enum atm-pvc { description "ATM permanent virtual circuits"; } enum atm-ccc-cell-relay { description "ATM cell relay encapsulation for cross-connect"; } enum ethernet-over-atm { description "Ethernet over ATM encapsulation"; } enum ethernet-tcc { description "Ethernet translational cross-connect"; } enum extended-vlan-tcc { description "802.1q tagging for a translational cross-connect"; } enum multilink-frame-relay-uni-nni { description "Multilink Frame Relay UNI NNI (FRF.16) encapsulation"; } enum satop { description "Structure-Agnostic TDM over Packet encapsulation"; } enum cesopsn { description "Structure-Agnostic TDM over Packet encapsulation"; } enum ima { description "Inverse Multiplexing for ATM"; } enum ethernet-vpls { description "Ethernet virtual private LAN service"; } enum ethernet-bridge { description "Ethernet layer-2 bridging"; } enum vlan-vpls { description "VLAN virtual private LAN service"; } enum vlan-vci-ccc { description "CCC for VLAN Q-in-Q and ATM VPI/VCI interworking"; } enum extended-vlan-vpls { description "Extended VLAN virtual private LAN service"; } enum extended-vlan-bridge { description "VLAN layer-2 bridging"; } enum multilink-ppp { description "Multilink PPP"; } enum generic-services { description "Generic services"; } } } container esi { description "ESI configuration of multi-homed interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf identifier { description "ESI value for the interface"; type esi; mandatory true; } presence "enable esi"; choice mode { case case_1 { leaf single-active { description "Single-active mode"; type empty; } } case case_2 { leaf all-active { description "All-active mode"; type empty; } } } } container framing { description "Frame type"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice frame { case case_1 { leaf lan-phy { description "802.3ae 10-Gbps LAN-mode interface"; type empty; } } case case_2 { leaf wan-phy { description "802.3ae 10-Gbps WAN-mode interface"; type empty; } } case case_3 { leaf sonet { description "SONET framing"; type empty; } } case case_4 { leaf sdh { description "SDH framing"; type empty; } } } } leaf unidirectional { description "Unidirectional Mode"; type empty; } container lmi { description "Local Management Interface settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf n391dte { description "DTE full status polling interval"; type uint16 { range "1 .. 255"; } } leaf n392dce { description "DCE error threshold"; type uint16 { range "1 .. 10"; } } leaf n392dte { description "DTE error threshold"; type uint16 { range "1 .. 10"; } } leaf n393dce { description "DCE monitored event count"; type uint16 { range "1 .. 10"; } } leaf n393dte { description "DTE monitored event count"; type uint16 { range "1 .. 10"; } } leaf t391dte { description "DTE polling timer"; units "seconds"; type uint16 { range "5 .. 30"; } } leaf t392dce { description "DCE polling verification timer"; units "seconds"; type uint16 { range "5 .. 30"; } } leaf lmi-type { description "Specify the Frame Relay LMI type"; type enumeration { enum ansi { description "Use ANSI Annex D LMI"; } enum itu { description "Use ITU Q933a Annex A LMI"; } enum c-lmi { description "Use Consortium LMI"; } } } } container mlfr-uni-nni-bundle-options { description "Multilink Frame Relay UNI NNI (FRF.16) management settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container cisco-interoperability { description "FRF.16 Cisco interoperability settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf send-lip-remove-link-for-link-reject { description "Send Link Integrity Protocol remove link on receiving add-link rejection"; type empty; } } leaf mrru { description "Maximum received reconstructed unit"; units "bytes"; type uint16 { range "1500 .. 4500"; } } leaf yellow-differential-delay { description "Yellow differential delay among bundle links to give warning"; units "milliseconds"; type uint16 { range "3 .. 2000"; } } leaf red-differential-delay { description "Red differential delay among bundle links to take action"; units "milliseconds"; type uint16 { range "5 .. 2000"; } } leaf action-red-differential-delay { description "Type of actions when differential delay exceeds red limit"; type enumeration { enum remove-link { description "Remove bundle link from service when exceeding red limit"; } enum disable-tx { description "Disable transfer of bundle link when exceeding red limit"; } } } leaf fragment-threshold { description "Fragmentation threshold"; units "bytes"; type uint32 { range "64 .. 16320"; } } leaf drop-timeout { description "Drop timeout"; units "milliseconds"; type uint16 { range "0 .. 2000"; } } leaf link-layer-overhead { description "Link layer bit stuffing overhead (0.0 .. 50.0 percent)"; type unsigned-float; } leaf lmi-type { description "Specify the multilink Frame Relay UNI NNI LMI type"; type enumeration { enum ansi { description "Use ANSI Annex D LMI"; } enum itu { description "Use ITU Q933a Annex A LMI"; } enum c-lmi { description "Use Consortium LMI"; } } } leaf minimum-links { description "Minimum number of links to sustain the bundle"; type uint16 { range "1 .. 8"; } } leaf hello-timer { description "LIP hello timer"; type uint16 { range "5 .. 180"; } } leaf acknowledge-timer { description "LIP ack timer"; type uint16 { range "1 .. 10"; } } leaf acknowledge-retries { description "LIP ack retry times"; type uint16 { range "1 .. 5"; } } leaf n391 { description "Multilink Frame Relay UNI NNI full status polling counter"; type uint16 { range "1 .. 255"; } } leaf n392 { description "Multilink Frame Relay UNI NNI LMI error threshold"; type uint16 { range "1 .. 10"; } } leaf n393 { description "Multilink Frame Relay UNI NNI LMI monitored event count"; type uint16 { range "1 .. 10"; } } leaf t391 { description "Multilink Frame Relay UNI NNI link integrity verify polling timer"; type uint16 { range "5 .. 30"; } } leaf t392 { description "Multilink Frame Relay UNI NNI polling verification timer"; type uint16 { range "5 .. 30"; } } } leaf mac { description "Hardware MAC address"; type mac-unicaset; } container receive-bucket { description "Set receive bucket parameters"; uses dcd_rx_bucket_config; } container transmit-bucket { description "Set transmit bucket parameters"; uses dcd_tx_bucket_config; } leaf shared-interface { description "Enable shared interface on the interface"; type empty; } container sonet-options { description "SONET interface-specific options"; uses sonet_options_type; } container logical-tunnel-options { description "Logical Tunnel interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf per-unit-mac-disable { description "Disable the creation of per unit mac address on LT IFLs for VPLS/CCC encaps"; type empty; } } container aggregated-sonet-options { description "Aggregated SONET interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-links { description "Minimum number of aggregated links"; type uint16 { range "1 .. 32"; } } leaf link-speed { description "Aggregated links speed"; type enumeration { enum oc3 { description "Links are OC-3c or STM-1c"; } enum oc12 { description "Links are OC-12c or STM-4c"; } enum oc48 { description "Links are OC-48c or STM-16c"; } enum oc192 { description "Links are OC-192c or STM-64c"; } enum oc768 { description "Links are OC-768c or STM-256c"; } enum mixed { description "Links are various speeds"; } } } leaf minimum-bandwidth { description "Minimum bandwidth necessary to sustain bundle"; units "bps"; type uint64 { range "0 .. 159232000000"; } } } container atm-options { description "ATM interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf pic-type { description "Type of ATM PIC (ATM I, ATM II or ATM CE)"; type enumeration { enum atm-ce { description "CE PIC"; } enum atm2 { description "ATM II IQ PIC"; } enum atm1 { description "ATM I PIC"; } } } leaf cell-bundle-size { description "L2 circuit cell bundle size"; units "cells"; type uint32 { range "1 .. 176"; } } leaf cell-bundle-timeout { description "L2 circuit cell bundle timeout"; units "microseconds"; type uint32 { range "1 .. 512"; } } leaf plp-to-clp { description "Enable ATM2 PLP to CLP copy"; type empty; } leaf use-null-cw { description "Always insert/strip null control words with cell-relay"; type empty; } container promiscuous-mode { presence "enable promiscuous-mode"; description "Set ATM interface to promiscuous mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list vpi { key name; ordered-by user; description "Open this VPI in promiscuous mode"; leaf name { description "Virtual path index"; type uint32 { range "0 .. 255"; } } } } list vpi { key name; ordered-by user; description "Define a virtual path"; leaf name { description "Virtual path index"; type uint32 { range "0 .. 255"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum-vcs { description "Maximum number of virtual circuits on this VP"; type uint32; } container shaping { description "Virtual path traffic-shaping options"; uses dcd_shaping_config; } container oam-period { description "F4 OAM cell period"; choice oam_period_choices { case case_1 { leaf oam-period { description "F4 OAM cell period"; units "seconds"; type uint32 { range "1 .. 900"; } } } case case_2 { container disable { presence "enable disable"; description "Disable F4 OAM loopback"; } } } } container oam-liveness { description "F4 OAM virtual path liveness parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf up-count { description "Number of F4 OAM cells to consider VP up"; type uint32 { range "1 .. 255"; } } leaf down-count { description "Number of F4 OAM cells to consider VP down"; type uint32 { range "1 .. 255"; } } } } container ilmi { presence "enable ilmi"; description "Enable Interim Local Management Interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list linear-red-profiles { key name; ordered-by user; description "ATM2 CoS virtual circuit drop profiles"; leaf name { description "Linear RED profile name"; type string { } } leaf queue-depth { description "Maximum queue depth"; units "cells"; type string; mandatory true; } leaf high-plp-threshold { description "Fill level percentage when linear RED is applied for high PLP"; type uint32 { range "0 .. 100"; } mandatory true; } leaf low-plp-threshold { description "Fill level percentage when linear RED is applied for low PLP"; type uint32 { range "0 .. 100"; } mandatory true; } leaf high-plp-max-threshold { description "Fill level percentage with 100 percent packet drop for high PLP"; type uint32 { range "0 .. 100"; } } leaf low-plp-max-threshold { description "Fill level percentage with 100 percent packet drop for low PLP"; type uint32 { range "0 .. 100"; } } } list scheduler-maps { key name; ordered-by user; description "ATM2 CoS parameters assigned to forwarding classes"; leaf name { description "ATM2 CoS scheduler map name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf vc-cos-mode { description "ATM2 virtual circuit CoS mode"; type enumeration { enum strict { description "Always schedule high priority queue first"; } enum alternate { description "Every other packet from high priority queue (default)"; } } } list forwarding-class { key name; ordered-by user; description "Scheduling parameters associated with forwarding class"; leaf name { description "Forwarding class name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf priority { description "Queuing priority assigned to forwarding class"; type enumeration { enum low { description "Low priority queuing"; } enum high { description "High priority queuing"; } } } container transmit-weight { description "Transmit weight"; choice weight-method { case case_1 { leaf percent { description "Transmit weight as percentage"; type uint32 { range "5 .. 100"; } } } case case_2 { leaf cells { description "Transmit weight by cells count"; type string; } } } } choice drop-profile-method { case case_1 { container epd-threshold { description "Early packet discard threshold for ATM2"; uses epd_threshold_config; } } case case_2 { leaf linear-red-profile { description "Linear RED profile profile name"; type string; } } } } } container mpls { description "MPLS options"; uses mpls_ifd_options; } leaf payload-scrambler { description "Enable payload scrambling"; type empty; } leaf no-payload-scrambler { description "Enable payload scrambling"; type empty; } } container multiservice-options { description "Multiservice interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf syslog { description "Enable system logging on this interface"; type empty; } leaf no-syslog { description "Enable system logging on this interface"; type empty; } leaf core-dump { description "Enable core dumping on this interface"; type empty; } leaf no-core-dump { description "Enable core dumping on this interface"; type empty; } container flow-control-options { description "Flow control configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf dump-on-flow-control { description "Cause core dump during prolonged flow-control"; type empty; } leaf reset-on-flow-control { description "Reset interface during prolonged flow-control"; type empty; } leaf down-on-flow-control { description "Bring interface down during prolonged flow-control"; type empty; } } } container ggsn-options { description "GGSN interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf syslog { description "Enable system logging on this interface"; type empty; } leaf no-syslog { description "Enable system logging on this interface"; type empty; } leaf core-dump { description "Enable core dumping on this interface"; type empty; } leaf no-core-dump { description "Enable core dumping on this interface"; type empty; } } container ppp-options { description "Point-to-Point Protocol (PPP) interface-specific options"; uses ppp_options_type; } container redundancy-options { description "Redundancy options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf primary { description "Specify the primary interface"; type interface-device; } leaf secondary { description "Specify the secondary interface"; type interface-device; } container redundancy-local { description "Specify information for the local peer"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf data-address { description "Specify the HA local data IP address"; type ipv4addr; } } leaf routing-instance { description "Specify routing-instance for the HA traffic"; type string; } container replicate-services { description "Replicate services state from active to backup"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf pgcp { description "Replicate the PGCP service state"; type empty; } } } container load-balancing-options { description "Load-balancing on services pics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list member-interface { key name; description "(null)"; max-elements 24; leaf name { description "Interface name"; type interface-device; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container member-failure-options { description "Load balancing member failure handling options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice member-failure { case case_1 { container redistribute-all-traffic { presence "enable redistribute-all-traffic"; description "On a member failure, redistribute traffic to ams"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf enable-rejoin { description "Failed member can rejoin after recovery"; type empty; } } } case case_2 { container drop-member-traffic { presence "enable drop-member-traffic"; description "On a member failure, drop its traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf rejoin-timeout { description "Wait time(in seconds) for failed member to rejoin"; default "120"; type uint32 { range "0 .. 1000"; } } leaf enable-rejoin { description "Failed member can join after recovery"; type empty; } } } } } container high-availability-options { description "High Availability options for Load-balancing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice ha-type { case case_1 { container many-to-one { description "N:1 High Availability model"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf preferred-backup { description "Preferred backup Interface name"; type interface-device; } } } } } } container anchoring-options { description "Groups anchoring PFEs or FPCs together."; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf apfe-group-set { description "Ties up different anchoring groups to share similar fate"; type string { length "1 .. 32"; } } list primary-list { key name; description "Primary anchoring PFE name."; leaf name { description "Anchoring PFE name."; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container secondary { presence "enable secondary"; description "Secondary anchoring PFE name."; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf anchoring-device-name { description "Anchoring PFE name."; type string { } } } choice mode { case case_1 { leaf warm-standby { description "Delayed failover to secondary when primary fails"; type empty; } } } } container lsq-failure-options { description "Link services queuing failure options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list trigger-link-failure { key name; ordered-by user; description "Link on which to trigger failure"; leaf name { description "Interface name"; type interface-device; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf no-termination-request { description "Do not send PPP termination requests"; type empty; } leaf no-no-termination-request { description "Do not send PPP termination requests"; type empty; } } container redundancy-group { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list member-interface { key name; description "Member interface for the redundancy group"; leaf name { description "Interface name of member"; type interface-device; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice redundancy { case case_1 { leaf active { description "Active interface"; type empty; } } case case_2 { leaf backup { description "Backup interface"; type empty; } } } } leaf maximum-links { description "(null)"; type uint32 { range "2 .. 32"; } } } container services-options { description "Services interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container syslog { description "Define system log parameters"; uses service_set_syslog_object; } container jflow-log { description "Define Jflow-log parameters."; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf message-rate-limit { description "Maximum jflow-log NAT error events allowed per second from this interface"; units "messages per second"; type uint32 { range "1 .. 2147483647"; } } } leaf open-timeout { description "Timeout period for TCP session establishment"; units "seconds"; type uint32 { range "4 .. 300"; } } leaf close-timeout { description "Timeout period for TCP session tear-down"; units "seconds"; type uint32 { range "2 .. 300"; } } leaf inactivity-timeout { description "Inactivity timeout period for established sessions (4..86400)"; units "seconds"; type uint32; } leaf inactivity-tcp-timeout { description "Inactivity timeout period for TCP established sessions"; units "seconds"; type uint32 { range "4 .. 86400"; } } leaf inactivity-asymm-tcp-timeout { description "Inactivity timeout period for asymmetric TCP established sessions"; units "seconds"; type uint32 { range "4 .. 86400"; } } leaf inactivity-non-tcp-timeout { description "Inactivity timeout period for non-TCP established sessions"; units "seconds"; type uint32 { range "4 .. 86400"; } } leaf session-timeout { description "Session timeout period for established sessions"; units "seconds"; type uint32 { range "4 .. 86400"; } } leaf disable-global-timeout-override { description "Disallow overriding global inactivity or session timeout"; type empty; } leaf tcp-tickles { description "Number of TCP keep-alive packets to be sent for bi-directional TCP flows"; default "4"; type uint8 { range "0 .. 30"; } } container trio-flow-offload { presence "enable trio-flow-offload"; description "Allow PIC to offload flows to Trio-based PFE"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-bytes { description "Attempt flow offload after minimum bytes are seen on the flow"; type uint32; } } leaf fragment-limit { description "Maximum number of fragments allowed for a packet"; default "250"; type uint8 { range "1 .. 250"; } } leaf reassembly-timeout { description "Re-assembly timeout (seconds) for fragments of a packet"; default "4"; units "seconds"; type uint8 { range "1 .. 60"; } } leaf cgn-pic { description "PIC will be used for Carrier Grade NAT configuration only"; type empty; } leaf pba-interim-logging-interval { description "Interim logging interval in seconds"; default "0"; units "seconds"; type uint32 { range "0 .. 86400"; } } container session-limit { presence "enable session-limit"; description "Session limit"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum { description "Maximum number of sessions allowed simultaneously"; type string; } leaf rate { description "Maximum number of new sessions allowed per second"; type string; } leaf cpu-load-threshold { description "CPU limit in percentage for auto-tuning of session rate"; units "percent"; type uint8 { range "1 .. 100"; } } } container ignore-errors { presence "enable ignore-errors"; description "Ignore anomalies or errors"; leaf tcp { description "TCP anomalies or errors"; type empty; } leaf alg { description "ALG anomalies or errors"; type empty; } } } container t3-options { description "T3 interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf loopback { description "Loopback mode"; type enumeration { enum local { description "Local loopback"; } enum remote { description "Remote loopback"; } enum payload { description "Payload loopback"; } } } leaf long-buildout { description "Set hardware to drive line longer than 255 feet"; type empty; } leaf no-long-buildout { description "Set hardware to drive line longer than 255 feet"; type empty; } leaf loop-timing { description "Set loop timing for T3"; type empty; } leaf no-loop-timing { description "Set loop timing for T3"; type empty; } leaf unframed { description "Enable unframed mode"; type empty; } leaf no-unframed { description "Enable unframed mode"; type empty; } container compatibility-mode { description "Set CSU compatibility mode"; choice vendor { case case_1 { container larscom { presence "enable larscom"; description "Compatible with Larscom CSU"; leaf subrate { description "Set subrate value"; type uint32 { range "1 .. 14"; } } } } case case_2 { container verilink { presence "enable verilink"; description "Compatible with Verilink CSU (not on 2/4-port T3 PIC)"; leaf subrate { description "Set subrate value"; type uint32 { range "1 .. 28"; } } } } case case_3 { container adtran { presence "enable adtran"; description "Compatible with Adtran CSU (not on 2/4-port T3 PIC)"; leaf subrate { description "Set subrate value"; type uint32 { range "1 .. 588"; } } } } case case_4 { container kentrox { presence "enable kentrox"; description "Compatible with Kentrox CSU"; leaf subrate { description "Set subrate value (not on 2/4-port T3 PIC)"; type uint32 { range "1 .. 69"; } } } } case case_5 { container digital-link { presence "enable digital-link"; description "Compatible with Digital Link CSU"; leaf subrate { description "Set subrate value"; type enumeration { enum 301Kb { description "301 Kbps"; } enum 601Kb { description "601 Kbps"; } enum 902Kb { description "902 Kbps"; } enum 1.2Mb { description "1.2 Mbps"; } enum 1.5Mb { description "1.5 Mbps"; } enum 1.8Mb { description "1.8 Mbps"; } enum 2.1Mb { description "2.1 Mbps"; } enum 2.4Mb { description "2.4 Mbps"; } enum 2.7Mb { description "2.7 Mbps"; } enum 3.0Mb { description "3.0 Mbps"; } enum 3.3Mb { description "3.3 Mbps"; } enum 3.6Mb { description "3.6 Mbps"; } enum 3.9Mb { description "3.9 Mbps"; } enum 4.2Mb { description "4.2 Mbps"; } enum 4.5Mb { description "4.5 Mbps"; } enum 4.8Mb { description "4.8 Mbps"; } enum 5.1Mb { description "5.1 Mbps"; } enum 5.4Mb { description "5.4 Mbps"; } enum 5.7Mb { description "5.7 Mbps"; } enum 6.0Mb { description "6.0 Mbps"; } enum 6.3Mb { description "6.3 Mbps"; } enum 6.6Mb { description "6.6 Mbps"; } enum 6.9Mb { description "6.9 Mbps"; } enum 7.2Mb { description "7.2 Mbps"; } enum 7.5Mb { description "7.5 Mbps"; } enum 7.8Mb { description "7.8 Mbps"; } enum 8.1Mb { description "8.1 Mbps"; } enum 8.4Mb { description "8.4 Mbps"; } enum 8.7Mb { description "8.7 Mbps"; } enum 9.0Mb { description "9.0 Mbps"; } enum 9.3Mb { description "9.3 Mbps"; } enum 9.6Mb { description "9.6 Mbps"; } enum 9.9Mb { description "9.9 Mbps"; } enum 10.2Mb { description "10.2 Mbps"; } enum 10.5Mb { description "10.5 Mbps"; } enum 10.8Mb { description "10.8 Mbps"; } enum 11.1Mb { description "11.1 Mbps"; } enum 11.4Mb { description "11.4 Mbps"; } enum 11.7Mb { description "11.7 Mbps"; } enum 12.0Mb { description "12.0 Mbps"; } enum 12.3Mb { description "12.3 Mbps"; } enum 12.6Mb { description "12.6 Mbps"; } enum 12.9Mb { description "12.9 Mbps"; } enum 13.2Mb { description "13.2 Mbps"; } enum 13.5Mb { description "13.5 Mbps"; } enum 13.8Mb { description "13.8 Mbps"; } enum 14.1Mb { description "14.1 Mbps"; } enum 14.4Mb { description "14.4 Mbps"; } enum 14.7Mb { description "14.7 Mbps"; } enum 15.0Mb { description "15.0 Mbps"; } enum 15.3Mb { description "15.3 Mbps"; } enum 15.6Mb { description "15.6 Mbps"; } enum 15.9Mb { description "15.9 Mbps"; } enum 16.2Mb { description "16.2 Mbps"; } enum 16.5Mb { description "16.5 Mbps"; } enum 16.8Mb { description "16.8 Mbps"; } enum 17.1Mb { description "17.1 Mbps"; } enum 17.4Mb { description "17.4 Mbps"; } enum 17.7Mb { description "17.7 Mbps"; } enum 18.0Mb { description "18.0 Mbps"; } enum 18.3Mb { description "18.3 Mbps"; } enum 18.6Mb { description "18.6 Mbps"; } enum 18.9Mb { description "18.9 Mbps"; } enum 19.2Mb { description "19.2 Mbps"; } enum 19.5Mb { description "19.5 Mbps"; } enum 19.8Mb { description "19.8 Mbps"; } enum 20.1Mb { description "20.1 Mbps"; } enum 20.5Mb { description "20.5 Mbps"; } enum 20.8Mb { description "20.8 Mbps"; } enum 21.1Mb { description "21.1 Mbps"; } enum 21.4Mb { description "21.4 Mbps"; } enum 21.7Mb { description "21.7 Mbps"; } enum 22.0Mb { description "22.0 Mbps"; } enum 22.3Mb { description "22.3 Mbps"; } enum 22.6Mb { description "22.6 Mbps"; } enum 22.9Mb { description "22.9 Mbps"; } enum 23.2Mb { description "23.2 Mbps"; } enum 23.5Mb { description "23.5 Mbps"; } enum 23.8Mb { description "23.8 Mbps"; } enum 24.1Mb { description "24.1 Mbps"; } enum 24.4Mb { description "24.4 Mbps"; } enum 24.7Mb { description "24.7 Mbps"; } enum 25.0Mb { description "25.0 Mbps"; } enum 25.3Mb { description "25.3 Mbps"; } enum 25.6Mb { description "25.6 Mbps"; } enum 25.9Mb { description "25.9 Mbps"; } enum 26.2Mb { description "26.2 Mbps"; } enum 26.5Mb { description "26.5 Mbps"; } enum 26.8Mb { description "26.8 Mbps"; } enum 27.1Mb { description "27.1 Mbps"; } enum 27.4Mb { description "27.4 Mbps"; } enum 27.7Mb { description "27.7 Mbps"; } enum 28.0Mb { description "28.0 Mbps"; } enum 28.3Mb { description "28.3 Mbps"; } enum 28.6Mb { description "28.6 Mbps"; } enum 28.9Mb { description "28.9 Mbps"; } enum 29.2Mb { description "29.2 Mbps"; } enum 29.5Mb { description "29.5 Mbps"; } enum 29.8Mb { description "29.8 Mbps"; } enum 30.1Mb { description "30.1 Mbps"; } enum 30.4Mb { description "30.4 Mbps"; } enum 30.7Mb { description "30.7 Mbps"; } enum 31.0Mb { description "31.0 Mbps"; } enum 31.3Mb { description "31.3 Mbps"; } enum 31.6Mb { description "31.6 Mbps"; } enum 31.9Mb { description "31.9 Mbps"; } enum 32.2Mb { description "32.2 Mbps"; } enum 32.5Mb { description "32.5 Mbps"; } enum 32.8Mb { description "32.8 Mbps"; } enum 33.1Mb { description "33.1 Mbps"; } enum 33.4Mb { description "33.4 Mbps"; } enum 33.7Mb { description "33.7 Mbps"; } enum 34.0Mb { description "34.0 Mbps"; } enum 34.3Mb { description "34.3 Mbps"; } enum 34.6Mb { description "34.6 Mbps"; } enum 34.9Mb { description "34.9 Mbps"; } enum 35.2Mb { description "35.2 Mbps"; } enum 35.5Mb { description "35.5 Mbps"; } enum 35.8Mb { description "35.8 Mbps"; } enum 36.1Mb { description "36.1 Mbps"; } enum 36.4Mb { description "36.4 Mbps"; } enum 36.7Mb { description "36.7 Mbps"; } enum 37.0Mb { description "37.0 Mbps"; } enum 37.3Mb { description "37.3 Mbps"; } enum 37.6Mb { description "37.6 Mbps"; } enum 37.9Mb { description "37.9 Mbps"; } enum 38.2Mb { description "38.2 Mbps"; } enum 38.5Mb { description "38.5 Mbps"; } enum 38.8Mb { description "38.8 Mbps"; } enum 39.1Mb { description "39.1 Mbps"; } enum 39.4Mb { description "39.4 Mbps"; } enum 39.7Mb { description "39.7 Mbps"; } enum 40.0Mb { description "40.0 Mbps"; } enum 40.3Mb { description "40.3 Mbps"; } enum 40.6Mb { description "40.6 Mbps"; } enum 40.9Mb { description "40.9 Mbps"; } enum 41.2Mb { description "41.2 Mbps"; } enum 41.5Mb { description "41.5 Mbps"; } enum 41.8Mb { description "41.8 Mbps"; } enum 42.1Mb { description "42.1 Mbps"; } enum 42.4Mb { description "42.4 Mbps"; } enum 42.7Mb { description "42.7 Mbps"; } enum 43.0Mb { description "43.0 Mbps"; } enum 43.3Mb { description "43.3 Mbps"; } enum 43.6Mb { description "43.6 Mbps"; } enum 43.9Mb { description "43.9 Mbps"; } enum 44.2Mb { description "44.2 Mbps"; } } } } } } } leaf payload-scrambler { description "Enable payload scrambling"; type empty; } leaf no-payload-scrambler { description "Enable payload scrambling"; type empty; } leaf cbit-parity { description "Enable C-bit parity mode"; type empty; } leaf no-cbit-parity { description "Enable C-bit parity mode"; type empty; } leaf fcs { description "Frame checksum"; type enumeration { enum 32 { description "32-bit mode"; } enum 16 { description "16-bit mode"; } } } leaf idle-cycle-flag { description "Value to transmit in idle cycles"; type enumeration { enum flags { description "Transmit 0x7E in idle cycles"; } enum ones { description "Transmit 0xFF (all ones) in idle cycles"; } } } leaf start-end-flag { description "Set start/end flags on transmission"; type enumeration { enum shared { description "Share start/end flags on transmit"; } enum filler { description "Send two idle cycles between start/end flags"; } } } leaf feac-loop-respond { description "Respond to FEAC loop requests"; type empty; } leaf no-feac-loop-respond { description "Respond to FEAC loop requests"; type empty; } leaf bert-algorithm { description "Set BERT algorithm"; type enumeration { enum pseudo-2e3 { description "Pattern is 2^3 - 1"; } enum pseudo-2e4 { description "Pattern is 2^4 - 1"; } enum pseudo-2e5 { description "Pattern is 2^5 - 1"; } enum pseudo-2e6 { description "Pattern is 2^6 - 1"; } enum pseudo-2e7 { description "Pattern is 2^7 - 1"; } enum pseudo-2e9-o153 { description "Pattern is 2^9 - 1 (per O.153 standard)"; } enum pseudo-2e10 { description "Pattern is 2^10 - 1"; } enum pseudo-2e11-o152 { description "Pattern is 2^11 -1 (per O.152 standard)"; } enum pseudo-2e15-o151 { description "Pattern is 2^15 - 1 (per O.151 standard)"; } enum pseudo-2e17 { description "Pattern is 2^17 - 1"; } enum pseudo-2e18 { description "Pattern is 2^18 - 1"; } enum pseudo-2e20-o153 { description "Pattern is 2^20 - 1 (per O.153 standard)"; } enum pseudo-2e20-o151 { description "Pattern is 2^20 - 1 (per O.151 standard)"; } enum pseudo-2e21 { description "Pattern is 2^21 - 1"; } enum pseudo-2e22 { description "Pattern is 2^22 - 1"; } enum pseudo-2e23-o151 { description "Pattern is 2^23 (per O.151 standard)"; } enum pseudo-2e25 { description "Pattern is 2^25 - 1"; } enum pseudo-2e28 { description "Pattern is 2^28 - 1"; } enum pseudo-2e29 { description "Pattern is 2^29 - 1"; } enum pseudo-2e31 { description "Pattern is 2^31 - 1"; } enum pseudo-2e32 { description "Pattern is 2^32 - 1"; } enum all-ones-repeating { description "Repeating one bits"; } enum all-zeros-repeating { description "Repeating zero bits"; } enum alternating-ones-zeros { description "Alternating ones and zeros"; } enum alternating-double-ones-zeros { description "Alternating pairs of ones and zeros"; } enum repeating-3-in-24 { description "3 bits in 24 are set"; } enum repeating-1-in-8 { description "1 bit in 8 is set"; } enum repeating-1-in-4 { description "1 bit in 4 is set"; } } } leaf bert-error-rate { description "Bit error rate (10^-n for n > 0, and zero for n = 0)"; type uint32 { range "0 .. 7"; } } leaf bert-period { description "Length of BERT test"; units "seconds"; type uint32 { range "1 .. 240"; } } leaf buildout { description "Line buildout"; units "feet"; type uint32 { range "0 .. 450"; } } leaf atm-encapsulation { description "DS-3 interface encapsulation"; type enumeration { enum plcp { description "PLCP encapsulation"; } enum direct { description "ATM direct mapping"; } } } } container e3-options { description "E3 interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf loopback { description "Loopback mode"; type enumeration { enum local { description "Local loopback"; } enum remote { description "Remote loopback"; } } } leaf unframed { description "Enable unframed mode"; type empty; } leaf no-unframed { description "Enable unframed mode"; type empty; } container compatibility-mode { description "Set CSU compatibility mode"; choice vendor { case case_1 { leaf larscom { description "Compatible with Larscom CSU (only non IQ E3 interfaces)"; type empty; } } case case_2 { container digital-link { presence "enable digital-link"; description "Compatible with Digital Link CSU"; leaf subrate { description "Set subrate value"; type enumeration { enum 358Kb { description "358 Kbps"; } enum 716Kb { description "716 Kbps"; } enum 1.1Mb { description "1.1 Mbps"; } enum 1.4Mb { description "1.4 Mbps"; } enum 1.8Mb { description "1.8 Mbps"; } enum 2.1Mb { description "2.1 Mbps"; } enum 2.5Mb { description "2.5 Mbps"; } enum 2.9Mb { description "2.9 Mbps"; } enum 3.2Mb { description "3.2 Mbps"; } enum 3.6Mb { description "3.6 Mbps"; } enum 3.9Mb { description "3.9 Mbps"; } enum 4.3Mb { description "4.3 Mbps"; } enum 4.7Mb { description "4.7 Mbps"; } enum 5.0Mb { description "5.0 Mbps"; } enum 5.4Mb { description "5.4 Mbps"; } enum 5.7Mb { description "5.7 Mbps"; } enum 6.1Mb { description "6.1 Mbps"; } enum 6.4Mb { description "6.4 Mbps"; } enum 6.8Mb { description "6.8 Mbps"; } enum 7.2Mb { description "7.2 Mbps"; } enum 7.5Mb { description "7.5 Mbps"; } enum 7.9Mb { description "7.9 Mbps"; } enum 8.2Mb { description "8.2 Mbps"; } enum 8.6Mb { description "8.6 Mbps"; } enum 9.0Mb { description "9.0 Mbps"; } enum 9.3Mb { description "9.3 Mbps"; } enum 9.7Mb { description "9.7 Mbps"; } enum 10.0Mb { description "10.0 Mbps"; } enum 10.4Mb { description "10.4 Mbps"; } enum 10.7Mb { description "10.7 Mbps"; } enum 11.1Mb { description "11.1 Mbps"; } enum 11.5Mb { description "11.5 Mbps"; } enum 11.8Mb { description "11.8 Mbps"; } enum 12.2Mb { description "12.2 Mbps"; } enum 12.5Mb { description "12.5 Mbps"; } enum 12.9Mb { description "12.9 Mbps"; } enum 13.2Mb { description "13.2 Mbps"; } enum 13.6Mb { description "13.6 Mbps"; } enum 14.0Mb { description "14.0 Mbps"; } enum 14.3Mb { description "14.3 Mbps"; } enum 14.7Mb { description "14.7 Mbps"; } enum 15.0Mb { description "15.0 Mbps"; } enum 15.4Mb { description "15.4 Mbps"; } enum 15.8Mb { description "15.8 Mbps"; } enum 16.1Mb { description "16.1 Mbps"; } enum 16.5Mb { description "16.5 Mbps"; } enum 16.8Mb { description "16.8 Mbps"; } enum 17.2Mb { description "17.2 Mbps"; } enum 17.5Mb { description "17.5 Mbps"; } enum 17.9Mb { description "17.9 Mbps"; } enum 18.3Mb { description "18.3 Mbps"; } enum 18.6Mb { description "18.6 Mbps"; } enum 19.0Mb { description "19.0 Mbps"; } enum 19.3Mb { description "19.3 Mbps"; } enum 19.7Mb { description "19.7 Mbps"; } enum 20.0Mb { description "20.0 Mbps"; } enum 20.4Mb { description "20.4 Mbps"; } enum 20.8Mb { description "20.8 Mbps"; } enum 21.1Mb { description "21.1 Mbps"; } enum 21.5Mb { description "21.5 Mbps"; } enum 21.8Mb { description "21.8 Mbps"; } enum 22.2Mb { description "22.2 Mbps"; } enum 22.6Mb { description "22.6 Mbps"; } enum 22.9Mb { description "22.9 Mbps"; } enum 23.3Mb { description "23.3 Mbps"; } enum 23.6Mb { description "23.6 Mbps"; } enum 24.0Mb { description "24.0 Mbps"; } enum 24.3Mb { description "24.3 Mbps"; } enum 24.7Mb { description "24.7 Mbps"; } enum 25.1Mb { description "25.1 Mbps"; } enum 25.4Mb { description "25.4 Mbps"; } enum 25.8Mb { description "25.8 Mbps"; } enum 26.1Mb { description "26.1 Mbps"; } enum 26.5Mb { description "26.5 Mbps"; } enum 26.9Mb { description "26.9 Mbps"; } enum 27.2Mb { description "27.2 Mbps"; } enum 27.6Mb { description "27.6 Mbps"; } enum 27.9Mb { description "27.9 Mbps"; } enum 28.3Mb { description "28.3 Mbps"; } enum 28.6Mb { description "28.6 Mbps"; } enum 29.0Mb { description "29.0 Mbps"; } enum 29.4Mb { description "29.4 Mbps"; } enum 29.7Mb { description "29.7 Mbps"; } enum 30.1Mb { description "30.1 Mbps"; } enum 30.4Mb { description "30.4 Mbps"; } enum 30.8Mb { description "30.8 Mbps"; } enum 31.1Mb { description "31.1 Mbps"; } enum 31.5Mb { description "31.5 Mbps"; } enum 31.9Mb { description "31.9 Mbps"; } enum 32.2Mb { description "32.2 Mbps"; } enum 32.6Mb { description "32.6 Mbps"; } enum 32.9Mb { description "32.9 Mbps"; } enum 33.3Mb { description "33.3 Mbps"; } enum 33.7Mb { description "33.7 Mbps"; } enum 34.0Mb { description "34.0 Mbps"; } } } } } case case_3 { container kentrox { presence "enable kentrox"; description "Compatible with Kentrox CSU"; leaf subrate { description "Set subrate value (only for E3 IQ interfaces)"; type uint32 { range "1 .. 48"; } } } } } } leaf payload-scrambler { description "Enable payload scrambling"; type empty; } leaf no-payload-scrambler { description "Enable payload scrambling"; type empty; } leaf fcs { description "Frame checksum"; type enumeration { enum 32 { description "32-bit mode"; } enum 16 { description "16-bit mode"; } } } leaf idle-cycle-flag { description "Value to transmit in idle cycles"; type enumeration { enum flags { description "Transmit 0x7E in idle cycles"; } enum ones { description "Transmit 0xFF (all ones) in idle cycles"; } } } leaf invert-data { description "Invert data"; type empty; } leaf start-end-flag { description "Set start/end flags on transmission"; type enumeration { enum shared { description "Share start/end flags on transmit"; } enum filler { description "Send two idle cycles between start/end flags"; } } } leaf bert-algorithm { description "Set BERT algorithm"; type enumeration { enum pseudo-2e3 { description "Pattern is 2^3 - 1"; } enum pseudo-2e4 { description "Pattern is 2^4 - 1"; } enum pseudo-2e5 { description "Pattern is 2^5 - 1"; } enum pseudo-2e6 { description "Pattern is 2^6 - 1"; } enum pseudo-2e7 { description "Pattern is 2^7 - 1"; } enum pseudo-2e9-o153 { description "Pattern is 2^9 - 1 (per O.153 standard)"; } enum pseudo-2e10 { description "Pattern is 2^10 - 1"; } enum pseudo-2e11-o152 { description "Pattern is 2^11 -1 (per O.152 standard)"; } enum pseudo-2e15-o151 { description "Pattern is 2^15 - 1 (per O.151 standard)"; } enum pseudo-2e17 { description "Pattern is 2^17 - 1"; } enum pseudo-2e18 { description "Pattern is 2^18 - 1"; } enum pseudo-2e20-o153 { description "Pattern is 2^20 - 1 (per O.153 standard)"; } enum pseudo-2e20-o151 { description "Pattern is 2^20 - 1 (per O.151 standard)"; } enum pseudo-2e21 { description "Pattern is 2^21 - 1"; } enum pseudo-2e22 { description "Pattern is 2^22 - 1"; } enum pseudo-2e23-o151 { description "Pattern is 2^23 (per O.151 standard)"; } enum pseudo-2e25 { description "Pattern is 2^25 - 1"; } enum pseudo-2e28 { description "Pattern is 2^28 - 1"; } enum pseudo-2e29 { description "Pattern is 2^29 - 1"; } enum pseudo-2e31 { description "Pattern is 2^31 - 1"; } enum pseudo-2e32 { description "Pattern is 2^32 - 1"; } enum all-ones-repeating { description "Repeating one bits"; } enum all-zeros-repeating { description "Repeating zero bits"; } enum alternating-ones-zeros { description "Alternating ones and zeros"; } enum alternating-double-ones-zeros { description "Alternating pairs of ones and zeros"; } enum repeating-3-in-24 { description "3 bits in 24 are set"; } enum repeating-1-in-8 { description "1 bit in 8 is set"; } enum repeating-1-in-4 { description "1 bit in 4 is set"; } } } leaf bert-error-rate { description "Bit error rate (10^-n for n > 0, and zero for n = 0)"; type uint32 { range "0 .. 7"; } } leaf bert-period { description "Length of BERT test"; units "seconds"; type uint32 { range "1 .. 240"; } } leaf buildout { description "Line buildout"; units "feet"; type uint32 { range "0 .. 450"; } } leaf atm-encapsulation { description "E3 interface encapsulation"; type enumeration { enum plcp { description "PLCP encapsulation"; } enum direct { description "ATM direct mapping"; } } } leaf framing { description "E3 line format"; type enumeration { enum g.751 { description "G.751 format"; } enum g.832 { description "G.832 format"; } } } } container e1-options { description "E1 interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf timeslots { description "Timeslots (1..32); for example, 1-4,6,9-11,32 (no space)"; type string; } leaf loopback { description "Loopback mode"; type enumeration { enum local { description "Local loopback"; } enum remote { description "Remote loopback"; } } } leaf framing { description "Framing mode"; type enumeration { enum g704 { description "G704 mode with CRC4"; } enum unframed { description "Unframed mode"; } enum g704-no-crc4 { description "G704 mode without CRC4"; } } } leaf fcs { description "Frame checksum"; type enumeration { enum 32 { description "32-bit mode"; } enum 16 { description "16-bit mode"; } } } leaf invert-data { description "Invert data"; type empty; } leaf idle-cycle-flag { description "Value to transmit in idle cycles"; type enumeration { enum flags { description "Transmit 0x7E in idle cycles"; } enum ones { description "Transmit 0xFF (all ones) in idle cycles"; } } } leaf start-end-flag { description "Set start/end flags on transmission"; type enumeration { enum shared { description "Share start/end flags on transmit"; } enum filler { description "Send two idle cycles between start/end flags"; } } } leaf bert-algorithm { description "Set BERT algorithm"; type enumeration { enum pseudo-2e3 { description "Pattern is 2^3 - 1"; } enum pseudo-2e4 { description "Pattern is 2^4 - 1"; } enum pseudo-2e5 { description "Pattern is 2^5 - 1"; } enum pseudo-2e6 { description "Pattern is 2^6 - 1"; } enum pseudo-2e7 { description "Pattern is 2^7 - 1"; } enum pseudo-2e9-o153 { description "Pattern is 2^9 - 1 (per O.153 standard)"; } enum pseudo-2e10 { description "Pattern is 2^10 - 1"; } enum pseudo-2e11-o152 { description "Pattern is 2^11 -1 (per O.152 standard)"; } enum pseudo-2e15-o151 { description "Pattern is 2^15 - 1 (per O.151 standard)"; } enum pseudo-2e17 { description "Pattern is 2^17 - 1"; } enum pseudo-2e18 { description "Pattern is 2^18 - 1"; } enum pseudo-2e20-o153 { description "Pattern is 2^20 - 1 (per O.153 standard)"; } enum pseudo-2e20-o151 { description "Pattern is 2^20 - 1 (per O.151 standard)"; } enum pseudo-2e21 { description "Pattern is 2^21 - 1"; } enum pseudo-2e22 { description "Pattern is 2^22 - 1"; } enum pseudo-2e23-o151 { description "Pattern is 2^23 (per O.151 standard)"; } enum pseudo-2e25 { description "Pattern is 2^25 - 1"; } enum pseudo-2e28 { description "Pattern is 2^28 - 1"; } enum pseudo-2e29 { description "Pattern is 2^29 - 1"; } enum pseudo-2e31 { description "Pattern is 2^31 - 1"; } enum pseudo-2e32 { description "Pattern is 2^32 - 1"; } enum all-ones-repeating { description "Repeating one bits"; } enum all-zeros-repeating { description "Repeating zero bits"; } enum alternating-ones-zeros { description "Alternating ones and zeros"; } enum alternating-double-ones-zeros { description "Alternating pairs of ones and zeros"; } enum repeating-3-in-24 { description "3 bits in 24 are set"; } enum repeating-1-in-8 { description "1 bit in 8 is set"; } enum repeating-1-in-4 { description "1 bit in 4 is set"; } } } leaf bert-error-rate { description "Bit error rate (10^-n for n > 0, and zero for n = 0)"; type uint32 { range "0 .. 7"; } } leaf bert-period { description "Length of BERT test"; units "seconds"; type uint32 { range "1 .. 86400"; } } } container t1-options { description "T1 interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf timeslots { description "Timeslots (1..24; for example, 1-3,4,9,22-24 (no space)"; type string; } leaf voice-timeslots { description "Voice timeslots (1..24),for example, 1-3,4,9,22-24 (no space)"; type string; } leaf loopback { description "Loopback mode"; type enumeration { enum local { description "Local loopback"; } enum remote { description "Remote loopback"; } enum payload { description "Payload loopback"; } } } leaf buildout { description "Line buildout"; type enumeration { enum 0-132 { description "Line buildout is between 0-132 feet"; } enum 133-265 { description "Line buildout is between 133-265 feet"; } enum 266-398 { description "Line buildout is between 266-398 feet"; } enum 399-531 { description "Line buildout is between 399-531 feet"; } enum 532-655 { description "Line buildout is between 532-655 feet"; } enum long-0db { description "Long buildout with 0 dB transmit attenuation"; } enum long-7.5db { description "Long buildout with 7.5 dB transmit attenuation"; } enum long-15db { description "Long buildout with 15 dB transmit attenuation"; } enum long-22.5db { description "Long buildout with 22.5 dB transmit attenuation"; } } } leaf byte-encoding { description "Byte encoding"; type enumeration { enum nx64 { description "8 bits per byte"; } enum nx56 { description "7 bits per byte"; } } } leaf line-encoding { description "Line encoding"; type enumeration { enum ami { description "Automatic mark inversion"; } enum b8zs { description "8-bit zero suppression"; } } } leaf invert-data { description "Invert data"; type empty; } leaf framing { description "Framing mode"; type enumeration { enum sf { description "Super frame"; } enum esf { description "Extended super frame"; } } } leaf fcs { description "Frame checksum"; type enumeration { enum 32 { description "32-bit mode"; } enum 16 { description "16-bit mode"; } } } leaf idle-cycle-flag { description "Value to transmit in idle cycles"; type enumeration { enum flags { description "Transmit 0x7E in idle cycles"; } enum ones { description "Transmit 0xFF (all ones) in idle cycles"; } } } leaf start-end-flag { description "Set start/end flags on transmission"; type enumeration { enum shared { description "Share start/end flags on transmit"; } enum filler { description "Send two idle cycles between start/end flags"; } } } leaf bert-algorithm { description "Set BERT algorithm"; type enumeration { enum pseudo-2e3 { description "Pattern is 2^3 - 1"; } enum pseudo-2e4 { description "Pattern is 2^4 - 1"; } enum pseudo-2e5 { description "Pattern is 2^5 - 1"; } enum pseudo-2e6 { description "Pattern is 2^6 - 1"; } enum pseudo-2e7 { description "Pattern is 2^7 - 1"; } enum pseudo-2e9-o153 { description "Pattern is 2^9 - 1 (per O.153 standard)"; } enum pseudo-2e10 { description "Pattern is 2^10 - 1"; } enum pseudo-2e11-o152 { description "Pattern is 2^11 -1 (per O.152 standard)"; } enum pseudo-2e15-o151 { description "Pattern is 2^15 - 1 (per O.151 standard)"; } enum pseudo-2e17 { description "Pattern is 2^17 - 1"; } enum pseudo-2e18 { description "Pattern is 2^18 - 1"; } enum pseudo-2e20-o153 { description "Pattern is 2^20 - 1 (per O.153 standard)"; } enum pseudo-2e20-o151 { description "Pattern is 2^20 - 1 (per O.151 standard)"; } enum pseudo-2e21 { description "Pattern is 2^21 - 1"; } enum pseudo-2e22 { description "Pattern is 2^22 - 1"; } enum pseudo-2e23-o151 { description "Pattern is 2^23 (per O.151 standard)"; } enum pseudo-2e25 { description "Pattern is 2^25 - 1"; } enum pseudo-2e28 { description "Pattern is 2^28 - 1"; } enum pseudo-2e29 { description "Pattern is 2^29 - 1"; } enum pseudo-2e31 { description "Pattern is 2^31 - 1"; } enum pseudo-2e32 { description "Pattern is 2^32 - 1"; } enum all-ones-repeating { description "Repeating one bits"; } enum all-zeros-repeating { description "Repeating zero bits"; } enum alternating-ones-zeros { description "Alternating ones and zeros"; } enum alternating-double-ones-zeros { description "Alternating pairs of ones and zeros"; } enum repeating-3-in-24 { description "3 bits in 24 are set"; } enum repeating-1-in-8 { description "1 bit in 8 is set"; } enum repeating-1-in-4 { description "1 bit in 4 is set"; } } } leaf bert-error-rate { description "Bit error rate (10^-n for n > 0, and zero for n = 0)"; type uint32 { range "0 .. 7"; } } leaf bert-period { description "Length of BERT test"; units "seconds"; type uint32 { range "1 .. 86400"; } } leaf remote-loopback-respond { description "Respond to loop requests from remote end"; type empty; } leaf crc-major-alarm-threshold { description "CRC Major alarm threshold value"; default "5e-5"; type enumeration { enum 1e-3 { description "1 crc error in 10^3 bits"; } enum 5e-4 { description "5 crc errors in 10^4 bits"; } enum 1e-4 { description "1 crc error in 10^4 bits"; } enum 5e-5 { description "5 crc errors in 10^5 bits"; } enum 1e-5 { description "1 crc error in 10^5 bits"; } } } leaf crc-minor-alarm-threshold { description "CRC Minor alarm threshold value"; default "5e-6"; type enumeration { enum 1e-3 { description "1 crc error in 10^3 bits"; } enum 5e-4 { description "5 crc errors in 10^4 bits"; } enum 1e-4 { description "1 crc error in 10^4 bits"; } enum 5e-5 { description "5 crc errors in 10^5 bits"; } enum 1e-5 { description "1 crc error in 10^5 bits"; } enum 5e-6 { description "5 crc errors in 10^6 bits"; } enum 1e-6 { description "1 crc error in 10^6 bits"; } } } } container ds0-options { description "DS-0 interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf loopback { description "Loopback mode"; type enumeration { enum payload { description "Payload loopback"; } } } leaf byte-encoding { description "Byte encoding"; type enumeration { enum nx64 { description "8 bits per byte"; } enum nx56 { description "7 bits per byte"; } } } leaf invert-data { description "Invert data"; type empty; } leaf fcs { description "Frame checksum"; type enumeration { enum 32 { description "32-bit mode"; } enum 16 { description "16-bit mode"; } } } leaf idle-cycle-flag { description "Value to transmit in idle cycles"; type enumeration { enum flags { description "Transmit 0x7E in idle cycles"; } enum ones { description "Transmit 0xFF (all ones) in idle cycles"; } } } leaf start-end-flag { description "Set start/end flags on transmission"; type enumeration { enum shared { description "Share start/end flags on transmit"; } enum filler { description "Send two idle cycles between start/end flags"; } } } leaf bert-algorithm { description "Set BERT algorithm"; type enumeration { enum pseudo-2e11-o152 { description "Pattern is 2^11 -1 (per O.152 standard)"; } enum pseudo-2e15-o151 { description "Pattern is 2^15 - 1 (per O.151 standard)"; } enum pseudo-2e20-o153 { description "Pattern is 2^20 - 1 (per O.153 standard)"; } enum pseudo-2e20-o151 { description "Pattern is 2^20 - 1 (per O.151 standard)"; } enum all-ones-repeating { description "Repeating one bits"; } enum all-zeros-repeating { description "Repeating zero bits"; } enum alternating-ones-zeros { description "Alternating ones and zeros"; } enum alternating-double-ones-zeros { description "Alternating pairs of ones and zeros"; } enum repeating-3-in-24 { description "3 bits in 24 are set"; } enum repeating-1-in-8 { description "1 bit in 8 is set"; } enum repeating-1-in-4 { description "1 bit in 4 is set"; } enum repeating-1-in-16 { description "1 bit in 16 is set"; } } } leaf bert-error-rate { description "Bit error rate (10^-n for n > 0, and zero for n = 0)"; type uint32 { range "0 .. 7"; } } leaf bert-period { description "Length of BERT test"; units "seconds"; type uint32 { range "1 .. 240"; } } } container serial-options { description "Serial interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf line-protocol { description "Line protocol to be used"; default "eia530"; type enumeration { enum eia530 { description "Line protocol EIA530"; } enum v.35 { description "Line protocol V.35"; } enum x.21 { description "Line protocol X.21"; } } } choice control_leads_choice { case case_1 { container dte-options { description "DTE options/control leads"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ignore-all { description "Ignore all control leads"; type empty; } container dtr { description "Data Transmit Ready signal handling"; choice dtr_choices { case case_1 { leaf assert { description "Assert DTR signal"; type empty; } } case case_2 { leaf de-assert { description "Deassert DTR signal"; type empty; } } case case_3 { leaf normal { description "Normal DTR signal"; type empty; } } case case_4 { container auto-synchronize { presence "enable auto-synchronize"; description "Normal DTR signal, with autoresynchronization"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf duration { description "Duration of autoresynchronization"; units "milliseconds"; type uint16 { range "1 .. 1000"; } } leaf interval { description "Interval for autoresynchronization"; units "seconds"; type uint16 { range "1 .. 31"; } } } } } } leaf control-signal { description "X.21 control signal handling"; type enumeration { enum assert { description "Assert control signal"; } enum de-assert { description "Deassert control signal"; } enum normal { description "Normal control signal"; } } } leaf rts { description "Request To Send signal handling"; type enumeration { enum assert { description "Assert RTS signal"; } enum de-assert { description "Deassert RTS signal"; } enum normal { description "Normal RTS signal"; } } } leaf dcd { description "Data Carrier Detect signal handling"; type enumeration { enum require { description "Require DCD signal"; } enum ignore { description "Ignore DCD signal"; } enum normal { description "Normal DCD signal"; } } } leaf dsr { description "Data Set Ready signal handling"; type enumeration { enum require { description "Require DSR signal"; } enum ignore { description "Ignore DSR signal"; } enum normal { description "Normal DSR signal"; } } } leaf cts { description "Clear To Send signal handling"; type enumeration { enum require { description "Require CTS signal"; } enum ignore { description "Ignore CTS signal"; } enum normal { description "Normal CTS signal"; } } } leaf indication { description "X.21 Indication signal handling"; type enumeration { enum require { description "Require Indication signal"; } enum ignore { description "Ignore Indication signal"; } enum normal { description "Normal Indication signal"; } } } leaf tm { description "Test Mode signal handling"; type enumeration { enum require { description "Require TM signal"; } enum ignore { description "Ignore TM signal"; } enum normal { description "Normal TM signal"; } } } } } case case_2 { container dce-options { description "DCE options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ignore-all { description "Ignore all control leads"; type empty; } leaf dtr { description "Data Transmit Ready signal handling"; type enumeration { enum require { description "Require Data Carrier Detect (DCD) signal"; } enum ignore { description "Ignore Data Carrier Detect (DCD) signal"; } enum normal { description "Normal Data Carrier Detect (DCD) signal"; } } } leaf rts { description "Request To Send signal handling"; type enumeration { enum require { description "Require Data Carrier Detect (DCD) signal"; } enum ignore { description "Ignore Data Carrier Detect (DCD) signal"; } enum normal { description "Normal Data Carrier Detect (DCD) signal"; } } } leaf dcd { description "Data Carrier Detect signal handling"; type enumeration { enum assert { description "Assert Request To Send (RTS) signal"; } enum de-assert { description "Deassert Request To Send (RTS) signal"; } enum normal { description "Normal Request To Send (RTS) signal"; } } } leaf dsr { description "Data Set Ready signal handling"; type enumeration { enum assert { description "Assert Request To Send (RTS) signal"; } enum de-assert { description "Deassert Request To Send (RTS) signal"; } enum normal { description "Normal Request To Send (RTS) signal"; } } } leaf cts { description "Clear To Send signal handling"; type enumeration { enum assert { description "Assert Request To Send (RTS) signal"; } enum de-assert { description "Deassert Request To Send (RTS) signal"; } enum normal { description "Normal Request To Send (RTS) signal"; } } } leaf tm { description "Test Mode signal handling"; type enumeration { enum require { description "Require TM signal"; } enum ignore { description "Ignore TM signal"; } enum normal { description "Normal TM signal"; } } } leaf dce-loopback-override { description "DCE loopback override"; type empty; } } } } leaf dtr-circuit { description "Data Transmit Ready circuit mode"; type enumeration { enum balanced { description "Balanced signal"; } enum unbalanced { description "Unbalanced signal"; } } } leaf dtr-polarity { description "Data Transmit Ready signal polarity"; type enumeration { enum positive { description "Positive polarity"; } enum negative { description "Negative polarity"; } } } leaf rts-polarity { description "Request To Send signal polarity"; type enumeration { enum positive { description "Positive polarity"; } enum negative { description "Negative polarity"; } } } leaf control-polarity { description "X.21 Control signal polarity"; type enumeration { enum positive { description "Positive polarity"; } enum negative { description "Negative polarity"; } } } leaf dcd-polarity { description "Data Carrier Detect signal polarity"; type enumeration { enum positive { description "Positive polarity"; } enum negative { description "Negative polarity"; } } } leaf dsr-polarity { description "Data Set Ready signal polarity"; type enumeration { enum positive { description "Positive polarity"; } enum negative { description "Negative polarity"; } } } leaf cts-polarity { description "Clear To Send signal polarity"; type enumeration { enum positive { description "Positive polarity"; } enum negative { description "Negative polarity"; } } } leaf indication-polarity { description "X.21 Indication signal polarity"; type enumeration { enum positive { description "Positive polarity"; } enum negative { description "Negative polarity"; } } } leaf tm-polarity { description "Test Mode signal polarity"; type enumeration { enum positive { description "Positive polarity"; } enum negative { description "Negative polarity"; } } } leaf clocking-mode { description "Clock mode"; type enumeration { enum dce { description "DCE timing (DTE mode only, not valid for X.21)"; } enum internal { description "Internal baud timing"; } enum loop { description "Loop timing"; } } } leaf transmit-clock { description "Transmit clock phase"; type enumeration { enum invert { description "Shift clock phase 180 degrees"; } } } leaf clock-rate { description "Interface clock rate"; type enumeration { enum 2.048mhz { description "2.048 MHz"; } enum 2.341mhz { description "2.341 MHz"; } enum 2.731mhz { description "2.731 MHz"; } enum 3.277mhz { description "3.277 MHz"; } enum 4.096mhz { description "4.096 MHz"; } enum 5.461mhz { description "5.461 MHz"; } enum 8.192mhz { description "8.192 MHz"; } enum 16.384mhz { description "16.384 MHz"; } enum 1.2khz { description "1.2 KHz"; } enum 2.4khz { description "2.4 KHz"; } enum 9.6khz { description "9.6 KHz"; } enum 19.2khz { description "19.2 KHz"; } enum 38.4khz { description "38.4 KHz"; } enum 56.0khz { description "56.0 KHz"; } enum 64.0khz { description "64.0 KHz"; } enum 72.0khz { description "72.0 KHz"; } enum 125.0khz { description "125.0 KHz"; } enum 148.0khz { description "148.0 KHz"; } enum 250.0khz { description "250.0 KHz"; } enum 500.0khz { description "500.0 KHz"; } enum 800.0khz { description "800.0 KHz"; } enum 1.0mhz { description "1.0 MHz"; } enum 1.3mhz { description "1.3 MHz"; } enum 2.0mhz { description "2.0 MHz"; } enum 4.0mhz { description "4.0 MHz"; } enum 8.0mhz { description "8.0 MHz"; } } } leaf loopback { description "Loopback mode"; type enumeration { enum local { description "Local loopback"; } enum remote { description "Remote/LIU loopback"; } enum dce-local { description "DCE local loopback (DTE mode only)"; } enum dce-remote { description "DCE remote loopback"; } } } leaf encoding { description "Line encoding"; type enumeration { enum nrz { description "Non-Return-To-Zero"; } enum nrzi { description "Non-Return-To-Zero-Invertible"; } } } leaf idle-cycle-flag { description "Value to transmit in idle cycles"; type enumeration { enum flags { description "Transmit 0x7E in idle cycles"; } enum ones { description "Transmit 0xFF (all ones) in idle cycles"; } } } } leaf gratuitous-arp-reply { description "Enable gratuitous ARP reply"; type empty; } leaf no-gratuitous-arp-reply { description "Enable gratuitous ARP reply"; type empty; } leaf no-gratuitous-arp-request { description "Ignore gratuitous ARP request"; type empty; } leaf no-no-gratuitous-arp-request { description "Ignore gratuitous ARP request"; type empty; } leaf arp-l2-validate { description "Validate ARP against L2"; type empty; } container ether-options { description "Ethernet interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf loopback { description "Enable loopback"; type empty; } leaf no-loopback { description "Enable loopback"; type empty; } leaf source-filtering { description "Enable source address filtering"; type empty; } leaf no-source-filtering { description "Enable source address filtering"; type empty; } container ethernet-switch-profile { description "Ethernet virtual LAN/media access control-level options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list tag-protocol-id { description "IEEE 802.1q Tag Protocol Identifier values for VLAN-tagged frames"; type string; } container ethernet-policer-profile { description "Ethernet level CoS-based policer configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container input-priority-map { description "Input policer priority map"; uses cos_policer_input_priority_map; } container output-priority-map { description "Output policer priority map"; uses cos_policer_output_priority_map; } list policer { key name; ordered-by user; description "Policer template definition"; uses cos_policer; } } container storm-control { description "Storm control profile name to bind"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf profile-name { description "Profile name"; type string; mandatory true; } presence "enable storm-control"; } container recovery-timeout { description "Recovery timeout for this interface"; leaf time-in-seconds { description "(null)"; units "seconds"; type uint32 { range "10 .. 3600"; } } } leaf mac-learn-enable { description "Learn MAC addresses dynamically"; type empty; } leaf no-mac-learn-enable { description "Learn MAC addresses dynamically"; type empty; } } leaf asynchronous-notification { description "Enable sending asynchronous notification to peer on CCC-down"; type empty; } list source-address-filter { key name; description "Source address filters"; leaf name { description "Remote MAC address"; type mac-addr; } } leaf auto-negotiation { description "Enable auto-negotiation"; type empty; } leaf no-auto-negotiation { description "Enable auto-negotiation"; type empty; } leaf flow-control { description "Enable flow control"; type empty; } leaf no-flow-control { description "Enable flow control"; type empty; } container configured-flow-control { presence "enable configured-flow-control"; description "Enable flow control"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf rx-buffers { description "Enable/Disable Rx buffers"; type enumeration { enum on { description "Enable Rx buffers"; } enum off { description "Disable Rx buffers"; } } mandatory true; } leaf tx-buffers { description "Enable/Disable Tx buffers"; type enumeration { enum on { description "Enable Tx buffers"; } enum off { description "Disable Tx buffers"; } } mandatory true; } } leaf link-mode { description "Link duplex"; type enumeration { enum automatic { description "Automatic negotiate duplex "; } enum half-duplex { description "Half-duplex operation"; } enum full-duplex { description "Full-duplex operation"; } } } container mpls { description "MPLS options"; uses mpls_ifd_options; } leaf ignore-l3-incompletes { description "Ignore L3 incomplete errors"; type empty; } leaf no-auto-mdix { description "Disable auto MDI/MDIX"; type empty; } container speed { description "Specify speed"; choice automatic { case case_1 { container auto-negotiation { presence "enable auto-negotiation"; description "Enable auto-negotiation"; leaf auto-negotiate-10-100 { description "Limits the auto-negotiation to 10m/100m only"; type empty; } } } case case_2 { leaf ethernet-10m { description "10Mbps"; type empty; } } case case_3 { leaf ethernet-100m { description "100Mbps"; type empty; } } case case_4 { leaf ethernet-1g { description "1Gbps"; type empty; } } case case_5 { leaf ethernet-10g { description "10Gbps"; type empty; } } } } container ieee-802.3ad { description "IEEE 802.3ad"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container lacp { description "Link Aggregation Control Protocol configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf force-up { description "Keep the port up in absence of received LACPDU"; type empty; } leaf port-priority { description "Priority of the port (0 ... 65535)"; type uint16; } } leaf bundle { description "Join an aggregated Ethernet interface"; type interface-device; } choice type { case case_1 { leaf primary { description "Primary interface for link-protection mode"; type empty; } } case case_2 { leaf backup { description "Backup interface for link-protection mode"; type empty; } } } } leaf ieee-802-3az-eee { description "IEEE 802.3az Energy Efficient Ethernet(EEE)"; type empty; } leaf mdi-mode { description "Cable cross-over mode"; type enumeration { enum auto { description "Automatic mdi/mdi-x mode"; } enum mdi { description "MDI(straight through) mode"; } enum mdix { description "MDI Cross-over mode"; } } } } container fibrechannel-options { description "Fibre Channel interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf loopback { description "Enable loopback"; type empty; } leaf no-loopback { description "Enable loopback"; type empty; } leaf bb-sc-n { description "B2B state change number"; type uint16 { range "0 .. 15"; } } leaf speed { description "Specify speed"; type enumeration { enum auto-negotiation { description "Enable auto-negotiation"; } enum 1g { description "1Gbps"; } enum 2g { description "2Gbps"; } enum 4g { description "4Gbps"; } enum 8g { description "8Gbps"; } } } } container gigether-options { description "Gigabit Ethernet interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf loopback { description "Enable loopback"; type empty; } leaf no-loopback { description "Enable loopback"; type empty; } leaf flow-control { description "Enable flow control"; type empty; } leaf no-flow-control { description "Enable flow control"; type empty; } leaf source-filtering { description "Enable source address filtering"; type empty; } leaf no-source-filtering { description "Enable source address filtering"; type empty; } choice auto_negotiation_option { case case_1 { leaf no-auto-negotiation { description "Disable auto-negotiation"; type empty; } } case case_2 { container auto-negotiation { presence "enable auto-negotiation"; description "Enable auto-negotiation"; leaf remote-fault { description "(null)"; type enumeration { enum local-interface-offline { description "Disable local interface"; } enum local-interface-online { description "Enable local interface"; } } } } } } leaf mac-mode { description "Physical layer protocol of MAC's SERDES interface"; type enumeration { enum sgmii { description "Serial Gigabit Media Independent Interface (10/100/1000 Mbps)"; } enum mac-mode-1000base-x { description "1000Base-X (1000 Mbps)"; } } } leaf asynchronous-notification { description "Enable sending asynchronous notification to peer on CCC-down"; type empty; } list source-address-filter { key name; description "Source address filters"; leaf name { description "Remote MAC address"; type mac-addr; } } leaf pad-to-minimum-frame-size { description "Pad Tx vlan tagged frame to minimum of 68 bytes"; type empty; } container redundant-parent { description "Parent of this interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf parent { description "Join a redundant-ethernet interface"; type interface-device; mandatory true; } presence "enable redundant-parent"; } container ieee-802.3ad { description "IEEE 802.3ad"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container lacp { description "Link Aggregation Control Protocol configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port-priority { description "Priority of the port (0 ... 65535)"; type uint16; } } leaf bundle { description "Join an aggregated Ethernet interface"; type interface-device; } leaf link-index { description "Desired child link index within the Aggregated Interface"; type uint16 { range "0 .. 63"; } } choice type { case case_1 { leaf primary { description "Primary interface for link-protection mode"; type empty; } } case case_2 { leaf backup { description "Backup interface for link-protection mode"; type empty; } } } } container ethernet-switch-profile { description "Ethernet virtual LAN/media access control-level options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list tag-protocol-id { description "IEEE 802.1q Tag Protocol Identifier values for VLAN-tagged frames"; type string; } container ethernet-policer-profile { description "Ethernet level CoS-based policer configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container input-priority-map { description "Input policer priority map"; uses cos_policer_input_priority_map; } container output-priority-map { description "Output policer priority map"; uses cos_policer_output_priority_map; } list policer { key name; ordered-by user; description "Policer template definition"; uses cos_policer; } } leaf mac-learn-enable { description "Learn MAC addresses dynamically"; type empty; } leaf no-mac-learn-enable { description "Learn MAC addresses dynamically"; type empty; } } container mpls { description "MPLS options"; uses mpls_ifd_options; } leaf ignore-l3-incompletes { description "Ignore L3 incomplete errors"; type empty; } leaf no-auto-mdix { description "Disable auto MDI/MDIX"; type empty; } leaf ieee-802-3az-eee { description "IEEE 802.3az Energy Efficient Ethernet(EEE)"; type empty; } leaf mru { description "Maximum receive packet size"; type uint32 { range "256 .. 9200"; } } } container optics-options { description "Optics options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf wavelength { description "Wavelength of the optics (nanometers) for 50Ghz/100Ghz spacing"; type enumeration { enum 1528.38 { description "1528.38 nm 50Ghz spacing"; } enum 1528.77 { description "1528.77 nm 50/100Ghz spacing"; } enum 1529.16 { description "1529.16 nm 50Ghz spacing"; } enum 1529.55 { description "1529.55 nm 50/100Ghz spacing"; } enum 1529.94 { description "1529.94 nm 50Ghz spacing"; } enum 1530.33 { description "1530.33 nm 50/100Ghz spacing"; } enum 1530.72 { description "1530.72 nm 50Ghz spacing"; } enum 1531.12 { description "1531.12 nm 50/100Ghz spacing"; } enum 1531.51 { description "1531.51 nm 50Ghz spacing"; } enum 1531.90 { description "1531.90 nm 50/100Ghz spacing"; } enum 1532.29 { description "1532.29 nm 50Ghz spacing"; } enum 1532.68 { description "1532.68 nm 50/100Ghz spacing"; } enum 1533.07 { description "1533.07 nm 50Ghz spacing"; } enum 1533.47 { description "1533.47 nm 50/100Ghz spacing"; } enum 1533.86 { description "1533.86 nm 50Ghz spacing"; } enum 1534.25 { description "1534.25 nm 50/100Ghz spacing"; } enum 1534.64 { description "1534.64 nm 50Ghz spacing"; } enum 1535.04 { description "1535.04 nm 50/100Ghz spacing"; } enum 1535.43 { description "1535.43 nm 50Ghz spacing"; } enum 1535.82 { description "1535.82 nm 50/100Ghz spacing"; } enum 1536.22 { description "1536.22 nm 50Ghz spacing"; } enum 1536.61 { description "1536.61 nm 50/100Ghz spacing"; } enum 1537.00 { description "1537.00 nm 50Ghz spacing"; } enum 1537.40 { description "1537.40 nm 50/100Ghz spacing"; } enum 1537.79 { description "1537.79 nm 50Ghz spacing"; } enum 1538.19 { description "1538.19 nm 50/100Ghz spacing"; } enum 1538.58 { description "1538.58 nm 50Ghz spacing"; } enum 1538.98 { description "1538.98 nm 50/100Ghz spacing"; } enum 1539.37 { description "1539.37 nm 50Ghz spacing"; } enum 1539.77 { description "1539.77 nm 50/100Ghz spacing"; } enum 1540.16 { description "1540.16 nm 50Ghz spacing"; } enum 1540.56 { description "1540.56 nm 50/100Ghz spacing"; } enum 1540.95 { description "1540.95 nm 50Ghz spacing"; } enum 1541.35 { description "1541.35 nm 50/100Ghz spacing"; } enum 1541.75 { description "1541.75 nm 50Ghz spacing"; } enum 1542.14 { description "1542.14 nm 50/100Ghz spacing"; } enum 1542.54 { description "1542.54 nm 50Ghz spacing"; } enum 1542.94 { description "1542.94 nm 50/100Ghz spacing"; } enum 1543.33 { description "1543.33 nm 50Ghz spacing"; } enum 1543.73 { description "1543.73 nm 50/100Ghz spacing"; } enum 1544.13 { description "1544.13 nm 50Ghz spacing"; } enum 1544.53 { description "1544.53 nm 50/100Ghz spacing"; } enum 1544.92 { description "1544.92 nm 50Ghz spacing"; } enum 1545.32 { description "1545.32 nm 50/100Ghz spacing"; } enum 1545.72 { description "1545.72 nm 50Ghz spacing"; } enum 1546.12 { description "1546.12 nm 50/100Ghz spacing"; } enum 1546.52 { description "1546.52 nm 50Ghz spacing"; } enum 1546.92 { description "1546.92 nm 50/100Ghz spacing"; } enum 1547.32 { description "1547.32 nm 50Ghz spacing"; } enum 1547.72 { description "1547.72 nm 50/100Ghz spacing"; } enum 1548.11 { description "1548.11 nm 50Ghz spacing"; } enum 1548.51 { description "1548.51 nm 50/100Ghz spacing"; } enum 1548.91 { description "1548.91 nm 50Ghz spacing"; } enum 1549.32 { description "1549.32 nm 50/100Ghz spacing"; } enum 1549.72 { description "1549.72 nm 50Ghz spacing"; } enum 1550.12 { description "1550.12 nm 50/100Ghz spacing"; } enum 1550.52 { description "1550.52 nm 50Ghz spacing"; } enum 1550.92 { description "1550.92 nm 50/100Ghz spacing"; } enum 1551.32 { description "1551.32 nm 50Ghz spacing"; } enum 1551.72 { description "1551.72 nm 50/100Ghz spacing"; } enum 1552.12 { description "1552.12 nm 50Ghz spacing"; } enum 1552.52 { description "1552.52 nm 50/100Ghz spacing"; } enum 1552.93 { description "1552.93 nm 50Ghz spacing"; } enum 1553.33 { description "1553.33 nm 50/100Ghz spacing"; } enum 1553.73 { description "1553.73 nm 50Ghz spacing"; } enum 1554.13 { description "1554.13 nm 50/100Ghz spacing"; } enum 1554.54 { description "1554.54 nm 50Ghz spacing"; } enum 1554.94 { description "1554.94 nm 50/100Ghz spacing"; } enum 1555.34 { description "1555.34 nm 50Ghz spacing"; } enum 1555.75 { description "1555.75 nm 50/100Ghz spacing"; } enum 1556.15 { description "1556.15 nm 50Ghz spacing"; } enum 1556.55 { description "1556.55 nm 50/100Ghz spacing"; } enum 1556.96 { description "1556.96 nm 50Ghz spacing"; } enum 1557.36 { description "1557.36 nm 50/100Ghz spacing"; } enum 1557.77 { description "1557.77 nm 50Ghz spacing"; } enum 1558.17 { description "1558.17 nm 50/100Ghz spacing"; } enum 1558.58 { description "1558.58 nm 50Ghz spacing"; } enum 1558.98 { description "1558.98 nm 50/100Ghz spacing"; } enum 1559.39 { description "1559.39 nm 50Ghz spacing"; } enum 1559.79 { description "1559.79 nm 50/100Ghz spacing"; } enum 1560.20 { description "1560.20 nm 50Ghz spacing"; } enum 1560.61 { description "1560.61 nm 50/100Ghz spacing"; } enum 1561.01 { description "1561.01 nm 50Ghz spacing"; } enum 1561.42 { description "1561.42 nm 50/100Ghz spacing"; } enum 1561.83 { description "1561.83 nm 50Ghz spacing"; } enum 1562.23 { description "1562.23 nm 50/100Ghz spacing"; } enum 1562.64 { description "1562.64 nm 50Ghz spacing"; } enum 1563.05 { description "1563.05 nm 50/100Ghz spacing"; } enum 1563.45 { description "1563.45 nm 50Ghz spacing"; } enum 1563.86 { description "1563.86 nm 50/100Ghz spacing"; } enum 1564.27 { description "1564.27 nm 50Ghz spacing"; } enum 1564.68 { description "1564.68 nm 50/100Ghz spacing"; } enum 1565.09 { description "1565.09 nm 50Ghz spacing"; } enum 1565.50 { description "1565.50 nm 50/100Ghz spacing"; } enum 1565.90 { description "1565.90 nm 50Ghz spacing"; } enum 1566.31 { description "1566.31 nm 50/100Ghz spacing"; } enum 1566.72 { description "1566.72 nm 50Ghz spacing"; } enum 1567.13 { description "1567.13 nm 50/100Ghz spacing"; } enum 1567.54 { description "1567.54 nm 50Ghz spacing"; } enum 1567.95 { description "1567.95 nm 50/100Ghz spacing"; } enum 1568.36 { description "1568.36 nm 50Ghz spacing"; } enum 1568.77 { description "1568.77 nm 50/100Ghz spacing"; } } } leaf tx-power { description "Transmit laser output power"; units "dBm"; type string; } leaf los-warning-threshold { description "LOS warning threshold"; units "dBm"; type string; } leaf los-alarm-threshold { description "LOS alarm threshold"; units "dBm"; type string; } list alarm { key name; ordered-by user; description "Set optic alarms"; leaf name { description "(null)"; type enumeration { enum low-light-alarm { description "Enable low light alarm"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice actiontype { case case_1 { leaf syslog { description "(null)"; type empty; } } case case_2 { leaf link-down { description "(null)"; type empty; } } } } container tca { description "Set tca for optic alarms"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container tx-power-high-tca { description "Tx power high TCA"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf enable-tca { description "Enable tca"; type empty; } leaf no-enable-tca { description "Enable tca"; type empty; } leaf threshold { description "Threshold for 15 minute tx power high TCA in dBm"; type string; } leaf threshold-24hrs { description "Threshold for 24 hour tx power high TCA in dBm"; type string; } } container tx-power-low-tca { description "Tx power low TCA"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf enable-tca { description "Enable tca"; type empty; } leaf no-enable-tca { description "Enable tca"; type empty; } leaf threshold { description "Threshold for 15 minute tx power low TCA in dBm"; type string; } leaf threshold-24hrs { description "Threshold for 24 hour tx power low TCA in dBm"; type string; } } container rx-power-high-tca { description "Rx power high TCA"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf enable-tca { description "Enable tca"; type empty; } leaf no-enable-tca { description "Enable tca"; type empty; } leaf threshold { description "Threshold for 15 minute rx power high TCA in dBm"; type string; } leaf threshold-24hrs { description "Threshold for 24 hour rx power high TCA in dBm"; type string; } } container rx-power-low-tca { description "Rx power low TCA"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf enable-tca { description "Enable tca"; type empty; } leaf no-enable-tca { description "Enable tca"; type empty; } leaf threshold { description "Threshold for 15 minute rx power low TCA in dBm"; type string; } leaf threshold-24hrs { description "Threshold for 24 hour rx power low TCA in dBm"; type string; } } container temperature-high-tca { description "Temperature high TCA"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf enable-tca { description "Enable tca"; type empty; } leaf no-enable-tca { description "Enable tca"; type empty; } leaf threshold { description "Threshold for 15 minute high temperature TCA in celsius"; type string; } leaf threshold-24hrs { description "Threshold for 24 hour high temperature TCA in celsius"; type string; } } container temperature-low-tca { description "Temperature low TCA"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf enable-tca { description "Enable tca"; type empty; } leaf no-enable-tca { description "Enable tca"; type empty; } leaf threshold { description "Threshold for 15 minute low temperature TCA in celsius"; type string; } leaf threshold-24hrs { description "Threshold for 24 hour low temperature TCA in celsius"; type string; } } container carrier-frequency-offset-high-tca { description "Carrier frequency offset high TCA"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf enable-tca { description "Enable tca"; type empty; } leaf no-enable-tca { description "Enable tca"; type empty; } leaf threshold { description "Threshold for 15 minute frequency requency offset high TCA in MHz"; type string; } leaf threshold-24hrs { description "Threshold for 24 hour frequency requency offset high TCA in MHz"; type string; } } container carrier-frequency-offset-low-tca { description "Carrier frequency offset low TCA"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf enable-tca { description "Enable tca"; type empty; } leaf no-enable-tca { description "Enable tca"; type empty; } leaf threshold { description "Threshold for 15 minute frequency requency offset low TCA in MHz"; type string; } leaf threshold-24hrs { description "Threshold for 24 hour frequency requency offset low TCA in MHz"; type string; } } } list warning { key name; ordered-by user; description "Set optic warnings"; leaf name { description "(null)"; type enumeration { enum low-light-warning { description "Enable low light warning"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice actiontype { case case_1 { leaf syslog { description "Set action as syslog"; type empty; } } case case_2 { leaf link-down { description "Set action as link-down"; type empty; } } } } } container otn-options { description "Optical Transmission Network interface-specific options"; uses otn_options_type; } container fastether-options { description "Fast Ethernet interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf loopback { description "Enable loopback"; type empty; } leaf no-loopback { description "Enable loopback"; type empty; } leaf flow-control { description "Enable flow control"; type empty; } leaf no-flow-control { description "Enable flow control"; type empty; } leaf source-filtering { description "Enable source address filtering"; type empty; } leaf no-source-filtering { description "Enable source address filtering"; type empty; } leaf auto-negotiation { description "Enable auto-negotiation"; type empty; } leaf no-auto-negotiation { description "Enable auto-negotiation"; type empty; } leaf ingress-rate-limit { description "Ingress rate at port"; units "megabits per second"; type uint32 { range "1 .. 100"; } } list source-address-filter { key name; ordered-by user; description "Source address filters"; leaf name { description "Remote MAC address"; type mac-addr; } } container redundant-parent { description " Parent of this interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf parent { description "Join a redundant ethernet interface"; type interface-device; mandatory true; } presence "enable redundant-parent"; } container ieee-802.3ad { description "IEEE 802.3ad"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container lacp { description "Link Aggregation Control Protocol configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port-priority { description "Priority of the port (0 ... 65535)"; type uint16; } } leaf bundle { description "Join an aggregated Ethernet interface"; type interface-device; } choice type { case case_1 { leaf primary { description "Primary interface for link-protection mode"; type empty; } } case case_2 { leaf backup { description "Backup interface for link-protection mode"; type empty; } } } } container mpls { description "MPLS options"; uses mpls_ifd_options; } leaf ignore-l3-incompletes { description "Ignore L3 incomplete errors"; type empty; } } container redundant-ether-options { description "Ethernet redundancy options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf redundancy-group { description "Redundancy group of this interface"; type uint16 { range "1 .. 255"; } mandatory true; } presence "enable redundant-ether-options"; leaf loopback { description "Enable loopback"; type empty; } leaf no-loopback { description "Enable loopback"; type empty; } leaf flow-control { description "Enable flow control"; type empty; } leaf no-flow-control { description "Enable flow control"; type empty; } leaf source-filtering { description "Enable source address filtering"; type empty; } leaf no-source-filtering { description "Enable source address filtering"; type empty; } list source-address-filter { key name; ordered-by user; description "Source address filters"; leaf name { description "Remote MAC address"; type mac-addr; } } leaf link-speed { description "Link speed of individual interface that joins the RETH"; type enumeration { enum 10m { description "Links are 10M"; } enum 100m { description "Links are 100M"; } enum 1g { description "Links are 1G"; } enum 10g { description "Links are 10G"; } } } leaf minimum-links { description "Minimum number of active links"; default "1"; type uint16 { range "1 .. 8"; } } container lacp { description "Link Aggregation Control Protocol configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice mode { case case_1 { leaf active { description "Initiate transmission of LACP packets"; type empty; } } case case_2 { leaf passive { description "Respond to LACP packets"; type empty; } } } leaf periodic { description "Timer interval for periodic transmission of LACP packets"; type enumeration { enum fast { description "Receive packets every second"; } enum slow { description "Receive packets every 30 seconds"; } } } } } container aggregated-ether-options { description "Aggregated Ethernet interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf loopback { description "Enable loopback"; type empty; } leaf no-loopback { description "Enable loopback"; type empty; } leaf flow-control { description "Enable flow control"; type empty; } leaf no-flow-control { description "Enable flow control"; type empty; } leaf source-filtering { description "Enable source address filtering"; type empty; } leaf no-source-filtering { description "Enable source address filtering"; type empty; } container link-protection { presence "enable link-protection"; description "Enable link protection mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf backup-state { description "Link protection backup link state"; default "accept-data"; type enumeration { enum accept-data { description "Accept data on receive channel of backup link"; } enum discard-data { description "Discard data on receive channel of backup link"; } enum down { description "Backup link is marked down"; } } } } list source-address-filter { key name; ordered-by user; description "Source address filters"; leaf name { description "Remote MAC address"; type mac-addr; } } container configured-flow-control { presence "enable configured-flow-control"; description "Enable flow control"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf rx-buffers { description "Enable/Disable Rx buffers"; type enumeration { enum on { description "Enable Rx buffers"; } enum off { description "Disable Rx buffers"; } } mandatory true; } leaf tx-buffers { description "Enable/Disable Tx buffers"; type enumeration { enum on { description "Enable Tx buffers"; } enum off { description "Disable Tx buffers"; } } mandatory true; } } container load-balance { uses aggregate-load-balance; } container bfd-liveness-detection { presence "enable bfd-liveness-detection"; description "Bidirectional Forwarding Detection (BFD) options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } container authentication { description "Authentication options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf key-chain { description "Key chain name"; type string; } leaf algorithm { description "Algorithm name"; type enumeration { enum simple-password { description "Simple password"; } enum keyed-md5 { description "Keyed message Digest 5"; } enum meticulous-keyed-md5 { description "Meticulous keyed message Digest 5"; } enum keyed-sha-1 { description "Keyed secure hash algorithm (SHA1) "; } enum meticulous-keyed-sha-1 { description "Meticulous keyed secure hash algorithm (SHA1) "; } } } leaf loose-check { description "Verify authentication only if authentication is negotiated"; type empty; } } leaf neighbor { description "BFD neighbor address"; type ipaddr; mandatory true; } leaf local-address { description "BFD local address"; type ipaddr; mandatory true; } leaf holddown-interval { description "Time to hold the session-UP notification to the client"; units "milliseconds"; type uint32 { range "0 .. 255000"; } } } leaf minimum-links { description "Minimum number of aggregated links"; type uint16 { range "1 .. 64"; } } container minimum-bandwidth { presence "enable minimum-bandwidth"; description "Minimum bandwidth configured for aggregated bundle"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bw-value { description "Bandwidth value"; default "1"; type uint64; } leaf bw-unit { description "Bandwidth unit"; type enumeration { enum bps { description "Links are in bytes per sec"; } enum kbps { description "Links are in kilo bytes per sec"; } enum mbps { description "Links are in mega bytes per sec"; } enum gbps { description "Links are in giga bytes per sec "; } } } } choice redundancy_choice { case case_1 { leaf logical-interface-fpc-redundancy { description "Enable FPC redundancy for logical interfaces"; type empty; } } case case_2 { leaf logical-interface-chassis-redundancy { description "Enable CHASSIS redundancy for logical interfaces"; type empty; } } } container rebalance-periodic { presence "enable rebalance-periodic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf start-time { description "Start time of the rebalance operation ( Wall clock time )"; type time; mandatory true; } leaf interval { description "Interval of the rebalance operation in hrs"; type uint32 { range "1 .. 24"; } mandatory true; } } leaf pad-to-minimum-frame-size { description "Pad Tx vlan tagged frame to minimum of 68 bytes"; type empty; } leaf link-speed { description "Link speed of individual interface that joins the AE"; type enumeration { enum 10m { description "Links are 10M"; } enum 100m { description "Links are 100M"; } enum 1g { description "Links are 1G"; } enum 8g { description "Links are 8G"; } enum 10g { description "Links are 10G"; } enum 40g { description "Links are 40G"; } enum 50g { description "Links are 50G"; } enum 80g { description "Links are 80G"; } enum 100g { description "Links are 100G"; } enum oc192 { description "Links are OC-192"; } enum mixed { description "Links are various speeds"; } } } leaf local-bias { description "Turn on local bias functionality"; type empty; } container lacp { description "Link Aggregation Control Protocol configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice mode { case case_1 { leaf active { description "Initiate transmission of LACP packets"; type empty; } } case case_2 { leaf passive { description "Respond to LACP packets"; type empty; } } } leaf periodic { description "Timer interval for periodic transmission of LACP packets"; type enumeration { enum fast { description "Receive packets every second"; } enum slow { description "Receive packets every 30 seconds"; } } } leaf fast-failover { description "To turn off LACP fast-failover"; type empty; } container link-protection { presence "enable link-protection"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "To turn off LACP link-protection"; type empty; } choice mode { case case_1 { leaf revertive { description "Switch links when better priority link comes up"; type empty; } } case case_2 { leaf non-revertive { description "Do not switch links when better priority link comes up"; type empty; } } } } leaf accept-data { description "Keep receiving traffic even when LACP goes down"; type empty; } leaf system-priority { description "Priority of the system (0 ... 65535)"; type string; } leaf system-id { description "Node's System ID, encoded as a MAC address"; type mac-addr; } leaf admin-key { description "Node's administrative key"; type uint16; } container hold-time { description "Hold time for link up and link down for AE link members"; leaf up { description "Link up hold time for the AE link members"; units "seconds"; type uint16 { range "1 .. 6000"; } mandatory true; } presence "enable hold-time"; } leaf aggregate-wait-time { description "Aggregate wait time for the AE"; units "seconds"; type uint16 { range "2 .. 600"; } } leaf force-up { description "Forceup AE interface with LACP"; type empty; } } container ethernet-switch-profile { description "Ethernet virtual LAN/media access control-level options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list tag-protocol-id { description "IEEE 802.1q Tag Protocol Identifier values for VLAN-tagged frames"; type string; } } container mc-ae { description "Multi-chassis aggregation (MC-AE) network device configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf mc-ae-id { description "MC-AE group id"; type uint16 { range "1 .. 65535"; } mandatory true; } presence "enable mc-ae"; leaf redundancy-group { description "Redundancy group id"; type uint32 { range "1 .. 4294967294"; } } leaf chassis-id { description "Chassis id of MC-AE network device"; type uint16 { range "0 .. 1"; } mandatory true; } leaf mode { description "Mode of the MC-AE"; type enumeration { enum active-standby { description "MC-AE in active-standby mode"; } enum active-active { description "MC-AE in active-active mode"; } } mandatory true; } leaf status-control { description "Status of the MC-AE chassis"; type enumeration { enum active { description "Chassis is Active"; } enum standby { description "Chassis is Standby"; } } mandatory true; } leaf switchover-mode { description "Switchover mode"; type enumeration { enum revertive { description "Switch mcae node when preferred link comes up"; } enum non-revertive { description "Do not switch mcae node when preferred link comes up"; } } } leaf revert-time { description "Wait interval before performing switchover"; default "3"; units "minute"; type uint32 { range "1 .. 10"; } } leaf init-delay-time { description "Init delay timer for mcae sm for min traffic loss"; units "seconds"; type uint16 { range "1 .. 6000"; } } leaf recovery-delay-time { description "Delay timer for bringing up ICL, ICCP"; units "seconds"; type uint16 { range "1 .. 6000"; } } container events { presence "enable events"; description "MCAE related events"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container iccp-peer-down { presence "enable iccp-peer-down"; description "Define behavior in the event of ICCP peer down"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf force-icl-down { description "Bring down ICL logical interface"; type empty; } leaf prefer-status-control-active { description "Keep this node up (recommended only on status-control active)"; type empty; } } } } } container es-options { description "ES PIC interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf backup-interface { description "Name of backup interface"; type interface-device; } } container dsl-options { description "DSL interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf operating-mode { description "DSL operating mode"; type enumeration { enum auto { description "Autonegotiate mode"; } enum ansi-dmt { description "ANSI T1.413 Issue II mode"; } enum itu-dmt { description "ITU G.992.1 mode"; } enum etsi { description "ETSI TS 101 388 V1.3.1 mode"; } enum itu-annexb-ur2 { description "ITU G.992.1 UR-2 mode"; } enum itu-annexb-non-ur2 { description "ITU G.992.1 Non UR-2 mode"; } enum itu-dmt-bis { description "ITU G.992.3 mode"; } enum adsl2plus { description "ITU G.992.5 mode"; } enum annexm-itu-dmt-bis { description "AnnexM ITU G.992.3 mode"; } enum annexm-adsl2plus { description "AnnexM ITU G.992.5 mode"; } } } } container vdsl-options { description "VDSL interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf vdsl-profile { description "VDSL profile"; type enumeration { enum auto { description "Auto"; } enum 8a { description "Profile 8a"; } enum 8b { description "Profile 8b"; } enum 8c { description "Profile 8c"; } enum 8d { description "Profile 8d"; } enum 12a { description "Profile 12a"; } enum 12b { description "Profile 12b"; } enum 17a { description "Profile 17a"; } } } } container shdsl-options { description "SHDSL interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf annex { description "Type of SHDSL annex"; default "annex-b"; type enumeration { enum annex-a { description "Annex-a PIC"; } enum annex-b { description "Annex-b PIC"; } enum annex-f { description "Annex-f PIC"; } enum annex-g { description "Annex-g PIC"; } enum annex-auto { description "Annex-auto PIC"; } } } leaf line-rate { description "SHDSL line rate"; type string; } leaf loopback { description "Loopback mode"; type enumeration { enum local { description "Local loopback"; } enum remote { description "Remote loopback"; } } } container snr-margin { presence "enable snr-margin"; description "Signal to noise ratio margin"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf current { description "Current signal to noise ratio margin"; units "dB"; type string; } leaf snext { description "SNEXT signal to noise ratio margin"; units "dB"; type string; } } } container data-input { description "Configuration for drop-insert data input"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice input-choice { case case_1 { leaf system { description "Data sourced from system"; type empty; } } case case_2 { leaf interface { description "Interface that acts as data source"; type interface-device; } } } } container switch-options { description "Front end ports configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list switch-port { key name; description "(null)"; leaf name { description "Front end port number"; type uint32 { range "0 .. 15"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf auto-negotiation { description "Enable auto-negotiation"; type empty; } leaf no-auto-negotiation { description "Enable auto-negotiation"; type empty; } leaf link-mode { description "Link operational mode"; type enumeration { enum half-duplex { description "Half-duplex operation"; } enum full-duplex { description "Full-duplex operation"; } } } leaf speed { description "Link speed"; type enumeration { enum 10m { description "(null)"; } enum 100m { description "(null)"; } enum 1g { description "(null)"; } } } leaf vlan-id { description "VLAN ID for this port"; type uint32 { range "0 .. 4094"; } } leaf cascade-port { description "Port externally connected to another cascade port"; type empty; } } } container container-options { description "Container interface specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container container-type { presence "enable container-type"; description "Protocol type of the container interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice container-type-choice { case case_1 { container aps { description "APS options on the container"; uses aps_type; } } } } container member-interface-type { description "Link type of members of container"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice member_interface_type_choice { case case_1 { container sonet { presence "enable sonet"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf member-interface-speed { description "Link speed of members of container"; type enumeration { enum oc3 { description "Links are OC-3"; } enum oc12 { description "Links are OC-12"; } enum oc48 { description "Links are OC-48"; } enum oc192 { description "Links are OC-192"; } enum oc768 { description "Links are OC-768"; } enum mixed { description "Links are of different speeds"; } } mandatory true; } } } case case_2 { container atm { presence "enable atm"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf member-interface-speed { description "Link speed of members of container"; type enumeration { enum oc3 { description "Links are OC-3"; } enum oc12 { description "Links are OC-12"; } enum oc48 { description "Links are OC-48"; } } mandatory true; } } } } } container redundancy { description "Container interface redundancy options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container hold-time { description "Hold time for link up and link down"; leaf up { description "Link up hold time"; units "milliseconds"; type uint32 { range "0 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Link down hold time"; units "milliseconds"; type uint32 { range "0 .. 65534"; } mandatory true; } } } leaf-list container-list { description "List of container interfaces this member link is associated to"; type interface-device; } choice redundancy-type { case case_1 { choice aps-redundancy { case case_1 { leaf primary { description "This member link is primary interface of the container"; type empty; } } case case_2 { leaf standby { description "This member link is standby interface of the container"; type empty; } } } } } leaf allow-configuration-override { description "Allow physical configuration of member link to override container configuration"; type empty; } } container layer2-policer { description "Layer2 policing for interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input-hierarchical-policer { description "Hierarchical policer for received packets"; type string; } } list unit { key name; description "Logical interface"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf alias { description "Interface alias"; type string; } container peer-psd { presence "enable peer-psd"; description "Peer psd"; leaf psd-name { description "Peer psd name"; type string; mandatory true; } } container peer-interface { presence "enable peer-interface"; description "Peer interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interface-name { description "Peer interface name"; type interface-unit; } } container interface-shared-with { presence "enable interface-shared-with"; description "Specify which PSD owns this logical interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf psd-name { description "Name of protected system domain (psd[1-31], ex. psd2)"; type string { } mandatory true; } } choice enable-disable { case case_1 { leaf disable { description "Disable this logical interface"; type empty; } } } leaf passive-monitor-mode { description "Use interface to tap packets from another router"; type empty; } leaf per-session-scheduler { description "Enable per-session queuing on an IQ2 interface"; type empty; } container account-layer2-overhead { presence "enable account-layer2-overhead"; description "Account layer2 overhead in IFL byte statistics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf overhead-value { description "Layer2 overhead bytes to be accounted in ingress and egress"; units "bytes"; type int8 { range "-128 .. 127"; } } leaf ingress { description "Layer2 overhead bytes to be accounted in ingress"; units "bytes"; type int8 { range "-128 .. 127"; } } leaf egress { description "Layer2 overhead bytes to be accounted in egress"; units "bytes"; type int8 { range "-128 .. 127"; } } } container forwarding-class-accounting { presence "enable forwarding-class-accounting"; description "Configure Forwarding-class-accounting parameters for IFL "; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf direction { description "Direction of the traffic to be accounted for IFL"; type enumeration { enum ingress { description "Enable forwarding-class-accounting for ingress traffic"; } enum egress { description "Enable forwarding-class-accounting for egress traffic"; } enum both { description "Enable forwarding-class-accounting for both directions"; } } } container enhanced { presence "enable enhanced"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf traffic-type { description "Traffic-type to be accounted for forwarding-class-accounting for IFL"; type enumeration { enum unicast-statistics { description "Count only unicast traffic for forwarding-class-accounting for IFL "; } enum multicast-statistics { description "Count only multicast traffic for forwarding-class-accounting for IFL"; } } } leaf family { description "Protocol traffic to be accounted for forwarding-class-accounting for IFL"; type enumeration { enum inet { description "Enable forwarding-class-accounting for IPv4 family only for IFL"; } enum inet6 { description "Enable forwarding-class-accounting for IPv6 family only for IFL"; } enum both { description "Enable forwarding-class-accounting for both IPv4 and IPv6 family for IFL"; } } } leaf direction { description "Direction of the traffic to be accounted for forwarding-class-accounting for IFL"; type enumeration { enum ingress { description "Enable forwarding-class-accounting for ingress traffic for IFL"; } enum egress { description "Enable forwarding-class-accounting for egress traffic for IFL"; } enum both { description "Enable forwarding-class-accounting for both ingress and egress traffic for IFL"; } } } leaf overhead-bytes { description "Per octet overhead bytes to be accounted for forwarding-class-accounting for IFL "; default "0"; type uint32 { range "0 .. 255"; } } } } leaf clear-dont-fragment-bit { description "Clear DF bit in packet (AS PIC and J-series only as well as MIF)"; type empty; } leaf reassemble-packets { description "Do reassembly of fragmented tunnel packets"; type empty; } container services-options { description "Services interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container rpm { description "Enable RPM service on this interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice rpm_or_twamp { case case_1 { choice rpm-type { case case_1 { leaf client { description "Client mode"; type empty; } } case case_2 { leaf server { description "Server mode"; type empty; } } } } case case_2 { leaf twamp-server { description "Set TWAMP server mode on this interface"; type empty; } } case case_3 { leaf twamp-client { description "Set TWAMP server mode on this interface"; type empty; } } } } leaf description { description "Text description of interface"; type string; } leaf metadata { description "Text metadata attached to interface"; type string; } container dial-options { description "Dial options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice interface_id_choice { case case_1 { leaf l2tp-interface-id { description "Identifier for group of PPP sessions"; type string { length "1 .. 63"; } } } case case_2 { leaf ipsec-interface-id { description "Identifier for group of dynamic peers"; type string { length "1 .. 63"; } } } } choice ifl_type { case case_1 { leaf dedicated { description "Use this unit for only one PPP/IPSec session"; type empty; } } case case_2 { leaf shared { description "Share this unit for multiple PPP/IPSec sessions"; type empty; } } } } list demux-source { key name; ordered-by user; description "Demux based on source address"; uses demux_options_table; } list demux-destination { key name; ordered-by user; description "Demux based on destination address"; uses demux_options_table; } leaf encapsulation { description "Logical link-layer encapsulation"; type enumeration { enum atm-nlpid { description "ATM NLPID encapsulation"; } enum atm-cisco-nlpid { description "Cisco-compatible ATM NLPID encapsulation"; } enum atm-snap { description "ATM LLC/SNAP encapsulation"; } enum atm-vc-mux { description "ATM VC multiplexing"; } enum atm-ccc-vc-mux { description "ATM VC for CCC"; } enum atm-tcc-vc-mux { description "ATM VC for translational cross-connect"; } enum atm-tcc-snap { description "ATM LLC/SNAP for translational cross-connect"; } enum atm-ccc-cell-relay { description "ATM cell relay for CCC"; } enum vlan-vci-ccc { description "CCC for VLAN Q-in-Q and ATM VPI/VCI interworking"; } enum ether-over-atm-llc { description "Ethernet over ATM (LLC/SNAP) encapsulation"; } enum ether-vpls-over-atm-llc { description "Ethernet VPLS over ATM (bridging) encapsulation"; } enum ppp-over-ether-over-atm-llc { description "PPPoE over ATM (LLC/SNAP) encapsulation"; } enum ppp-over-ether { description "PPPoE encapsulation"; } enum atm-ppp-vc-mux { description "ATM PPP over raw AAL5"; } enum atm-ppp-llc { description "ATM PPP over AAL5/LLC"; } enum atm-mlppp-llc { description "ATM MLPPP over AAL5/LLC"; } enum frame-relay-ppp { description "PPP over Frame Relay"; } enum frame-relay-ccc { description "Frame Relay DLCI for CCC"; } enum frame-relay { description "Frame Relay DLCI"; } enum frame-relay-tcc { description "Frame Relay DLCI for translational cross-connect"; } enum frame-relay-ether-type { description "Cisco-compatible Frame Relay Encapsulation DLCI"; } enum frame-relay-ether-type-tcc { description "Cisco-compatible Frame Relay Encapsulation DLCI for TCC"; } enum ether-vpls-fr { description "Ethernet VPLS over Frame Relay (bridging) encapsulation"; } enum vlan-ccc { description "802.1q tagging for a cross-connect"; } enum ethernet-ccc { description "Ethernet for a cross-connect"; } enum vlan-vpls { description "VLAN virtual private LAN service"; } enum vlan-bridge { description "VLAN layer-2 bridging"; } enum dix { description "Ethernet DIXv2 (RFC 894)"; } enum ethernet { description "Ethernet II (RFC 894)"; } enum ethernet-vpls { description "Ethernet II virtual private LAN service"; } enum ethernet-bridge { description "Ethernet II bridging"; } enum vlan { description "802.1q-tagged Ethernet"; } enum vlan-tcc { description "802.1q tagging for a translational cross-connect"; } enum multilink-ppp { description "Multilink PPP"; } enum multilink-frame-relay-end-to-end { description "Multilink Frame Relay end-to-end (FRF.15)"; } enum ppp-ccc { description "Serial PPP device for a cross-connect"; } } } leaf mtu { description "Maximum transmission unit packet size"; type uint32 { range "256 .. 9216"; } } choice pointedness { case case_1 { leaf point-to-point { description "Point-to-point connection"; type empty; } } case case_2 { leaf multipoint { description "Multipoint connection"; type empty; } } } leaf bandwidth { description "Logical unit bandwidth (informational only)"; type string; } leaf global-layer2-domainid { description "Global Layer-2 Identifier for this interface"; type uint32 { range "5 .. 4094"; } } container radio-router { description "Parameters for dynamic link cost management"; uses dynamic_ifbw_parms_type; } leaf traps { description "Enable SNMP notifications on state changes"; type empty; } leaf no-traps { description "Enable SNMP notifications on state changes"; type empty; } container arp-resp { presence "enable arp-resp"; description "Knob to control ARP response on the interface, default is restricted"; choice arp-response-options { case case_1 { leaf unrestricted { description "Enable unrestricted ARP respone on the interface"; type empty; } } case case_2 { leaf restricted { description "Enable restricted proxy ARP response on the interface"; type empty; } } } } container proxy-arp { presence "enable proxy-arp"; description "Enable proxy ARP on the interface, default is unrestricted"; choice proxyarp-options { case case_1 { leaf unrestricted { description "Enable unrestricted proxy ARP on the interface"; type empty; } } case case_2 { leaf restricted { description "Enable restricted proxy ARP on the interface"; type empty; } } } } choice vlan_choice { case case_1 { leaf vlan-id { description "Virtual LAN identifier value for 802.1q VLAN tags"; type string; } } case case_2 { leaf vlan-id-range { description "Virtual LAN identifier range of form vid1-vid2"; type string { } } } case case_3 { leaf-list vlan-id-list { description "List of VLAN identifiers"; type vlan-range; } } case case_4 { container vlan-tags { presence "enable vlan-tags"; description "IEEE 802.1q tags"; leaf outer { description "[tpid.]vlan-id, tpid format is 0xNNNN and is optional"; type string; mandatory true; } choice inner_choice { case case_1 { leaf inner { description "[tpid.]vlan-id, tpid format is 0xNNNN and is optional"; type string; } } case case_2 { leaf inner-range { description "[tpid.]vid1-vid2, tpid format is 0xNNNN and is optional"; type string { } } } case case_3 { leaf-list inner-list { description "List of VLAN identifiers"; type vlan-range; } } } } } } leaf native-inner-vlan-id { description "Native virtual LAN identifier for singly tagged frames"; type uint32 { range "0 .. 4094"; } } container inner-vlan-id-range { description "Inner vlan-id range start end "; leaf start { description "Inner vlan-id range's start value"; type uint32 { range "32 .. 4094"; } mandatory true; } presence "enable inner-vlan-id-range"; leaf end { description "Inner vlan-id range's end value"; type uint32 { range "32 .. 4094"; } mandatory true; } } container accept-source-mac { description "Remote media access control address to/from which to accept traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list mac-address { key name; description "Remote MAC address"; uses mac_list; } } container input-vlan-map { description "VLAN map operation on input"; uses vlan_map; } container output-vlan-map { description "VLAN map operation on output"; uses vlan_map; } leaf swap-by-poppush { description "Pop original vlan tag and then push a new vlan tag"; type empty; } leaf receive-lsp { description "Name of incoming label-switched path"; type string; } leaf transmit-lsp { description "Name of outgoing label-switched path"; type string; } leaf dlci { description "Frame Relay data-link control identifier"; type uint32 { range "1 .. 1022"; } } leaf multicast-dlci { description "Frame Relay data-link control identifier for multicast packets"; type uint32 { range "1 .. 1022"; } } choice vci_type { case case_1 { leaf vci { description "ATM point-to-point virtual circuit identifier ([vpi.]vci)"; type atm-vci; } } case case_2 { leaf allow-any-vci { description "Allow all VCIs to open in atm-ccc-cell-relay mode"; type empty; } } case case_3 { leaf vpi { description "ATM point-to-point virtual path identifier (vpi)"; type uint32 { range "0 .. 255"; } } } case case_4 { leaf trunk-id { description "ATM trunk identifier"; type uint32 { range "0 .. 31"; } } } } leaf no-vpivci-swapping { description "Do not swap VPI/VCI for Cell Relay"; type empty; } choice psn_vci_type { case case_1 { leaf psn-vci { description "PSN VCI"; type atm-vci; } } case case_2 { leaf psn-vpi { description "PSN VPI"; type uint32 { range "0 .. 255"; } } } } container atm-l2circuit-mode { description "Select ATM Layer 2 circuit transport mode"; choice mode_choice { case case_1 { leaf cell { description "ATM Layer 2 circuit cell mode"; type empty; } } case case_2 { leaf aal5 { description "ATM Layer 2 circuit AAL5 mode"; type empty; } } } } container vci-range { presence "enable vci-range"; description "ATM VCI range start end "; leaf start { description "ATM VCI range's start value"; type uint16 { range "32 .. 4094"; } mandatory true; } leaf end { description "ATM VCI range's end value"; type uint16 { range "32 .. 4094"; } mandatory true; } } leaf trunk-bandwidth { description "ATM trunk bandwidth"; units "bits per second"; type string; } leaf multicast-vci { description "ATM virtual circuit identifier for multicast packets"; type atm-vci; } container shaping { description "Virtual circuit traffic-shaping options"; uses dcd_shaping_config; } container oam-period { description "OAM cell period"; choice oam_period_choices { case case_1 { leaf oam-period { description "OAM cell period"; units "seconds"; type uint32 { range "1 .. 900"; } } } case case_2 { container disable { presence "enable disable"; description "Disable F5 OAM loopback"; } } } } container oam-liveness { description "OAM virtual circuit liveness parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf up-count { description "Number of OAM cells to consider VC up"; type uint32 { range "1 .. 255"; } } leaf down-count { description "Number of OAM cells to consider VC down"; type uint32 { range "1 .. 255"; } } } container ppp-options { description "Point-to-Point Protocol interface-specific options"; uses ppp_options_type; } container pppoe-options { description "PPP over Ethernet interface-specific options"; uses pppoe_options_type; } container pppoe-underlying-options { description "PPP over Ethernet underlying interface-specific options"; uses pppoe_underlying_options_type; } container advisory-options { description "Interface-specific recommendations"; uses advisory_options_type; } container auto-configure { description "Auto configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container agent-circuit-identifier { description "ACI configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf dynamic-profile { description "Dynamic profile name"; type string { length "1 .. 64"; } mandatory true; } presence "enable agent-circuit-identifier"; } } container demux-options { description "IP demux interface-specific options"; uses demux_options_type; } leaf targeted-distribution { description "Interface participates in targeted-distribution"; type empty; } choice keepalive_choices { case case_1 { container keepalives { description "Send or demand keepalive messages"; uses keepalives_type; } } case case_2 { leaf no-keepalives { description "Do not send or demand keepalive messages"; type empty; } } } leaf inverse-arp { description "Enable inverse ARP"; type empty; } leaf transmit-weight { description "ATM2 transmit weight for VC under VP tunnel"; type uint16 { range "1 .. 32767"; } } container epd-threshold { description "Early packet discard threshold for ATM2"; uses epd_threshold_config; } leaf cell-bundle-size { description "L2 circuit cell bundle size"; units "cells"; type uint32 { range "1 .. 176"; } } leaf cell-bundle-timeout { description "L2 circuit cell bundle timeout"; units "microseconds"; type uint32 { range "1 .. 512"; } } leaf plp-to-clp { description "Enable ATM2 PLP to CLP copy"; type empty; } leaf atm-scheduler-map { description "Assign ATM2 CoS scheduling map"; type string; } leaf mrru { description "Maximum received reconstructed unit"; units "bytes"; type uint16 { range "1500 .. 9180"; } } leaf short-sequence { description "Short sequence number header format (MLPPP only)"; type empty; } leaf fragment-threshold { description "Fragmentation threshold"; units "bytes"; type uint32 { range "64 .. 16320"; } } leaf drop-timeout { description "Drop timeout"; units "milliseconds"; type uint16 { range "0 .. 2000"; } } leaf disable-mlppp-inner-ppp-pfc { description "Disable compression for inner PPP header in MLPPP payload"; type empty; } leaf minimum-links { description "Minimum number of links to sustain the bundle"; type uint16 { range "1 .. 8"; } } leaf multilink-max-classes { description "Number of multilink classes"; type uint16 { range "1 .. 8"; } } container compression { presence "enable compression"; description "Various packet header compressions"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container rtp { presence "enable rtp"; description "Compress and decompress RTP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf f-max-period { description "Maximum number of compressed packets between transmission of full headers"; type uint32 { range "1 .. 65535"; } } leaf-list queues { description "Queue holding RTP packets. Default is queue 1"; type enumeration { enum q0 { description "RTP packets assigned to queue 0"; } enum q1 { description "RTP packets assigned to queue 1"; } enum q2 { description "RTP packets assigned to queue 2"; } enum q3 { description "RTP packets assigned to queue 3"; } } } container port { presence "enable port"; description "UDP destination ports reserved for RTP packets"; leaf minimum { description "(null)"; type uint32 { range "0 .. 65535"; } mandatory true; } leaf maximum { description "(null)"; type uint32 { range "0 .. 65535"; } mandatory true; } } container maximum-contexts { description "Maximum number of simultaneous RTP contexts"; leaf number { description "Maximum number of simultaneous RTP contexts"; type uint32 { range "16 .. 2048"; } } } } } leaf interleave-fragments { description "Interleave long packets with high priority ones"; type empty; } leaf link-layer-overhead { description "Link layer bit stuffing overhead (0.0 .. 50.0 percent)"; type unsigned-float; } leaf accounting-profile { description "Accounting profile name"; type string; } leaf peer-unit { description "Peer unit number"; type uint32 { range "0 .. 16385"; } } container tunnel { description "Tunnel parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source { description "Tunnel source"; type ipaddr; mandatory true; } presence "enable tunnel"; leaf destination { description "Tunnel destination"; type ipaddr; mandatory true; } leaf key { description "Tunnel key"; type uint32 { range "0 .. 4294967295"; } } leaf backup-destination { description "Backup tunnel destination"; type ipaddr; } choice fragmentation { case case_1 { leaf allow-fragmentation { description "Do not set DF bit on packets"; type empty; } } case case_2 { leaf do-not-fragment { description "Set DF bit on packets"; type empty; } } } leaf ttl { description "Time to live"; type uint32 { range "0 .. 255"; } } leaf traffic-class { description "TOS/Traffic class field of IP-header"; type uint32 { range "0 .. 255"; } } leaf flow-label { description "Flow label field of IP6-header"; type uint32 { range "0 .. 1048575"; } } leaf path-mtu-discovery { description "Enable path MTU discovery for tunnels"; type empty; } leaf no-path-mtu-discovery { description "Enable path MTU discovery for tunnels"; type empty; } container routing-instance { description "Routing instance to which tunnel ends belong"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf destination { description "Routing instance of tunnel destination"; type string; } } } leaf compression-device { description "Logical interface used for compression"; type interface-unit; } container atm-policer { description "ATM policing for logical interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input-atm-policer { description "Input atm policer"; type string; } } container layer2-policer { description "Layer2 policing for logical interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice layer2-input-policer-choice { case case_1 { leaf input-policer { description "Two-color policer for received packets"; type string; } } case case_2 { leaf input-hierarchical-policer { description "Hierarchical policer for received packets"; type string; } } case case_3 { leaf input-three-color { description "Color-blind three-color policer for received packets"; type string; } } } choice layer2-output-policer-choice { case case_1 { leaf output-policer { description "Two-color policer for transmitted packets"; type string; } } case case_2 { leaf output-three-color { description "Three-color policer for transmitted packets"; type string; } } } } container filter { description "Filters to apply to all families configured under this logical interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of filter applied to received packets"; type string; } leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf output { description "Name of filter applied to transmitted packets"; type string; } } list multi-chassis-protection { key name; description "Inter-Chassis protection configuration"; uses multi-chassis-protection-group; } leaf statistics { description "Enable statistics collection in PFE"; type empty; } container esi { description "ESI configuration of local loopback interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf identifier { description "ESI value for the interface"; type esi; mandatory true; } presence "enable esi"; choice mode { case case_1 { leaf single-active { description "Single-active mode"; type empty; } } case case_2 { leaf all-active { description "All-active mode"; type empty; } } } } container family { description "Protocol family"; container inet { presence "enable inet"; description "IPv4 parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container dhcp-client { description "Dynamic Host Configuration Protocol client configuration"; uses dhcp-client-type; } container targeted-broadcast { presence "enable targeted-broadcast"; description "Directed broadcast"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice targeted-bcast-choice { case case_1 { leaf forward-and-send-to-re { description "Allow packets to be forwarded and sent to re"; type empty; } } case case_2 { leaf forward-only { description "Allow packets only to be forwarded"; type empty; } } } } leaf receive-options-packets { description "Receive IP options packets (don't send to Routing Engine)"; type empty; } leaf receive-ttl-exceeded { description "Receive IP TTL-exceeded packets (don't send to Routing Engine)"; type empty; } container accounting { description "Configure interface-based accounting options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container source-class-usage { description "Enable source class usage on this interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Specify this interface for source-class-usage input"; type empty; } leaf output { description "Specify this interface for source-class-usage output"; type empty; } } leaf destination-class-usage { description "Enable destination class usage on this interface"; type empty; } } leaf mac-validate { description "Validate source MAC address"; type enumeration { enum strict { description "Strict mac-validation"; } enum loose { description "Loose mac-validation"; } } } container rpf-check { presence "enable rpf-check"; description "Enable reverse-path-forwarding checks on this interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf fail-filter { description "Name of filter applied to packets failing RPF check"; type string; } container mode { description "Mode for reverse path forwarding"; leaf loose { description "Reverse-path-forwarding loose mode"; type empty; } } } leaf mtu { description "Protocol family maximum transmission unit"; type uint32; } leaf tcp-mss { description "Protocol family tcp maximum segment size"; type uint32 { range "1 .. 65535"; } } leaf no-redirects { description "Do not redirect traffic"; type empty; } leaf no-neighbor-learn { description "Disable neighbor address learning on interface"; type empty; } leaf unconditional-src-learn { description "Glean from arp packets even when source cannot be validated"; type empty; } leaf multicast-only { description "Allow only multicast traffic (tunnels only)"; type empty; } leaf primary { description "Candidate for primary interface in system"; type empty; } leaf ipsec-sa { description "Name of security association"; type string { length "1 .. 32"; } } list demux-source { key name; ordered-by user; description "Demux based on source prefix"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list demux-destination { key name; ordered-by user; description "Demux based on destination prefix"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container filter { description "Packet filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice input_choice { case case_1 { container input { description "Filter to be applied to received packets"; leaf filter-name { description "Name of the filter"; type string; mandatory true; } presence "enable input"; leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf precedence { description "Precedence of the filter"; type uint32 { range "0 .. 255"; } } } } case case_2 { leaf-list input-list { description "List of filter modules applied to received packets "; type string; } } } choice output_choice { case case_1 { container output { description "Filter to be applied to transmitted packets"; leaf filter-name { description "Name of the filter"; type string; mandatory true; } presence "enable output"; leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf precedence { description "Precedence of the filter"; type uint32 { range "0 .. 255"; } } } } case case_2 { leaf-list output-list { description "List of filter modules applied to transmitted packets "; type string; } } } container adf { description "Ascend Data Filter definition"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Set of ADF rules"; leaf name { description "Value for a single rule"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf counter { description "Add a counter to each rule"; type empty; } leaf input-precedence { description "Precedence of the input rules"; type uint32 { range "0 .. 255"; } } leaf not-mandatory { description "No errors will be reported if no rules are present"; type empty; } leaf output-precedence { description "Precedence of the output rules"; type uint32 { range "0 .. 255"; } } } leaf group { description "Group to which interface belongs"; type uint32 { range "1 .. 255"; } } } container simple-filter { description "Filter for doing multifield classification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of simple filter applied to received packets"; type string; } } leaf input-hierarchical-policer { description "Hierarchical policer for received packets"; type string; } container policer { description "Interface policing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf arp { description "Name of policer applied to received ARP packets"; type string; } leaf input { description "Name of policer applied to received packets"; type string; } leaf output { description "Name of policer applied to transmitted packets"; type string; } } container sampling { description "Interface sampling"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Sample all packets input on this interface"; type empty; } leaf output { description "Sample all packets output on this interface"; type empty; } } container service { description "Service operations"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container input { description "Service sets to consider for received packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list service-set { key name; ordered-by user; description "Service set to consider for received packets"; leaf name { description "Name of service set"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf service-filter { description "Name of service filter"; type string; } } leaf post-service-filter { description "Post-service filter to apply to received packets"; type string; } } container output { description "Service sets to consider for transmitted packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list service-set { key name; ordered-by user; description "Service set to consider for transmitted packets"; leaf name { description "Name of service set"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf service-filter { description "Name of service filter"; type string; } } } } list next-hop-tunnel { key name; ordered-by user; description "One or more next-hop tunnel tables"; leaf name { description "Next-hop tunnel gateway address"; type string; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ipsec-vpn { description "Name of IPSec VPN"; type string; mandatory true; } } list address { key name; ordered-by user; description "Interface address/destination prefix"; leaf name { description "Interface address/destination prefix"; type ipv4prefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf destination { description "Destination address"; type ipv4addr; } leaf destination-profile { description "Profile to use for destination address"; type string; } leaf broadcast { description "Broadcast address"; type ipv4addr; } leaf primary { description "Candidate for primary address in system"; type empty; } leaf preferred { description "Preferred address on interface"; type empty; } leaf master-only { description "Master management IP address for router"; type empty; } list multipoint-destination { key name; ordered-by user; description "Multipoint NBMA destination"; leaf name { description "Destination address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice link-address { case case_1 { leaf dlci { description "Frame Relay data-link control identifier"; type uint32 { range "1 .. 1022"; } } } case case_2 { leaf vci { description "ATM virtual circuit identifier ([vpi.]vci)"; type atm-vci; } } } container shaping { description "Virtual circuit traffic-shaping options"; uses dcd_shaping_config; } container oam-period { description "OAM cell period"; choice oam_period_choices { case case_1 { leaf oam_period { description "OAM cell period"; units "seconds"; type uint32 { range "1 .. 900"; } } } case case_2 { container disable { presence "enable disable"; description "Disable OAM loopback"; } } } } container oam-liveness { description "OAM virtual circuit liveness parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf up-count { description "Number of OAM cells to consider VC up"; type uint32 { range "1 .. 255"; } } leaf down-count { description "Number of OAM cells to consider VC down"; type uint32 { range "1 .. 255"; } } } leaf inverse-arp { description "Enable inverse ARP reply messages"; type empty; } leaf transmit-weight { description "ATM2 transmit weight for VC under VP tunnel"; type uint16 { range "1 .. 32767"; } } container epd-threshold { description "Early packet discard threshold for ATM2"; uses epd_threshold_config; } } list arp { key name; ordered-by user; description "Static Address Resolution Protocol entries"; leaf name { description "Destination IP address"; type ipv4addr; mandatory true; } leaf l2-interface { description "Layer 2 interface name for ARP entry"; type interface-name; } choice mac_address_type { case case_1 { leaf mac { description "MAC address"; type mac-unicaset; } } case case_2 { leaf multicast-mac { description "Multicast MAC address"; type mac-multicast; } } } leaf publish { description "Reply to ARP requests for this entry"; type empty; } } container web-authentication { description "Parameters for web-based firewall-user authentication"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf http { description "Enable authentication via HTTP"; type empty; } } list vrrp-group { key name; ordered-by user; description "VRRP group"; uses vrrp-group; } leaf virtual-gateway-address { description "Virtual Gateway IP address"; type ipv4addr; } } container unnumbered-address { presence "enable unnumbered-address"; description "Unnumbered interface address/destination prefix"; leaf source { description "Interface from which to take local address"; type interface-unit; mandatory true; } leaf preferred-source-address { description "Preferred address on the donor interface"; type string; } leaf destination { description "Destination address"; type ipv4addr; } leaf destination-profile { description "Profile to use for destination address"; type string; } } container location-pool-address { presence "enable location-pool-address"; description "Location-based IP address pool"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf pool-name { description "Pool name"; type string { length "1 .. 64"; } } } leaf negotiate-address { description "Negotiate address with remote"; type empty; } } container iso { presence "enable iso"; description "OSI ISO protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list address { key name; ordered-by user; description "Interface address"; leaf name { description "Interface address"; type isoaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf mtu { description "Protocol family maximum transmission unit"; type uint32; } } container inet6 { presence "enable inet6"; description "IPv6 protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container rpf-check { presence "enable rpf-check"; description "Enable reverse-path-forwarding checks on this interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf fail-filter { description "Name of filter applied to packets failing RPF check"; type string; } container mode { description "Mode for reverse path forwarding"; leaf loose { description "Reverse-path-forwarding loose mode"; type empty; } } } container accounting { description "Interface-based accounting options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container source-class-usage { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Interface for source-class-usage input"; type empty; } leaf output { description "Interface for source-class-usage output"; type empty; } } leaf destination-class-usage { description "Enable destination class usage on this interface"; type empty; } } leaf mtu { description "Protocol family maximum transmission unit"; type uint32; } leaf tcp-mss { description "Protocol family tcp maximum segment size"; type uint32; } leaf nd6-stale-time { description "Stale time to reconfirm reachability with inet6 neighbour"; units "seconds"; type uint32 { range "1 .. 1200"; } } leaf no-neighbor-learn { description "Disable neighbor address learning on interface"; type empty; } leaf no-redirects { description "Do not redirect traffic"; type empty; } container filter { description "Packet filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice input_choice { case case_1 { container input { description "Filter to be applied to received packets"; leaf filter-name { description "Name of the filter"; type string; mandatory true; } presence "enable input"; leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf precedence { description "Precedence of the filter"; type uint32 { range "0 .. 255"; } } } } case case_2 { leaf-list input-list { description "List of filter modules applied to received packets "; type string; } } } choice output_choice { case case_1 { container output { description "Filter to be applied to transmitted packets"; leaf filter-name { description "Name of the filter"; type string; mandatory true; } presence "enable output"; leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf precedence { description "Precedence of the filter"; type uint32 { range "0 .. 255"; } } } } case case_2 { leaf-list output-list { description "List of filter modules applied to transmitted packets "; type string; } } } container adf { description "Ascend Data Filter definition"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Set of ADF rules"; leaf name { description "Value for a single rule"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf counter { description "Add a counter to each rule"; type empty; } leaf input-precedence { description "Precedence of the input rules"; type uint32 { range "0 .. 255"; } } leaf not-mandatory { description "No errors will be reported if no rules are present"; type empty; } leaf output-precedence { description "Precedence of the output rules"; type uint32 { range "0 .. 255"; } } } leaf group { description "Group to which interface belongs"; type uint32 { range "1 .. 255"; } } } leaf input-hierarchical-policer { description "Hierarchical policer for received packets"; type string; } container policer { description "Interface policing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of policer applied to received packets"; type string; } leaf output { description "Name of policer applied to transmitted packets"; type string; } } container sampling { description "Interface sampling"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Sample all packets input on this interface"; type empty; } leaf output { description "Sample all packets output on this interface"; type empty; } } container service { description "Service operations"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container input { description "Service sets to consider for received packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list service-set { key name; ordered-by user; description "Service set to consider for received packets"; leaf name { description "Name of service set"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf service-filter { description "Name of service filter"; type string; } } leaf post-service-filter { description "Post-service filter to apply to received packets"; type string; } } container output { description "Service sets to consider for transmitted packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list service-set { key name; ordered-by user; description "Service set to consider for transmitted packets"; leaf name { description "Name of service set"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf service-filter { description "Name of service filter"; type string; } } } } list address { key name; ordered-by user; description "Interface address or destination prefix"; leaf name { description "Interface address or destination prefix"; type ipv6prefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf destination { description "Destination address"; type ipv6addr; } leaf eui-64 { description "Generate EUI-64 interface ID"; type empty; } leaf primary { description "Candidate for primary address in system"; type empty; } leaf preferred { description "Preferred address on interface"; type empty; } leaf master-only { description "Master management IP address for router"; type empty; } list ndp { key name; ordered-by user; description "Static Neighbor Discovery Protocol entries"; leaf name { description "Destination IP address"; type ipv6addr; } leaf l2-interface { description "Layer 2 interface name for NDP entry"; type interface-name; } choice mac_address_type { case case_1 { leaf mac { description "MAC address"; type mac-unicaset; } } case case_2 { leaf multicast-mac { description "Multicast MAC address"; type mac-multicast; } } } leaf publish { description "Reply to NDP requests for this entry"; type empty; } } list vrrp-inet6-group { key name; ordered-by user; description "VRRP group"; uses vrrp-group; } container web-authentication { description "Parameters for web-based firewall-user authentication"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf http { description "Enable authentication via HTTP"; type empty; } } leaf virtual-gateway-address { description "Virtual Gateway IP address"; type ipv6addr; } } list demux-source { key name; ordered-by user; description "Demux based on source prefix"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list demux-destination { key name; ordered-by user; description "Demux based on destination prefix"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container unnumbered-address { presence "enable unnumbered-address"; description "Unnumbered interface address/destination prefix"; leaf source { description "Interface from which to take local address"; type interface-unit; mandatory true; } leaf preferred-source-address { description "Preferred address on the donor interface"; type string; } } leaf dad-disable { description "Disable duplicate-address-detection"; type empty; } leaf no-dad-disable { description "Disable duplicate-address-detection"; type empty; } } container mpls { presence "enable mpls"; description "MPLS protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf mtu { description "Protocol family maximum transmission unit"; type uint32; } leaf maximum-labels { description "Protocol family maximum number of labels"; default "3"; type uint32 { range "3 .. 5"; } } container filter { description "Packet filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice input_choice { case case_1 { leaf input { description "Name of filter applied to received packets"; type string; } } case case_2 { leaf-list input-list { description "List of filter modules applied to received packets "; type string; } } } choice output_choice { case case_1 { leaf output { description "Name of filter applied to transmitted packets"; type string; } } case case_2 { leaf-list output-list { description "List of filter modules applied to transmitted packets "; type string; } } } leaf group { description "Interface group to which interface belongs"; type uint32 { range "1 .. 255"; } } } leaf input-hierarchical-policer { description "Hierarchical policer for received packets"; type string; } container policer { description "Interface policing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of policer applied to received packets"; type string; } leaf output { description "Name of policer applied to transmitted packets"; type string; } } } container mlppp { presence "enable mlppp"; description "Multilink PPP protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bundle { description "Logical interface name this link will join"; type string; mandatory true; } choice anchor-points { case case_1 { leaf service-interface { description "Services interface to use"; type interface-device; } } case case_2 { leaf service-device-pool { description "Service interface pool name to use"; type string { length "1 .. 63"; } } } } leaf dynamic-profile { description " dynamic profile for interface to use"; type string { length "1 .. 80"; } } } container mlfr-end-to-end { presence "enable mlfr-end-to-end"; description "Multilink Frame Relay end-to-end protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bundle { description "Logical interface name this link will join"; type interface-unit; mandatory true; } } container mlfr-uni-nni { presence "enable mlfr-uni-nni"; description "Multilink Frame Relay UNI NNI protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bundle { description "Logical interface name this link will join"; type interface-unit; mandatory true; } } container ccc { presence "enable ccc"; description "Circuit cross-connect parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf mtu { description "Protocol family maximum transmission unit"; type uint32; } container filter { description "Packet filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice input_choice { case case_1 { leaf input { description "Name of filter applied to received packets"; type string; } } case case_2 { leaf-list input-list { description "List of filter modules applied to received packets "; type string; } } } choice output_choice { case case_1 { leaf output { description "Name of filter applied to transmitted packets"; type string; } } case case_2 { leaf-list output-list { description "List of filter modules applied to transmitted packets "; type string; } } } leaf group { description "Interface group to which interface belongs"; type uint32 { range "1 .. 255"; } } } container policer { description "Interface policing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of policer applied to received packets"; type string; } leaf output { description "Name of policer applied to transmitted packets"; type string; } } leaf translate-fecn-and-becn { description "Translate FECN and BECN bits"; type empty; } choice de-or-plp { case case_1 { leaf translate-discard-eligible { description "Translate DE bit"; type empty; } } case case_2 { leaf translate-plp-control-word-de { description "Translate PLP to/from Martini Control DE bit"; type empty; } } } leaf keep-address-and-control { description "Don't strip PPP address and control bytes"; type empty; } } container tcc { presence "enable tcc"; description "Translational cross-connect parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container policer { description "Interface policing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of policer applied to received packets"; type string; } leaf output { description "Name of policer applied to transmitted packets"; type string; } } container proxy { presence "enable proxy"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf inet-address { description "Remote host address on non-Ethernet side of Ethernet TCC"; type ipv4addr; } } container remote { presence "enable remote"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf inet-address { description "Remote host address on Ethernet side of Ethernet TCC"; type ipv4addr; } leaf mac-address { description "Remote host MAC address on Ethernet side of Ethernet TCC"; type mac-addr; } } leaf-list protocols { description "Protocols supported on TCC interface"; type enumeration { enum mpls { description "Multiprotocol Label Switching"; } enum inet { description "IP version 4"; } enum iso { description "International Organization for Standardization"; } } } } container vpls { presence "enable vpls"; description "Virtual private LAN service parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf core-facing { description "Interface is core facing"; type empty; } container filter { description "Packet filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice input_choice { case case_1 { container input { description "Filter to be applied to received packets"; leaf filter-name { description "Name of the filter"; type string; mandatory true; } presence "enable input"; leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf precedence { description "Precedence of the filter"; type uint32 { range "0 .. 255"; } } } } case case_2 { leaf-list input-list { description "List of filter modules applied to received packets "; type string; } } } choice output_choice { case case_1 { container output { description "Filter to be applied to transmitted packets"; leaf filter-name { description "Name of the filter"; type string; mandatory true; } presence "enable output"; leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf precedence { description "Precedence of the filter"; type uint32 { range "0 .. 255"; } } } } case case_2 { leaf-list output-list { description "List of filter modules applied to transmitted packets "; type string; } } } container adf { description "Ascend Data Filter definition"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Set of ADF rules"; leaf name { description "Value for a single rule"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf counter { description "Add a counter to each rule"; type empty; } leaf input-precedence { description "Precedence of the input rules"; type uint32 { range "0 .. 255"; } } leaf not-mandatory { description "No errors will be reported if no rules are present"; type empty; } leaf output-precedence { description "Precedence of the output rules"; type uint32 { range "0 .. 255"; } } } leaf group { description "Group to which interface belongs"; type uint32 { range "1 .. 255"; } } } container policer { description "Interface policing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of policer applied to received packets"; type string; } leaf output { description "Name of policer applied to transmitted packets"; type string; } } } container bridge { presence "enable bridge"; description "Layer-2 bridging parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf core-facing { description "Interface is core facing"; type empty; } container filter { description "Packet filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice input_choice { case case_1 { container input { description "Filter to be applied to received packets"; leaf filter-name { description "Name of the filter"; type string; mandatory true; } presence "enable input"; leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf precedence { description "Precedence of the filter"; type uint32 { range "0 .. 255"; } } } } case case_2 { leaf-list input-list { description "List of filter modules applied to received packets "; type string; } } } choice output_choice { case case_1 { container output { description "Filter to be applied to transmitted packets"; leaf filter-name { description "Name of the filter"; type string; mandatory true; } presence "enable output"; leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf precedence { description "Precedence of the filter"; type uint32 { range "0 .. 255"; } } } } case case_2 { leaf-list output-list { description "List of filter modules applied to transmitted packets "; type string; } } } container adf { description "Ascend Data Filter definition"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Set of ADF rules"; leaf name { description "Value for a single rule"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf counter { description "Add a counter to each rule"; type empty; } leaf input-precedence { description "Precedence of the input rules"; type uint32 { range "0 .. 255"; } } leaf not-mandatory { description "No errors will be reported if no rules are present"; type empty; } leaf output-precedence { description "Precedence of the output rules"; type uint32 { range "0 .. 255"; } } } leaf group { description "Group to which interface belongs"; type uint32 { range "1 .. 255"; } } } container policer { description "Interface policing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of policer applied to received packets"; type string; } leaf output { description "Name of policer applied to transmitted packets"; type string; } } leaf interface-mode { description "Interface mode (access or trunk)"; type enumeration { enum access { description "Interface mode is access"; } enum trunk { description "Interface mode is trunk"; } } } leaf bridge-domain-type { description "Bridge domain type (svlan or bvlan)"; type enumeration { enum svlan { description "Bridge domain type svlan"; } enum bvlan { description "Bridge domain type bvlan"; } } } leaf inter-switch-link { description "PVLAN inter switch link"; type empty; } choice vlan_list { case case_1 { leaf vlan-id { description "Access mode and trunk mode VLAN membership"; type uint32 { range "1 .. 4094"; } } } case case_2 { leaf-list vlan-id-list { description "Trunk mode VLAN membership for this interface"; type string; } } case case_3 { leaf-list inner-vlan-id-list { description "Trunk mode VLAN membership for this interface based on inner VLAN tag"; type string; } } } container vlan-rewrite { description "Specify vlan translation"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list translate { key name; ordered-by user; description "Translate incoming VLAN tag"; leaf name { description "Specify the incoming VLAN tag"; type uint32 { range "1 .. 4094"; } mandatory true; } leaf to-vlan-id { description "Specify the bridge-domain VLAN-ID"; type uint32 { range "1 .. 4094"; } mandatory true; } } } choice isid_list { case case_1 { leaf isid-list { description "Specify the ISID list"; type enumeration { enum all-service-groups { description "Map all ISIDs specified under the service-groups"; } enum all { description "Map all ISIDs"; } } } } } container storm-control { description "Storm control profile name to bind"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf profile-name { description "Profile name"; type string; mandatory true; } presence "enable storm-control"; } container recovery-timeout { description "Recovery timeout for this interface"; leaf time-in-seconds { description "(null)"; units "seconds"; type uint32 { range "10 .. 3600"; } } } } container ethernet-switching { description "Ethernet switching parameters"; uses ethernet-switching-type; } container fibre-channel { description "Fibre channel switching parameters"; uses fibre-channel-type; } container pppoe { description "PPP over Ethernet underlying interface-specific options"; uses pppoe_underlying_options_type; } container any { presence "enable any"; description "Parameters for 'any' family"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container filter { description "Layer 2 packet filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of filter applied to received packets"; type string { } } leaf group { description "Group to which interface belongs"; type uint32 { range "1 .. 255"; } } } } } leaf service-domain { description "Service domain to which interface belongs"; type enumeration { enum inside { description "Inside network"; } enum outside { description "Outside network"; } } } leaf copy-tos-to-outer-ip-header { description "Copy IP payload header's ToS field to GRE delivery header"; type empty; } container load-balancing-options { description "AMS subunit load balancing options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf preferred-active { description "Preferred active Interface name"; type interface-device; } container hash-keys { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list ingress-key { description "Hash Key for the ingress direction"; type enumeration { enum source-ip { description "Source Ip Address"; } enum destination-ip { description "Destination Ip Address"; } enum protocol { description "Protocol"; } enum iif { description "Incoming Interface"; } } } } } leaf mac { description "Configure logical interface MAC address"; type mac-unicaset; } leaf virtual-gateway-v4-mac { description "Configure virtual gateway IPV4 virtual MAC address"; type mac-unicaset; } leaf virtual-gateway-v6-mac { description "Configure virtual gateway IPV6 virtual MAC address"; type mac-unicaset; } container forwarding-options { description "Aggregated Ethernet interface forwarding-options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container load-balance-stateful { description "Stateful load balancing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf per-flow { description "Enable feature"; type empty; mandatory true; } presence "enable load-balance-stateful"; leaf rebalance { description "Rebalancing interval"; units "per minute"; type uint32 { range "1 .. 1000"; } } leaf load-type { description "Load - defines the flows"; type enumeration { enum high { description "If the no of flows on this aggregate is large(1000-10000 flows) "; } enum medium { description "If the no of flows on this aggregate is moderate(100-1000 flows)"; } enum low { description "If the no of flows on this aggregate is less(1-100)"; } } } } } } container no-partition { description "Use channelizable interface as clear channel"; leaf interface-type { description "Interface type"; type enumeration { enum e1 { description "E1 interface"; } enum t1 { description "T1 interface"; } enum at { description "ATM interface"; } enum t3 { description "T3 interface"; } enum e3 { description "E3 interface"; } enum ct3 { description "Channelized T3 interface"; } enum so { description "SONET interface"; } enum cau4 { description "CAU4 interface"; } } } } list partition { key name; ordered-by user; description "Channelized interface partition"; leaf name { description "Sublevel interface partition index (for example, 1, 3-4)"; type string; } leaf oc-slice { description "Range of SONET/SDH slices (for example, 1, 7-9)"; type string; } leaf timeslots { description "Timeslots [(1..24) for T1, (1..31) for E1]; for example, 1-3,4,9,22-24 (no spaces)"; type string; } leaf interface-type { description "Sublevel interface type"; type enumeration { enum ds { description "DS0 interface"; } enum e1 { description "E1 interface"; } enum t1 { description "T1 interface"; } enum at { description "ATM interface"; } enum ct1 { description "Channelized T1 interface"; } enum ce1 { description "Channelized E1 interface"; } enum t3 { description "T3 interface"; } enum ct3 { description "Channelized T3 interface"; } enum e3 { description "E3 interface"; } enum so { description "SONET interface"; } enum coc1 { description "Channelized OC1 interface"; } enum cau4 { description "Channelized AU4 interface"; } enum dc { description "D channel interface"; } enum bc { description "B channel interface"; } } mandatory true; } } container test-clocking { presence "enable test-clocking"; description "DDL-Test Interface clock source"; } leaf eaid-test-attr { description "(null)"; type string; } leaf eaid-default-test-attr { description "(null)"; default "defs"; type string; } leaf ia-test-so-only { description "(null)"; type string; } leaf ia-test-not-so-only { description "(null)"; type string; } leaf ia-test-ge-fe-only { description "(null)"; type string; } leaf ia-test-t3-channelized-only { description "(null)"; type string; } leaf ia-test-sonnet-options { description "(null)"; type string; } leaf ia-test-not-fe-ge { description "(null)"; type string; } } list interface { key name; description "(null)"; uses interfaces_type; } } container multi-chassis { presence "enable multi-chassis"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list multi-chassis-protection { key name; description "Inter-Chassis protection configuration"; uses multi-chassis-protection-group; } } container jsrc-partition { description "JSRC partition configuration"; leaf jsrc-partition-name { description "JSRC partition name"; type string { length "1 .. 63"; } } } container snmp { description "Simple Network Management Protocol configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf system-name { description "System name override"; type string; } leaf description { description "System description"; type string; } leaf location { description "Physical location of system"; type string; } leaf contact { description "Contact information for administrator"; type string; } leaf-list interface { description "Restrict SNMP requests to interfaces"; type interface-name; } container alarm-management { description "Alarm management"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list alarm-list-name { key name; ordered-by user; description "Alarm list name"; leaf name { description "Alarm list name"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list alarm-id { key name; ordered-by user; description "Alarm id"; leaf name { description "Alarm id"; type uint32 { range "1 .. 4294967295"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list alarm-state { key name; ordered-by user; description "Alarm model state, configure state value as 1 for clear alarm"; leaf name { description "Alarm state"; type uint32 { range "1 .. 4294967295"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf notification-id { description "Notification id of alarm"; type string { length "1 .. 254"; } mandatory true; } leaf varbind-index { description "Varbind index in alarm varbind list"; default "0"; type uint32 { range "0 .. 4294967295"; } } leaf varbind-value { description "Alarm varbind value"; default "0"; type int32 { range "0 .. 2147483647"; } } leaf description { description "Alarm description"; default "0"; type string { length "1 .. 2048"; } } leaf varbind-subtree { description "Alarm varbind subtree"; default "0"; type string { length "1 .. 254"; } } leaf resource-prefix { description "Alarm resource prefix"; default "0"; type string { length "1 .. 254"; } } } } } } container filter-interfaces { presence "enable filter-interfaces"; description "List of interfaces that needs to be filtered"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list interfaces { key name; ordered-by user; description "Filter specified interfaces"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf all-internal-interfaces { description "Filter all internal interfaces"; type empty; } } leaf if-count-with-filter-interfaces { description "Filter interfaces config for ifNumber and ipv6Interfaces"; type empty; } leaf filter-duplicates { description "Filter requests with duplicate source address/port and request ID"; type empty; } container nonvolatile { description "Configure the handling of nonvolatile SNMP Set requests"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf commit-delay { description "Delay between affirmative SNMP Set reply and start of commit"; default "5"; units "seconds"; type uint32; } } container v3 { description "SNMPv3 configuration information"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container usm { description "User-based security model (USM) information"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container local-engine { description "Local engine user configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list user { key name; ordered-by user; description "SNMPv3 USM user information"; uses v3-user-config; } } list remote-engine { key name; ordered-by user; description "Remote engine user configuration"; leaf name { description "Remote engine id (Hex format)"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list user { key name; ordered-by user; description "SNMPv3 USM user information"; uses v3-user-config; } } } container vacm { description "View-based access control model (VACM) information"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container security-to-group { description "Assigns security names to group"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list security-model { key name; ordered-by user; description "Security model context for group assignment"; leaf name { description "SNMPv3 security-to-group model name"; type enumeration { enum usm { description "User-based security model"; } enum v1 { description "SNMPv1 model"; } enum v2c { description "SNMPv2c model"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list security-name { key name; ordered-by user; description "Security name to assign to group"; leaf name { description "Security name"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf group { description "Group to which to assign security name"; type string { length "1 .. 32"; } } } } } container access { description "Specify SNMP access limits"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "Group access configuration"; leaf name { description "SNMPv3 VACM group name"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container default-context-prefix { description "Default context-prefix access configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list security-model { key name; ordered-by user; description "Security model access configuration"; uses security-model-access; } } list context-prefix { key name; ordered-by user; description "Context-prefix access configuration"; leaf name { description "SNMPv3 VACM context prefix"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list security-model { key name; ordered-by user; description "Security model access configuration"; uses security-model-access; } } } } } list target-address { key name; ordered-by user; description "Identifies notification targets as well as allowed management stations"; leaf name { description "SNMP target address name"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf address { description "SNMP target address"; type ipaddr; mandatory true; } leaf port { description "SNMP target port number"; default "162"; type uint16; } leaf timeout { description "Acknowledgment timeout for confirmed SNMP notifications"; default "15"; units "seconds"; type uint32; } leaf retry-count { description "Maximum retry count for confirmed SNMP notifications"; default "3"; type uint32 { range "0 .. 255"; } } leaf tag-list { description "SNMP tag list used to select target addresses"; type string { length "0 .. 255"; } } leaf address-mask { description "Mask range of addresses for community string access control."; type ipaddr; } leaf routing-instance { description "Routing instance for trap destination"; type string { } } leaf logical-system { description "Logical-system name for trap destination"; type string { } } leaf target-parameters { description "SNMPv3 target parameter name in the target parameters table"; type string { length "1 .. 32"; } mandatory true; } } list target-parameters { key name; ordered-by user; description "Parameters and filter name used when sending notifications"; leaf name { description "SNMPv3 target parameters name"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container parameters { description "Parameters used when sending notifications"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf message-processing-model { description "The message processing model to be used when generating SNMP notifications"; type enumeration { enum v1 { description "SNMPv1 model"; } enum v2c { description "SNMPv2c model"; } enum v3 { description "SNMPv3 model"; } } mandatory true; } presence "enable parameters"; leaf security-model { description "Security-model used when generating SNMP notifications"; type enumeration { enum usm { description "User-based security model"; } enum v1 { description "SNMPv1 model"; } enum v2c { description "SNMPv2c model"; } } mandatory true; } leaf security-level { description "Security-level used when generating SNMP notifications"; type enumeration { enum none { description "None (noAuthNoPriv)"; } enum authentication { description "Authentication (authNoPriv)"; } enum privacy { description "Privacy and authentication (authPriv)"; } } mandatory true; } leaf security-name { description "Security name used when generating SNMP notifications"; type string { length "1 .. 32"; } mandatory true; } } container notify-filter { description "Notify filter to apply to notifications"; leaf filter { description "Filter name to apply to notifications"; type string { length "1 .. 32"; } } } } list notify { key name; ordered-by user; description "Used to select management targets for notifications as well as the type of notifications"; leaf name { description "Notify name"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf type { description "Notification type"; default "trap"; type enumeration { enum trap { description "SNMP trap"; } enum inform { description "Inform request"; } } } leaf tag { description "Notifications will be sent to all targets configured with this tag"; type string { length "0 .. 255"; } } } list notify-filter { key name; ordered-by user; description "Filters to apply to SNMP notifications"; leaf name { description "SNMP profile name in the notify filter table"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list oid { key name; ordered-by user; description "OID include/exclude list"; leaf name { description "OID to include/exclude from notify filter"; type string { } } choice filter-action { case case_1 { leaf include { description "Include this OID in the notify filter"; type empty; } } case case_2 { leaf exclude { description "Exclude this OID from the notify filter"; type empty; } } } } } list snmp-community { key name; ordered-by user; description "SNMP community and view-based access control model configuration"; leaf name { description "Unique index value in this community table entry"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf community-name { description "SNMPv1/v2c community name (default is same as community-index)"; type unreadable; } leaf security-name { description "Security name used when performing access control"; type string { length "1 .. 32"; } mandatory true; } leaf context { description "Context used when performing access control"; type string { length "0 .. 32"; } } leaf tag { description "Tag identifier for set of targets allowed to use this community string"; type string { length "0 .. 255"; } } } } list proxy { key name; ordered-by user; description "SNMP proxy configuration"; leaf name { description "Unique proxy name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf device-name { description "Satellite/Proxied Device name or IP address"; type string; mandatory true; } choice version { case case_1 { container version-v1 { description "For v1 proxy configuration define snmp-community"; uses comm-object; } } case case_2 { container version-v2c { description "For v2c proxy configuration define snmp-community"; uses comm-object; } } case case_3 { container version-v3 { description "For v3 proxy configuration define security-name"; uses sec-object; } } } list routing-instance { key name; ordered-by user; description "Associate routing-instance name for proxy forwarding"; leaf name { description "Routing-instance name for proxy forwarding"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list logical-system { key name; ordered-by user; description "Associate logical-system name for proxy forwarding"; leaf name { description "Associate logical-system name for proxy forwarding"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list routing-instance { key name; ordered-by user; description "Associate routing-instance name for proxy forwarding"; leaf name { description "Routing-instance name for proxy forwarding"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } container subagent { description "SNMP subagent configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container tcp { presence "enable tcp"; description "Allow SNMP subagent tcp connection"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container routing-instance { description "Specify routing-instance name for tcp connection"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default { description "Allow connections over default routing-instance"; type empty; } } } } container engine-id { description "SNMPv3 engine ID"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice engine-id-choice { case case_1 { leaf use-mac-address { description "Uses management interface MAC Address for the engine ID"; type empty; } } case case_2 { leaf use-default-ip-address { description "Use default IP address for the engine ID"; type empty; } } case case_3 { leaf local { description "Local engine ID"; type string { } } } } } list view { key name; ordered-by user; description "Define MIB views"; leaf name { description "MIB view name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list oid { key name; ordered-by user; description "OID include/exclude list"; leaf name { description "OID to include or exclude from view"; type string { } } choice view-action { case case_1 { leaf include { description "Include this OID in the view"; type empty; } } case case_2 { leaf exclude { description "Exclude this OID from the view"; type empty; } } } } } list client-list { key name; ordered-by user; description "Client list"; leaf name { description "The name for the client list"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list client-address-list { key name; ordered-by user; description "Client address list"; uses client-address-object; } } list community { key name; ordered-by user; description "Configure a community string"; leaf name { description "Community name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf view { description "View name"; type string; } leaf authorization { description "Authorization type"; type enumeration { enum read-only { description "Allow read-only access"; } enum read-write { description "Allow read and write access"; } } } choice clients_choice { case case_1 { leaf client-list-name { description "The name of client list or prefix list"; type string { } } } case case_2 { list clients { key name; ordered-by user; description "List of source address prefix ranges to accept"; leaf name { description "Address or prefix"; type ipprefix; } leaf restrict { description "Deny access"; type empty; } } } } list routing-instance { key name; ordered-by user; description "Use routing-instance name for v1/v2c clients"; leaf name { description "Routing instance of v1/v2c clients"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice clients_choice { case case_1 { leaf client-list-name { description "The name of client list or prefix list"; type string { } } } case case_2 { list clients { key name; ordered-by user; description "List of source address prefix ranges to accept"; leaf name { description "Address or prefix"; type ipprefix; } leaf restrict { description "Deny access"; type empty; } } } } } list logical-system { key name; ordered-by user; description "Use logical-system name for v1/v2c clients"; leaf name { description "Use logical-system name for v1/v2c clients"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list routing-instance { key name; ordered-by user; description "Use routing-instance name for v1/v2c clients"; leaf name { description "Routing instance of v1/v2c clients"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice clients_choice { case case_1 { leaf client-list-name { description "The name of client list or prefix list"; type string { } } } case case_2 { list clients { key name; ordered-by user; description "List of source address prefix ranges to accept"; leaf name { description "Address or prefix"; type ipprefix; } leaf restrict { description "Deny access"; type empty; } } } } } } } container trap-options { presence "enable trap-options"; description "SNMP trap options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container source-address { description "IPv4/IPv6 source address for trap PDUs"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice address-choice { case case_1 { leaf lo0 { description "Use lowest address on loopback interface"; type empty; } } case case_2 { leaf address { description "Use specified address"; type ipaddr; } } } } leaf enterprise-oid { description "Add snmpTrapEnterprise oid in varbind of all traps"; type empty; } list routing-instance { key name; ordered-by user; description "Use routing-instance name for source-address"; leaf name { description "Routing instance of trap destination"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container source-address { description "IPv4/IPv6 source address for trap PDUs"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice address-choice { case case_1 { leaf lo0 { description "Use lowest address on loopback interface"; type empty; } } case case_2 { leaf address { description "Use specified address"; type ipaddr; } } } } } list logical-system { key name; ordered-by user; description "Use logical-system name for source-address"; leaf name { description "Use logical-system name for source-address"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list routing-instance { key name; ordered-by user; description "Use routing-instance name for source-address"; leaf name { description "Routing instance of trap destination"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container source-address { description "IPv4/IPv6 source address for trap PDUs"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice address-choice { case case_1 { leaf lo0 { description "Use lowest address on loopback interface"; type empty; } } case case_2 { leaf address { description "Use specified address"; type ipaddr; } } } } } } leaf agent-address { description "Agent address for v1 trap PDUs"; type enumeration { enum outgoing-interface { description "Use address on outgoing interface"; } } } } list trap-group { key name; ordered-by user; description "Configure traps and notifications"; leaf name { description "Trap group name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "SNMP version"; type enumeration { enum all { description "Send SNMPv1 and SNMPv2 traps"; } enum v1 { description "Send SNMPv1 traps"; } enum v2 { description "Send SNMPv2 traps"; } } } leaf destination-port { description "SNMP trap receiver port number"; type int32; } container categories { description "Trap categories"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf authentication { description "Authentication failures"; type empty; } leaf chassis { description "Chassis or environment notifications"; type empty; } leaf link { description "Link up-down transitions"; type empty; } leaf remote-operations { description "Remote operations"; type empty; } leaf routing { description "Routing protocol notifications"; type empty; } leaf startup { description "System warm and cold starts"; type empty; } leaf ggsn { description "GGSN notifications"; type empty; } leaf rmon-alarm { description "RMON rising and falling alarms"; type empty; } leaf vrrp-events { description "VRRP notifications"; type empty; } leaf configuration { description "Configuration notifications"; type empty; } leaf services { description "Services notifications"; type empty; } leaf chassis-cluster { description "Clustering notifications"; type empty; } leaf timing-events { description "Timing defects/events notifications"; type empty; } container sonet-alarms { presence "enable sonet-alarms"; description "SONET alarm trap subcategories"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf loss-of-light { description "Loss of light alarm notification"; type empty; } leaf pll-lock { description "PLL lock alarm notification"; type empty; } leaf loss-of-frame { description "Loss of frame alarm notification"; type empty; } leaf loss-of-signal { description "Loss of signal alarm notification"; type empty; } leaf severely-errored-frame { description "Severely errored frame alarm notification"; type empty; } leaf line-ais { description "Line AIS alarm notification"; type empty; } leaf path-ais { description "Path AIS alarm notification"; type empty; } leaf loss-of-pointer { description "Loss of pointer alarm notification"; type empty; } leaf ber-defect { description "Sonet bit error rate alarm defect notification"; type empty; } leaf ber-fault { description "Sonet bit error rate alarm fault notification"; type empty; } leaf line-remote-defect-indication { description "Line Remote Defect Indication alarm notification"; type empty; } leaf path-remote-defect-indication { description "Path Remote Defect Indication alarm notification"; type empty; } leaf remote-error-indication { description "Remote Error Indication alarm notification"; type empty; } leaf unequipped { description "Unequipped alarm notification"; type empty; } leaf path-mismatch { description "Path mismatch alarm notification"; type empty; } leaf loss-of-cell { description "Loss of Cell delineation alarm notification"; type empty; } leaf vt-ais { description "VT AIS alarm notification"; type empty; } leaf vt-loss-of-pointer { description "VT Loss Of Pointer alarm notification"; type empty; } leaf vt-remote-defect-indication { description "VT Remote Defect Indication alarm notification"; type empty; } leaf vt-unequipped { description "VT Unequipped alarm notification"; type empty; } leaf vt-label-mismatch { description "VT label mismatch error notification"; type empty; } leaf vt-loss-of-cell { description "VT Loss of Cell delineation notification"; type empty; } } container otn-alarms { presence "enable otn-alarms"; description "OTN alarm trap subcategories"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf oc-los { description "Loss of signal alarm notification"; type empty; } leaf oc-lof { description "Loss of frame alarm notification"; type empty; } leaf oc-lom { description "Loss of multiframe alarm notification"; type empty; } leaf wavelength-lock { description "Wavelength lock alarm notification"; type empty; } leaf otu-ais { description "OTU Alarm indication signal alarm notification"; type empty; } leaf otu-bdi { description "OTU Backward defect indication alarm notification"; type empty; } leaf otu-ttim { description "OTU Trace identification mismatch alarm notification"; type empty; } leaf otu-iae { description "OTU Incoming alignment error alarm notification"; type empty; } leaf otu-sd { description "OTU Signal degrade alarm notification"; type empty; } leaf otu-sf { description "OTU Signal fail alarm notification"; type empty; } leaf otu-fec-exe { description "OTU Fec excessive errors alarm notification"; type empty; } leaf otu-fec-deg { description "OTU Fec degraded errors alarm notification"; type empty; } leaf otu-bbe-threshold { description "OTU Background block error threshold alarm notification"; type empty; } leaf otu-es-threshold { description "OTU Errored Second threshold alarm notification"; type empty; } leaf otu-ses-threshold { description "OTU Severely Errored Second threshold alarm notification"; type empty; } leaf otu-uas-threshold { description "OTU Unavailable Second threshold alarm notification"; type empty; } leaf odu-ais { description "ODU Alarm indication signal alarm notification"; type empty; } leaf odu-oci { description "ODU Open connection indicator alarm notification"; type empty; } leaf odu-lck { description "ODU Locked alarm notification"; type empty; } leaf odu-bdi { description "ODU Backward defect indication alarm notification"; type empty; } leaf odu-ttim { description "ODU Trace identification mismatch alarm notification"; type empty; } leaf odu-sd { description "ODU Signal degrade alarm notification"; type empty; } leaf odu-sf { description "ODU Signal fail alarm notification"; type empty; } leaf odu-rx-aps-change { description "ODU Receive APS change notification"; type empty; } leaf odu-bbe-threshold { description "ODU Background block error threshold alarm notification"; type empty; } leaf odu-es-threshold { description "ODU Errored Second threshold alarm notification"; type empty; } leaf odu-ses-threshold { description "ODU Severely Errored Second threshold alarm notification"; type empty; } leaf odu-uas-threshold { description "ODU Unavailable Second threshold alarm notification"; type empty; } leaf opu-ptm { description "ODU Payload Type Mismatch alarm notification"; type empty; } } } list targets { key name; ordered-by user; description "Targets for trap messages"; leaf name { description "IP address"; type hostname; } } leaf routing-instance { description "Routing instance for trap destination"; type string { } } leaf logical-system { description "Logical-system name for trap destination"; type string { } } } container routing-instance-access { presence "enable routing-instance-access"; description "SNMP routing-instance options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list access-list { key name; description "Allow/Deny SNMP access to routing-instances"; leaf name { description "Routing-instance in format , * or *"; type string { } } leaf restrict { description "Deny access"; type empty; } } } leaf logical-system-trap-filter { description "Allow only logical-system specific traps"; type empty; } container traceoptions { description "Trace options for SNMP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container memory-trace { presence "enable memory-trace"; description "Memory tracing information"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf size { description "Memory size reserved for tracing "; default "5120"; units "kilobytes"; type uint32 { range "1250 .. 12500"; } } } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "10"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum timer { description "Trace internal timer events"; } enum protocol-timeouts { description "Trace SNMP request timeouts"; } enum pdu { description "Dump SNMP request/response packets"; } enum varbind-error { description "Trace varbind errors"; } enum routing-socket { description "Trace routing socket calls"; } enum interface-stats { description "Trace interface statistics (logical and physical)"; } enum subagent { description "Trace subagent restarts"; } enum general { description "Trace general events"; } enum nonvolatile-sets { description "Nonvolatile SNMP set request handling"; } enum all { description "Trace everything"; } } } } } container rmon { presence "enable rmon"; description "Remote Monitoring configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list history { key name; ordered-by user; description "RMON history entries"; leaf name { description "RMON history identifier"; type uint32 { range "1 .. 65535"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interface { description "Enable RMON on this interface"; type interface-name; mandatory true; } leaf bucket-size { description "Requested buckets for the interface"; default "50"; type uint32 { range "1 .. 65535"; } } leaf interval { description "Interval between samples"; default "1800"; units "seconds"; type uint32 { range "1 .. 2147483647"; } } leaf owner { description "Owner name of the entry"; type string { } } } list alarm { key name; ordered-by user; description "RMON alarm entries"; leaf name { description "RMON alarm identifier"; type uint32 { range "1 .. 65535"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf description { description "General description of alarm (stored in alarmOwner)"; type string { } } leaf interval { description "Interval between samples"; default "60"; units "seconds"; type uint32 { range "1 .. 2147483647"; } } leaf falling-threshold-interval { description "Interval between samples during falling-threshold test"; default "2147483647"; units "seconds"; type uint32 { range "1 .. 2147483647"; } } leaf variable { description "OID of MIB variable to be monitored"; type string { } mandatory true; } leaf sample-type { description "Method of sampling the selected variable"; type enumeration { enum absolute-value { description "Absolute sample value is used"; } enum delta-value { description "Difference between sampled values is used"; } } mandatory true; } leaf request-type { description "Type of SNMP request to issue for alarm"; default "get-request"; type enumeration { enum get-request { description "Get request"; } enum get-next-request { description "Get-next request"; } enum walk-request { description "Walk request"; } } } leaf startup-alarm { description "The alarm that may be sent upon entry startup"; default "rising-or-falling-alarm"; type enumeration { enum rising-alarm { description "Rising alarm may be sent at startup"; } enum falling-alarm { description "Falling alarm may be sent at startup"; } enum rising-or-falling-alarm { description "Rising or falling alarm may be sent at startup"; } } } leaf rising-threshold { description "The rising threshold"; type int32; mandatory true; } leaf falling-threshold { description "The falling threshold"; default "2147483647"; type int32; } leaf rising-event-index { description "Event triggered after rising threshold is crossed"; default "0"; type int32 { range "0 .. 65535"; } } leaf falling-event-index { description "Event triggered after falling threshold is crossed"; default "0"; type int32 { range "0 .. 65535"; } } leaf syslog-subtag { description "Tag to be added to syslog messages"; type string { } } } list event { key name; ordered-by user; description "RMON event entries"; leaf name { description "RMON event identifier"; type uint32 { range "1 .. 65535"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf description { description "General description of event"; type string { } } leaf type { description "The type of notification for this event"; default "log-and-trap"; type enumeration { enum none { description "No notifications"; } enum log { description "Add entry to logTable"; } enum snmptrap { description "Send SNMP trap"; } enum log-and-trap { description "Send SNMP trap and make log entry"; } } } leaf community { description "The community (trap group) for outgoing traps"; type string { } } } } container health-monitor { presence "enable health-monitor"; description "Health monitoring configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interval { description "Interval between samples"; units "seconds"; type uint32 { range "1 .. 2147483647"; } } leaf rising-threshold { description "Rising threshold applied to all monitored objects"; units "percent"; type uint32 { range "1 .. 100"; } } leaf falling-threshold { description "Falling threshold applied to all monitored objects"; units "percent"; type uint32 { range "0 .. 100"; } } container idp { presence "enable idp"; description "IDP health monitor configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interval { description "Interval between samples"; units "seconds"; type uint32 { range "1 .. 2147483647"; } } leaf rising-threshold { description "Rising threshold applied to all monitored objects"; units "percent"; type uint32 { range "0 .. 100"; } } leaf falling-threshold { description "Falling threshold applied to all monitored objects"; units "percent"; type uint32 { range "0 .. 100"; } } } } } container forwarding-options { description "Configure options to control packet forwarding"; uses juniper-forwarding-options; } container event-options { description "Event processing configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf max-policies { description "Number of policies that can be executed simultaneously"; default "15"; type uint32 { range "0 .. 20"; } } list generate-event { key name; ordered-by user; description "Generate an internal event"; max-elements 10; leaf name { description "Name of the event to be generated"; type string { length "1 .. 63"; } } choice time_choice { case case_1 { leaf time-of-day { description "Time of day at which to generate event (hh:mm:ss)"; type time; } } case case_2 { leaf time-interval { description "Frequency for generating the event"; units "seconds"; type uint32 { range "60 .. 2592000"; } } } } leaf no-drift { description "Avoid event generation delay propagating to next event"; type empty; } } list policy { key name; ordered-by user; description "Event policy for event policy manager"; leaf name { description "Name of policy"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list events { description "List of events that trigger this policy"; type string; } list within { key name; ordered-by user; description "List of events correlated with trigering events"; leaf name { description "Time within which correlated events must occur (or not)"; units "seconds"; type uint32 { range "1 .. 604800"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container trigger { description "Correlate events based on the number of occurrences"; choice when { case case_1 { leaf until { description "Trigger when occurrences of triggering event < 'count'"; type empty; } } case case_2 { leaf on { description "Trigger when occurrences of triggering event = 'count'"; type empty; } } case case_3 { leaf after { description "Trigger when occurrences of triggering event > 'count'"; type empty; } } } leaf count { description "Number of occurrences of triggering event"; type uint32; mandatory true; } presence "enable trigger"; } leaf-list events { description "List of events that must occur within time interval"; type string; } container not { description "Events must not occur within time interval"; leaf-list events { description "List of events that must not occur within time interval"; type string; } } } list attributes-match { key "from-event-attribute condition to-event-attribute-value"; ordered-by user; description "List of attributes to compare for two events"; leaf from-event-attribute { description "First attribute to compare"; type string { } } leaf condition { description "Relationship that must hold between attributes"; type enumeration { enum equals { description "Attributes match"; } enum starts-with { description "Second attribute starts with first attribute value"; } enum matches { description "Regular expression matching the first attribute value"; } } } leaf to-event-attribute-value { description "Second attribute or value to compare"; type string; } } container then { description "List of actions to perform when policy matches"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ignore { description "Do not log event or perform any other action"; type empty; } container priority-override { description "Change syslog priority value"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf facility { description "Facility type"; type enumeration { enum authorization { description "Authorization system"; } enum daemon { description "Various system processes"; } enum ftp { description "FTP process"; } enum ntp { description "NTP process"; } enum security { description "Security related"; } enum kernel { description "Kernel"; } enum user { description "User processes"; } enum dfc { description "Dynamic flow capture"; } enum external { description "Local external applications"; } enum firewall { description "Firewall filtering system"; } enum pfe { description "Packet Forwarding Engine"; } enum conflict-log { description "Configuration conflict log"; } enum change-log { description "Configuration change log"; } enum interactive-commands { description "Commands executed by the UI"; } } } leaf severity { description "Severity type"; type enumeration { enum emergency { description "Panic conditions"; } enum alert { description "Conditions that should be corrected immediately"; } enum critical { description "Critical conditions"; } enum error { description "Error conditions"; } enum warning { description "Warning messages"; } enum notice { description "Conditions that should be handled specially"; } enum info { description "Informational messages"; } } } } list upload { key "filename destination"; ordered-by user; description "Upload file to specified destination"; leaf filename { description "Name of file to upload"; type string; } leaf destination { description "Location to which to output file"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf user-name { description "User under whose privileges upload action will execute"; type string; } leaf transfer-delay { description "Delay before uploading file to the destination"; units "seconds"; type uint32; } container retry-count { description "Upload output-filename retry attempt count"; leaf retry { description "Number of retry attempts"; type uint8 { range "0 .. 10"; } mandatory true; } presence "enable retry-count"; leaf retry-interval { description "Time interval between each retry"; units "seconds"; type uint32; mandatory true; } } } container change-configuration { description "Change configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container retry { description "Change configuration retry attempt count"; leaf count { description "Number of retry attempts"; type uint8 { range "0 .. 10"; } mandatory true; } presence "enable retry"; leaf interval { description "Time interval between each retry"; units "seconds"; type uint32; mandatory true; } } list commands { key name; ordered-by user; description "List of configuration commands"; leaf name { description "Configuration command to issue"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf user-name { description "User under whose privileges configuration should be changed"; type string; } container commit-options { description "List of commit options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container check { presence "enable check"; description "Check correctness of syntax; do not apply changes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf synchronize { description "Synchronize commit on both Routing Engines"; type empty; } } leaf synchronize { description "Synchronize commit on both Routing Engines"; type empty; } leaf force { description "Force commit on other Routing Engine (ignore warnings)"; type empty; } leaf log { description "Message to write to commit log"; type string { length "1 .. 512"; } } } } container execute-commands { description "Issue one or more CLI commands"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list commands { key name; ordered-by user; description "List of CLI commands to issue"; leaf name { description "CLI command to issue"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf user-name { description "User under whose privileges command will execute"; type string; } leaf output-filename { description "Name of file in which to write command output"; type string { } } list destination { key name; ordered-by user; description "Location to which to upload command output"; max-elements 1; leaf name { description "Location to which to upload command output"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf transfer-delay { description "Delay before uploading file to the destination"; units "seconds"; type uint32; } container retry-count { description "Upload output-filename retry attempt count"; leaf retry { description "Number of retry attempts"; type uint8 { range "0 .. 10"; } mandatory true; } presence "enable retry-count"; leaf retry-interval { description "Time interval between each retry"; units "seconds"; type uint32; mandatory true; } } } leaf output-format { description "Format of output from CLI commands"; default "xml"; type enumeration { enum text { description "Formatted ASCII text"; } enum xml { description "JUNOS XML tags"; } } } } list event-script { key name; ordered-by user; description "Invoke event scripts"; leaf name { description "Local filename of the script file"; type string { length "1 .. 254"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list arguments { key name; ordered-by user; description "Command line argument to the script"; leaf name { description "Name of the argument"; type string { length "1 .. 254"; } } leaf value { description "Value of the argument"; type string; mandatory true; } } leaf user-name { description "User under whose privileges event script will execute"; type string; } leaf output-filename { description "Name of file in which to write event script output"; type string { } } list destination { key name; ordered-by user; description "Location to which to upload event script output"; max-elements 1; leaf name { description "Location to which to upload event script output"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf transfer-delay { description "Delay before uploading files"; units "seconds"; type uint32; } container retry-count { description "Upload output-filename retry attempt count"; leaf retry { description "Number of retry attempts"; type uint8 { range "0 .. 10"; } mandatory true; } presence "enable retry-count"; leaf retry-interval { description "Time interval between each retry"; units "seconds"; type uint32; mandatory true; } } } leaf output-format { description "Format of output from event-script"; default "text"; type enumeration { enum text { description "Formatted ASCII text"; } enum xml { description "JUNOS XML tags"; } } } } leaf raise-trap { description "Raise SNMP trap"; type empty; } } } container event-script { description "Configure event-scripts"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf max-datasize { description "Maximum data segment size for scripts execution"; units "bytes"; type string; } container dampen { presence "enable dampen"; description "Run event scripts in dampen mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container dampen-options { description "Dampen options for event scripts"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf cpu-factor { description "CPU factor at which to pause"; type uint32 { range "1 .. 100"; } } leaf line-interval { description "Line interval at which to pause"; type uint32 { range "1 .. 4294967295"; } } leaf time-interval { description "Time to pause"; units "microseconds"; type uint32 { range "1 .. 4294967295"; } } } } container traceoptions { description "Trace options for event scripts"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } } list flag { key name; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum events { description "Trace important events"; } enum input { description "Trace script input data"; } enum offline { description "Generate data for offline development"; } enum output { description "Trace script output data"; } enum rpc { description "Trace script RPCs"; } enum xslt { description "Trace the XSLT library"; } enum all { description "Trace all operations"; } } } } } list file { key name; ordered-by user; description "File name for event script"; leaf name { description "Local filename of the script file"; type string { length "1 .. 254"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source { description "URL of source for this script"; type string { length "1 .. 254"; } } container dampen { presence "enable dampen"; description "Run script in dampen mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container dampen-options { description "Dampen options for the script"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf cpu-factor { description "CPU factor at which to pause"; type uint32 { range "1 .. 100"; } } leaf line-interval { description "Line interval at which to pause"; type uint32 { range "1 .. 4294967295"; } } leaf time-interval { description "Time to pause"; units "microseconds"; type uint32 { range "1 .. 4294967295"; } } } } leaf refresh { description "Refresh all operation scripts from their source"; type empty; } leaf refresh-from { description "Refresh all operation scripts from a given base URL"; type string { length "1 .. 254"; } } container checksum { description "Checksum of this script"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf md5 { description "MD5 checksum of this script"; type string { length "1 .. 254"; } } leaf sha1 { description "SHA1 checksum of this script"; type string { length "1 .. 254"; } } leaf sha-256 { description "SHA-256 checksum of this script"; type string { length "1 .. 254"; } } } list remote-execution { key name; ordered-by user; description "Remote login username and password details for script"; leaf name { description "Remote hostname"; type string { length "1 .. 255"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf username { description "SSH username for login into the remote host"; type string { } mandatory true; } leaf passphrase { description "SSH passphrase for login into the remote host"; type unreadable; mandatory true; } } } leaf refresh { description "Refresh all operation scripts from their source"; type empty; } leaf refresh-from { description "Refresh all operation scripts from a given base URL"; type string { length "1 .. 254"; } } } list destinations { key name; ordered-by user; description "List of destinations referred to in 'then' clause"; leaf name { description "Destination name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf transfer-delay { description "Delay before transferring files"; default "0"; units "seconds"; type uint32; } list archive-sites { key name; ordered-by user; description "List of archive destinations"; leaf name { description "URL of destination for file"; type string; } leaf password { description "Password for login into the archive site"; type unreadable; } } } container traceoptions { description "Trace options for the event processing daemon"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "List of event types to include in trace"; leaf name { description "(null)"; type enumeration { enum server { description "Communication with processes that are generating events"; } enum configuration { description "Reading of configuration"; } enum events { description "Event processing"; } enum timer-events { description "Internally generated events"; } enum database { description "Events involving storage and retrieval in events database"; } enum policy { description "Policy processing"; } enum registration { description "Event registration"; } enum syslogd { description "Syslog related traces"; } enum all { description "Everything"; } } } } } } container accounting-options { description "Accounting data configuration"; uses juniper_accounting_options; } container routing-options { description "Protocol-independent routing option configuration"; uses juniper-routing-options; } container multicast-snooping-options { description "Multicast snooping option configuration"; uses juniper-multicast-snooping-options; } container protocols { description "Routing protocol configuration"; uses juniper-protocols; } container policy-options { description "Policy option configuration"; uses juniper-policy-options; } container class-of-service { description "Class-of-service configuration"; uses juniper-class-of-service-options; } container firewall { description "Define a firewall configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container family { description "Protocol family"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container inet { description "Protocol family IPv4 for firewall filter"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list dialer-filter { key name; ordered-by user; description "Define an IPv4 dialer filter"; uses inet_dialer_filter; } list prefix-action { key name; ordered-by user; description "Define a prefix action"; uses prefix_action; } list filter { key name; ordered-by user; description "Define an IPv4 firewall filter"; uses inet_filter; } list simple-filter { key name; ordered-by user; description "Define an IPv4 firewall simple filter"; uses inet_simple_filter; } list service-filter { key name; ordered-by user; description "One or more IPv4 service filters"; uses inet_service_filter; } list fast-update-filter { key name; ordered-by user; description "One or more fast update filters"; uses inet_fuf; } } container inet6 { description "Protocol family IPv6 for firewall filter"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list dialer-filter { key name; ordered-by user; description "Define an IPv6 dialer filter"; uses inet6_dialer_filter; } list filter { key name; ordered-by user; description "Define an IPv6 firewall filter"; uses inet6_filter; } list service-filter { key name; ordered-by user; description "One or more IPv6 service filters"; uses inet6_service_filter; } list fast-update-filter { key name; ordered-by user; description "One or more fast update filters"; uses inet6_fuf; } } container mpls { description "Protocol family MPLS for firewall filter"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list dialer-filter { key name; ordered-by user; description "Define an mpls dialer filter"; uses mpls_dialer_filter; } list filter { key name; ordered-by user; description "(null)"; uses mpls_filter; } } container vpls { description "Protocol family VPLS for firewall filter"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list filter { key name; ordered-by user; description "(null)"; uses vpls_filter; } } container bridge { description "Protocol family BRIDGE for firewall filter"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list filter { key name; ordered-by user; description "(null)"; uses bridge_filter; } } container ccc { description "Protocol family CCC for firewall filter"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list filter { key name; ordered-by user; description "(null)"; uses ccc_filter; } } container any { description "Protocol-independent filter"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list filter { key name; ordered-by user; description "Define a protocol-independent filter"; uses any_filter; } } container ethernet-switching { description "Protocol family Ethernet Switching for firewall filter"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list filter { key name; ordered-by user; description "Define an Ethernet Switching firewall filter"; uses es_filter; } } } list policer { key name; ordered-by user; description "Policer template definition"; uses firewall_policer; } list flexible-match { key name; ordered-by user; description "Flexible packet match template definition"; uses firewall_flexible_match; } list tunnel-end-point { key name; ordered-by user; description "Tunnel end-point template definition"; uses tunnel_end_point; } list hierarchical-policer { key name; ordered-by user; description "Hierarchical policer template definition"; uses firewall_hierpolicer; } list interface-set { key name; ordered-by user; description "Interface set definition"; uses interface_set_type; } list load-balance-group { key name; ordered-by user; description "Load-balance group definition"; uses firewall_load_balance_group; } list atm-policer { key name; ordered-by user; description "Atm policer"; uses atm-policer-type; } list three-color-policer { key name; ordered-by user; description "Three-color policer"; uses three-color-policer-type; } list filter { key name; ordered-by user; description "Define an IPv4 firewall filter"; uses inet_filter; } } container access { description "Network access configuration"; uses juniper-access-options; } container routing-instances { description "Routing instance configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list instance { key name; description "(null)"; uses juniper-routing-instance; } } container bridge-domains { description "Bridge domain configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list domain { key name; description "(null)"; uses juniper-bridge-domains; } } container fabric { description "Fabric configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container routing-instances { description "Routing instance configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list instance { key name; description "(null)"; uses juniper-fabric-routing-instance; } } container routing-options { description "Fabric routing option configuration"; uses juniper-fabric-routing-options; } container protocols { description "Routing protocol configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container bgp { description "BGP options"; uses juniper-protocols-bgp; } } container administration { description "Options for users with administrative privileges"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container resources { description "Defines collections of resources"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list node-group { key name; ordered-by user; description "Defines a Node group"; leaf name { description "Node group identifier"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf network-domain { description "Set if Node group is a Network domain"; type empty; } list node-device { key name; description "A Node device in this Node group"; leaf name { description "Node device identifier or alias"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } container aliases { description "Aliases for items"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list node-device { key name; ordered-by user; description "Aliases of Node devices"; leaf name { description "The name of the item to be aliased"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf item-alias { description "Provide an alias name for this component"; type string { } mandatory true; } } list interconnect-device { key name; ordered-by user; description "Aliases of Interconnect devices"; leaf name { description "The name of the item to be aliased"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf item-alias { description "Provide an alias name for this component"; type string { } mandatory true; } } list director-device { key name; ordered-by user; description "Aliases of Director devices"; leaf name { description "The name of the item to be aliased"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf item-alias { description "Provide an alias name for this component"; type string { } mandatory true; } } } container virtual-chassis { description "Virtual chassis configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { uses juniper-virtual-chassis-traceoptions; } } } container switch-options { description "Options for default routing-instance of type virtual-switch"; uses juniper-def-rtb-switch-options; } container unified-edge { description "Unified edge configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container cos-cac { description "Unified Edge COS configuration"; uses juniper-unified-edge-cos-options; } list local-policies { key name; ordered-by user; description "Local policy profiles"; max-elements 8001; leaf name { description "Local policy profile name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf description { description "Text description of local policy"; type string; } leaf resource-threshold-profile { description "Resource threshold profile associated with the local policy"; type string; } leaf classifier-profile { description "QoS class profile associated with the local policy"; type string; } leaf cos-policy-profile { description "QoS policy profile associated with the local policy"; type string; } leaf roamer-classifier-profile { description "QoS classifier profile for roamers"; type string; } leaf roamer-cos-policy-profile { description "QoS policy profile for roamers"; type string; } leaf visitor-classifier-profile { description "QoS classifier profile for visitor"; type string; } leaf visitor-cos-policy-profile { description "QoS policy profile for visitor"; type string; } leaf traffic-class-qci-mapping-profile { description "Traffic class to qci mapping profile"; type string { length "1 .. 128"; } } leaf ul-bandwidth-pool { description "Bandwidth pool associated with the local policy"; type string; } leaf dl-bandwidth-pool { description "Bandwidth pool associated with the local policy"; type string; } } container aaa { description "AAA configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { uses aaa-traceoptions; } list mobile-profiles { key name; ordered-by user; description "AAA profile configuration"; uses aaa-profile; } } container diameter-profiles { description "Unified Edge Diameter application configurations"; uses mobile-diameter-profiles; } container gateways { description "Gateways configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container mobile-options { description "Mobile options"; uses unified-edge-mobile-options; } container pcef { description "PCEF configuration"; uses unified-edge-pcef; } container resource-management { description "Configure Resource Mangement Packet Steering Daemon"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container server { description "Configure Resource Mangement Packet Steering Daemon"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Resource Management Packet Steering Daemon trace options"; uses rmpsd-traceoptions-type; } } container client { description "Configure Resource Mangement Packet Steering Client"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Resource Management Packet Steering Client trace options"; uses rmps-clnt-traceoptions-type; } } } } container jsrc { description "JSRC partition configuration"; uses jsrc-options; } container applications { description "Define applications by protocol characteristics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list application { key name; ordered-by user; description "Define an application"; uses application_object; } list application-set { key name; ordered-by user; description "Define an application set"; uses application_set_object; } } container atm-vpn-address-test { presence "enable atm-vpn-address-test"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list source { description "(null)"; type ipprefix; } } container no-martian-address-test { presence "enable no-martian-address-test"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list address { description "Do not accept martian address"; type ipv4prefix; } } container ipv6-martian-address-test { presence "enable ipv6-martian-address-test"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list address { description "(null)"; type ipv6prefix; } } list allowed-proxy-pair-homogenous { key "local remote"; ordered-by user; description "List of local and remote proxy identity pairs"; leaf local { description "Local proxy identity"; type ipv4prefix-only; } leaf remote { description "Remote proxy identity"; type ipv4prefix-only; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container allow-iso-test { presence "enable allow-iso-test"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf iso-addr { description "(null)"; type ipprefix; } leaf iso-prefix { description "(null)"; type ipprefix; } leaf iso-sysid { description "(null)"; type ipprefix; } } container iso { presence "enable iso"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf iso-add { description "ISO Address"; type isoaddr; } leaf iso-prefix { description "ISO Prefix"; type isoprefix; } leaf iso-sysid { description "ISO sysid"; type isosysid; } } list attributes-match { key "from-event-attribute condition to-event-attribute"; ordered-by user; description "List of matching attributes for events"; leaf from-event-attribute { description "Attribute of event to compare"; type string; } leaf condition { description "Condition to apply for the two set of attributes"; type enumeration { enum equals { description "Attribute values should match"; } enum starts-with { description "Attribute value should start with the from event's attribute value"; } } } leaf to-event-attribute { description "Attribute of event to compare against"; type string; } } container load-update-test { presence "enable load-update-test"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list long-ctn { key name; ordered-by user; description "(null)"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list ord-ctn { key name; ordered-by user; description "(null)"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container ord-ctn-set-of-string { presence "enable ord-ctn-set-of-string"; description "Should be same as ord-ctn"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list id { description "(null)"; type string; } } list bas-ctn { key name; description "(null)"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list mult-ctn { key "id1"; ordered-by user; description "(null)"; leaf id1 { description "(null)"; type string; } choice id2 { case case_1 { leaf exact { description "(null)"; type empty; } } case case_2 { leaf longer { description "(null)"; type empty; } } case case_3 { leaf orlonger { description "(null)"; type empty; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } list ddl-test-export { key name; ordered-by user; description "(null)"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container simple { presence "enable simple"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf simple-no-keyword { description "(null)"; type string; } leaf int-attr { description "(null)"; type int32; } } container simple-oneliner { presence "enable simple-oneliner"; leaf int-attr { description "(null)"; type int32; } leaf str-attr { description "(null)"; type string; } } container simple-oneliner-plus { presence "enable simple-oneliner-plus"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf int-attr { description "(null)"; type int32; } leaf str-attr { description "(null)"; type string; } choice designation { case case_1 { leaf accept { description "(null)"; type empty; } } case case_2 { container discard { presence "enable discard"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf accounting { description "(null)"; type string; } } } } } container simple-oneliner-and-container { leaf int-attr { description "(null)"; type int32; } leaf-list destination { description "(null)"; type int32; } } list container { key name; ordered-by user; description "(null)"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf int-attr { description "(null)"; type int32; } } list container-homogeneous { key name; ordered-by user; description "(null)"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf int-attr { description "(null)"; type int32; } } leaf-list container-oneset { description "(null)"; type string; } list container-oneliner-plus { key name; ordered-by user; description "(null)"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf int-attr { description "(null)"; type int32; } leaf str-attr { description "(null)"; type string; } } list container-multi-ident { key "int-ident str-ident"; ordered-by user; description "(null)"; leaf int-ident { description "(null)"; type int32; } leaf str-ident { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf int-attr { description "(null)"; type int32; } leaf str-attr { description "(null)"; type string; } } container policy-algebra { presence "enable policy-algebra"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list policy { description "(null)"; type policy-algebra; } } } container diameter { presence "enable diameter"; description "Diameter protocol layer"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container origin { presence "enable origin"; description "Origin attributes of this diameter instance"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf realm { description "Origin realm of this diameter instance"; type string { length "1 .. 255"; } mandatory true; } leaf host { description "Origin hostof this diameter instance"; type string { length "1 .. 255"; } mandatory true; } } list network-element { key name; ordered-by user; description "Network element of this diameter instance"; leaf name { description "Name for this network element"; type string { length "1 .. 255"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list function { description "Diameter function associated with by this network element"; type enumeration { enum jsrc { description "Function to use SRC application"; } enum packet-triggered-subscribers { description "Function to control packet-triggered subscribers"; } enum gx-plus { description "Function to use GX-PLUS application"; } enum sd-3gpp { description "Function to use SD-3GPP application"; } } max-elements 3; } list peer { key name; ordered-by user; description "Peer associated with this network element"; leaf name { description "Name of a peer associated with this network element"; type string { length "1 .. 255"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf priority { description "Peer priority with this network element"; type uint32 { range "1 .. 65535"; } mandatory true; } } container forwarding { description "Forwarding configuration for this network-element"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list route { key name; ordered-by user; description "Routes associated with this network-element"; max-elements 256; leaf name { description "Name of a route associated with this network element"; type string { length "1 .. 255"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container function { description "Diameter function and partition associated with route"; leaf function-name { description "(null)"; type enumeration { enum jsrc { description "Function to use SRC application"; } enum packet-triggered-subscribers { description "Function to control packet-triggered subscribers"; } enum gx-plus { description "Function to use GX-PLUS application"; } enum sd-3gpp { description "Function to use SD-3GPP application"; } } mandatory true; } presence "enable function"; leaf partition { description "Diameter function partition name"; type string { length "1 .. 255"; } } } container destination { description "Destination for this route"; leaf realm { description "Diameter destination realm"; type string { length "1 .. 255"; } mandatory true; } presence "enable destination"; leaf host { description "Diameter destination host"; type string { length "1 .. 255"; } } } leaf metric { description "Metric for this route"; type uint32 { range "0 .. 255"; } mandatory true; } } } } list transport { key name; ordered-by user; description "Diameter transport configuration"; max-elements 31; leaf name { description "Name for this transport definition"; type string { length "1 .. 255"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf address { description "Source IP address for a peer"; type ipaddr; mandatory true; } choice instance { case case_1 { container logical-system { description "Logical system to be used by transport"; leaf logical-system-name { description "Name of logical system"; type string { } mandatory true; } presence "enable logical-system"; leaf routing-instance { description "Routing instance to be used by transport"; type string { } } } } case case_2 { leaf routing-instance { description "Routing instance of server to which to forward"; type string { } } } } } list peer { key name; ordered-by user; description "Diameter peer configuration"; max-elements 31; leaf name { description "Name for this Diameter peer"; type string { length "1 .. 255"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf address { description "IP Address of Diameter peer"; type ipaddr; mandatory true; } choice instance { case case_1 { container logical-system { description "Logical system to be used by transport"; leaf logical-system-name { description "Name of logical system"; type string { } mandatory true; } presence "enable logical-system"; leaf routing-instance { description "Routing instance to be used by transport"; type string { } } } } case case_2 { leaf routing-instance { description "Routing instance of server to which to forward"; type string { } } } } container connect-actively { presence "enable connect-actively"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf transport { description "Name of transport"; type string { length "1 .. 255"; } } leaf port { description "Peer port"; default "3868"; type uint16 { range "1 .. 65535"; } } } } } container poe { description "Power over Ethernet options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf management { description "Power management mode for Power over Ethernet"; default "static"; type enumeration { enum static { description "Static power allocation method"; } enum class { description "Class based power allocation method"; } enum high-power { description "High power allocation method"; } } } leaf guard-band { description "Guard band for Power over Ethernet"; default "0"; units "watts"; type uint32 { range "0 .. 19"; } } container notification-control { description "Notification control for Power over Ethernet traps"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list fpc { key name; ordered-by user; description "FPC slot number"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 10"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable Power over Ethernet notification"; type empty; } } } list interface { key name; ordered-by user; description "Interface configuration for Power over Ethernet"; leaf name { description "Name of interface"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable interface"; type empty; } leaf priority { description "Priority options"; default "low"; type enumeration { enum low { description "Low priority"; } enum high { description "High priority"; } } } leaf maximum-power { description "Maximum power"; default "15.4"; units "watts"; type decimal64 { fraction-digits 2; range "1 .. 30"; } } container telemetries { presence "enable telemetries"; description "Telemetries settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable telemetries"; type empty; } leaf interval { description "Interval at which data should be recorded"; default "5"; units "minutes"; type uint32 { range "1 .. 30"; } } leaf duration { description "Duration to continue recording of data"; default "1"; units "hours"; type uint32 { range "1 .. 24"; } } } } } container jnx-example { description "Example service configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Example service trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum init { description "Trace initialization events"; } enum configuration { description "Trace configuration events"; } enum routing-socket { description "Trace routing socket events"; } enum all { description "Trace everything"; } } } } } list jnx-example-data { key name; ordered-by user; description "Example data entries"; leaf name { description "Example data identifier"; type string { length "1 .. 127"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf description { description "General description of data"; type string { length "1 .. 127"; } } leaf type { description "Example data type"; default "skinny"; type enumeration { enum none { description "No type"; } enum fat { description "Fat data"; } enum skinny { description "Skinny data"; } } } leaf value { description "Example data value"; type string { length "1 .. 127"; } } } } container virtual-chassis { description "Virtual chassis configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container auto-sw-update { presence "enable auto-sw-update"; description "Auto software update"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf package-name { description "URL or pathname of software package"; type string { } } container ex-4200 { presence "enable ex-4200"; description "URL or pathname of EX-42xx software package"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf package-name { description "URL or pathname of software package"; type string { } } } container ex-4500 { presence "enable ex-4500"; description "URL or pathname of EX-45xx software package"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf package-name { description "URL or pathname of software package"; type string { } } } container ex-4300 { presence "enable ex-4300"; description "URL or pathname of EX-43xx software package"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf package-name { description "URL or pathname of software package"; type string { } } } container qfx-3 { presence "enable qfx-3"; description "URL or pathname of qfx-3 software package"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf package-name { description "URL or pathname of software package"; type string { } } } container qfx-5 { presence "enable qfx-5"; description "URL or pathname of qfx-5 software package"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf package-name { description "URL or pathname of software package"; type string { } } } } leaf preprovisioned { description "Only accept preprovisioned members"; type empty; } leaf auto-provisioned { description "Add and configure new line-card members automatically"; type empty; } leaf id { description "Virtual chassis identifier, of type ISO system-id"; type isosysid; } container graceful-restart { description "Configure graceful restart attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable graceful restart"; type empty; } } } } leaf no-split-detection { description "Disable split detection. This command is recommended to only be enabled in a 2 member setup"; type empty; } container traceoptions { uses juniper-virtual-chassis-traceoptions; } leaf heartbeat-timeout { description "Member's timeout period for receiving a heartbeat packet"; default "2"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf heartbeat-address { description "Peer member's IP address for sending heartbeat packet"; type ipaddr; } leaf locality-bias { description "Bias transit packets to egress local chassis of Virtual-Chassis"; type empty; } list member { key name; ordered-by user; description "Member of virtual chassis configuration"; leaf name { description "Member identifier"; type int32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf mastership-priority { description "Member's mastership priority"; type int32 { range "0 .. 255"; } } leaf role { description "Member's role"; default "line-card"; type enumeration { enum routing-engine { description "Member to assume role of routing engine"; } enum line-card { description "Member to assume role of line card"; } } } leaf serial-number { description "Member's serial number"; type string { length "1 .. 12"; } } leaf no-management-vlan { description "Disable management VLAN"; type empty; } leaf location { description "Member's location"; type string { length "1 .. 254"; } } } container mac-persistence-timer { description "How long to retain MAC address when member leaves virtual chassis"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf timer { description "MAC persistence time"; default "60"; units "minutes"; type uint32 { range "1 .. 60"; } } leaf disable { description "Disable MAC persistence timer"; type empty; } } container fast-failover { description "Fast failover mechanism"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ge { description "Fast failover on GE VC uplink ports (ring has to be formed)"; type empty; } leaf xe { description "Fast failover on XE VC uplink ports (ring has to be formed)"; type empty; } container vcp { description "Fast failover on VCP ports"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable"; type empty; } } } container vc-port { presence "enable vc-port"; description "Set vc ports lag hashing mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf lag-hash { description "Set vc ports lag hashing mode"; default "packet-based"; type enumeration { enum packet-based { description "Hashing based on packet"; } enum source-port-based { description "Hashing based on source port"; } } } } leaf vcp-no-hold-time { description "Set no hold time for vcp interfaces"; type empty; } } container vlans { description "VLAN configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list vlan { key name; description "Virtual LAN"; uses vlan-types; } } } grouping aaa-profile { description "AAA profile configuration"; leaf name { description "AAA profile name"; type string { length "1 .. 31"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Specify RADIUS options"; uses aaa-profile-radius; } } grouping aaa-profile-radius { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container authentication { description "Specify RADIUS authentication parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf network-element { description "The network-element used for authentication"; type string { length "1 .. 31"; } } } container accounting { description "Specify RADIUS accounting parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf network-element { description "The network-element used for accounting"; type string { length "1 .. 31"; } } leaf network-element-group { description "The network-element-group used for accounting"; type string { length "1 .. 31"; } } leaf send-accounting-on { description "Send accounting on message"; type empty; } container trigger { description "Specify when to send or not send interim updates"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-rat-change { description "Do not send interim-updates on RAT change"; type empty; } leaf no-sgw-change { description "Do not send interim-updates on SGW change"; type empty; } leaf no-qos-change { description "Do not send interim-updates on QOS change"; type empty; } leaf no-plmn-change { description "Do not send interim-updates on PLMN change"; type empty; } leaf no-user-location-information-change { description "No interim-updates on user location information change"; type empty; } leaf no-ms-timezone-change { description "No interim-updates on user location information change"; type empty; } leaf no-deferred-ipv4-address-update { description "No interim-updates on deferred IPv4 address update"; type empty; } leaf interim-interval { description "The interval between accounting updates"; units "minutes"; type uint32 { range "10 .. 1440"; } } } } container options { description "Specify RADIUS options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf nas-identifier-prefix { description "NAS identifier prefix to be used in RADIUS requests"; type string { length "1 .. 54"; } } leaf nas-ip-address { description "The NAS ip-address that will be used in RADIUS requests"; type ipv4addr; } leaf nas-port-type { description "The NAS port type that will be used in RADIUS requests"; default "virtual"; type enumeration { enum wireless { description "Use NAS port type value wireless in nas-port-type attribute"; } enum virtual { description "Use NAS port type value virtual in nas-port-type attribute"; } } } } container attributes { description "Specifies how RADIUS attributes have to be handled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container ignore { description "Ignores the specified attribute in RADIUS Access-Accept messages"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf output-filter { description "Ignore output-filter/egress-policy-name (VSA 26-11)"; type empty; } leaf input-filter { description "Ignore input-filter/ingress-policy-name (VSA 26-10)"; type empty; } leaf framed-ip-netmask { description "Ignore framed-ip-netmask (attribute 9)"; type empty; } } container exclude { description "Configures exclusion of attributes in RADIUS messages"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list accounting-authentic { description "Excludes RADIUS attribute 45, Acct-Authentic"; type enumeration { enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } enum accounting-interim { description "RADIUS Accounting-Interim Update message"; } } } leaf-list accounting-delay-time { description "Excludes RADIUS attribute 41, Acct-Delay-Time"; type enumeration { enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } enum accounting-interim { description "RADIUS Accounting-Interim Update message"; } } } leaf-list accounting-terminate-cause { description "Excludes RADIUS attribute 49, Acct-Terminate-Cause"; type enumeration { enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list called-station-id { description "Excludes RADIUS attribute 30, Called-Station-ID"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-interim { description "RADIUS Accounting-Interim Update message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list calling-station-id { description "Excludes RADIUS attribute 31, Calling-Station-ID"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-interim { description "RADIUS Accounting-Interim Update message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list event-time-stamp { description "Excludes RADIUS attribute 55, Event-Timestamp"; type enumeration { enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-interim { description "RADIUS Accounting-Interim Update message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list input-gigapackets { description "Excludes RADIUS attribute 26-42, Acct-Input-Gigapackets"; type enumeration { enum accounting-interim { description "RADIUS Accounting-Interim Update message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list input-gigawords { description "Excludes RADIUS attribute 52, Acct-Input-Gigawords"; type enumeration { enum accounting-interim { description "RADIUS Accounting-Interim Update message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list nas-identifier { description "Excludes RADIUS attribute 32, NAS-identifier"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list nas-ip-address { description "Excludes RADIUS attribute 4, NAS-IP-Address"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-on { description "RADIUS Accounting-On Message"; } enum accounting-off { description "RADIUS Accounting-Off message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-interim { description "RADIUS Accounting-Interim Update message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list nas-port-type { description "Excludes RADIUS attribute 61, NAS-Port-Type"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-interim { description "RADIUS Accounting-Interim Update message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list input-packets { description "Excludes RADIUS attribute 47, Acct-Input-Packets"; type enumeration { enum accounting-interim { description "RADIUS Accounting-Interim Update message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list output-packets { description "Excludes RADIUS attribute 48, Acct-Output-Packets"; type enumeration { enum accounting-interim { description "RADIUS Accounting-Interim Update message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list output-gigapackets { description "Excludes RADIUS attribute 26-43, Acct-Output-Gigapackets"; type enumeration { enum accounting-interim { description "RADIUS Accounting-Interim Update message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list output-gigawords { description "Excludes RADIUS attribute 53, Acct-Output-Gigawords"; type enumeration { enum accounting-interim { description "RADIUS Accounting-Interim Update message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list sgsn-mcc-mnc { description "Excludes RADIUS attribute 3GPP VSA 26-18, 3GPP-SGSN-MCC-MNC"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-interim { description "RADIUS Accounting-Interim Update message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list imeisv { description "Excludes RADIUS attribute 3GPP VSA 26-20, 3GPP-IMEISV"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } } } leaf-list imsi { description "Excludes RADIUS attribute 3GPP VSA 26-1, 3GPP-IMSI"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-interim { description "RADIUS Accounting-Interim Update message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list imsi-mcc-mnc { description "Excludes RADIUS attribute 3GPP VSA 26-8, 3GPP-IMSI-MCC-MNC"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-interim { description "RADIUS Accounting-Interim Update message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list user-location-info { description "Excludes RADIUS attribute 3GPP VSA 26-22, 3GPP-USER-LOCATION-INFO"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-interim { description "RADIUS Accounting-Interim Update message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list gprs-negotiated-qos { description "Excludes RADIUS attribute 3GPP VSA 26-5, 3GPP-GPRS-NEG-QOS"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-interim { description "RADIUS Accounting-Interim Update message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list ggsn-address { description "Excludes RADIUS attribute 3GPP VSA 26-7, 3GPP-GGSN-ADDRESS"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-interim { description "RADIUS Accounting-Interim Update message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list nsapi { description "Excludes RADIUS attribute 3GPP VSA 26-10, 3GPP-NSAPI"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-interim { description "RADIUS Accounting-Interim Update message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list selection-mode { description "Excludes RADIUS attribute 3GPP VSA 26-12, 3GPP-SELECTION-MODE"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-interim { description "RADIUS Accounting-Interim Update message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list charging-id { description "Excludes RADIUS attribute 3GPP VSA 26-2, 3GPP-CHARGING-ID"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-interim { description "RADIUS Accounting-Interim Update message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list all-3gpp { description "Excludes all 3GPP attributes"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-interim { description "RADIUS Accounting-Interim Update message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } } } } grouping aaa-traceoptions { description "Trace options related to AAA operation"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum init { description "Trace initialization events"; } enum config { description "Trace configuration events"; } enum general { description "Trace general events"; } enum request { description "Trace requests"; } enum response { description "Trace response"; } enum high-availability { description "Trace high availability events"; } enum debug { description "Trace debug internal events"; } enum request-in { description "Trace Incoming Diameter request events"; } enum request-out { description "Trace Outgoing Diameter request events"; } enum response-in { description "Trace Incoming Diameter response events"; } enum response-out { description "Trace Outgoing Diameter response events"; } enum all { description "Trace everything"; } } } } list protocol { key name; ordered-by user; description "AAA Protocol to trace"; leaf name { description "(null)"; type enumeration { enum radius { description "Trace radius protocols only"; } enum diameter { description "Trace diameter protocols only"; } enum all { description "Trace both radius and protocols"; } } } } } grouping aacl_rule_object { leaf name { description "Rule name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf dynamic { description "Make rule dynamic"; type empty; } leaf match-direction { description "Direction for which the rule match is applied"; type enumeration { enum input { description "Match on input to interface"; } enum output { description "Match on output from interface"; } enum input-output { description "Match on input to or output from interface"; } } } list term { key name; ordered-by user; description "One or more terms in AACL rule"; leaf name { description "Term name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Match criteria"; uses aacl_match_object; } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf forwarding-class { description "Forwarding class assigned to outgoing packets"; type string { } } leaf count { description "Count packets by application or Application group"; type enumeration { enum none { description "Do not count any application or group"; } enum application { description "Count by application name"; } enum application-group { description "Count by application group"; } enum application-group-any { description "Count all application groups as a single total in group 'any'"; } enum nested-application { description "Count by nested application name"; } } } leaf log { description "Log session information for this application match"; type enumeration { enum none { description "Do not log session information"; } enum session-start { description "Log session start information for this match"; } enum session-start-end { description "Log session start/end information for this match"; } enum session-start-end-no-stats { description "Log session start/end information with no stats"; } enum session-start-interim-end { description "Log session start/interim/end information for this match"; } enum session-interim-end { description "Log session interim/end information for this match"; } enum session-end { description "Log session end information for this match"; } } } leaf police { description "Policer name"; type string { } } choice designation { case case_1 { leaf accept { description "Accept the packet"; type empty; } } case case_2 { leaf discard { description "Discard the packet"; type empty; } } } } } } grouping aacl_match_object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list source-address { key name; ordered-by user; description "Match IP source address"; uses sfw_addr_object; } list destination-address { key name; ordered-by user; description "Match IP destination address"; uses sfw_addr_object; } list source-address-range { key "low high"; ordered-by user; description "Match IP source address range"; leaf low { description "Lower limit of address range"; type ipaddr; } leaf high { description "Upper limit of address range"; type ipaddr; } leaf except { description "Match address not in this prefix"; type empty; } } list source-prefix-list { key name; ordered-by user; description "One or more named lists of source prefixes to match"; leaf name { description "Name of prefix list to match against"; type string; } leaf except { description "Name of prefix list not to match against"; type empty; } } list destination-address-range { key "low high"; ordered-by user; description "Match IP destination address range"; leaf low { description "Lower limit of address range"; type ipaddr; } leaf high { description "Upper limit of address range"; type ipaddr; } leaf except { description "Match address not in this prefix"; type empty; } } list destination-prefix-list { key name; ordered-by user; description "One or more named lists of destination prefixes to match"; leaf name { description "Name of prefix list to match against"; type string; } leaf except { description "Name of prefix list not to match against"; type empty; } } choice app-rule { case case_1 { leaf application-group-any { description "Use to wildcard or match any application group"; type empty; } } case case_2 { leaf application-unknown { description "Use to specify unknown application as the match criteria."; type empty; } } case case_3 { leaf nested-application-unknown { description "Use to specify unknown nested application as the match criteria."; type empty; } } case case_4 { leaf-list applications { description "Match one or more applications"; type string; } } case case_5 { leaf-list nested-applications { description "Match one or more nested-applications"; type string; } } case case_6 { leaf-list application-groups { description "Match one or more applications"; type string; } } } } grouping advisory_options_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf upstream-rate { description "Recommended upstream shaping rate"; units "bits per second"; type string; } leaf downstream-rate { description "Recommended downstream shaping rate"; units "bits per second"; type string; } } grouping aggregate-load-balance { description "Load balancing parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice adaptive_option { case case_1 { leaf per-packet { description "Per packet"; type empty; } } case case_2 { leaf no-adaptive { description "Disable adaptive"; type empty; } } case case_3 { container adaptive { presence "enable adaptive"; description "Enable adaptive load balancing by re-programming selector table"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf tolerance { description "Target tolerance in percentage (default 20%)"; units "percent"; type uint32 { range "1 .. 100"; } } leaf pps { description "Adaptive load balance based on packet per second (default bps)"; type empty; } leaf scan-interval { description "Scan interval for multiple of 30 seconds (default 30 seconds)"; type uint32 { range "1 .. 5"; } } } } } } grouping any_filter { leaf name { description "Filter name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interface-specific { description "Defined counters are interface specific"; type empty; } list term { key name; ordered-by user; description "Define a firewall term"; leaf name { description "Term name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Define match criteria"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list interface { key name; ordered-by user; description "Match interface name"; uses match_interface_object_oam; } list interface-set { key name; ordered-by user; description "Match interface in set"; uses match_interface_set_object; } choice packet-length_choice { case case_1 { leaf-list packet-length { description "Range of values"; type string { } } } case case_2 { leaf-list packet-length-except { description "Range of values"; type string { } } } } choice forwarding-class_choice { case case_1 { leaf-list forwarding-class { description "String name"; type string { } } } case case_2 { leaf-list forwarding-class-except { description "String name"; type string { } } } } choice loss-priority_choice { case case_1 { leaf-list loss-priority { description "(null)"; type enumeration { enum low { description "Loss priority low"; } enum high { description "Loss priority high"; } enum medium-low { description "Loss priority medium-low"; } enum medium-high { description "Loss priority medium-high"; } } } } case case_2 { leaf-list loss-priority-except { description "(null)"; type enumeration { enum low { description "Loss priority low"; } enum high { description "Loss priority high"; } enum medium-low { description "Loss priority medium-low"; } enum medium-high { description "Loss priority medium-high"; } } } } } } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice policer-choice { case case_1 { leaf policer { description "Name of policer to use to rate-limit traffic"; type string { } } } case case_2 { container three-color-policer { description "Police the packet using a three-color-policer"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice type-choice { case case_1 { leaf single-rate { description "Name of single-rate three-color policer to use to rate-limit traffic"; type string { } } } case case_2 { leaf two-rate { description "Name of two-rate three-color policer to use to rate-limit traffic"; type string { } } } } } } case case_3 { leaf hierarchical-policer { description "Name of hierarchical policer to use to rate-limit traffic"; type string { } } } } leaf count { description "Count the packet in the named counter"; type string { } } leaf loss-priority { description "Classify packet to loss-priority"; type enumeration { enum low { description "Loss priority low"; } enum high { description "Loss priority high"; } enum medium-low { description "Loss priority medium-low"; } enum medium-high { description "Loss priority medium-high"; } } } leaf forwarding-class { description "Classify packet to forwarding class"; type string { } } choice designation { case case_1 { leaf accept { description "Accept the packet"; type empty; } } case case_2 { leaf discard { description "Discard the packet"; type empty; } } case case_3 { leaf next { description "Continue to next term in a filter"; type enumeration { enum term { description "Continue to next term in a filter"; } } } } } choice policy-map-choice { case case_1 { leaf clear-policy-map { description "Clear the policy marking"; type empty; } } case case_2 { leaf policy-map { description "Policy map action"; type string { } } } } leaf port-mirror-instance { description "Port-mirror the packet to specified instance"; type string { } } leaf port-mirror { description "Port-mirror the packet"; type empty; } container encapsulate { presence "enable encapsulate"; description "Send to a tunnel"; leaf tunnel-end-point { description "Name of the tunnel end point"; type string { } mandatory true; } } } } leaf interface-shared { description "Filter is interface-shared"; type empty; } } grouping application-ddos-type { description "Define application distributed denial-of-service attack"; leaf name { description "Application name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf service { description "Service name"; type string; mandatory true; } leaf connection-rate-threshold { description "Connection rate threshold"; type uint32 { range "1 .. 400000"; } mandatory true; } list context { key name; ordered-by user; description "List of contexts"; leaf name { description "Context-name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf hit-rate-threshold { description "Context hit rate threshold"; type uint32 { range "1 .. 2500000000"; } mandatory true; } leaf value-hit-rate-threshold { description "Context value hit rate threshold"; type uint32 { range "1 .. 2500000000"; } mandatory true; } leaf max-context-values { description "Monitor top n context values only"; type uint32 { range "1 .. 10000"; } } leaf time-binding-count { description "Time binding count for source address"; type uint32 { range "2 .. 50000"; } } leaf time-binding-period { description "Time binding period (seconds)"; type uint32 { range "1 .. 3600"; } } leaf-list exclude-context-values { description "List of patterns for exclusion"; type string; } } } grouping application_object { leaf name { description "Application name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf application-protocol { description "Application protocol type"; type enumeration { enum bootp { description "Bootstrap protocol"; } enum dce-rpc { description "DCE RPC"; } enum dce-rpc-portmap { description "DCE RPC portmap"; } enum dns { description "Domain Name Service"; } enum exec { description "Remote Execution Protocol"; } enum ftp { description "File Transfer Protocol"; } enum gprs-gtp-c { description "GPRS Tunneling Control Plane"; } enum gprs-gtp-u { description "GPRS Tunneling User Plane"; } enum gprs-gtp-v0 { description "GPRS Tunneling Version 0"; } enum gprs-sctp { description "GPRS Stream Control Protocol"; } enum h323 { description "H.323"; } enum icmp { description "ICMP"; } enum icmpv6 { description "ICMPv6"; } enum ignore { description "Ignore application type"; } enum iiop { description "Internet Inter-ORB Protocol"; } enum ike-esp-nat { description "IKE/ESP with NAT"; } enum ip { description "IP"; } enum login { description "Login"; } enum mgcp-ca { description "MGCP-CA"; } enum mgcp-ua { description "MGCP-UA"; } enum ms-rpc { description "Microsoft RPC"; } enum netbios { description "NetBIOS"; } enum netshow { description "NetShow"; } enum pptp { description "Point-to-Point Tunneling Protocol"; } enum q931 { description "Q.931"; } enum ras { description "RAS"; } enum realaudio { description "RealAudio"; } enum rpc { description "RPC"; } enum rpc-portmap { description "RPC portmap"; } enum rsh { description "Remote Shell"; } enum rtsp { description "Real Time Streaming Protocol"; } enum sccp { description "Skinny Client Control Protocol"; } enum sip { description "Session Initiation Protocol"; } enum shell { description "Shell"; } enum snmp { description "SNMP"; } enum sqlnet { description "SQLNet"; } enum sqlnet-v2 { description "Oracle SQL*Net Version 2"; } enum sun-rpc { description "Sun Microsystems RPC"; } enum talk { description "Talk Program"; } enum tftp { description "Trivial File Transfer Protocol"; } enum traceroute { description "Traceroute"; } enum winframe { description "WinFrame"; } } } leaf protocol { description "Match IP protocol type"; type string; } leaf source-port { description "Match TCP/UDP source port"; type string; } leaf destination-port { description "Match TCP/UDP destination port"; type string; } leaf ether-type { description "Match ether type"; type string { } } leaf snmp-command { description "Match SNMP command"; type enumeration { enum get { description "Get request"; } enum get-next { description "Get-next request"; } enum get-response { description "Get response"; } enum set { description "Set request"; } enum trap { description "Trap"; } } } leaf icmp-type { description "Match ICMP message type"; type string; } leaf icmp6-type { description "Match ICMP6 message type"; type string; } leaf icmp-code { description "Match ICMP message code"; type string; } leaf icmp6-code { description "Match ICMP6 message code"; type string; } leaf ttl-threshold { description "Traceroute TTL threshold"; type uint8; } leaf rpc-program-number { description "Match range of RPC program numbers"; type string { } } leaf uuid { description "Match universal unique identifier for DCE RPC objects"; type string { } } leaf inactivity-timeout { description "Application-specific inactivity timeout"; units "seconds"; type string; } leaf learn-sip-register { description "Learn potential incoming SIP calls by inspecting the SIP register method"; type empty; } leaf sip-call-hold-timeout { description "SIP flow timeout when call is put on hold"; units "seconds"; type uint32 { range "0 .. 36000"; } } choice dns-choice { case case_1 { leaf do-not-translate-AAAA-query-to-A-query { description "Knob to control the translation of AAAA query to A query"; type empty; } } case case_2 { leaf do-not-translate-A-query-to-AAAA-query { description "Knob to control the translation of A query to AAAA query"; type empty; } } } } grouping application_set_object { leaf name { description "Application set name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf description { description "Text description of application set"; type string { length "1 .. 900"; } } list application { key name; ordered-by user; description "Application to be included in the set"; leaf name { description "Application name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list application-set { key name; ordered-by user; description "Define an application-set"; leaf name { description "Define an application-set name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } grouping aps_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice aps_mode { case case_1 { leaf working-circuit { description "Working circuit group name"; type string; } } case case_2 { leaf protect-circuit { description "Protect circuit group name"; type string; } } } leaf annex-b { description "Annex-b mode"; type empty; } leaf wait-to-restore-time { description "Circuit wait-to-restore time for annex-b"; units "seconds"; type uint32 { range "1 .. 4294967295"; } } leaf preserve-interface { description "Preserve interface state for fast failover"; type empty; } leaf neighbor { description "Neighbor address"; type ipv4addr; } leaf paired-group { description "Name of paired APS group"; type string; } container authentication-key { presence "enable authentication-key"; description "Authentication parameters"; leaf auth_key { description "Authentication key"; type unreadable; mandatory true; } } leaf switching-mode { description "APS switching mode"; type enumeration { enum bidirectional { description "Bidirectional"; } enum unidirectional { description "Unidirectional"; } } } leaf advertise-interval { description "Advertise interval"; units "milliseconds"; type uint32 { range "1 .. 65534"; } } leaf hold-time { description "Hold time"; units "milliseconds"; type uint32 { range "1 .. 65534"; } } leaf revert-time { description "Circuit revert time"; units "seconds"; type uint32 { range "0 .. 65534"; } } leaf break-before-make { description "Ensure only one interface is active at a time"; type empty; } leaf no-break-before-make { description "Ensure only one interface is active at a time"; type empty; } choice manual_mode { case case_1 { leaf request { description "Request circuit state"; type enumeration { enum protect { description "Request protect circuit"; } enum working { description "Request working circuit"; } } } } case case_2 { leaf force { description "Force circuit state"; type enumeration { enum protect { description "Force protect circuit"; } enum working { description "Force working circuit"; } } } } case case_3 { leaf lockout { description "Lockout protection"; type empty; } } } leaf fast-aps-switch { description "Fast aps switch"; type empty; } } grouping atm-policer-type { description "Atm policer"; leaf name { description "Policer name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf logical-interface-policer { description "Policer is logical interface policer"; type empty; } leaf atm-service { description "ATM service category"; type enumeration { enum cbr { description "Constant bit rate"; } enum rtvbr { description "Real-time variable bit rate"; } enum nrtvbr { description "Non-real-time variable bit rate"; } enum ubr { description "Unspecified bit rate"; } } } leaf peak-rate { description "ATM Peak Cell Rate (PCR)"; units "cps"; type string; } leaf sustained-rate { description "ATM Sustained Cell Rate (SCR)"; units "cps"; type string; } leaf max-burst-size { description "ATM Maximum Burst Size (MBS)"; units "cells"; type uint64 { range "1 .. 4000"; } } leaf cdvt { description "Cell Delay Variation Tolerance"; units "microseconds"; type string; } leaf policing-action { description "Policing action"; type enumeration { enum count { description "Update counters"; } enum discard { description "Discard non-conforming cells (CBR.1/VBR.1/UBR.1)"; } enum discard-tag { description "Discard PCR non-conforming and tag SCR non-conforming cells (VBR.3/UBR.2)"; } } } } grouping auto_configure_vlan_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container stacked-vlan-ranges { presence "enable stacked-vlan-ranges"; description "Stacked Vlan Range configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list dynamic-profile { key name; ordered-by user; description "Attach dynamic-profile to ranges"; max-elements 16; leaf name { description "Profile name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list accept { key name; ordered-by user; description "Configure accepted packet types"; uses auto_configure_packet_types; } list ranges { key name; ordered-by user; description "Configure interface based on stacked-vlan range"; leaf name { description "Stacked-vlan range: [any | -],[any | -]"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } container override { presence "enable override"; description "SVLAN profile override specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list outer-tag { key name; ordered-by user; description "Specify pair of SVLAN tags for profile override"; max-elements 8; leaf name { description "Stacked-vlan outer tag range to be overridden"; type uint32 { range "1 .. 4094"; } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf inner-tag { description "Stacked-vlan inner tag to be overridden"; type uint32 { range "1 .. 4094"; } mandatory true; } leaf dynamic-profile { description "Dynamic profile to override with"; type string; mandatory true; } } } container authentication { description "Auto-configure stacked VLAN authentication"; uses auto_configure_authentication_type; } container access-profile { description "Auto-configure stacked VLAN access profile"; leaf access-profile-name { description "Access profile name"; type string { length "1 .. 64"; } } } } container vlan-ranges { presence "enable vlan-ranges"; description "Vlan Range configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list dynamic-profile { key name; ordered-by user; description "Attach dynamic-profile to ranges"; max-elements 16; leaf name { description "Profile name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list accept { key name; ordered-by user; description "Configure accepted packet types"; uses auto_configure_packet_types; } list ranges { key name; ordered-by user; description "Configure interface based on vlan range"; leaf name { description "Vlan range: [any | -]"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } container override { presence "enable override"; description "VLAN profile override specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list tag { key name; ordered-by user; description "Specify VLAN tag for profile override"; max-elements 8; leaf name { description "Vlan tag to be overridden"; type uint32 { range "1 .. 4094"; } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf dynamic-profile { description "Dynamic profile to override with"; type string; mandatory true; } } } container authentication { description "Auto-configure VLAN authentication"; uses auto_configure_authentication_type; } container access-profile { description "Auto-configure VLAN access profile"; leaf access-profile-name { description "Access profile name"; type string { length "1 .. 64"; } } } } leaf remove-when-no-subscribers { description "Requests auto-deletion of interface when not in use by subscribers"; type empty; } } grouping auto_configure_authentication_type { description "Autoconf VLAN authentication"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list packet-types { key name; ordered-by user; description "Configure accepted packet types for authentication"; uses auto_configure_packet_types; } leaf password { description "Username password"; type string { length "1 .. 64"; } } container username-include { description "Username options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf delimiter { description "Delimiter/separator character"; type string { length 1; } } leaf domain-name { description "Domain name"; type string { length "1 .. 64"; } } leaf user-prefix { description "User defined prefix"; type string { length "1 .. 64"; } } leaf mac-address { description "Include MAC address"; type empty; } container option-82 { presence "enable option-82"; description "Include option 82"; leaf circuit-id { description "Include option 82 circuit-id (sub option 1)"; type empty; } leaf remote-id { description "Include option 82 remote-id (sub option 2)"; type empty; } } leaf option-18 { description "Include option 18 for dhcp-v6"; type empty; } leaf option-37 { description "Include option 37 for dhcp-v6"; type empty; } leaf circuit-type { description "Include circuit type"; type empty; } leaf radius-realm { description "Radius realm name"; type string { length "1 .. 64"; } } leaf interface-name { description "Interface name"; type empty; } } } grouping auto_configure_packet_types { leaf name { description "(null)"; type enumeration { enum inet { description "Family inet"; } enum inet6 { description "Family inet6"; } enum pppoe { description "PPPoE Discover"; } enum dhcp-v4 { description "DHCP v4 Discover only"; } enum dhcp-v6 { description "DHCP v6 Packets only"; } enum any { description "Any packets"; } } } } grouping bgp-logical-system { description "Logical systems configuration for rpm"; leaf name { description "Logical system name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list routing-instances { key name; description "Routing instances"; uses bgp-routing-instances; } } grouping bgp-routing-instances { description "Routing-instance configuration for rpm"; leaf name { description "Routing instance name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } grouping bridge_filter { description "Define a BRIDGE firewall filter"; leaf name { description "Filter name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list accounting-profile { description "Accounting profile name"; type string; } leaf interface-specific { description "Defined counters are interface specific"; type empty; } leaf physical-interface-filter { description "Filter is physical interface filter"; type empty; } list term { key name; ordered-by user; description "Define a firewall term"; leaf name { description "Term name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf filter { description "Filter to include"; type string { } } container from { description "Define match criteria"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice interface-group_choice { case case_1 { leaf-list interface-group { description "Range of values"; type string; } } case case_2 { leaf-list interface-group-except { description "Range of values"; type string; } } } choice ether-type_choice { case case_1 { leaf-list ether-type { description "(null)"; type string; } } case case_2 { leaf-list ether-type-except { description "(null)"; type string; } } } choice vlan-ether-type_choice { case case_1 { leaf-list vlan-ether-type { description "(null)"; type string; } } case case_2 { leaf-list vlan-ether-type-except { description "(null)"; type string; } } } list destination-mac-address { key name; ordered-by user; description "Destination MAC address"; uses firewall_mac_addr_object; } list source-mac-address { key name; ordered-by user; description "Source MAC address"; uses firewall_mac_addr_object; } choice forwarding-class_choice { case case_1 { leaf-list forwarding-class { description "String name"; type string { } } } case case_2 { leaf-list forwarding-class-except { description "String name"; type string { } } } } choice loss-priority_choice { case case_1 { leaf-list loss-priority { description "(null)"; type enumeration { enum low { description "Loss priority low"; } enum high { description "Loss priority high"; } enum medium-low { description "Loss priority medium-low"; } enum medium-high { description "Loss priority medium-high"; } } } } case case_2 { leaf-list loss-priority-except { description "(null)"; type enumeration { enum low { description "Loss priority low"; } enum high { description "Loss priority high"; } enum medium-low { description "Loss priority medium-low"; } enum medium-high { description "Loss priority medium-high"; } } } } } choice learn-vlan-id_choice { case case_1 { leaf-list learn-vlan-id { description "Range of values"; type string; } } case case_2 { leaf-list learn-vlan-id-except { description "Range of values"; type string; } } } choice learn-vlan-1p-priority_choice { case case_1 { leaf-list learn-vlan-1p-priority { description "802.1p priority value 0-7"; type uint32 { range "0 .. 7"; } } } case case_2 { leaf-list learn-vlan-1p-priority-except { description "802.1p priority value 0-7"; type uint32 { range "0 .. 7"; } } } } choice user-vlan-id_choice { case case_1 { leaf-list user-vlan-id { description "Range of values"; type string; } } case case_2 { leaf-list user-vlan-id-except { description "Range of values"; type string; } } } choice user-vlan-1p-priority_choice { case case_1 { leaf-list user-vlan-1p-priority { description "802.1p priority value 0-7"; type uint32 { range "0 .. 7"; } } } case case_2 { leaf-list user-vlan-1p-priority-except { description "802.1p priority value 0-7"; type uint32 { range "0 .. 7"; } } } } choice learn-vlan-dei_choice { case case_1 { leaf-list learn-vlan-dei { description "DEI value 0-1"; type uint32 { range "0 .. 1"; } } } case case_2 { leaf-list learn-vlan-dei-except { description "DEI value 0-1"; type uint32 { range "0 .. 1"; } } } } choice traffic-type_choice { case case_1 { leaf-list traffic-type { description "(null)"; type enumeration { enum broadcast { description "Packets with broadcast ethernet address"; } enum multicast { description "Packets with multicast ethernet address"; } enum unknown-unicast { description "Packets for which destination ethernet address has not been learnt"; } enum known-unicast { description "Packets for which destination ethernet address has been learnt"; } } } } case case_2 { leaf-list traffic-type-except { description "(null)"; type enumeration { enum broadcast { description "Packets with broadcast ethernet address"; } enum multicast { description "Packets with multicast ethernet address"; } enum unknown-unicast { description "Packets for which destination ethernet address has not been learnt"; } enum known-unicast { description "Packets for which destination ethernet address has been learnt"; } } } } } list ip-source-address { key name; ordered-by user; description "Match IP source address"; uses firewall_addr_object; } list ip-destination-address { key name; ordered-by user; description "Match IP destination address"; uses firewall_addr_object; } list ip-address { key name; ordered-by user; description "Match IP source or destination address"; uses firewall_addr_object; } choice ip-protocol_choice { case case_1 { leaf-list ip-protocol { description "(null)"; type string; } } case case_2 { leaf-list ip-protocol-except { description "(null)"; type string; } } } choice dscp_choice { case case_1 { leaf-list dscp { description "(null)"; type string; } } case case_2 { leaf-list dscp-except { description "(null)"; type string; } } } choice ip-precedence_choice { case case_1 { leaf-list ip-precedence { description "(null)"; type string; } } case case_2 { leaf-list ip-precedence-except { description "(null)"; type string; } } } choice source-port_choice { case case_1 { leaf-list source-port { description "(null)"; type string; } } case case_2 { leaf-list source-port-except { description "(null)"; type string; } } } choice destination-port_choice { case case_1 { leaf-list destination-port { description "(null)"; type string; } } case case_2 { leaf-list destination-port-except { description "(null)"; type string; } } } choice port_choice { case case_1 { leaf-list port { description "(null)"; type string; } } case case_2 { leaf-list port-except { description "(null)"; type string; } } } leaf tcp-flags { description "Match TCP flags"; type string; } choice icmp-type_choice { case case_1 { leaf-list icmp-type { description "(null)"; type string; } } case case_2 { leaf-list icmp-type-except { description "(null)"; type string; } } } choice icmp-code_choice { case case_1 { leaf-list icmp-code { description "(null)"; type string; } } case case_2 { leaf-list icmp-code-except { description "(null)"; type string; } } } choice igmp-type_choice { } choice igmp-code_choice { } list interface { key name; ordered-by user; description "Match interface name"; uses match_interface_object; } list interface-set { key name; ordered-by user; description "Match interface in set"; uses match_interface_set_object; } list source-prefix-list { key name; ordered-by user; description "Match IP source prefixes in named list"; uses firewall_prefix_list; } list destination-prefix-list { key name; ordered-by user; description "Match IP destination prefixes in named list"; uses firewall_prefix_list; } list prefix-list { key name; ordered-by user; description "Match IP source or destination prefixes in named list"; uses firewall_prefix_list; } choice isid_choice { case case_1 { leaf-list isid { description "Range of values"; type string; } } case case_2 { leaf-list isid-except { description "Range of values"; type string; } } } choice isid-priority-code-point_choice { case case_1 { leaf-list isid-priority-code-point { description "802.1p priority value 0-7"; type uint32 { range "0 .. 7"; } } } case case_2 { leaf-list isid-priority-code-point-except { description "802.1p priority value 0-7"; type uint32 { range "0 .. 7"; } } } } choice isid-dei_choice { case case_1 { leaf-list isid-dei { description "DEI value 0-1"; type uint32 { range "0 .. 1"; } } } case case_2 { leaf-list isid-dei-except { description "DEI value 0-1"; type uint32 { range "0 .. 1"; } } } } list ipv6-destination-address { key name; ordered-by user; description "Match IPv6 destination address"; uses firewall_addr6_object; } list ipv6-source-address { key name; ordered-by user; description "Match IPv6 source address"; uses firewall_addr6_object; } list ipv6-address { key name; ordered-by user; description "Match IPv6 address"; uses firewall_addr6_object; } choice ipv6-next-header_choice { case case_1 { leaf-list ipv6-next-header { description "(null)"; type string; } } case case_2 { leaf-list ipv6-next-header-except { description "(null)"; type string; } } } choice ipv6-payload-protocol_choice { case case_1 { leaf-list ipv6-payload-protocol { description "(null)"; type string; } } case case_2 { leaf-list ipv6-payload-protocol-except { description "(null)"; type string; } } } choice ipv6-traffic-class_choice { case case_1 { leaf-list ipv6-traffic-class { description "(null)"; type string; } } case case_2 { leaf-list ipv6-traffic-class-except { description "(null)"; type string; } } } list ipv6-source-prefix-list { key name; ordered-by user; description "Match IPV6 source prefixes in named list"; uses firewall_prefix_list; } list ipv6-destination-prefix-list { key name; ordered-by user; description "Match IPV6 destination prefixes in named list"; uses firewall_prefix_list; } list ipv6-prefix-list { key name; ordered-by user; description "Match IP source or destination prefixes in named list"; uses firewall_prefix_list; } choice flex-mask_choice { case case_1 { container flexible-match-mask { description "Match flexible mask"; uses match_L2_flexible_mask; } } } choice flex-range_choice { case case_1 { container flexible-match-range { description "Match flexible range"; uses match_L2_flexible_range; } } } } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice policer-choice { case case_1 { leaf policer { description "Name of policer to use to rate-limit traffic"; type string { } } } case case_2 { container three-color-policer { description "Police the packet using a three-color-policer"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice type-choice { case case_1 { leaf single-rate { description "Name of single-rate three-color policer to use to rate-limit traffic"; type string { } } } case case_2 { leaf two-rate { description "Name of two-rate three-color policer to use to rate-limit traffic"; type string { } } } } } } case case_3 { leaf hierarchical-policer { description "Name of hierarchical policer to use to rate-limit traffic"; type string { } } } } leaf count { description "Count the packet in the named counter"; type string { } } leaf loss-priority { description "Packet's loss priority"; type enumeration { enum low { description "Loss priority low"; } enum high { description "Loss priority high"; } enum medium-low { description "Loss priority medium-low"; } enum medium-high { description "Loss priority medium-high"; } } } leaf forwarding-class { description "Classify packet to forwarding class"; type string { } } choice designation { case case_1 { leaf accept { description "Accept the packet"; type empty; } } case case_2 { leaf discard { description "Discard the packet"; type empty; } } case case_3 { leaf next { description "Continue to next term in a filter"; type enumeration { enum term { description "Continue to next term in a filter"; } } } } } leaf port-mirror-instance { description "Port-mirror the packet to specified instance"; type string { } } leaf port-mirror { description "Port-mirror the packet"; type empty; } leaf next-hop-group { description "Use specified next-hop group"; type string; } choice policy-map-choice { case case_1 { leaf clear-policy-map { description "Clear the policy marking"; type empty; } } case case_2 { leaf policy-map { description "Policy map action"; type string { } } } } leaf log { description "Log the packet"; type empty; } leaf syslog { description "System log (syslog) information about the packet"; type empty; } } } leaf instance-shared { description "Filter is routing-instance shared"; type empty; } } grouping ccc_filter { description "Define a CCC firewall filter"; leaf name { description "Filter name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list accounting-profile { description "Accounting profile name"; type string; } leaf interface-specific { description "Any counters defined will be interface specific"; type empty; } leaf physical-interface-filter { description "Filter is physical interface filter"; type empty; } list term { key name; ordered-by user; description "Define a firewall term"; leaf name { description "Term name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf filter { description "Filter to include"; type string { } } container from { description "Define match criteria"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice interface-group_choice { case case_1 { leaf-list interface-group { description "Range of values"; type string; } } case case_2 { leaf-list interface-group-except { description "Range of values"; type string; } } } choice forwarding-class_choice { case case_1 { leaf-list forwarding-class { description "String name"; type string { } } } case case_2 { leaf-list forwarding-class-except { description "String name"; type string { } } } } choice loss-priority_choice { case case_1 { leaf-list loss-priority { description "(null)"; type enumeration { enum low { description "Loss priority low"; } enum high { description "Loss priority high"; } enum medium-low { description "Loss priority medium-low"; } enum medium-high { description "Loss priority medium-high"; } } } } case case_2 { leaf-list loss-priority-except { description "(null)"; type enumeration { enum low { description "Loss priority low"; } enum high { description "Loss priority high"; } enum medium-low { description "Loss priority medium-low"; } enum medium-high { description "Loss priority medium-high"; } } } } } choice learn-vlan-1p-priority_choice { case case_1 { leaf-list learn-vlan-1p-priority { description "802.1p priority value 0-7"; type uint32 { range "0 .. 7"; } } } case case_2 { leaf-list learn-vlan-1p-priority-except { description "802.1p priority value 0-7"; type uint32 { range "0 .. 7"; } } } } choice user-vlan-1p-priority_choice { case case_1 { leaf-list user-vlan-1p-priority { description "802.1p priority value 0-7"; type uint32 { range "0 .. 7"; } } } case case_2 { leaf-list user-vlan-1p-priority-except { description "802.1p priority value 0-7"; type uint32 { range "0 .. 7"; } } } } list destination-mac-address { key name; ordered-by user; description "Destination MAC address"; uses firewall_mac_addr_object; } leaf is-host-packet { description "Match if packet is host generated"; type empty; } choice flex-mask_choice { case case_1 { container flexible-match-mask { description "Match flexible mask"; uses match_L2_flexible_mask; } } } choice flex-range_choice { case case_1 { container flexible-match-range { description "Match flexible range"; uses match_L2_flexible_range; } } } } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice policer-choice { case case_1 { leaf policer { description "Name of policer to use to rate-limit traffic"; type string { } } } case case_2 { container three-color-policer { description "Police the packet using a three-color-policer"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice type-choice { case case_1 { leaf single-rate { description "Name of single-rate three-color policer to use to rate-limit traffic"; type string { } } } case case_2 { leaf two-rate { description "Name of two-rate three-color policer to use to rate-limit traffic"; type string { } } } } } } case case_3 { leaf hierarchical-policer { description "Name of hierarchical policer to use to rate-limit traffic"; type string { } } } } leaf count { description "Count the packet in the named counter"; type string { } } leaf loss-priority { description "Packet's loss priority"; type enumeration { enum low { description "Loss priority low"; } enum high { description "Loss priority high"; } enum medium-low { description "Loss priority medium-low"; } enum medium-high { description "Loss priority medium-high"; } } } leaf forwarding-class { description "Classify packet to forwarding class"; type string { } } leaf port-mirror-instance { description "Port-mirror the packet to the specified instance"; type string { } } leaf next-hop-group { description "Use specified next-hop group"; type string; } leaf port-mirror { description "Port-mirror the packet"; type empty; } leaf packet-mode { description "Bypass flow mode for the packet"; type empty; } choice designation { case case_1 { leaf accept { description "Accept the packet"; type empty; } } case case_2 { leaf discard { description "Discard the packet"; type empty; } } case case_3 { leaf next { description "Continue to next term in a filter"; type enumeration { enum term { description "Continue to next term in a filter"; } } } } } choice policy-map-choice { case case_1 { leaf clear-policy-map { description "Clear the policy marking"; type empty; } } case case_2 { leaf policy-map { description "Policy map action"; type string { } } } } container encapsulate { presence "enable encapsulate"; description "Send to a tunnel"; leaf tunnel-end-point { description "Name of the tunnel end point"; type string { } mandatory true; } } } } } grouping certificate-object { leaf name { description "Simple name to identify this certificate"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf certificate { description "Certificate and private key string"; type string; } } grouping chassis_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container nssu { presence "enable nssu"; description "Nonstop Software Upgrade settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list upgrade-group { key name; ordered-by user; description "Nonstop Software Upgrade group"; leaf name { description "(null)"; type string { length "1 .. 254"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list fpcs { description "FPCs associated with update-group"; type uint32 { range "0 .. 63"; } max-elements 16; } leaf-list node-devices { description "Node-devices associated with update-group"; type string; max-elements 16; } list member { key name; description "Member of virtual chassis configuration"; uses upgrade-group-fpcs; } } } container psu { description "Power Supply Unit redundancy configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container redundancy { description "PSU Redundancy settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf n-plus-n { description "PSU redundancy: N+N configuration"; type empty; } } } leaf fpc-resync { description "Send and receive Nchip cells for newly onlined FPC"; type empty; } leaf craft-lockout { description "Disable craft interface input"; type empty; } container config-button { description "Config button behavior settings"; leaf no-rescue { description "Don't reset to rescue configuration"; type empty; } leaf no-clear { description "Don't reset to factory-default configuration"; type empty; } } leaf routing-engine-power-off-button-disable { description "Disable RE power off button"; type empty; } leaf packet-scheduling { description "Enable DX2.0 packet scheduling"; type empty; } leaf no-packet-scheduling { description "Enable DX2.0 packet scheduling"; type empty; } leaf policer-drop-probability-low { description "Set policer probabilistic drop probability to Minimum"; type empty; } leaf enhanced-policer { description "Enhanced Policer Counters"; type empty; } leaf effective-shaping-rate { description "Report effective shaping rate"; type empty; } container memory-enhanced { presence "enable memory-enhanced"; description "Enhance memory allocation"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf route { description "Enhance memory allocation for routes"; type empty; } leaf filter { description "Enhance memory allocation for filter"; type empty; } leaf vpn-label { description "Enhance memory allocation for L3 VPN label"; type empty; } } leaf vrf-mtu-check { description "Enable Internet Processor II-based MTU check"; type empty; } leaf maximum-ecmp { description "Maximum ECMP limit for nexthops"; type enumeration { enum 16 { description "Maximum 16 ECMP routes"; } enum 32 { description "Maximum 32 ECMP routes"; } enum 64 { description "Maximum 64 ECMP routes"; } } } container ecmp-alb { presence "enable ecmp-alb"; description "Enable adaptive load balancing for ECMP nexthops"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf tolerance { description "Adaptive tolerance in percentage (default 20%)"; default "20"; units "percent"; type uint32 { range "1 .. 100"; } } } container redundancy { description "Redundancy settings"; uses chassis_redundancy_type; } container routing-engine { description "Routing Engine settings"; uses chassis_routing_engine_type; } container aggregated-devices { description "Aggregated devices configuration"; uses chassis_agg_dev_type; } list disk-partition { key name; ordered-by user; description "Chassis disk monitor configuration"; leaf name { description "Choose disk partition to monitor"; type enumeration { enum /var { description "Monitor /var partition"; } enum /config { description "Monitor /config partition"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list level { key name; ordered-by user; description "Threshold level"; leaf name { description "(null)"; type enumeration { enum high { description "Set high level of threshold"; } enum full { description "Set full level of threshold"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container free-space { description "Enter threshold value & choose the metric"; leaf thres-free { description "Enter free space threshold value"; type uint32 { range "0 .. 100"; } mandatory true; } presence "enable free-space"; choice thres-metric { case case_1 { leaf percent { description "Free space threshold in %"; type empty; } } case case_2 { leaf mb { description "Free space threshold in MB"; type empty; } } } } } } container container-devices { description "Container devices configuration"; uses chassisd_agg_container_type; } container pseudowire-service { description "Pseudowire L3 termination device configuration"; uses chassis-pw-type; } container provider-instance-devices { description "Provider instance devices configuration"; uses chassisd_provider_instance_type; } container redundancy-group { description "Redundancy group configuration"; uses chassisd-redundancy-group-type; } container fabric { description "Switch fabric settings"; uses chassis_fabric_type; } list fpc { key name; description "Flexible PIC Concentrator parameters"; uses chassis_fpc_type; } leaf disable-power-management { description "Disable Power Management in this chassis"; type empty; } container fpc-feb-connectivity { description "Connectivity between Flexible PIC Concentrators and Forwarding Engine Boards"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list fpc { key name; description "(null)"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container feb { description "FEB slot number"; choice feb-slot-choice { case case_1 { leaf none { description "FPC not connected to any FEB"; type empty; } } case case_2 { leaf feb-slot { description "FEB slot number"; type uint32 { range "0 .. 5"; } } } } } } } container ioc-npc-connectivity { description "Connectivity between IOC and NPC"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list ioc { key name; description "(null)"; leaf name { description "IOC-FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container npc { description "NPC-FPC slot number"; choice npc-slot-choice { case case_1 { leaf none { description "IOC not connected to any NPC"; type empty; } } case case_2 { leaf npc-slot { description "NPC-FPC slot number"; type uint32 { range "0 .. 63"; } } } } } } } container pem { description "Power supply (PEM) parameters"; uses chassis_pem_type; } container sib { description "Switch Interface Board parameters"; uses chassis_sib_type; } list sfm { key name; description "Switching and Forwarding Module parameters"; uses chassis_sfm_type; } container feb { description "Forwarding Engine Board parameters"; uses chassis_feb_type; } container afeb { description "Forwarding Engine Board parameters"; uses chassis_feb_type; } container tfeb { description "Taz Forwarding Engine Board parameters"; uses chassis_feb_type; } container alarm { description "Global alarm settings"; uses chassis_alarm_type; } leaf slow-pfe-alarm { description "Enable slow (potential) PFE alarm"; type empty; } leaf ppp-subscriber-services { description "Select PPP subscriber services"; default "disable"; type enumeration { enum disable { description "Disable PPP subscriber services"; } enum enable { description "Enable PPP subscriber services"; } } } leaf ambient-temperature { description "Chassis ambient-temperature value in degree celsius"; type enumeration { enum 40C { description "40 degree celsius"; } enum 25C { description "25 degree celsius"; } } } leaf network-services { description "Chassis network services configuration"; type enumeration { enum ip { description "IP network services"; } enum ethernet { description "Ethernet network services"; } enum enhanced-ip { description "Enhanced IP network services"; } enum enhanced-ethernet { description "Enhanced ethernet network services"; } enum enhanced-mode { description "Enhanced network services"; } enum lan { description "Ethernet LAN services"; } } } container usb { description "USB control flags"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container storage { description "USB storage flags"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable USB storage"; type empty; } } } list lcc { key name; description "Line-card chassis configuration"; leaf name { description "LCC number"; type uint32 { range "0 .. 3"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list fpc { key name; description "Flexible PIC Concentrator parameters"; uses chassis_fpc_type; } container pem { description "Power supply (PEM) parameters"; uses chassis_pem_type; } container spmb { description "Switch Processor Mezzanine Board parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } choice state { case case_1 { leaf online-expected { description "LCC is expected to be online"; type empty; } } case case_2 { leaf offline { description "LCC is expected to be offline"; type empty; } } } } container lcc-mode { description "Line card chassis mode T4000/T1600/EMPTY configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list lcc { key name; description "(null)"; leaf name { description "LCC number"; type uint32 { range "0 .. 7"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf mode { description "Changing Mode of LCC will result in the restart of LCC"; default "t1600"; type enumeration { enum t1600 { description "LCC Mode will be set to t1600"; } enum t4000 { description "LCC Mode will be set to t4000"; } enum empty { description "Setting LCC mode to empty will offline the LCC"; } } } } } list member { key name; description "Member chassis configuration"; leaf name { description "Member number"; type uint32 { range "0 .. 10"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container fabric { description "Switch fabric settings"; uses chassis_fabric_type; } list fpc { key name; description "Flexible PIC Concentrator parameters"; uses chassis_fpc_type; } } container host-outbound { description "Host-out bound options "; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf media-interface { description "Enable processing of media interface features for Host gernated packets"; type empty; } } container synchronization { description "Clock synchronization options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf switchover-mode { description "Should system revert to higher priority valid source"; default "revertive"; type enumeration { enum non-revertive { description "System uses current source as long as it is valid"; } enum revertive { description "Automatically switch to higher priority valid source"; } } } leaf switching-mode { description "Should system revert to higher priority valid source"; default "non-revertive"; type enumeration { enum non-revertive { description "System uses current source as long as it is valid"; } enum revertive { description "Automatically switch to higher priority valid source"; } } } leaf network-option { description "EEC synchronization networking type"; type enumeration { enum option-1 { description "Option 1 (EEC1) synchronization networking"; } enum option-2 { description "Option 2 (EEC2) synchronization networking"; } } } leaf selection-mode { description "Selection mode for incoming ESMC quality"; default "configured-quality"; type enumeration { enum configured-quality { description "Use source's configured ESMC quality"; } enum received-quality { description "Use source's received ESMC quality"; } } } leaf clock-mode { description "Synchronous Ethernet Clock selection mode"; type enumeration { enum free-run { description "Use the free-running local oscillator"; } enum auto-select { description "Select best clock source"; } } } leaf quality-mode-enable { description "Enable Synchronous Ethernet ESMC Quality mode"; type empty; } leaf max-transmit-quality-level { description "Maximum transmit quality level"; type enumeration { enum prc { description "Timing quality of a primary reference clock (option-1 only)"; } enum ssu-a { description "Timing quality of a type I or IV slave clock (option-1 only)"; } enum ssu-b { description "Timing quality of a type VI slave clock (option-1 only)"; } enum sec { description "Timing quality of SDH equipment clock (option-1 only)"; } enum prs { description "Clock traceable to primary reference source (option-2 only)"; } enum stu { description "Clock traceable to unknown quality (option-2 only)"; } enum st2 { description "Clock traceable to stratum 2 (option-2 only)"; } enum tnc { description "Clock traceable to transit node clock (option-2 only)"; } enum st3e { description "Clock traceable to stratum 3E (option-2 only)"; } } } leaf global-wait-to-restore { description "Global Port signal up state time before opening for ESMC"; units "min"; type uint32 { range "0 .. 12"; } } list port { key name; description "Clock synchronization ports"; leaf name { description "(null)"; type enumeration { enum auxiliary { description "Auxiliary port"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container client { presence "enable client"; description "The role of port is client which receives external signals"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container time-of-day-format { description "Time-of-day format as received on this port"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice format { case case_1 { leaf ascii { description "ASCII Time-of-day message format string"; type string { length "1 .. 80"; } } } } } } } list interfaces { key name; description "Interface(s) with upstream clock source"; leaf name { description "(null)"; type enumeration { enum external { description "External clock interface"; } enum external-0/0 { description "External clock interface on SCB-0"; } enum external-1/0 { description "External clock interface on SCB-1"; } enum external-a { description "External-A clock interface"; } enum external-b { description "External-B clock interface"; } enum bits { description "External BITS interface configuration"; } enum bits-a { description "External BITS interface A configuration"; } enum bits-b { description "External BITS interface B configuration"; } enum gps-0 { description "External GPS interface A configuration"; } enum gps-1 { description "External GPS interface B configuration"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf signal-type { description "Frequency for provided reference clocks"; type enumeration { enum 1mhz { description "1 MHz clock signal"; } enum 5mhz { description "5 MHz clock signal"; } enum 10mhz { description "10 MHz clock signal"; } enum 2048khz { description "2048 KHz clock signal"; } enum e1 { description "E1-coded 2048 KHz signal on 120 ohm balanced line"; } enum t1 { description "T1-coded 1.544 MHz signal on 100 ohm balanced line"; } enum cc-8k { description "Composite Clock 64kHz+8kHz"; } enum cc-8k-400 { description "Composite Clock 64kHz+8kHz+400Hz"; } enum 6312k { description "Japanese Standard 6312kHz"; } } } leaf pulse-per-second-enable { description "Enable pulse-per-second (PPS) receive on the interface"; type empty; } container e1-options { description "E1 interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf line-encoding { description "Line encoding"; default "hdb3"; type enumeration { enum ami { description "Automatic mark inversion"; } enum hdb3 { description "High-density bipolar 3 code"; } } } leaf framing { description "Framing mode"; default "g704"; type enumeration { enum g704 { description "G.704 framing format for E1 interfaces"; } enum g704-no-crc4 { description "G.704 framing without CRC4 for E1 interfaces"; } } } leaf sabit { description "The sabit used for exchanging SSM quality"; default "4"; type uint32 { range "4 .. 8"; } } } container t1-options { description "T1 interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf line-encoding { description "Line encoding"; default "b8zs"; type enumeration { enum ami { description "Automatic mark inversion"; } enum b8zs { description "8-bit zero suppression"; } } } leaf framing { description "Framing mode"; default "esf"; type enumeration { enum esf { description "Extended Super Frame"; } enum sf { description "Super Frame"; } } } } } container output { description "External clock interface related"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list interfaces { key name; description "Interface(s) to output source to"; leaf name { description "(null)"; type enumeration { enum external { description "External clock interface"; } enum external-0/0 { description "External clock interface on SCB-0"; } enum external-1/0 { description "External clock interface on SCB-1"; } enum external-a { description "External-A clock interface"; } enum external-b { description "External-B clock interface"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf wander-filter-disable { description "Disables wander filtering"; type empty; } leaf holdover-mode-disable { description "Disables holdover"; type empty; } leaf source-mode { description "Source mode for selecting source to output"; default "line"; type enumeration { enum chassis { description "The chassis clock is output"; } enum line { description "The best line clock source is output"; } } } leaf tx-dnu-to-line-source-enable { description "Sets Tx QL to DNU/DUS on line source interface"; type empty; } leaf minimum-quality { description "Minimum quality threshold"; type enumeration { enum prc { description "Timing quality of a primary reference clock (option-1 only)"; } enum ssu-a { description "Timing quality of a type I or IV slave clock (option-1 only)"; } enum ssu-b { description "Timing quality of a type VI slave clock (option-1 only)"; } enum sec { description "Timing quality of SDH equipment clock (option-1 only)"; } enum prs { description "Clock traceable to primary reference source (option-2 only)"; } enum st2 { description "Clock traceable to stratum 2 (option-2 only)"; } enum tnc { description "Clock traceable to transit node clock (option-2 only)"; } enum st3e { description "Clock traceable to stratum 3E (option-2 only)"; } enum st3 { description "Clock traceable to stratum 3 (option-2 only)"; } enum smc { description "Clock traceable to self-timed SONET (option-2 only)"; } enum st4 { description "Clock traceable to stratum 4 free-run (option-2 only)"; } enum stu { description "Clock traceable to unknown quality (option-2 only)"; } } } } } container source { description "ESMC source(s) related"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container external-a { presence "enable external-a"; description "External Clock source A"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf priority { description "User priority for this clock"; type uint32 { range "1 .. 5"; } } leaf request { description "Clock selection request criterion"; type enumeration { enum lockout { description "Opt out of clock selection"; } enum force-switch { description "Switch to this interface as primary clock source"; } } } leaf quality-level { description "ESMC Clock EEC level"; type enumeration { enum prc { description "Timing quality of a primary reference clock (option-1 only)"; } enum ssu-a { description "Timing quality of a type I or IV slave clock (option-1 only)"; } enum ssu-b { description "Timing quality of a type VI slave clock (option-1 only)"; } enum sec { description "Timing quality of SDH equipment clock (option-1 only)"; } enum prs { description "Clock traceable to primary reference source (option-2 only)"; } enum st2 { description "Clock traceable to stratum 2 (option-2 only)"; } enum tnc { description "Clock traceable to transit node clock (option-2 only)"; } enum st3e { description "Clock traceable to stratum 3E (option-2 only)"; } enum st3 { description "Clock traceable to stratum 3 (option-2 only)"; } enum smc { description "Clock traceable to self-timed SONET (option-2 only)"; } enum st4 { description "Clock traceable to stratum 4 free-run (option-2 only)"; } enum stu { description "Clock traceable to unknown quality (option-2 only)"; } } } } container external-b { presence "enable external-b"; description "External Clock source B"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf priority { description "User priority for this clock"; type uint32 { range "1 .. 5"; } } leaf request { description "Clock selection request criterion"; type enumeration { enum lockout { description "Opt out of clock selection"; } enum force-switch { description "Switch to this interface as primary clock source"; } } } leaf quality-level { description "ESMC Clock EEC level"; type enumeration { enum prc { description "Timing quality of a primary reference clock (option-1 only)"; } enum ssu-a { description "Timing quality of a type I or IV slave clock (option-1 only)"; } enum ssu-b { description "Timing quality of a type VI slave clock (option-1 only)"; } enum sec { description "Timing quality of SDH equipment clock (option-1 only)"; } enum prs { description "Clock traceable to primary reference source (option-2 only)"; } enum st2 { description "Clock traceable to stratum 2 (option-2 only)"; } enum tnc { description "Clock traceable to transit node clock (option-2 only)"; } enum st3e { description "Clock traceable to stratum 3E (option-2 only)"; } enum st3 { description "Clock traceable to stratum 3 (option-2 only)"; } enum smc { description "Clock traceable to self-timed SONET (option-2 only)"; } enum st4 { description "Clock traceable to stratum 4 free-run (option-2 only)"; } enum stu { description "Clock traceable to unknown quality (option-2 only)"; } } } } container gps { presence "enable gps"; description "Global Positioning System 10MHz input"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf priority { description "User priority for this clock"; type uint32 { range "1 .. 5"; } } leaf request { description "Clock selection request criterion"; type enumeration { enum lockout { description "Opt out of clock selection"; } enum force-switch { description "Switch to this interface as primary clock source"; } } } leaf quality-level { description "ESMC Clock EEC level"; type enumeration { enum prc { description "Timing quality of a primary reference clock (option-1 only)"; } enum ssu-a { description "Timing quality of a type I or IV slave clock (option-1 only)"; } enum ssu-b { description "Timing quality of a type VI slave clock (option-1 only)"; } enum sec { description "Timing quality of SDH equipment clock (option-1 only)"; } enum prs { description "Clock traceable to primary reference source (option-2 only)"; } enum st2 { description "Clock traceable to stratum 2 (option-2 only)"; } enum tnc { description "Clock traceable to transit node clock (option-2 only)"; } enum st3e { description "Clock traceable to stratum 3E (option-2 only)"; } enum st3 { description "Clock traceable to stratum 3 (option-2 only)"; } enum smc { description "Clock traceable to self-timed SONET (option-2 only)"; } enum st4 { description "Clock traceable to stratum 4 free-run (option-2 only)"; } enum stu { description "Clock traceable to unknown quality (option-2 only)"; } } } } container gps-0 { presence "enable gps-0"; description "Global Positioning System input A"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf priority { description "User priority for this clock"; type uint32 { range "1 .. 5"; } } leaf request { description "Clock selection request criterion"; type enumeration { enum lockout { description "Opt out of clock selection"; } enum force-switch { description "Switch to this interface as primary clock source"; } } } leaf quality-level { description "ESMC Clock EEC level"; type enumeration { enum prc { description "Timing quality of a primary reference clock (option-1 only)"; } enum ssu-a { description "Timing quality of a type I or IV slave clock (option-1 only)"; } enum ssu-b { description "Timing quality of a type VI slave clock (option-1 only)"; } enum sec { description "Timing quality of SDH equipment clock (option-1 only)"; } enum prs { description "Clock traceable to primary reference source (option-2 only)"; } enum st2 { description "Clock traceable to stratum 2 (option-2 only)"; } enum tnc { description "Clock traceable to transit node clock (option-2 only)"; } enum st3e { description "Clock traceable to stratum 3E (option-2 only)"; } enum st3 { description "Clock traceable to stratum 3 (option-2 only)"; } enum smc { description "Clock traceable to self-timed SONET (option-2 only)"; } enum st4 { description "Clock traceable to stratum 4 free-run (option-2 only)"; } enum stu { description "Clock traceable to unknown quality (option-2 only)"; } } } } container gps-1 { presence "enable gps-1"; description "Global Positioning System input B"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf priority { description "User priority for this clock"; type uint32 { range "1 .. 5"; } } leaf request { description "Clock selection request criterion"; type enumeration { enum lockout { description "Opt out of clock selection"; } enum force-switch { description "Switch to this interface as primary clock source"; } } } leaf quality-level { description "ESMC Clock EEC level"; type enumeration { enum prc { description "Timing quality of a primary reference clock (option-1 only)"; } enum ssu-a { description "Timing quality of a type I or IV slave clock (option-1 only)"; } enum ssu-b { description "Timing quality of a type VI slave clock (option-1 only)"; } enum sec { description "Timing quality of SDH equipment clock (option-1 only)"; } enum prs { description "Clock traceable to primary reference source (option-2 only)"; } enum st2 { description "Clock traceable to stratum 2 (option-2 only)"; } enum tnc { description "Clock traceable to transit node clock (option-2 only)"; } enum st3e { description "Clock traceable to stratum 3E (option-2 only)"; } enum st3 { description "Clock traceable to stratum 3 (option-2 only)"; } enum smc { description "Clock traceable to self-timed SONET (option-2 only)"; } enum st4 { description "Clock traceable to stratum 4 free-run (option-2 only)"; } enum stu { description "Clock traceable to unknown quality (option-2 only)"; } } } } container bits { presence "enable bits"; description "External Building Integrated Timing Supply input"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf priority { description "User priority for this clock"; type uint32 { range "1 .. 5"; } } leaf request { description "Clock selection request criterion"; type enumeration { enum lockout { description "Opt out of clock selection"; } enum force-switch { description "Switch to this interface as primary clock source"; } } } leaf quality-level { description "ESMC Clock EEC level"; type enumeration { enum prc { description "Timing quality of a primary reference clock (option-1 only)"; } enum ssu-a { description "Timing quality of a type I or IV slave clock (option-1 only)"; } enum ssu-b { description "Timing quality of a type VI slave clock (option-1 only)"; } enum sec { description "Timing quality of SDH equipment clock (option-1 only)"; } enum prs { description "Clock traceable to primary reference source (option-2 only)"; } enum st2 { description "Clock traceable to stratum 2 (option-2 only)"; } enum tnc { description "Clock traceable to transit node clock (option-2 only)"; } enum st3e { description "Clock traceable to stratum 3E (option-2 only)"; } enum st3 { description "Clock traceable to stratum 3 (option-2 only)"; } enum smc { description "Clock traceable to self-timed SONET (option-2 only)"; } enum st4 { description "Clock traceable to stratum 4 free-run (option-2 only)"; } enum stu { description "Clock traceable to unknown quality (option-2 only)"; } } } } container bits-a { presence "enable bits-a"; description "External Building Integrated Timing Supply input A"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf priority { description "User priority for this clock"; type uint32 { range "1 .. 5"; } } leaf request { description "Clock selection request criterion"; type enumeration { enum lockout { description "Opt out of clock selection"; } enum force-switch { description "Switch to this interface as primary clock source"; } } } leaf quality-level { description "ESMC Clock EEC level"; type enumeration { enum prc { description "Timing quality of a primary reference clock (option-1 only)"; } enum ssu-a { description "Timing quality of a type I or IV slave clock (option-1 only)"; } enum ssu-b { description "Timing quality of a type VI slave clock (option-1 only)"; } enum sec { description "Timing quality of SDH equipment clock (option-1 only)"; } enum prs { description "Clock traceable to primary reference source (option-2 only)"; } enum st2 { description "Clock traceable to stratum 2 (option-2 only)"; } enum tnc { description "Clock traceable to transit node clock (option-2 only)"; } enum st3e { description "Clock traceable to stratum 3E (option-2 only)"; } enum st3 { description "Clock traceable to stratum 3 (option-2 only)"; } enum smc { description "Clock traceable to self-timed SONET (option-2 only)"; } enum st4 { description "Clock traceable to stratum 4 free-run (option-2 only)"; } enum stu { description "Clock traceable to unknown quality (option-2 only)"; } } } } container bits-b { presence "enable bits-b"; description "External Building Integrated Timing Supply input B"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf priority { description "User priority for this clock"; type uint32 { range "1 .. 5"; } } leaf request { description "Clock selection request criterion"; type enumeration { enum lockout { description "Opt out of clock selection"; } enum force-switch { description "Switch to this interface as primary clock source"; } } } leaf quality-level { description "ESMC Clock EEC level"; type enumeration { enum prc { description "Timing quality of a primary reference clock (option-1 only)"; } enum ssu-a { description "Timing quality of a type I or IV slave clock (option-1 only)"; } enum ssu-b { description "Timing quality of a type VI slave clock (option-1 only)"; } enum sec { description "Timing quality of SDH equipment clock (option-1 only)"; } enum prs { description "Clock traceable to primary reference source (option-2 only)"; } enum st2 { description "Clock traceable to stratum 2 (option-2 only)"; } enum tnc { description "Clock traceable to transit node clock (option-2 only)"; } enum st3e { description "Clock traceable to stratum 3E (option-2 only)"; } enum st3 { description "Clock traceable to stratum 3 (option-2 only)"; } enum smc { description "Clock traceable to self-timed SONET (option-2 only)"; } enum st4 { description "Clock traceable to stratum 4 free-run (option-2 only)"; } enum stu { description "Clock traceable to unknown quality (option-2 only)"; } } } } list interfaces { key name; description "Interface(s) with upstream clock source"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf priority { description "User priority for this clock"; type uint32 { range "1 .. 5"; } } leaf request { description "Clock selection request criterion"; type enumeration { enum lockout { description "Opt out of clock selection"; } enum force-switch { description "Switch to this interface as primary clock source"; } } } leaf wait-to-restore { description "Port signal up state time before opening for ESMC"; units "min"; type uint32 { range "0 .. 12"; } } leaf hold-off-time { description "Port signal down state time before closing for ESMC"; units "milliseconds"; type uint32 { range "300 .. 1800"; } } leaf quality-level { description "ESMC Clock EEC level"; type enumeration { enum prc { description "Timing quality of a primary reference clock (option-1 only)"; } enum ssu-a { description "Timing quality of a type I or IV slave clock (option-1 only)"; } enum ssu-b { description "Timing quality of a type VI slave clock (option-1 only)"; } enum sec { description "Timing quality of SDH equipment clock (option-1 only)"; } enum prs { description "Clock traceable to primary reference source (option-2 only)"; } enum st2 { description "Clock traceable to stratum 2 (option-2 only)"; } enum tnc { description "Clock traceable to transit node clock (option-2 only)"; } enum st3e { description "Clock traceable to stratum 3E (option-2 only)"; } enum st3 { description "Clock traceable to stratum 3 (option-2 only)"; } enum smc { description "Clock traceable to self-timed SONET (option-2 only)"; } enum st4 { description "Clock traceable to stratum 4 free-run (option-2 only)"; } enum stu { description "Clock traceable to unknown quality (option-2 only)"; } } } } } container esmc-transmit { description "ESMC transmit parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list interfaces { key name; ordered-by user; description "Interface(s) on which to permit ESMC transmit messages"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } container hold-interval { description "Hold interval"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf switchover { description "Switchover wait time after clock recovery"; default "30"; units "sec"; type uint32 { range "30 .. 60"; } } leaf configuration-change { description "Clock select wait time after change in config"; default "15"; units "sec"; type uint32 { range "15 .. 60"; } } leaf restart { description "Clock select wait time after reboot"; default "120"; units "sec"; type uint32 { range "60 .. 180"; } } } leaf validation-interval { description "Time between frequency measurements"; default "90"; units "seconds"; type uint32 { range "90 .. 86400"; } } leaf y-cable-line-termination { description "A single signal is wired to both CBs via Y-cable"; type empty; } leaf transmitter-enable { description "Control whether diagnostic timing signal is transmitted"; type empty; } leaf signal-type { description "Frequency for provided reference clocks"; default "t1"; type enumeration { enum e1 { description "E1-coded 2048 Khz signal on 120 ohm balanced line"; } enum t1 { description "T1-coded 1.544 Mhz signal on 100 ohm balanced line"; } enum cc-8k { description "Composite Clock 64kHz+8kHz"; } enum cc-8k-400 { description "Composite Clock 64kHz+8kHz+400Hz"; } enum 6312k { description "Japanese Standard 6312kHz"; } } } leaf primary { description "Best choice synchronization reference source list"; type enumeration { enum external-a { description "Use external-a as a primary source"; } enum external-b { description "Use external-b as a primary source"; } enum bits-a { description "Use bits-a as a primary source"; } enum bits-b { description "Use bits-b as a primary source"; } enum gps-0 { description "Use gps-0 as a primary source"; } enum gps-1 { description "Use gps-1 as a primary source"; } enum fpc-0 { description "Use fpc-0 as a primary source"; } enum fpc-1 { description "Use fpc-1 as a primary source"; } enum fpc-2 { description "Use fpc-2 as a primary source"; } enum fpc-3 { description "Use fpc-3 as a primary source"; } enum fpc-4 { description "Use fpc-4 as a primary source"; } enum fpc-5 { description "Use fpc-5 as a primary source"; } enum fpc-6 { description "Use fpc-6 as a primary source"; } enum fpc-7 { description "Use fpc-7 as a primary source"; } enum fpc-8 { description "Use fpc-8 as a primary source"; } enum fpc-9 { description "Use fpc-9 as a primary source"; } enum fpc-10 { description "Use fpc-10 as a primary source"; } enum fpc-11 { description "Use fpc-11 as a primary source"; } enum fpc-12 { description "Use fpc-12 as a primary source"; } enum fpc-13 { description "Use fpc-13 as a primary source"; } enum fpc-14 { description "Use fpc-14 as a primary source"; } enum fpc-15 { description "Use fpc-15 as a primary source"; } } } leaf secondary { description "Alternative choice synchronization reference source list"; type enumeration { enum external-a { description "Use external-a as a secondary source"; } enum external-b { description "Use external-b as a secondary source"; } enum bits-a { description "Use bits-a as a secondary source"; } enum bits-b { description "Use bits-b as a secondary source"; } enum gps-0 { description "Use gps-0 as a secondary source"; } enum gps-1 { description "Use gps-1 as a secondary source"; } enum fpc-0 { description "Use fpc-0 as a secondary source"; } enum fpc-1 { description "Use fpc-1 as a secondary source"; } enum fpc-2 { description "Use fpc-2 as a secondary source"; } enum fpc-3 { description "Use fpc-3 as a secondary source"; } enum fpc-4 { description "Use fpc-4 as a secondary source"; } enum fpc-5 { description "Use fpc-5 as a secondary source"; } enum fpc-6 { description "Use fpc-6 as a secondary source"; } enum fpc-7 { description "Use fpc-7 as a secondary source"; } enum fpc-8 { description "Use fpc-8 as a secondary source"; } enum fpc-9 { description "Use fpc-9 as a secondary source"; } enum fpc-10 { description "Use fpc-10 as a secondary source"; } enum fpc-11 { description "Use fpc-11 as a secondary source"; } enum fpc-12 { description "Use fpc-12 as a secondary source"; } enum fpc-13 { description "Use fpc-13 as a secondary source"; } enum fpc-14 { description "Use fpc-14 as a secondary source"; } enum fpc-15 { description "Use fpc-15 as a secondary source"; } } } } container forwarding-options { description "Configure options to control packet forwarding"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice uft_object { case case_1 { container l2-profile-one { presence "enable l2-profile-one"; description "MAC: 288K L3-host: 16K LPM: 16K. This will restart PFE"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf num-65-127-prefix { description "Number of IPV6 prefixes > 64, in multiples of 16 e.g 5 = 5x16 entries"; default "1"; type int32 { range "1 .. 128"; } } } } case case_2 { container l2-profile-two { presence "enable l2-profile-two"; description "MAC: 224K L3-host: 80K LPM: 16K. This will restart PFE"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf num-65-127-prefix { description "Number of IPV6 prefixes > 64, in multiples of 16 e.g 5 = 5x16 entries"; default "1"; type int32 { range "1 .. 128"; } } } } case case_3 { container l2-profile-three { presence "enable l2-profile-three"; description "MAC: 160K L3-host: 144K LPM: 16K. This will restart PFE"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf num-65-127-prefix { description "Number of IPV6 prefixes > 64, in multiples of 16 e.g 5 = 5x16 entries"; default "1"; type int32 { range "1 .. 128"; } } } } case case_4 { container l3-profile { presence "enable l3-profile"; description "MAC: 96K L3-host: 208K LPM: 16K. This will restart PFE"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf num-65-127-prefix { description "Number of IPV6 prefixes > 64, in multiples of 16 e.g 5 = 5x16 entries"; default "1"; type int32 { range "1 .. 128"; } } } } case case_5 { container lpm-profile { presence "enable lpm-profile"; description "MAC: 32K L3-host: 16K LPM: 128K. This will restart PFE"; } } } } container lcd-menu { description "Chassis LCD menu"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list fpc { key name; ordered-by user; description "(null)"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list menu-item { key name; ordered-by user; description "LCD menu item"; leaf name { description "LCD menu name"; type string; } leaf disable { description "Disable LCD menu"; type empty; } } } list menu-item { key name; ordered-by user; description "LCD menu item"; leaf name { description "LCD menu name"; type string; } leaf disable { description "Disable LCD menu"; type empty; } } } leaf fru-poweron-sequence { description "FRUs power on sequence like 0 1 2 3 ... within double quotes"; type string; } leaf auto-image-upgrade { description "Auto image upgrade using DHCP"; type empty; } container route-localization { description "Route-Localization settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf inet { description "Route-Localization inet"; type empty; } leaf inet6 { description "Route-Localization inet6"; type empty; } } container state { description "Set CB upgrade state."; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf cb-upgrade { description "Set CB upgrade state on/off."; default "off"; type enumeration { enum off { description "Set after CB upgrade is complete"; } enum on { description "Set before the start of CB upgrade."; } } } } container multicast-loadbalance { description "Multicast load balancing settings"; uses chassis_ae_lb_type; } leaf extended-statistics { description "Enable extended system statistics"; type empty; } container error { description "Error level configuration for all FPC"; uses chassis_fpc_error_type; } container oss-map { description "Translate Operation Supported System's requirements"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf model-name { description "Override chassis model name for specific show/snmp output"; type enumeration { enum t640 { description "Set to T640's model"; } enum t1600 { description "Set to T1600's model"; } } } } container jnu-management { description "JNU Management configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf controller-mode { description "Controller Mode "; type empty; } list satellite { key name; ordered-by user; description "List of satellites"; leaf name { description "Satellite name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf model { description "Satellite model"; type string { } mandatory true; } leaf version { description "Satellite version"; type string { } mandatory true; } } } list satellite { key name; ordered-by user; description "List of available satellite configurations"; leaf name { description "Satellite name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container satellite-management { presence "enable satellite-management"; description "Satellite management configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Global satelite discovery and provisioning trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum parse { description "Trace configuration parsing"; } enum config-internal { description "Trace configuration internals"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum task { description "Trace SDPD task processing"; } enum timer { description "Trace SDPD task timer processing"; } enum krt { description "Trace communication over routing socket"; } enum lldp { description "Trace LLDP events"; } enum provision { description "Trace provisioning events"; } enum extended-port { description "Trace extended-port events"; } enum multi-chassis { description "Trace multi-chassis events"; } enum upgrade-group { description "Trace sw-update events"; } enum device { description "Trace device FSM events"; } enum tcp { description "Trace TCP events"; } enum interface { description "Trace interface events"; } enum all { description "Trace everything"; } } } leaf disable { description "Disable this trace flag"; type empty; } } } list fpc { key name; description "(null)"; leaf name { description "Satellite slot identifier"; type uint32 { range "100 .. 254"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf serial-number { description "Satellite serial number"; type string { length "1 .. 16"; } } leaf system-id { description "Satellite system id"; type mac-addr; } leaf alias { description "Satellite alias"; type string { length "1 .. 16"; } } leaf description { description "Satellite description"; type string { length "1 .. 64"; } } container management-address { presence "enable management-address"; description "Satellite Management Interface IP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf address { description "Satellite Management Interface IP address"; type ipv4prefix; mandatory true; } leaf gateway { description "Satellite Management Interface Gateway IP address"; type ipv4addr; mandatory true; } } leaf-list cascade-ports { description "Cascade ports"; type interface-device; } choice ufd_type { case case_1 { container uplink-failure-detection { presence "enable uplink-failure-detection"; description "Enable uplink-failure-detection"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf candidate-uplink-policy { description "Candidate uplink policy"; type string; } } } } leaf environment-monitoring-policy { description "Environment monitoring policy"; type string; } } choice ufd_type { case case_1 { container uplink-failure-detection { presence "enable uplink-failure-detection"; description "Enable uplink-failure-detection"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf candidate-uplink-policy { description "Candidate uplink policy"; type string; } } } } container environment-monitoring-policy { presence "enable environment-monitoring-policy"; description "Environment monitoring policy"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf policy-name { description "Default environment monitoring policy"; type string; } } container upgrade-groups { description "Upgrade group configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list upgrade-group { key name; description "Upgrade group"; uses upgrade-group-type; } } container auto-satellite-conversion { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list satellite { description "Satellite slot-id or range or all"; type string { length "1 .. 100"; } } } container single-home { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list satellite { description "Satellite slot-id or range or all"; type string { length "1 .. 100"; } } } leaf aging-timer { description "Aging-timer"; units "minutes"; type uint32 { range "2 .. 60000"; } } } container system-domains { presence "enable system-domains"; description "Root and protected system domain configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf root-domain-id { description "Root domain identifier"; type uint32 { range "1 .. 3"; } mandatory true; } list protected-system-domains { key name; description "Protected system domain configuration"; uses juniper-protected-system-domain; } container traceoptions { description "Protected system domain traceoptions"; uses juniper-protected-system-domain-traceoptions; } } } grouping chassis-pw-type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf device-count { description "Number of pseudo-wire ps devices"; type uint32 { range "1 .. 2048"; } } } grouping chassis_ae_lb_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable Multicast load balancing"; type empty; } leaf hash-mode { description "PFE hash mode"; type enumeration { enum crc-sgip { description "CRC of Source IP and Group IP"; } enum crc-gip { description "CRC of Group IP only"; } enum crc-sip { description "CRC of Source IP only"; } enum simple-sgip { description "Simple hash of Source IP and Group IP"; } enum simple-gip { description "Simple hash of Group IP"; } enum simple-sip { description "Simple hash of Source IP"; } enum balanced { description "Round-Robin balancing"; } } } } grouping chassis_agg_dev_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container ethernet { description "Aggregated device options for Ethernet"; uses chassisd_agg_enet_type; } container sonet { description "Aggregated device options for SONET"; uses chassisd_agg_pos_type; } leaf maximum-links { description "Maximum links limit for aggregated devices (16, 32, or 64)"; type int32; } } grouping chassis_alarm_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container management-ethernet { description "Management Ethernet alarms"; uses chassis_alarm_ethernet_type; } container otn-odu { description "OTN ODU alarms"; uses chassis_alarm_otn_odu_type; } container otn-otu { description "OTN OTU alarms"; uses chassis_alarm_otn_otu_type; } container sonet { description "SONET alarms"; uses chassis_alarm_sonet_type; } container t3 { description "DS3 alarms"; uses chassis_alarm_ds3_type; } container ds1 { description "DS1 alarms"; uses chassis_alarm_ds1_type; } container ethernet { description "Ethernet alarms"; uses chassis_alarm_ethernet_type; } container integrated-services { description "Integrated services alarms"; uses chassis_alarm_integrated_services_type; } container services { description "Services PIC alarms"; uses chassis_alarm_services_type; } container serial { description "Serial alarms"; uses chassis_alarm_serial_type; } container fibre-channel { description "Fibre Channel alarms"; uses chassis_alarm_fibre-channel_type; } container relay { description "Alarm relays"; uses chassis_alarm_relay_type; } } grouping chassis_alarm_ds1_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ais { description "Alarm indicator signal"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf ylw { description "Yellow alarm"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } } grouping chassis_alarm_ds3_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ais { description "Alarm indicator signal"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf exz { description "Excessive zeros"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf ferf { description "Far-end failure"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf idle { description "Idle alarm"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf lcv { description "Line code violation"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf lof { description "Loss of frame"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf los { description "Loss of signal"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf pll { description "Phase-locked loop out of lock"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf ylw { description "Yellow alarm"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } } grouping chassis_alarm_ethernet_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf link-down { description "Link has gone down"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } } grouping chassis_alarm_fibre-channel_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf link-down { description "Link has gone down"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } } grouping chassis_alarm_integrated_services_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf failure { description "Integrated Services failure"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } } grouping chassis_alarm_otn_odu_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf odu-bdi { description "ODU backward-defect-indicator, ODU-BDI failure"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf odu-ttim { description "ODU trail-trace-identifier-mismatch, ODU-TTIM failure"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf odu-ptim { description "ODU payload-type-mismatch, ODU-PTIM failure"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } } grouping chassis_alarm_otn_otu_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf oc-los { description "Loss of signal, LOS failure"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf oc-lof { description "Loss of framing, LOF failure"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf oc-lom { description "Loss of multiframe, LOM failure"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf wavelength-lock { description "Wavelength lock alarm"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf otu-bdi { description "OTU backward-defect-indicator, OTU-BDI failure"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf otu-iae { description "OTU incoming-alignment-error, OTU-IAE failure"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf otu-ttim { description "OTU trail-trace-identifier-mismatch, OTU-TTIM failure"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf otu-fec-excessive-errs { description "OTU fec-excessive-errors, OTU-FEC_EXE failure"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } } grouping chassis_alarm_relay_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container input { description "Input relays"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list port { key name; ordered-by user; description "(null)"; leaf name { description "Relay port number"; type uint32 { range "0 .. 3"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf mode { description "Relay mode in de-active state"; type enumeration { enum open { description "Normally open"; } enum close { description "Normally closed"; } } } leaf trigger { description "Relay triggered"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } } } container output { description "Output relays"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list port { key name; ordered-by user; description "(null)"; leaf name { description "Relay port number"; type uint32 { range "0 .. 3"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf mode { description "Relay mode in de-active state"; type enumeration { enum open { description "Normally open"; } enum close { description "Normally closed"; } } } leaf temperature { description "Trigger on temperature alarm red"; type empty; } leaf input-relay { description "Trigger on input relay trigger"; type uint32 { range "0 .. 3"; } } } } } grouping chassis_alarm_serial_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf loss-of-rx-clock { description "RX clock absent"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf loss-of-tx-clock { description "TX clock absent"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf dcd-absent { description "DCD signal absent"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf cts-absent { description "CTS signal absent"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf dsr-absent { description "DSR signal absent"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf tm-absent { description "TM signal absent"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } } grouping chassis_alarm_services_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf pic-reset { description "Services PIC reset"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf pic-hold-reset { description "Services PIC held in reset"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf linkdown { description "Services PIC linkdown"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf rx-errors { description "Services PIC excessive rx errors"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf tx-errors { description "Services PIC excessive tx errors"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf sw-down { description "Services PIC software problem"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf hw-down { description "Services PIC hardware problem"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } } grouping chassis_alarm_sonet_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf lol { description "Loss of light"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf pll { description "Phase locked loop out of lock"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf lof { description "Loss of framing, LOF failure"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf los { description "Loss of signal, LOS failure"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf ais-l { description "Line alarm indication signal, AIS-L failure"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf ais-p { description "Path alarm indication signal, AIS-P failure"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf lop-p { description "Loss of pointer, LOP-P failure"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf ber-sd { description "Signal Degrade (SD), bit error rate > 1E-6"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf ber-sf { description "Signal Fail (SF), bit error rate > 1E-3"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf rfi-l { description "Line remote failure indication, RFI-L, line FERF"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf rfi-p { description "Path remote failure indication, RFI-P, STS path yellow"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf uneq-p { description "STS Path (C2) unequipped, UNEQ-P failure"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf locd { description "Loss of cell delineation (ATM only)"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } leaf plm-p { description "STS payload label (C2) mismatch, PLM-P failure"; type enumeration { enum red { description "Assert red system alarm"; } enum yellow { description "Assert yellow system alarm"; } enum ignore { description "Do not assert any alarm signals"; } } } } grouping chassis_fabric_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf upgrade-mode { description "Enable online switch fabric upgrade"; type enumeration { enum default { description "Fabric upgrade"; } enum t4000 { description "T4000 Fabric upgrade"; } enum 3d-fabric { description "TXP-3D Fabric upgrade"; } } } container degraded { presence "enable degraded"; description "Degraded fabric configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf action-fpc-restart-disable { description "Limit degraded fabric actions to Plane restart only"; type empty; } leaf degraded-fpc-bad-plane-threshold { description "No of bad planes to declare a FPC degraded"; default "4"; type uint32 { range "4 .. 18"; } } leaf degraded-fabric-detection-enable { description "Enable degraded FPC detection"; type empty; } leaf fpc-restart { description "Restart fpc on zero planes"; type empty; } leaf auto-recovery-disable { description "Disable fabric degraded auto recovery"; type empty; } leaf fpc-offline-on-blackholing { description "Offline FPC on fabric blackholing"; type empty; } } container redundancy-mode { description "Fabric redundancy mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice mode { case case_1 { leaf redundant { description "Fabric is configured in redundant mode"; type empty; } } case case_2 { leaf increased-bandwidth { description "Fabric is configured in increased bandwidth mode"; type empty; } } } } } grouping chassis_feb_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container sanity-poll { description "FPC register sanity poll"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf retry-count { description "Number of retries before reporting error"; default "10"; type uint32 { range "1 .. 30"; } } container on-error { description "Actions to be taken if inconsistencies are detected"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf raise-alarm { description "Raise emergency alarm"; type empty; } leaf power { description "Power cycle or power off FPC"; type enumeration { enum cycle { description "Write coredump and reboot FPC"; } enum off { description "Power down FPC indefinitely"; } } } leaf write-coredump { description "Write coredump and continue"; type empty; } } } list slot { key name; ordered-by user; description "(null)"; leaf name { description "FEB slot number"; type uint32 { range "0 .. 5"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container sanity-poll { description "FPC register sanity poll"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf retry-count { description "Number of retries before reporting error"; default "10"; type uint32 { range "1 .. 30"; } } container on-error { description "Actions to be taken if inconsistencies are detected"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf raise-alarm { description "Raise emergency alarm"; type empty; } leaf power { description "Power cycle or power off FPC"; type enumeration { enum cycle { description "Write coredump and reboot FPC"; } enum off { description "Power down FPC indefinitely"; } } } leaf write-coredump { description "Write coredump and continue"; type empty; } } } leaf power { description "Power FEBs on or off"; type enumeration { enum off { description "Do not provide power to FEBs"; } enum on { description "Provide power to FEBs"; } } } choice mode { } leaf port-mirror-instance { description "Associate a port mirroring instance with the FEB"; type string { length "1 .. 64"; } } leaf sampling-instance { description "Associate a sampling instance with the FEB"; type string { length "1 .. 64"; } } leaf ucode-imem-remap { description "Remap the PIC microcode to IMEM on FEB"; type empty; } container inline-services { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container flow-table-size { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ipv4-flow-table-size { description "IPv4 flow table size in units of 256k"; type uint32 { range "1 .. 15"; } } leaf ipv6-flow-table-size { description "IPv6 flow table size in units of 256k"; type uint32 { range "1 .. 15"; } } leaf vpls-flow-table-size { description "VPLS flow table size in units of 256k"; type uint32 { range "1 .. 15"; } } leaf ipv6-extended-attrib { description "Enable extended flow attribute"; type empty; } } } container openflow { description "Openflow configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf access-list-partition { description "Space reserved for openflow access-list rules"; units "percents"; type uint32 { range "0 .. 100"; } } } } } grouping chassis_fpc_error_type { description "Chassis Fpc Error level"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container fatal { description "FPC Fatal errors (default threshold = 1)"; uses chassis_fpc_error_level_type; } container major { description "FPC Major Level errors (default threshold = 1)"; uses chassis_fpc_error_level_type; } container minor { description "FPC Minor Level errors (default threshold = 10)"; uses chassis_fpc_error_level_type; } } grouping chassis_fpc_error_level_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "Error count at which to take the action"; type uint32 { range "0 .. 4294967295"; } } list action { key name; ordered-by user; description "Configure the action for this level"; leaf name { description "(null)"; type enumeration { enum reset { description "Reset FPC"; } enum offline { description "Offline FPC"; } enum alarm { description "Raise FPC alarm"; } enum get-state { description "Retreive FPC state for debugging"; } enum log { description "Log occurence to system log file"; } enum disable-pfe { description "Disable PFE interfaces on FPC"; } enum offline-pic { description "Offline PICs associated with PFE on FPC"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } grouping chassis_fpc_type { leaf name { description "FPC slot number"; type uint32 { range "0 .. 127"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container system-mode { description "Configure System Port Mode. Will require PFE restart."; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice system-modes { case case_1 { leaf mode-104port { description "104port-mode. This will restart PFE"; type empty; } } case case_2 { leaf allow-40g { description "4x40G-pic-mode. This will restart PFE"; type empty; } } } } container sanity-poll { description "FPC register sanity poll"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf retry-count { description "Number of retries before reporting error"; default "10"; type uint32 { range "1 .. 30"; } } container on-error { description "Actions to be taken if inconsistencies are detected"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf raise-alarm { description "Raise emergency alarm"; type empty; } leaf power { description "Power cycle or power off FPC"; type enumeration { enum cycle { description "Write coredump and reboot FPC"; } enum off { description "Power down FPC indefinitely"; } } } leaf write-coredump { description "Write coredump and continue"; type empty; } } } container forwarding-options { description "Configure options to control packet forwarding"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice uft_object { case case_1 { container l2-profile-one { presence "enable l2-profile-one"; description "MAC: 288K L3-host: 16K LPM: 16K. This will restart PFE"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf num-65-127-prefix { description "Number of IPV6 prefixes > 64, in multiples of 16 e.g 5 = 5x16 entries"; default "1"; type int32 { range "1 .. 128"; } } } } case case_2 { container l2-profile-two { presence "enable l2-profile-two"; description "MAC: 224K L3-host: 80K LPM: 16K. This will restart PFE"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf num-65-127-prefix { description "Number of IPV6 prefixes > 64, in multiples of 16 e.g 5 = 5x16 entries"; default "1"; type int32 { range "1 .. 128"; } } } } case case_3 { container l2-profile-three { presence "enable l2-profile-three"; description "MAC: 160K L3-host: 144K LPM: 16K. This will restart PFE"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf num-65-127-prefix { description "Number of IPV6 prefixes > 64, in multiples of 16 e.g 5 = 5x16 entries"; default "1"; type int32 { range "1 .. 128"; } } } } case case_4 { container l3-profile { presence "enable l3-profile"; description "MAC: 96K L3-host: 208K LPM: 16K. This will restart PFE"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf num-65-127-prefix { description "Number of IPV6 prefixes > 64, in multiples of 16 e.g 5 = 5x16 entries"; default "1"; type int32 { range "1 .. 128"; } } } } case case_5 { container lpm-profile { presence "enable lpm-profile"; description "MAC: 32K L3-host: 16K LPM: 128K. This will restart PFE"; } } } } list pic { key name; description "Physical Interface Card number"; uses chassis_pic_type; } leaf power { description "Power FPCs on or off"; type enumeration { enum off { description "Do not provide power to FPCs"; } enum on { description "Provide power to FPCs"; } } } container traffic-manager { description "Traffic Manager settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf fabric-queue-monitor-enable { description "Enable fabric queue monitoring"; type empty; } leaf wan-queue-monitor-enable { description "Enable wan queue monitoring"; type empty; } container queue-threshold { description "Set queue thresholds"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container fabric-queue { description "Set fabric queue thresholds"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list priority { key name; ordered-by user; description "Queue priority"; leaf name { description "Priority level"; type enumeration { enum low { description "Low fabric priority"; } enum high { description "High fabric priority"; } } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "Threshold percentage to be set"; type uint32 { range "1 .. 100"; } mandatory true; } } } container wan-queue { description "Set wan queue thresholds"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list priority { key name; ordered-by user; description "Queue Priority"; leaf name { description "Priority level"; type enumeration { enum low { description "Low wan priority"; } enum medium-low { description "Medium low wan priority"; } enum medium-high { description "Medium high wan priority"; } enum high { description "High wan priority"; } } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "Threshold percentage to be set"; type uint32 { range "1 .. 100"; } mandatory true; } } } } } leaf route-localization { description "Route-Localization fib-remote or fib-local"; type enumeration { enum fib-remote { description "Route-Localization fib-remote"; } enum fib-local { description "Route-Localization fib-local"; } } } leaf vpn-localization { description "VPN-localization core-facing-only or core-facing-default"; type enumeration { enum vpn-core-facing-only { description "VPN core-facing-fpc which has no vpn-label state"; } enum vpn-core-facing-default { description "VPN core-facing-fpc which has all the state"; } } } leaf power-budget-priority { description "FPC priority number"; type uint32 { range "0 .. 63"; } } choice mode { case case_1 { leaf allow-sram-parity-errors { description "Do not power cycle FPC when SRAM parity errors occur"; type empty; } } } leaf offline { description "Keep FPC offline"; type empty; } leaf offline-on-fabric-bandwidth-reduction { description "Bring FPC offline when running with reduced fabric bandwidth"; type empty; } leaf ir-mode { description "Configure IR or R mode for MPC4 and above cards"; type enumeration { enum IR { description "Set IR mode"; } enum R { description "Set R mode"; } } } list port-mirror-instance { key name; ordered-by user; description "(null)"; max-elements 2; leaf name { description "Associate a port mirroring instance with the FPC"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list sampling-instance { key name; ordered-by user; description "(null)"; max-elements 1; leaf name { description "Associate a sampling instance with the FPC"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container inline-services { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container flow-table-size { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ipv4-flow-table-size { description "IPv4 flow table size in units of 256k"; type uint32 { range "1 .. 15"; } } leaf ipv6-flow-table-size { description "IPv6 flow table size in units of 256k"; type uint32 { range "1 .. 15"; } } leaf vpls-flow-table-size { description "VPLS flow table size in units of 256k"; type uint32 { range "1 .. 15"; } } leaf ipv6-extended-attrib { description "Enable extended flow attribute"; type empty; } } } container application-services { description "Application services configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf package { description "Package selection"; type string; mandatory true; } presence "enable application-services"; } leaf flexible-queuing-mode { description "Enable flexible queuing mode"; type empty; } leaf number-of-ports { description "Number of physical ports to enable on FPC"; type enumeration { enum 8 { description "Enable 8 ports"; } enum 12 { description "Enable 12 ports"; } } } list pfe { key name; description "Packet forwarding engine parameters"; uses chassis_pfe_type; } leaf max-queues { description "Maximum number of queues configurable on FPC"; type enumeration { enum 8k { description "8K maximum queues"; } enum 16k { description "16K maximum queues"; } enum 32k { description "32K maximum queues"; } enum 64k { description "64K maximum queues "; } enum 128k { description "128K maximum queues"; } enum 256k { description "256K maximum queues"; } } } container error { description "Error level configuration for FPC"; uses chassis_fpc_error_type; } container openflow { description "Openflow configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf access-list-partition { description "Space reserved for openflow access-list rules"; units "percents"; type uint32 { range "0 .. 100"; } } leaf buffer-partition { description "Buffer space reserved for openflow traffic"; units "percents"; type uint32 { range "0 .. 100"; } } } } grouping chassis_pem_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum { description "Minimum number of power supplies required for normal operation"; type uint32 { range "2 .. 4"; } } leaf feeds { description "Number of input feeds required"; type uint32 { range "4 .. 6"; } } leaf input-current { description "Input current (Amps) in each feed "; default "60"; type enumeration { enum 40 { description "40 Amps in each Feed"; } enum 60 { description "60 Amps in each Feed"; } } } } grouping chassis_pfe_type { description "PFE(Packet forwarding engine)"; leaf name { description "PFE(Packet forwarding engine) identifier"; type uint32 { range "0 .. 3"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container forwarding-packages { description "Associated forwarding package configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container mobility { description "Mobility related PFE configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice package-type { case case_1 { leaf ggsn-pgw { description "GGSN packet gateway"; type empty; } } case case_2 { leaf sgw { description "Serving gateway"; type empty; } } } } } leaf tunnel-services { description "Tunnel services configuration"; type empty; } } grouping chassis_pic_type { leaf name { description "PIC slot number"; type uint32 { range "0 .. 3"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf pic-mode { description "PIC mode configuration"; default "10G"; type enumeration { enum 10G { description "10GE mode"; } enum 40G { description "40GE mode"; } enum 100G { description "100GE mode"; } } } list tunnel-port { key name; description "Tunnel port number"; uses chassis_port_type; } container tunnel-services { presence "enable tunnel-services"; description "Tunnel services configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Amount of bandwidth reserved for tunnel service"; type enumeration { enum 1g { description "1 gigabit per second"; } enum 10g { description "10 gigabits per second"; } enum 20g { description "20 gigabits per second"; } enum 30g { description "30 gigabits per second"; } enum 40g { description "40 gigabits per second"; } enum 50g { description "50 gigabits per second"; } enum 60g { description "60 gigabits per second"; } enum 70g { description "70 gigabits per second"; } enum 80g { description "80 gigabits per second"; } enum 90g { description "90 gigabits per second"; } enum 100g { description "100 gigabits per second"; } } } leaf tunnel-only { description "Support only tunnel traffic"; type empty; } } container inline-services { description "Inline services configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Amount of bandwidth reserved for inline service"; type enumeration { enum 1g { description "1 gigabit per second"; } enum 10g { description "10 gigabits per second"; } enum 20g { description "20 gigabits per second"; } enum 30g { description "30 gigabits per second"; } enum 40g { description "40 gigabits per second"; } } mandatory true; } presence "enable inline-services"; } choice adaptive-or-monitoring { case case_1 { container adaptive-services { description "Adaptive services configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container service-package { description "AS PIC service package"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice service-package-choice { case case_1 { leaf layer-3 { description "Layer 3 service package"; type empty; } } case case_2 { leaf layer-2 { description "Layer 2 service package"; type empty; } } case case_3 { leaf layer-2-3 { description "Combined Layer 2 and Layer 3 service package"; type empty; } } case case_4 { container extension-provider { description "Extension provider package configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf data-pollers { description "Number of cpus dedicated to poll data packets"; default "0"; type uint32 { range "0 .. 7"; } } container data-flow-affinity { presence "enable data-flow-affinity"; description "Enable flow affinity on data cores"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf hash-key { description "(null)"; type enumeration { enum layer-3 { description "Set layer-3 as hash key"; } enum layer-4 { description "Set layer-4 as hash key (default)"; } } } } leaf session-offload { description "Enable session offload"; type empty; } leaf no-default-packages { description "Do not load default packages"; type empty; } list package { key name; ordered-by user; description "Extension provider package to run on the PIC"; max-elements 21; leaf name { description "Name of package"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list syslog { key name; ordered-by user; description "System logging facility"; leaf name { description "Facility type"; type enumeration { enum external { description "Local external applications"; } enum pfe { description "Packet Forwarding Engine"; } enum daemon { description "Various system processes"; } enum kernel { description "Kernel"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice level { case case_1 { leaf any { description "All levels"; type empty; } } case case_2 { leaf emergency { description "Panic conditions"; type empty; } } case case_3 { leaf alert { description "Conditions that should be corrected immediately"; type empty; } } case case_4 { leaf critical { description "Critical conditions"; type empty; } } case case_5 { leaf error { description "Error conditions"; type empty; } } case case_6 { leaf warning { description "Warning messages"; type empty; } } case case_7 { leaf notice { description "Conditions that should be handled specially"; type empty; } } case case_8 { leaf info { description "Informational messages"; type empty; } } case case_9 { leaf none { description "No messages"; type empty; } } } leaf destination { description "Sylog destination"; type enumeration { enum routing-engine { description "Forward log messages to RE"; } enum pic-console { description "Forward to PIC console"; } } } } } } } } } } case case_2 { container monitoring-services { description "Monitoring services configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf application { description "Application mode"; type enumeration { enum dynamic-flow-capture { description "Dynamic flow capture mode"; } enum flow-collector { description "Flow collector mode"; } enum monitor { description "Monitor mode"; } } mandatory true; } presence "enable monitoring-services"; } } } leaf no-mcast-replication { description "No mcast replication"; type empty; } leaf framing { description "Framing mode"; type enumeration { enum sonet { description "SONET mode"; } enum sdh { description "SDH mode"; } enum t3 { description "T3 mode"; } enum e3 { description "E3 mode"; } enum t1 { description "T1 mode"; } enum e1 { description "E1 mode"; } enum lan { description "LAN mode"; } } } container synchronization { description "PIC synchronization source"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice source { case case_1 { leaf port { description "Port Number"; type uint32 { range "0 .. 11"; } } } } } container recovered-clock { description "Select recovered clock for this port"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port { description "Port Number"; type uint32 { range "0 .. 47"; } } } leaf vtmapping { description "Virtual tunnel mapping mode"; type enumeration { enum klm { description "KLM mode"; } enum itu-t { description "ITU-T mode"; } } } leaf no-concatenate { description "Do not concatenate channels"; type empty; } leaf no-multi-rate { description "Disable multi-rate mode"; type empty; } leaf channelization { description "Enable Channelization"; type empty; } leaf linerate-mode { description "Disable oversubscription. PIC operates in line rate mode"; type empty; } leaf speed { description "Port speed"; type enumeration { enum 1G { description "1GE-Gigabit Ethernet"; } } } leaf mixed-rate-mode { description "PIC operates in mixed-rate-mode. Speed and AE configurable for PIC Ports"; type empty; } leaf no-pre-classifier { description "No pre-classification of packets"; type empty; } leaf aggregate-ports { description "Aggregate multiple ports on a PIC as a single port"; type empty; } leaf number-of-ports { description "Number of physical ports to enable on PIC"; type uint32 { range "1 .. 23"; } } leaf power { description "Power off PIC"; type enumeration { enum off { description "Do not provide power to PIC"; } } } leaf pic-type { description "OID of PIC type to be configured"; type string { } } container aggregated-devices { description "Aggregated devices configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container ima { description "Aggregated device options for Inverse Multiplexing for ATM"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf device-count { description "Number of IMA groups"; type uint32 { range "1 .. 42"; } } } } leaf sparse-dlcis { description "Run in sparse data-link connection identifier mode"; type empty; } leaf multi-link-layer-2-inline { description "Enable inline layer-2 services"; type empty; } container q-pic-large-buffer { presence "enable q-pic-large-buffer"; description "Run in large delay buffer mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice buffer-type { case case_1 { leaf small-scale { description "Supports less number of interfaces"; type empty; } } case case_2 { leaf large-scale { description "Supports large number of interfaces"; type empty; } } } } container red-buffer-occupancy { description "Computation type for RED buffer occupancy"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container weighted-averaged { presence "enable weighted-averaged"; description "Weighted-average computation"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf instant-usage-weight-exponent { description "Weight for instant buffer usage (negative exponent of 2)"; type uint8; } } } container traffic-manager { description "Configure traffic manager attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ingress-shaping-overhead { description "Number of CoS shaping overhead bytes in ingress"; units "bytes"; type int32 { range "-63 .. 192"; } } leaf egress-shaping-overhead { description "Number of CoS shaping overhead bytes in egress"; units "bytes"; type int32 { range "-63 .. 192"; } } leaf mode { description "Configure traffic manager mode"; type enumeration { enum egress-only { description "Egress traffic manager enabled, ingress traffic manager disabled"; } enum session-shaping { description "Enable egress session shaping"; } enum ingress-and-egress { description "Enable the ingress and egress traffic managers"; } } } } container idle-cell-format { description "ATM idle cell configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf itu-t { description "ITU-T idle cell header format"; type empty; } leaf payload-pattern { description "Payload pattern byte (0x00-0xff)"; type string; } } container atm-l2circuit-mode { description "Enable ATM Layer 2 circuit transport mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice mode_choice { case case_1 { leaf aal5 { description "ATM Layer 2 circuit AAL5 mode"; type empty; } } case case_2 { leaf cell { description "ATM Layer 2 circuit cell mode"; type empty; } } case case_3 { container trunk { presence "enable trunk"; description "Set ATM Layer 2 circuit trunk mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice trunk-mode { case case_1 { container uni { presence "enable uni"; description "ATM Layer 2 circuit user-to-network interface trunk mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } case case_2 { container nni { presence "enable nni"; description "ATM Layer 2 circuit network-to-network interface trunk mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } } } } leaf atm-cell-relay-accumulation { description "Enable ATM cell-relay accumulation mode"; type empty; } container services-offload { presence "enable services-offload"; description "Enable services offload"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf mlfr-uni-nni-bundles { description "Number of multilink Frame Relay UNI NNI (FRF.16) bundles to allocate on PIC"; type uint32 { range "1 .. 255"; } } leaf mlfr-uni-nni-bundles-inline { description "Number of inline multilink frame relay UNI NNI bundles"; type uint32 { range "1 .. 255"; } } container ct3 { description "CT3 NxDS0 PIC configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list port { key name; description "CT3 port"; uses ct3_port_type; } } container ce1 { description "CE1 NxDS0 PIC configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list e1 { key name; description "E1 link"; uses ce1_channel_type; } } leaf max-queues-per-interface { description "Maximum number of queues per interface on QOS-capable PIC"; type enumeration { enum 4 { description "Maximum 4 queues per interface"; } enum 8 { description "Maximum 8 queues per interface"; } } } container shdsl { description "SHDSL chassis configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf pic-mode { description "PIC mode"; default "2-port-atm"; type enumeration { enum 1-port-atm { description "Single port ATM, 8 wire mode"; } enum 2-port-atm { description "Two port ATM, 4 wire mode"; } enum 4-port-atm { description "Four port ATM, 2 wire mode"; } } } } container ethernet { description "J-series Ethernet PIM mode configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf pic-mode { description "PIC mode"; default "routing"; type enumeration { enum switching { description "Switched mode of operation"; } enum routing { description "Routing mode of operation"; } enum enhanced-switching { description "Enhanced switching mode of operation"; } } } } leaf tunnel-queuing { description "Enable queueing for GRE/IPIP tunnels"; type empty; } list port-mirror-instance { key name; ordered-by user; description "(null)"; max-elements 2; leaf name { description "Associate a port mirroring instance with the PIC"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list port { key name; description "Port number"; uses chassis_pic_port_framing; } list port-range { key "port-range-low port-range-high"; ordered-by user; description "Physical ports to channelize"; leaf port-range-low { description "Port range low number"; type uint32 { range "0 .. 127"; } mandatory true; } leaf port-range-high { description "Port range high number"; type uint32 { range "0 .. 127"; } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf channel-speed { description "Port channel speed"; type enumeration { enum 10g { description "Set the port speed to 10G. This will restart PFE"; } } mandatory true; } } container fibre-channel { description "Fibre channel configuration option"; uses chassis_fibre_channel_type; } container xe { description "Ports configurable in 10G mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list port { key port-number; ordered-by user; description "Attribute port"; leaf port-number { description "Port number"; type uint32 { range "0 .. 53"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list port-range { key "port-range-low port-range-high"; ordered-by user; description "Attribute port range"; leaf port-range-low { description "Port range low number"; type uint32 { range "0 .. 52"; } } leaf port-range-high { description "Port range high number"; type uint32 { range "0 .. 53"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } container xle { description "Ports configurable in 40G mode "; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list port { key port-number; ordered-by user; description "Attribute port"; leaf port-number { description "Port number"; type uint32 { range "0 .. 53"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list port-range { key "port-range-low port-range-high"; ordered-by user; description "Attribute port range"; leaf port-range-low { description "Port range low number"; type uint32 { range "0 .. 52"; } } leaf port-range-high { description "Port range high number"; type uint32 { range "0 .. 53"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } container fte { description "Ports configurable in 40G HIGIG mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list port { key port-number; ordered-by user; description "Attribute port"; leaf port-number { description "Port number"; type uint32 { range "0 .. 53"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list port-range { key "port-range-low port-range-high"; ordered-by user; description "Attribute port range"; leaf port-range-low { description "Port range low number"; type uint32 { range "0 .. 52"; } } leaf port-range-high { description "Port range high number"; type uint32 { range "0 .. 53"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } list qsfp-port { key name; description "Qsfp port to configure"; leaf name { description "Port-group 0:'0-3' 1:'4-7'"; type uint32 { range "0 .. 1"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port-mode { description "Select mode for port-group"; type enumeration { enum 40g { description "40G mode"; } enum 10g { description "10G mode"; } } } } container sfpplus { description "Sfpplus configuration option"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf pic-mode { description "PIC mode"; type enumeration { enum 1g { description "1G SFP mode"; } enum 10g { description "10G SFP+ mode"; } } } } container hash-key { description "Select data used in the hash key"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container family { description "Protocol family"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container inet { description "IPv4 protocol family"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container layer-3 { presence "enable layer-3"; description "Include Layer 3 (IP) data in the hash key"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf destination-address { description "Include IP destination address in the hash key"; type empty; } } container layer-4 { presence "enable layer-4"; description "Include Layer 4 (TCP or UDP) data in the hash key"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container symmetric-hash { presence "enable symmetric-hash"; description "Create symmetric hash-key with source & dest ports"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf complement { description "Create complement of symmetric hash-key"; type empty; } } } container multiservice { description "Multiservice protocol family"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-mac { description "Include source MAC address in hash key"; type empty; } leaf destination-mac { description "Include destination MAC address in hash key"; type empty; } container payload { description "Include payload data in the hash key"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container ip { description "Include IPv4 payload data in the hash key"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container layer-3 { presence "enable layer-3"; description "Include layer-3 ip info for VPLS/Bridge"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice layer-3-options { case case_1 { leaf source-ip-only { description "Include source IP only in hash-key"; type empty; } } case case_2 { leaf destination-ip-only { description "Include desintation IP only in hash-key"; type empty; } } } } leaf layer-4 { description "Include layer-4 IP information for VPLS/Bridge"; type empty; } } } container symmetric-hash { presence "enable symmetric-hash"; description "Create a/symmetric hash-key with any attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf complement { description "Create complement of symmetric hash-key"; type empty; } } } } } leaf ingress-policer-overhead { description "Number of policer overhead bytes in ingress"; units "bytes"; type uint32 { range "0 .. 255"; } } leaf egress-policer-overhead { description "Number of policer overhead bytes in egress"; units "bytes"; type uint32 { range "0 .. 255"; } } leaf account-layer2-overhead { description "Account Layer2 overhead in egress and ingress IFD/IFL stats"; type empty; } container forwarding-mode { description "Set 100GE PIC packet distribution mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice cap-fpga-packet-distribution-mode { case case_1 { leaf sa-multicast { description "Used for Juniper CGE to Juniper 100GE PIC back to back connection"; type empty; } } case case_2 { container vlan-steering { presence "enable vlan-steering"; description "Steer packet by VLAN id, interoperate with other vendors"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf vlan-rule { description "Set 100GE PIC forwarding VLAN rule"; type enumeration { enum odd-even { description "Even number VLAN id processed by PFE0; odd number by PFE1"; } enum high-low { description "VLAN 1~2047 processed by PFE0; others by PFE1"; } } mandatory true; } } } } } } grouping ce1_channel_type { leaf name { description "E1 link number"; type uint32 { range "0 .. 9"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list channel-group { key name; description "Define channel group"; leaf name { description "Channel group number"; type uint32 { range "0 .. 23"; } } leaf timeslots { description "DS0 timeslots (1..31); for example, 1-3,4,9,22-24 (no spaces)"; type string; } } } grouping chassis_fibre_channel_type { description "Fibre channel configuration option"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list port { key name; ordered-by user; description "Fibre channel port"; leaf name { description "Port number for fibre channel mode"; type uint32 { range "0 .. 47"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list port-range { key "port-range-low port-range-high"; ordered-by user; description "Fibre channel port range"; leaf port-range-low { description "Port range low number"; type uint32 { range "0 .. 47"; } } leaf port-range-high { description "Port range high number"; type uint32 { range "0 .. 47"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } grouping chassis_pic_port_framing { leaf name { description "Port number"; type uint32 { range "0 .. 127"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf framing { description "Framing mode"; type enumeration { enum sonet { description "SONET mode"; } enum sdh { description "SDH mode"; } enum t3 { description "T3 mode"; } enum e3 { description "E3 mode"; } enum t1 { description "T1 mode"; } enum e1 { description "E1 mode"; } } } leaf speed { description "Port speed"; type enumeration { enum oc3-stm1 { description "OC3 or STM1"; } enum oc12-stm4 { description "OC12 or STM4"; } enum oc48-stm16 { description "OC48 or STM16"; } enum 1G { description "1GE-Gigabit Ethernet"; } enum 10g { description "Sets the interface mode to 10Gbps"; } enum 40g { description "Sets the interface mode to 40Gbps"; } } } leaf channel-speed { description "Port channel speed"; type enumeration { enum 10g { description "Set the port speed to 10G. This will restart PFE"; } } } container forwarding-mode { description "PIC packet distribution mode - Brooklyn interop mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf sa-multicast { description "SA multicast mode - interop with 100G Brooklyn PIC"; type empty; } } } grouping chassis_port_type { leaf name { description "Port number for tunnel services"; type uint32 { range "0 .. 47"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf tunnel-services { description "Tunnel services configuration"; type empty; } } grouping chassis_redundancy_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list routing-engine { key name; description "Redundancy options for Routing Engines"; uses chassis_rdd_re_type; } list ssb { key name; description "Redundancy options for System Switch Boards"; uses chassis_rdd_id_type; } list cfeb { key name; description "Redundancy options for Compact Forwarding Engine Boards"; uses chassis_rdd_cfeb_id_type; } list sfm { key name; description "Redundancy options for Switching and Forwarding Modules"; uses chassis_rdd_sfm_id_type; } container failover { description "Failover to other Routing Engine"; uses chassis_rdd_failover_type; } leaf keepalive-time { description "Time before Routing Engine failover"; units "seconds"; type uint32 { range "2 .. 10000"; } } container graceful-switchover { description "Enable graceful switchover on supported hardware"; uses chassis_non_stop_forwarding_type; } container feb { description "Forwarding Engine Board redundancy configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list redundancy-group { key name; description "(null)"; leaf name { description "Name of FEB redundancy group"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf description { description "Text description of FEB redundancy group"; type string; } list feb { key name; description "Redundancy settings for a Forwarding Engine Board"; leaf name { description "Slot number"; type uint32 { range "0 .. 5"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice redundancy-option { case case_1 { leaf primary { description "FEB is default master in the redundancy group"; type empty; } } case case_2 { leaf backup { description "FEB is backup in the redundancy group"; type empty; } } } } leaf no-auto-failover { description "Disable automatic FEB failover"; type empty; } } } } grouping chassis_non_stop_forwarding_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } grouping chassis_rdd_cfeb_id_type { leaf name { description "CFEB slot number"; type uint32 { range "0 .. 1"; } } choice priority { case case_1 { leaf always { description "Sole device"; type empty; } } case case_2 { leaf preferred { description "Preferred device"; type empty; } } } } grouping chassis_rdd_failover_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf on-loss-of-keepalives { description "Failover on loss of keepalives"; type empty; } leaf on-disk-failure { description "Failover on disk failure"; type empty; } leaf not-on-disk-underperform { description "Prevent gstatd from initiating failovers in response to slow disks"; type empty; } } grouping chassis_rdd_id_type { leaf name { description "SSB slot number"; type uint32 { range "0 .. 1"; } } choice priority { case case_1 { leaf always { description "Sole device"; type empty; } } case case_2 { leaf preferred { description "Preferred device"; type empty; } } } } grouping chassis_rdd_re_type { leaf name { description "Routing Engine slot number"; type uint32 { range "0 .. 1"; } } choice priority { case case_1 { leaf master { description "Master Routing Engine"; type empty; } } case case_2 { leaf backup { description "Backup Routing Engine"; type empty; } } case case_3 { leaf disabled { description "Routing Engine disabled"; type empty; } } } } grouping chassis_rdd_sfm_id_type { leaf name { description "SFM slot number"; type uint32 { range "0 .. 5"; } } choice priority { case case_1 { leaf always { description "Sole device"; type empty; } } case case_2 { leaf preferred { description "Preferred device"; type empty; } } } } grouping chassis_routing_engine_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container on-disk-failure { description "Action to take when Routing Engine disk fails"; uses chassis_re_on_disk_failure; } container control-interface { presence "enable control-interface"; description "Configure recovery method and pause frame for control interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf recovery-method { description "Select the recovery method"; type enumeration { enum disable-recovery { description "Don't enable recovery"; } enum socket { description "Recovery by using socket"; } enum counter { description "Recovery by using BCM-Counters"; } } } leaf pause-frame { description "Enable or disable Pause frame generation"; type empty; } } container bios { description "Routing Engine BIOS"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-auto-upgrade { description "Disable routing-engine BIOS auto-upgrade"; type empty; } } container usb-wwan { description "Enable WWAN (3G) access on the USB port"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port { description "Select the port"; type enumeration { enum 0 { description "Select port 0 to enable WWAN access"; } enum 1 { description "Select port 1 to enable WWAN access"; } } mandatory true; } presence "enable usb-wwan"; } } grouping chassis_re_on_disk_failure { choice reboot_or_halt { case case_1 { leaf disk-failure-action { description "(null)"; type enumeration { enum reboot { description "Reboot on disk failure"; } enum halt { description "Halt on disk failure"; } } } } } } grouping chassis_sfm_type { leaf name { description "SFM slot number"; type uint32 { range "0 .. 5"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice cache { } leaf power { description "Power SFMs on or off"; type enumeration { enum off { description "Do not provide power to SFMs"; } enum on { description "Provide power to SFMs"; } } } choice mode { } } grouping chassis_sib_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum { description "Minimum number of Switch Interface Boards required for normal operation"; type uint32 { range "2 .. 4"; } } container power-off { description "Power off the SIB slot"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list slot { key name; ordered-by user; description "SIB slot number to be powered off"; leaf name { description "SIB slot number to be offlined"; type uint32 { range "0 .. 15"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } grouping chassisd-redundancy-group-type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container interface-type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container redundant-logical-tunnel { description "Redundant logical tunnel interface group"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf device-count { description "Number of devices"; type uint32 { range "1 .. 255"; } } } } } grouping chassisd_agg_container_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf device-count { description "Number of container devices"; type uint32 { range "1 .. 128"; } } } grouping chassisd_agg_enet_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf device-count { description "Number of aggregated Ethernet devices"; type uint32 { range "1 .. 1000"; } } container lacp { description "Global Link Aggregation Control Protocol configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf system-priority { description "Priority of the system (0 ... 65535)"; type string; } container link-protection { presence "enable link-protection"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf non-revertive { description "Don't revert links when better priority link comes up"; type empty; } } } } grouping chassisd_agg_pos_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf device-count { description "Number of aggregated SONET devices"; type uint32 { range "1 .. 64"; } } } grouping chassisd_provider_instance_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf device-count { description "Number of provider instance port devices"; type uint32 { range "1 .. 16"; } } } grouping client-address-object { description "Client address"; leaf name { description "Address or prefix"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf restrict { description "Deny access"; type empty; } } grouping collector_destinations_type { leaf name { description "FTP destination URL (allows {text} macros)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf password { description "Password for accessing URL"; type unreadable; } } grouping collector_transfer_log_archive_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf filename-prefix { description "Filename prefix for transfer log"; type string { } mandatory true; } leaf maximum-age { description "Maximum age of transfer log file"; default "15"; units "minutes"; type uint32 { range "1 .. 360"; } } list archive-sites { key name; ordered-by user; description "(null)"; max-elements 5; leaf name { description "Primary and failover URLs to receive archive files"; type string; } leaf password { description "Password to log in to the archive site"; type unreadable; } } } grouping comm-object { description "Specify snmp-community name"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf snmp-community { description "Specify community name"; type string { length "1 .. 32"; } mandatory true; } leaf no-default-comm-to-v3-config { description "No default snmp-community and v3 configuration"; type empty; } } grouping cos_application_profile_object { leaf name { description "Profile name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container sip { presence "enable sip"; description "CoS treatment of Session Initiation Protocol data"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container voice { presence "enable voice"; description "CoS treatment of SIP voice data"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf dscp { description "Code point alias or bit string"; type string { } } leaf forwarding-class { description "Forwarding class assigned to outgoing packets"; type string { } } } container video { presence "enable video"; description "CoS treatment of SIP video data"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf dscp { description "Code point alias or bit string"; type string { } } leaf forwarding-class { description "Forwarding class assigned to outgoing packets"; type string { } } } } container ftp { presence "enable ftp"; description "CoS treatment for FTP data"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container data { presence "enable data"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf dscp { description "Code point alias or bit string"; type string { } } leaf forwarding-class { description "Forwarding class assigned to outgoing packets"; type string { } } } } } grouping cos_policer { description "Define a CoS based policer"; leaf name { description "Policer name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container premium { description "Policer to apply to premium traffic"; uses ethernet_policer; } container aggregate { description "Policer to apply to aggregate traffic"; uses ethernet_policer; } } grouping cos_policer_input_priority_map { description "Input policer priority map"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container ieee-802.1p { description "Use IEEE 802.1p to determine policer priority map"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list premium { description "Input traffic's IEEE 802.1p value to which premium policer is applied"; type uint32 { range "0 .. 7"; } } } } grouping cos_policer_output_priority_map { description "Output policer priority map"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container classifier { description "Use classifier as policer priority map"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container premium { description "Output traffic classifier to which premium policer is applied"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list forwarding-class { key name; ordered-by user; description "Select a classification for this priority map"; leaf name { description "Forwarding class name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list loss-priority { key name; ordered-by user; description "Select a loss priority"; leaf name { description "(null)"; type enumeration { enum low { description "Select low loss priority as premium policer"; } enum high { description "Select high loss priority as premium policer"; } } } } } } } } grouping cos_rule_object { leaf name { description "Rule name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf match-direction { description "Direction for which the rule match is applied"; type enumeration { enum input { description "Match on input to interface"; } enum output { description "Match on output from interface"; } enum input-output { description "Match on input to or output from interface"; } } mandatory true; } list term { key name; ordered-by user; description "One or more terms in CoS rule"; leaf name { description "Term name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Match criteria"; uses sfw_match_object; } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf dscp { description "Code point alias or bit string"; type string { } } leaf forwarding-class { description "Forwarding class assigned to outgoing packets"; type string { } } leaf application-profile { description "CoS application profile"; type string { } } leaf syslog { description "System log information about the packet"; type empty; } choice designation { case case_1 { leaf reflexive { description "Apply mirror rule to reverse traffic"; type empty; } } case case_2 { container reverse { presence "enable reverse"; description "CoS treatment for reverse traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf dscp { description "Code point alias or bit string"; type string { } } leaf forwarding-class { description "Forwarding class assigned to outgoing packets"; type string { } } leaf application-profile { description "CoS application profile"; type string { } } leaf syslog { description "System log information about the packet"; type empty; } } } } } } } grouping cpcd-rule-object-type { leaf name { description "Rule name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf match-direction { description "Direction for which the rule match is applied"; type enumeration { enum input { description "Match on input to interface"; } enum output { description "Match on output from interface"; } enum input-output { description "Match on input to or output from interface"; } } mandatory true; } list term { key name; ordered-by user; description "Define a captive portal content delivery term"; leaf name { description "Term name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Define match criteria"; uses cpcd-match-object-type; } container then { description "Action to take if the 'from' condition is matched"; uses cpcd-action-object-type; } } } grouping cpcd-action-object-type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice designation { case case_1 { leaf accept { description "Accept the packet"; type empty; } } case case_2 { container rewrite { presence "enable rewrite"; description "Rewrite the IP-DA of the packet"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf destination-address { description "The destination IP address"; type ipaddr; } leaf destination-port { description "The destination port"; type uint16 { range "1 .. 65535"; } } } } case case_3 { container redirect { presence "enable redirect"; description "Redirect the http packet"; leaf url { description "URL of the captive portal file"; type string { } } } } } leaf syslog { description "System log information about the packet"; type empty; } } grouping cpcd-match-object-type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list destination-address { key name; ordered-by user; description "Match IP destination address"; leaf name { description "Match IP address"; type string; } leaf except { description "Match address not in this prefix"; type empty; } } list destination-address-range { key "low high"; ordered-by user; description "Match IP destination address range"; leaf low { description "Lower limit of address range"; type ipaddr; } leaf high { description "Upper limit of address range"; type ipaddr; } leaf except { description "Match address not in this prefix"; type empty; } } list destination-prefix-list { key name; ordered-by user; description "One or more named lists of destination prefixes to match"; leaf name { description "Name of prefix list to match against"; type string; } leaf except { description "Name of prefix list not to match against"; type empty; } } list applications { key name; ordered-by user; description "Match one or more applications"; leaf name { description "(null)"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf application-protocol { description "Application protocol type"; type enumeration { enum bootp { description "Bootstrap protocol"; } enum dce-rpc { description "DCE RPC"; } enum dce-rpc-portmap { description "DCE RPC portmap"; } enum dns { description "Domain Name Service"; } enum exec { description "Remote Execution Protocol"; } enum ftp { description "File Transfer Protocol"; } enum gprs-gtp-c { description "GPRS Tunneling Control Plane"; } enum gprs-gtp-u { description "GPRS Tunneling User Plane"; } enum gprs-gtp-v0 { description "GPRS Tunneling Version 0"; } enum gprs-sctp { description "GPRS Stream Control Protocol"; } enum h323 { description "H.323"; } enum icmp { description "ICMP"; } enum icmpv6 { description "ICMPv6"; } enum ignore { description "Ignore application type"; } enum iiop { description "Internet Inter-ORB Protocol"; } enum ike-esp-nat { description "IKE/ESP with NAT"; } enum ip { description "IP"; } enum login { description "Login"; } enum mgcp-ca { description "MGCP-CA"; } enum mgcp-ua { description "MGCP-UA"; } enum ms-rpc { description "Microsoft RPC"; } enum netbios { description "NetBIOS"; } enum netshow { description "NetShow"; } enum pptp { description "Point-to-Point Tunneling Protocol"; } enum q931 { description "Q.931"; } enum ras { description "RAS"; } enum realaudio { description "RealAudio"; } enum rpc { description "RPC"; } enum rpc-portmap { description "RPC portmap"; } enum rsh { description "Remote Shell"; } enum rtsp { description "Real Time Streaming Protocol"; } enum sccp { description "Skinny Client Control Protocol"; } enum sip { description "Session Initiation Protocol"; } enum shell { description "Shell"; } enum snmp { description "SNMP"; } enum sqlnet { description "SQLNet"; } enum sqlnet-v2 { description "Oracle SQL*Net Version 2"; } enum sun-rpc { description "Sun Microsystems RPC"; } enum talk { description "Talk Program"; } enum tftp { description "Trivial File Transfer Protocol"; } enum traceroute { description "Traceroute"; } enum winframe { description "WinFrame"; } } } leaf protocol { description "Match IP protocol type"; type string; } leaf source-port { description "Match TCP/UDP source port"; type string; } leaf destination-port { description "Match TCP/UDP destination port"; type string; } } } grouping cpcd-trace-options-type { description "Trace options for captive portal and content delivery service"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Captive portal operations to include in debugging trace"; leaf name { description "(null)"; type enumeration { enum configuration { description "Configuration operations"; } enum clicommand { description "Cli command operations"; } enum general { description "Miscellaneous operations"; } enum rtsock { description "Routing socket operations"; } enum statistics { description "Statistics operations"; } enum rules { description "Rules operations"; } enum ssets { description "Service sets operations"; } enum ipc { description "RE-PIC operations"; } enum gres { description "GRES operations"; } enum all { description "All operations"; } } } } } grouping ct3_port_type { leaf name { description "CT3 L2NG_PRODUCTSport number"; type int32 { range "0 .. 1"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list t1 { key name; description "T1 link"; uses ct3_channel_type; } } grouping ct3_channel_type { leaf name { description "T1 link number"; type int32 { range "0 .. 27"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list channel-group { key name; description "Define channel group"; leaf name { description "Channel group number"; type uint32 { range "0 .. 7"; } } leaf timeslots { description "DS0 timeslots (1..24); for example, 1-3,4,9,22-24 (no spaces)"; type string; } } } grouping custom-attack-group-type { description "Define custom attack group"; leaf name { description "Custom attack group name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list group-members { description "List of attacks/attack groups belonging to this group"; type string; } } grouping custom-attack-type { description "Define custom attack"; leaf name { description "Custom attack name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf recommended-action { description "Recommended Action"; type enumeration { enum none { description "No action"; } enum ignore { description "No further inspection on the flow"; } enum drop-packet { description "Drop the packet"; } enum drop { description "Drop the packet and subsequent packets of the flow"; } enum close-client { description "Reset the client side"; } enum close-server { description "Reset the server side"; } enum close { description "Reset both client and server"; } } } leaf severity { description "Select the severity that matches the lethality of this attack on your network"; type enumeration { enum info { description "Provide information of attack when it matches."; } enum warning { description "Issue a warning when attack matches."; } enum minor { description "The attack is a minor one."; } enum major { description "The attack is a major one."; } enum critical { description "The attack is a critical one."; } } } container time-binding { description "Time binding params"; leaf count { description "Number of times this attack is to be triggered"; type uint32; } leaf scope { description "Scope within which the count occurs"; type enumeration { enum peer { description "If the attack is between a single source and single destination"; } enum source { description "If the attack is from one source and multiple destination"; } enum destination { description "If the attack is from multiple sources to one destination"; } } } } container attack-type { description "Type of attack"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container signature { description "Signature based attack"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container protocol-binding { description "Protocol binding over which attack will be detected"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice protocol { case case_1 { container tcp { presence "enable tcp"; description "Attack is for TCP packets only"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list minimum-port { key name; ordered-by user; description "Multiple sets of (single port/port ranges) can be specified"; uses port-range; } } } case case_2 { container udp { presence "enable udp"; description "Attack is for UDP packets only"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list minimum-port { key name; ordered-by user; description "Either single port or port ranges can be specified"; uses port-range; } } } case case_3 { container rpc { presence "enable rpc"; description "Attack is for RPC packets only"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf program-number { description "RPC Program Number"; type uint32; mandatory true; } } } case case_4 { leaf icmp { description "Attack is for ICMP packets only"; type empty; } } case case_5 { leaf icmpv6 { description "Attack is for ICMPv6 packets only"; type empty; } } case case_6 { container ip { presence "enable ip"; description "Attack is for all IP based packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf protocol-number { description "Transport layer protocol number"; type uint32 { range "0 .. 139"; } mandatory true; } } } case case_7 { container ipv6 { presence "enable ipv6"; description "Attack is for all IPv6 based packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf protocol-number { description "Transport layer protocol number"; type uint32 { range "0 .. 139"; } mandatory true; } } } case case_8 { leaf application { description "Application name"; type string; } } case case_9 { leaf nested-application { description "Nested application name"; type string; } } } } leaf context { description "Context"; type string; mandatory true; } presence "enable signature"; leaf pattern { description "Pattern is the signature of the attack you want to detect"; type string; } leaf regexp { description "Regular expression used for matching repetition of patterns"; type string; } leaf negate { description "Trigger the attack if condition is not met"; type empty; } leaf direction { description "Connection direction of the attack"; type enumeration { enum client-to-server { description "Client to Server"; } enum server-to-client { description "Server to Client"; } enum any { description "Any direction"; } } mandatory true; } leaf shellcode { description "Specify shellcode flag for this attack"; type enumeration { enum intel { description "Detect shellcode for intel platforms"; } enum sparc { description "Detect shellcode for sparc platforms"; } enum all { description "Detect shellcode for both intel and sparc platforms"; } enum no-shellcode { description "Do not detect shellcode"; } } } container protocol { description "Protocol header matches"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container ipv4 { description "IPv4 protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container tos { presence "enable tos"; description "Type of Service"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 255"; } mandatory true; } } container total-length { presence "enable total-length"; description "Total Length of IP datagram"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 65535"; } mandatory true; } } container identification { presence "enable identification"; description "Fragment Identification"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 65535"; } mandatory true; } } container ip-flags { presence "enable ip-flags"; description "IP Flag bits"; leaf rb { description "Reserved bit"; type empty; } leaf no-rb { description "Reserved bit"; type empty; } leaf mf { description "More Fragment bit"; type empty; } leaf no-mf { description "More Fragment bit"; type empty; } leaf df { description "Don't Fragment bit"; type empty; } leaf no-df { description "Don't Fragment bit"; type empty; } } container ttl { presence "enable ttl"; description "Time to live"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 255"; } mandatory true; } } container protocol { presence "enable protocol"; description "Transport layer protocol"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 255"; } mandatory true; } } container source { presence "enable source"; description "Source IP-address/Hostname"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type ipv4addr; mandatory true; } } container destination { presence "enable destination"; description "Destination IP-address/Hostname"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type ipv4addr; mandatory true; } } } container ipv6 { description "IPv6 protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traffic-class { presence "enable traffic-class"; description "Traffic class. Similar to TOS in IPv4"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 255"; } mandatory true; } } container payload-length { presence "enable payload-length"; description "Length of the payload in the IPv6 datagram"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 65535"; } mandatory true; } } container flow-label { presence "enable flow-label"; description "Flow label identification"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 1048575"; } mandatory true; } } container hop-limit { presence "enable hop-limit"; description "Hop limit"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 255"; } mandatory true; } } container next-header { presence "enable next-header"; description "The header following the basic IPv6 header"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 255"; } mandatory true; } } container source { presence "enable source"; description "Source IP-address or hostname"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type ipv6addr; mandatory true; } } container destination { presence "enable destination"; description "Destination IP-address or hostname"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type ipv6addr; mandatory true; } } } container tcp { description "TCP protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container source-port { presence "enable source-port"; description "Source port"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 65535"; } mandatory true; } } container destination-port { presence "enable destination-port"; description "Destination port"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 65535"; } mandatory true; } } container sequence-number { presence "enable sequence-number"; description "Sequence Number"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 4294967295"; } mandatory true; } } container ack-number { presence "enable ack-number"; description "Acknowledgement Number"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 4294967295"; } mandatory true; } } container header-length { presence "enable header-length"; description "Header Length in words"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 15"; } mandatory true; } } container window-size { presence "enable window-size"; description "Window Size"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 65535"; } mandatory true; } } container urgent-pointer { presence "enable urgent-pointer"; description "Urgent Pointer"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 65535"; } mandatory true; } } container tcp-flags { presence "enable tcp-flags"; description "TCP header flags"; leaf r1 { description "Set Reserverd bit 1"; type empty; } leaf no-r1 { description "Set Reserverd bit 1"; type empty; } leaf r2 { description "Set Reserved bit 2"; type empty; } leaf no-r2 { description "Set Reserved bit 2"; type empty; } leaf urg { description "Set Urgent bit"; type empty; } leaf no-urg { description "Set Urgent bit"; type empty; } leaf ack { description "Set Acknowledge bit"; type empty; } leaf no-ack { description "Set Acknowledge bit"; type empty; } leaf psh { description "Set Push bit"; type empty; } leaf no-psh { description "Set Push bit"; type empty; } leaf rst { description "Set Reset bit"; type empty; } leaf no-rst { description "Set Reset bit"; type empty; } leaf syn { description "Set SYN bit"; type empty; } leaf no-syn { description "Set SYN bit"; type empty; } leaf fin { description "Set FINish bit"; type empty; } leaf no-fin { description "Set FINish bit"; type empty; } } container option { presence "enable option"; description "Kind"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 255"; } mandatory true; } } container data-length { presence "enable data-length"; description "Size of IP datagram subtracted by TCP header length"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "2 .. 255"; } mandatory true; } } container window-scale { presence "enable window-scale"; description "Window scale"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 255"; } mandatory true; } } container mss { presence "enable mss"; description "Maximum Segment Size"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 65535"; } mandatory true; } } } container udp { description "UDP protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container source-port { presence "enable source-port"; description "Source port"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 65535"; } mandatory true; } } container destination-port { presence "enable destination-port"; description "Destination port"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 65535"; } mandatory true; } } container data-length { presence "enable data-length"; description "Size of IP datagram subtracted by UDP header length"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 65535"; } mandatory true; } } } container icmp { description "ICMP protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container type { presence "enable type"; description "Type"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 255"; } mandatory true; } } container code { presence "enable code"; description "Code"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 255"; } mandatory true; } } container identification { presence "enable identification"; description "Identifier in echo request/reply"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 65535"; } mandatory true; } } container sequence-number { presence "enable sequence-number"; description "Sequence Number"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 65535"; } mandatory true; } } container data-length { presence "enable data-length"; description "Size of IP datagram subtracted by ICMP header length"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 65535"; } mandatory true; } } } container icmpv6 { description "ICMPv6 protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container type { presence "enable type"; description "Type"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 255"; } mandatory true; } } container code { presence "enable code"; description "Code"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 255"; } mandatory true; } } container identification { presence "enable identification"; description "Identifier in echo request/reply"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 65535"; } mandatory true; } } container sequence-number { presence "enable sequence-number"; description "Sequence number"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 65535"; } mandatory true; } } container data-length { presence "enable data-length"; description "Size of IPv6 datagram subtracted by ICMPv6 header length"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 255"; } mandatory true; } } } } } container anomaly { description "Protocol anomaly"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf service { description "Service name"; type string; mandatory true; } presence "enable anomaly"; leaf test { description "Protocol anomaly condition to be checked"; type string; mandatory true; } leaf direction { description "Direction"; type enumeration { enum client-to-server { description "From Client to Server"; } enum server-to-client { description "From Server to Client"; } enum any { description "Any direction"; } } mandatory true; } leaf shellcode { description "Specify shellcode flag for this attack"; type enumeration { enum intel { description "Detect shellcode for intel platforms"; } enum sparc { description "Detect shellcode for sparc platforms"; } enum all { description "Detect shellcode for both intel and sparc platforms"; } enum no-shellcode { description "Do not detect shellcode"; } } } } container chain { description "Chain attack"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container protocol-binding { description "Protocol binding over which attack will be detected"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice protocol { case case_1 { container tcp { presence "enable tcp"; description "Attack is for TCP packets only"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list minimum-port { key name; ordered-by user; description "Multiple sets of (single port/port ranges) can be specified"; uses port-range; } } } case case_2 { container udp { presence "enable udp"; description "Attack is for UDP packets only"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list minimum-port { key name; ordered-by user; description "Either single port or port ranges can be specified"; uses port-range; } } } case case_3 { container rpc { presence "enable rpc"; description "Attack is for RPC packets only"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf program-number { description "RPC Program Number"; type uint32; mandatory true; } } } case case_4 { leaf icmp { description "Attack is for ICMP packets only"; type empty; } } case case_5 { leaf icmpv6 { description "Attack is for ICMPv6 packets only"; type empty; } } case case_6 { container ip { presence "enable ip"; description "Attack is for all IP based packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf protocol-number { description "Transport layer protocol number"; type uint32 { range "0 .. 139"; } mandatory true; } } } case case_7 { container ipv6 { presence "enable ipv6"; description "Attack is for all IPv6 based packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf protocol-number { description "Transport layer protocol number"; type uint32 { range "0 .. 139"; } mandatory true; } } } case case_8 { leaf application { description "Application name"; type string; } } case case_9 { leaf nested-application { description "Nested application name"; type string; } } } } leaf scope { description "Scope of the attack"; type enumeration { enum session { description "Allow matches across transactions within the same session"; } enum transaction { description "Allow matches in single transactions within the same session"; } } } leaf order { description "Attacks should match in the order in which they are defined"; type empty; } leaf reset { description "Repeat match should generate a new alert"; type empty; } leaf expression { description "Boolean Expression"; type string; } list member { key name; ordered-by user; description "List of member attacks."; uses chain-member-type; } } } } grouping chain-member-type { description "Chain member"; leaf name { description "Custom attack name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container attack-type { presence "enable attack-type"; description "Type of attack"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container signature { description "Signature based attack"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf context { description "Context"; type string; mandatory true; } presence "enable signature"; leaf pattern { description "Pattern is the signature of the attack you want to detect"; type string; } leaf regexp { description "Regular expression used for matching repetition of patterns"; type string; } leaf negate { description "Trigger the attack if condition is not met"; type empty; } leaf direction { description "Connection direction of the attack"; type enumeration { enum client-to-server { description "Client to Server"; } enum server-to-client { description "Server to Client"; } enum any { description "Any direction"; } } mandatory true; } leaf shellcode { description "Specify shellcode flag for this attack"; type enumeration { enum intel { description "Detect shellcode for intel platforms"; } enum sparc { description "Detect shellcode for sparc platforms"; } enum all { description "Detect shellcode for both intel and sparc platforms"; } enum no-shellcode { description "Do not detect shellcode"; } } } container protocol { description "Protocol header matches"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container ipv4 { description "IPv4 protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container tos { presence "enable tos"; description "Type of Service"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 255"; } mandatory true; } } container total-length { presence "enable total-length"; description "Total Length of IP datagram"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 65535"; } mandatory true; } } container identification { presence "enable identification"; description "Fragment Identification"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 65535"; } mandatory true; } } container ip-flags { presence "enable ip-flags"; description "IP Flag bits"; leaf rb { description "Reserved bit"; type empty; } leaf no-rb { description "Reserved bit"; type empty; } leaf mf { description "More Fragment bit"; type empty; } leaf no-mf { description "More Fragment bit"; type empty; } leaf df { description "Don't Fragment bit"; type empty; } leaf no-df { description "Don't Fragment bit"; type empty; } } container ttl { presence "enable ttl"; description "Time to live"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 255"; } mandatory true; } } container protocol { presence "enable protocol"; description "Transport layer protocol"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 255"; } mandatory true; } } container source { presence "enable source"; description "Source IP-address/Hostname"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type ipv4addr; mandatory true; } } container destination { presence "enable destination"; description "Destination IP-address/Hostname"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type ipv4addr; mandatory true; } } } container ipv6 { description "IPv6 protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traffic-class { presence "enable traffic-class"; description "Traffic class. Similar to TOS in IPv4"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 255"; } mandatory true; } } container payload-length { presence "enable payload-length"; description "Length of the payload in the IPv6 datagram"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 65535"; } mandatory true; } } container flow-label { presence "enable flow-label"; description "Flow label identification"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 1048575"; } mandatory true; } } container hop-limit { presence "enable hop-limit"; description "Hop limit"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 255"; } mandatory true; } } container next-header { presence "enable next-header"; description "The header following the basic IPv6 header"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 255"; } mandatory true; } } container source { presence "enable source"; description "Source IP-address or hostname"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type ipv6addr; mandatory true; } } container destination { presence "enable destination"; description "Destination IP-address or hostname"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type ipv6addr; mandatory true; } } } container tcp { description "TCP protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container source-port { presence "enable source-port"; description "Source port"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 65535"; } mandatory true; } } container destination-port { presence "enable destination-port"; description "Destination port"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 65535"; } mandatory true; } } container sequence-number { presence "enable sequence-number"; description "Sequence Number"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 4294967295"; } mandatory true; } } container ack-number { presence "enable ack-number"; description "Acknowledgement Number"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 4294967295"; } mandatory true; } } container header-length { presence "enable header-length"; description "Header Length in words"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 15"; } mandatory true; } } container window-size { presence "enable window-size"; description "Window Size"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 65535"; } mandatory true; } } container urgent-pointer { presence "enable urgent-pointer"; description "Urgent Pointer"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 65535"; } mandatory true; } } container tcp-flags { presence "enable tcp-flags"; description "TCP header flags"; leaf r1 { description "Set Reserverd bit 1"; type empty; } leaf no-r1 { description "Set Reserverd bit 1"; type empty; } leaf r2 { description "Set Reserved bit 2"; type empty; } leaf no-r2 { description "Set Reserved bit 2"; type empty; } leaf urg { description "Set Urgent bit"; type empty; } leaf no-urg { description "Set Urgent bit"; type empty; } leaf ack { description "Set Acknowledge bit"; type empty; } leaf no-ack { description "Set Acknowledge bit"; type empty; } leaf psh { description "Set Push bit"; type empty; } leaf no-psh { description "Set Push bit"; type empty; } leaf rst { description "Set Reset bit"; type empty; } leaf no-rst { description "Set Reset bit"; type empty; } leaf syn { description "Set SYN bit"; type empty; } leaf no-syn { description "Set SYN bit"; type empty; } leaf fin { description "Set FINish bit"; type empty; } leaf no-fin { description "Set FINish bit"; type empty; } } container option { presence "enable option"; description "Kind"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 255"; } mandatory true; } } container data-length { presence "enable data-length"; description "Size of IP datagram subtracted by TCP header length"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "2 .. 255"; } mandatory true; } } container window-scale { presence "enable window-scale"; description "Window scale"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 255"; } mandatory true; } } container mss { presence "enable mss"; description "Maximum Segment Size"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 65535"; } mandatory true; } } } container udp { description "UDP protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container source-port { presence "enable source-port"; description "Source port"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 65535"; } mandatory true; } } container destination-port { presence "enable destination-port"; description "Destination port"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 65535"; } mandatory true; } } container data-length { presence "enable data-length"; description "Size of IP datagram subtracted by UDP header length"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 65535"; } mandatory true; } } } container icmp { description "ICMP protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container type { presence "enable type"; description "Type"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 255"; } mandatory true; } } container code { presence "enable code"; description "Code"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 255"; } mandatory true; } } container identification { presence "enable identification"; description "Identifier in echo request/reply"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 65535"; } mandatory true; } } container sequence-number { presence "enable sequence-number"; description "Sequence Number"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 65535"; } mandatory true; } } container data-length { presence "enable data-length"; description "Size of IP datagram subtracted by ICMP header length"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 65535"; } mandatory true; } } } container icmpv6 { description "ICMPv6 protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container type { presence "enable type"; description "Type"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 255"; } mandatory true; } } container code { presence "enable code"; description "Code"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 255"; } mandatory true; } } container identification { presence "enable identification"; description "Identifier in echo request/reply"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 65535"; } mandatory true; } } container sequence-number { presence "enable sequence-number"; description "Sequence number"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 65535"; } mandatory true; } } container data-length { presence "enable data-length"; description "Size of IPv6 datagram subtracted by ICMPv6 header length"; leaf match { description "Match condition"; type enumeration { enum equal { description "Match when value in packet is exact match"; } enum greater-than { description "Match when value in packet is greater"; } enum less-than { description "Match when value in packet is less"; } enum not-equal { description "Match when value in packet is not exact match"; } } mandatory true; } leaf value { description "Match value"; type uint32 { range "0 .. 255"; } mandatory true; } } } } } container anomaly { description "Protocol anomaly"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf test { description "Protocol anomaly condition to be checked"; type string; mandatory true; } presence "enable anomaly"; leaf direction { description "Direction"; type enumeration { enum client-to-server { description "From Client to Server"; } enum server-to-client { description "From Server to Client"; } enum any { description "Any direction"; } } mandatory true; } leaf shellcode { description "Specify shellcode flag for this attack"; type enumeration { enum intel { description "Detect shellcode for intel platforms"; } enum sparc { description "Detect shellcode for sparc platforms"; } enum all { description "Detect shellcode for both intel and sparc platforms"; } enum no-shellcode { description "Do not detect shellcode"; } } } } } } grouping dcd_rx_bucket_config { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf overflow { description "Overflow behavior"; type enumeration { enum tag { description "Tag and count overflow packets"; } enum discard { description "Discard overflow packets"; } } } leaf rate { description "Bucket rate"; type uint32 { range "0 .. 100"; } } leaf threshold { description "Bucket threshold"; type uint32 { range "0 .. 65535"; } } } grouping dcd_shaping_config { description "Traffic-shaping profile"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice useless_shaping_choice { case case_1 { container cbr { presence "enable cbr"; description "Constant bandwidth utilization"; leaf cbr-value { description "Constant bandwidth utilization"; type string; mandatory true; } leaf cdvt { description "Cell Delay Variation Tolerance"; units "microseconds"; type uint32 { range "1 .. 9999"; } } } } case case_2 { container vbr { description "Variable bandwidth utilization"; leaf peak { description "Peak rate"; type string; mandatory true; } presence "enable vbr"; leaf sustained { description "Sustained rate"; type string; mandatory true; } leaf burst { description "Burst size"; type string; mandatory true; } leaf cdvt { description "Cell Delay Variation Tolerance"; units "microseconds"; type uint32 { range "1 .. 9999"; } } } } case case_3 { container rtvbr { description "ATM2 real-time variable bandwidth utilization"; leaf peak { description "Peak rate"; type string; mandatory true; } presence "enable rtvbr"; leaf sustained { description "Sustained rate"; type string; mandatory true; } leaf burst { description "Burst size"; type string; mandatory true; } leaf cdvt { description "Cell Delay Variation Tolerance"; units "microseconds"; type uint32 { range "1 .. 9999"; } } } } } leaf queue-length { description "Queue length"; type uint32 { range "1 .. 16383"; } } } grouping dcd_tx_bucket_config { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf overflow { description "Overflow behavior"; type enumeration { enum discard { description "Discard overflow packets"; } } } leaf rate { description "Bucket rate"; type uint32 { range "0 .. 100"; } } leaf threshold { description "Bucket threshold"; type uint32 { range "0 .. 65535"; } } } grouping demux_options_table { leaf name { description "(null)"; type enumeration { enum inet { description "Family inet"; } enum inet6 { description "Family inet6"; } } } } grouping demux_options_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf underlying-interface { description "Underlying interface name"; type string; mandatory true; } } grouping dfc_group_type { description "Configure DFC group parameters"; leaf name { description "DFC group name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list interfaces { description "DFC PIC(s) in this group"; type interface-device; max-elements 1; } leaf input-packet-rate-threshold { description " Input pps (max 300k on MO-III, 1M on MS-400)"; default "1024000"; units "pps"; type string; } leaf max-duplicates { description "Maximum content destinations for the capture group"; type uint32 { range "1 .. 64"; } } leaf duplicates-dropped-periodicity { description "Periodicity of DuplicatesDropped notification in secs"; type uint32 { range "1 .. 255"; } } container pic-memory-threshold { description "PIC memory threshold"; leaf percentage { description "Threshold in percentage"; units "percent"; type uint32 { range "10 .. 100"; } } } list control-source { key name; ordered-by user; description "Configure control source parameters"; max-elements 64; uses dfc_control_source_type; } list content-destination { key name; ordered-by user; description "Configure content destination parameters"; max-elements 64; uses content_destination_type; } } grouping content_destination_type { leaf name { description "Content destination identifier"; type string { length "1 .. 48"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf address { description "Content destination IP address"; type ipv4addr; mandatory true; } leaf ttl { description "Time to live"; default "255"; type uint32 { range "1 .. 255"; } } leaf soft-limit-clear { description "Soft limit clear threshold"; units "bps"; type string; } leaf soft-limit { description "Soft limit threshold"; units "bps"; type string; } leaf hard-limit-target { description "Hard limit target threshold"; units "bps"; type string; } leaf hard-limit { description "Hard limit threshold"; units "bps"; type string; } } grouping dfc_control_source_type { leaf name { description "Control source identifier"; type string { length "1 .. 48"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list source-addresses { description "Allowed control source IP address list"; type ipv4addr; max-elements 8; } leaf service-port { description "Service port"; type uint16; mandatory true; } list notification-targets { key name; description "Notification target list"; max-elements 8; uses dfc_notification_target_type; } leaf no-syslog { description "Disable syslog"; type empty; } leaf shared-key { description "Shared key with control source"; type string { length "1 .. 20"; } mandatory true; } leaf-list allowed-destinations { description "Allowed destinations"; type string { length "1 .. 48"; } max-elements 16; } leaf minimum-priority { description "Minimum priority of the control source"; default "0"; type uint32 { range "0 .. 255"; } } } grouping dfc_notification_target_type { leaf name { description "Notification target IP address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port { description "Notification target port"; type uint16; mandatory true; } } grouping dhcp-client-type { description "Dynamic Host Configuration Protocol client configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container client-identifier { description "DHCP server identifies a client by client-identifier value "; container user-id { description "Add user id to client-id option "; choice user-id-choice { case case_1 { leaf ascii { description "Client identifier as an ASCII string"; type string; } } case case_2 { leaf hexadecimal { description "Client identifier as a hexadecimal string"; type string { } } } } } container prefix { description "Add prefix to client-id option"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf host-name { description "Add router host name to client-id option"; type empty; } leaf logical-system-name { description "Add logical system name to client-id option"; type empty; } leaf routing-instance-name { description "Add routing instance name to client-id option"; type empty; } } leaf use-interface-description { description "Use the interface description"; type enumeration { enum logical { description "Use the logical interface description"; } enum device { description "Use the device interface description"; } } } } leaf lease-time { description "Lease time in seconds requested in DHCP client protocol packet"; units "seconds"; type string; } leaf retransmission-attempt { description "Number of attempts to retransmit the DHCP client protocol packet"; default "4"; type uint32 { range "0 .. 6"; } } leaf retransmission-interval { description "Number of seconds between successive retransmission"; default "4"; units "seconds"; type uint32 { range "4 .. 64"; } } leaf server-address { description "DHCP Server-address"; type ipv4addr; } leaf update-server { description "Propagate TCP/IP settings to DHCP server"; type empty; } leaf vendor-id { description "Vendor class id for the DHCP Client"; type string; } } grouping drop-policy-term { description "One or more drop terms"; leaf name { description "Term name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Define match criteria"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container source-address { description "Source IP Address"; uses li_policy_addr_simple_object; } container destination-address { description "Destination IP Address"; uses li_policy_addr_simple_object; } choice source-port_choice { case case_1 { container source-port { description "Match source port"; uses match_li_simple_port_value; } } } choice destination-port_choice { case case_1 { container destination-port { description "Match destination port"; uses match_li_simple_port_value; } } } choice protocol_choice { case case_1 { container protocol { description "Match IP protocol type"; uses match_li_simple_protocol_value; } } } choice dscp_choice { case case_1 { container dscp { description "Match Differentiated Services (DiffServ) code point"; uses match_li_simple_dscp_value; } } } } } grouping drop-policy6-term { description "One or more drop terms"; leaf name { description "Term name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Define match criteria"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container source-address { description "Source IPv6 Address or Prefix"; uses li_policy_addr6_simple_object; } container destination-address { description "Destination IPv6 Address or Prefix"; uses li_policy_addr6_simple_object; } choice source-port_choice { case case_1 { container source-port { description "Match source port"; uses match_li_simple_port_value; } } } choice destination-port_choice { case case_1 { container destination-port { description "Match destination port"; uses match_li_simple_port_value; } } } choice protocol_choice { case case_1 { container protocol { description "Match IP protocol type"; uses match_li_simple_protocol_value; } } } choice dscp_choice { case case_1 { container dscp { description "Match Differentiated Services (DiffServ) code point"; uses match_li_simple_dscp_value; } } } } } grouping dslite_object { leaf name { description "DS-Lite concentrator name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf softwire-address { description "Softwire concentrator address"; type ipv6addr; mandatory true; } leaf mtu-v6 { description "MTU for the softwire tunnel"; type uint32 { range "1280 .. 9192"; } mandatory true; } leaf copy-dscp { description "Copy DSCP (type of service) from IPv6 to IPv4 header"; type empty; } leaf auto-update-mtu { description "Auto update MTU from received ICMPv6 messages"; type empty; } leaf flow-limit { description "Max Number of IPv4 flows per Softwire"; default "0"; type uint32 { range "0 .. 16384"; } } leaf session-limit-per-prefix { description "Max number of sessions allowed per Softwire prefix"; default "0"; type uint32 { range "0 .. 16384"; } } } grouping dynamic-attack-group-type { description "Define dynamic attack group"; leaf name { description "Name of the dynamic attack group"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container filters { description "Configure filters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container direction { presence "enable direction"; description "Direction of attack"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf expression { description "Boolean AND/OR to be used for values"; default "or"; type enumeration { enum and { description "AND values together (recommended if 'exclude-*' values are set)"; } enum or { description "OR values together"; } } } leaf-list values { description "Values for direction field"; type enumeration { enum client-to-server { description "Select attacks from client to server"; } enum server-to-client { description "Select attacks from server to client"; } enum any { description "Select attacks which are in any direction"; } enum exclude-client-to-server { description "Filter out attacks from client to server"; } enum exclude-server-to-client { description "Filter out attacks from server to client"; } enum exclude-any { description "Filter out attacks which are in any direction"; } } } } container severity { presence "enable severity"; description "Severity of attack"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list values { description "Values for severity field"; type enumeration { enum info { description "Provide information of attack when it matches."; } enum warning { description "Issue a warning when attack matches."; } enum minor { description "The attack is a minor one."; } enum major { description "The attack is a major one."; } enum critical { description "The attack is a critical one."; } } } } container type { presence "enable type"; description "Type of attack"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list values { description "Values for type field"; type enumeration { enum signature { description "Signature based attacks"; } enum anomaly { description "Protocol anomalies"; } } } } leaf recommended { description "Recommended flag"; type empty; } container performance { presence "enable performance"; description "Performance of attack"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list values { description "Values for performance field"; type enumeration { enum unknown { description "Performance level unknown"; } enum fast { description "Fast performance"; } enum normal { description "Normal performance"; } enum slow { description "Slow performance"; } } } } container category { presence "enable category"; description "Category of attack"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list values { description "Values for category field"; type string; } } container service { presence "enable service"; description "Service/Application of attack"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list values { description "Values for service field"; type string; } } container false-positives { presence "enable false-positives"; description "False positive field in attack"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list values { description "Values for false-positives field"; type enumeration { enum unknown { description "Unknown information"; } enum rarely { description "Rare false positives occurrence"; } enum occasionally { description "Ocassional false positives occurrence"; } enum frequently { description "Frequent false positives occurrence"; } } } } container products { presence "enable products"; description "Products this attack belongs to"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list values { description "Values for products field"; type string; } } } } grouping dynamic_ifbw_parms_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Weight of current (vs. maximum) data rate"; type uint32 { range "0 .. 100"; } } leaf resource { description "Resource weight"; type uint32 { range "0 .. 100"; } } leaf latency { description "Latency weight"; type uint32 { range "0 .. 100"; } } leaf quality { description "Relative Link Quality weight"; type uint32 { range "0 .. 100"; } } leaf data-rate { description "Data rate weight"; type uint32 { range "0 .. 100"; } } leaf threshold { description "Percentage bandwidth change required for routing updates"; units "percent"; type uint32 { range "0 .. 100"; } } container credit { presence "enable credit"; description "Credit-based scheduling parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interval { description "Grant rate interval"; units "seconds"; type uint16 { range "1 .. 60"; } } } } grouping epd_threshold_config { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf epd-threshold-plp0 { description "Early packet discard threshold value"; units "cells"; type string; mandatory true; } leaf plp1 { description "Early packet drop threshold value for PLP 1"; units "cells"; type string; } } grouping es_filter { leaf name { description "Filter name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interface-specific { description "Defined counters are interface specific"; type empty; } list term { key name; ordered-by user; description "Define a firewall term"; leaf name { description "Term name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Define match criteria"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list interface { key name; ordered-by user; description "Match interface name"; uses match_interface_object; } list source-mac-address { key name; ordered-by user; description "Match MAC source address"; uses firewall_mac_addr_object; } list destination-mac-address { key name; ordered-by user; description "Match MAC destination address"; uses firewall_mac_addr_object; } choice ether-type_choice { case case_1 { leaf-list ether-type { description "(null)"; type string; } } case case_2 { leaf-list ether-type-except { description "(null)"; type string; } } } choice l2-encap-type_choice { case case_1 { leaf-list l2-encap-type { description "(null)"; type string; } } case case_2 { leaf-list l2-encap-type-except { description "(null)"; type string; } } } choice vlan_choice { case case_1 { leaf-list vlan { description "VLAN name or ID"; type string; } } case case_2 { leaf-list vlan-except { description "VLAN name or ID"; type string; } } } choice dot1q-tag_choice { case case_1 { leaf-list dot1q-tag { description "Range of values"; type string { } } } case case_2 { leaf-list dot1q-tag-except { description "Range of values"; type string { } } } } choice dot1q-user-priority_choice { case case_1 { leaf-list dot1q-user-priority { description "(null)"; type string; } } case case_2 { leaf-list dot1q-user-priority-except { description "(null)"; type string; } } } list address { key name; ordered-by user; description "Match IP source or destination address"; uses firewall_addr_object; } list source-address { key name; ordered-by user; description "Match IP source address"; uses firewall_addr_object; } list destination-address { key name; ordered-by user; description "Match IP destination address"; uses firewall_addr_object; } choice dscp_choice { case case_1 { leaf-list dscp { description "(null)"; type string; } } case case_2 { leaf-list dscp-except { description "(null)"; type string; } } } choice precedence_choice { case case_1 { leaf-list precedence { description "(null)"; type string; } } case case_2 { leaf-list precedence-except { description "(null)"; type string; } } } choice ip-options_choice { case case_1 { leaf-list ip-options { description "(null)"; type enumeration { enum any { description "Any IP option"; } } } } case case_2 { leaf-list ip-options-except { description "(null)"; type enumeration { enum any { description "Any IP option"; } } } } } leaf fragment-flags { description "Match fragment flags (in symbolic or hex formats) - (Ingress only)"; type string; } leaf is-fragment { description "Match if packet is a fragment"; type empty; } choice protocol_choice { case case_1 { leaf-list protocol { description "(null)"; type string; } } case case_2 { leaf-list protocol-except { description "(null)"; type string; } } } choice source-port_choice { case case_1 { leaf-list source-port { description "(null)"; type string; } } case case_2 { leaf-list source-port-except { description "(null)"; type string; } } } choice destination-port_choice { case case_1 { leaf-list destination-port { description "(null)"; type string; } } case case_2 { leaf-list destination-port-except { description "(null)"; type string; } } } choice port_choice { case case_1 { leaf-list port { description "(null)"; type string; } } case case_2 { leaf-list port-except { description "(null)"; type string; } } } leaf tcp-flags { description "Match TCP flags (in symbolic or hex formats)"; type string; } leaf tcp-initial { description "Match initial packet of a TCP connection"; type empty; } leaf tcp-established { description "Match packet of an established TCP connection"; type empty; } choice icmp-type_choice { case case_1 { leaf-list icmp-type { description "(null)"; type string; } } case case_2 { leaf-list icmp-type-except { description "(null)"; type string; } } } choice icmp-code_choice { case case_1 { leaf-list icmp-code { description "(null)"; type string; } } case case_2 { leaf-list icmp-code-except { description "(null)"; type string; } } } list source-prefix-list { key name; ordered-by user; description "Match IP source prefixes in named list"; uses firewall_prefix_list; } list destination-prefix-list { key name; ordered-by user; description "Match IP destination prefixes in named list"; uses firewall_prefix_list; } container ip-version { description "Define IP version"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container ipv4 { description "Define L3/L4 match items to match IPv4 packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list address { key name; ordered-by user; description "Match IP source or destination address"; uses firewall_addr_object; } list source-address { key name; ordered-by user; description "Match IP source address"; uses firewall_addr_object; } list destination-address { key name; ordered-by user; description "Match IP destination address"; uses firewall_addr_object; } choice dscp_choice { case case_1 { leaf-list dscp { description "(null)"; type string; } } case case_2 { leaf-list dscp-except { description "(null)"; type string; } } } choice precedence_choice { case case_1 { leaf-list precedence { description "(null)"; type string; } } case case_2 { leaf-list precedence-except { description "(null)"; type string; } } } choice ip-options_choice { case case_1 { leaf-list ip-options { description "(null)"; type enumeration { enum any { description "Any IP option"; } } } } case case_2 { leaf-list ip-options-except { description "(null)"; type enumeration { enum any { description "Any IP option"; } } } } } leaf fragment-flags { description "Match fragment flags (in symbolic or hex formats) - (Ingress only)"; type string; } leaf is-fragment { description "Match if packet is a fragment"; type empty; } choice protocol_choice { case case_1 { leaf-list protocol { description "(null)"; type string; } } case case_2 { leaf-list protocol-except { description "(null)"; type string; } } } choice source-port_choice { case case_1 { leaf-list source-port { description "(null)"; type string; } } case case_2 { leaf-list source-port-except { description "(null)"; type string; } } } choice destination-port_choice { case case_1 { leaf-list destination-port { description "(null)"; type string; } } case case_2 { leaf-list destination-port-except { description "(null)"; type string; } } } choice port_choice { case case_1 { leaf-list port { description "(null)"; type string; } } case case_2 { leaf-list port-except { description "(null)"; type string; } } } leaf tcp-flags { description "Match TCP flags (in symbolic or hex formats) - (Ingress only)"; type string; } leaf tcp-initial { description "Match initial packet of a TCP connection - (Ingress only)"; type empty; } leaf tcp-established { description "Match packet of an established TCP connection"; type empty; } choice icmp-type_choice { case case_1 { leaf-list icmp-type { description "(null)"; type string; } } case case_2 { leaf-list icmp-type-except { description "(null)"; type string; } } } choice icmp-code_choice { case case_1 { leaf-list icmp-code { description "(null)"; type string; } } case case_2 { leaf-list icmp-code-except { description "(null)"; type string; } } } list source-prefix-list { key name; ordered-by user; description "Match IP source prefixes in named list"; uses firewall_prefix_list; } list destination-prefix-list { key name; ordered-by user; description "Match IP destination prefixes in named list"; uses firewall_prefix_list; } list ip-source-address { key name; ordered-by user; description "Match IP source address"; uses firewall_addr_object; } list ip-destination-address { key name; ordered-by user; description "Match IP destination address"; uses firewall_addr_object; } choice ip-protocol_choice { case case_1 { leaf-list ip-protocol { description "(null)"; type string; } } case case_2 { leaf-list ip-protocol-except { description "(null)"; type string; } } } choice ip-precedence_choice { case case_1 { leaf-list ip-precedence { description "(null)"; type string; } } case case_2 { leaf-list ip-precedence-except { description "(null)"; type string; } } } } container ipv6 { description "Define L3/L4 match items to match IPv6 packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list source-address { key name; ordered-by user; description "Match source address"; uses firewall_addr6_object; } list destination-address { key name; ordered-by user; description "Match destination address"; uses firewall_addr6_object; } choice traffic-class_choice { case case_1 { leaf-list traffic-class { description "(null)"; type string; } } case case_2 { leaf-list traffic-class-except { description "(null)"; type string; } } } choice next-header_choice { case case_1 { leaf-list next-header { description "(null)"; type string; } } case case_2 { leaf-list next-header-except { description "(null)"; type string; } } } choice source-port_choice { case case_1 { leaf-list source-port { description "(null)"; type string; } } case case_2 { leaf-list source-port-except { description "(null)"; type string; } } } choice destination-port_choice { case case_1 { leaf-list destination-port { description "(null)"; type string; } } case case_2 { leaf-list destination-port-except { description "(null)"; type string; } } } choice port_choice { case case_1 { leaf-list port { description "(null)"; type string; } } case case_2 { leaf-list port-except { description "(null)"; type string; } } } leaf tcp-flags { description "Match TCP flags (in symbolic or hex formats)"; type string; } leaf tcp-initial { description "Match initial packet of a TCP connection"; type empty; } leaf tcp-established { description "Match packet of an established TCP connection"; type empty; } choice icmp-type_choice { case case_1 { leaf-list icmp-type { description "(null)"; type string; } } case case_2 { leaf-list icmp-type-except { description "(null)"; type string; } } } choice icmp-code_choice { case case_1 { leaf-list icmp-code { description "(null)"; type string; } } case case_2 { leaf-list icmp-code-except { description "(null)"; type string; } } } list source-prefix-list { key name; ordered-by user; description "Match IP source prefixes in named list"; uses firewall_prefix_list; } list destination-prefix-list { key name; ordered-by user; description "Match IP destination prefixes in named list"; uses firewall_prefix_list; } choice payload-protocol_choice { case case_1 { leaf-list payload-protocol { description "(null)"; type string; } } case case_2 { leaf-list payload-protocol-except { description "(null)"; type string; } } } choice extension-header_choice { case case_1 { leaf-list extension-header { description "(null)"; type string; } } case case_2 { leaf-list extension-header-except { description "(null)"; type string; } } } list ip6-source-address { key name; ordered-by user; description "Match source address"; uses firewall_addr6_object; } list ip6-destination-address { key name; ordered-by user; description "Match destination address"; uses firewall_addr6_object; } } } list ip-source-address { key name; ordered-by user; description "Match IP source address"; uses firewall_addr_object; } list ip-destination-address { key name; ordered-by user; description "Match IP destination address"; uses firewall_addr_object; } choice ip-protocol_choice { case case_1 { leaf-list ip-protocol { description "(null)"; type string; } } case case_2 { leaf-list ip-protocol-except { description "(null)"; type string; } } } choice ip-precedence_choice { case case_1 { leaf-list ip-precedence { description "(null)"; type string; } } case case_2 { leaf-list ip-precedence-except { description "(null)"; type string; } } } list ipv6-destination-address { key name; ordered-by user; description "Match IPv6 destination address"; uses firewall_addr6_object; } list ipv6-source-address { key name; ordered-by user; description "Match IPv6 source address"; uses firewall_addr6_object; } list ipv6-address { key name; ordered-by user; description "Match IPv6 address"; uses firewall_addr6_object; } choice ipv6-next-header_choice { case case_1 { leaf-list ipv6-next-header { description "(null)"; type string; } } case case_2 { leaf-list ipv6-next-header-except { description "(null)"; type string; } } } choice ipv6-payload-protocol_choice { case case_1 { leaf-list ipv6-payload-protocol { description "(null)"; type string; } } case case_2 { leaf-list ipv6-payload-protocol-except { description "(null)"; type string; } } } choice ipv6-traffic-class_choice { case case_1 { leaf-list ipv6-traffic-class { description "(null)"; type string; } } case case_2 { leaf-list ipv6-traffic-class-except { description "(null)"; type string; } } } list ipv6-source-prefix-list { key name; ordered-by user; description "Match IPV6 source prefixes in named list"; uses firewall_prefix_list; } list ipv6-destination-prefix-list { key name; ordered-by user; description "Match IPV6 destination prefixes in named list"; uses firewall_prefix_list; } list ipv6-prefix-list { key name; ordered-by user; description "Match IP source or destination prefixes in named list"; uses firewall_prefix_list; } choice interface-group_choice { case case_1 { leaf-list interface-group { description "Range of values"; type string; } } case case_2 { leaf-list interface-group-except { description "Range of values"; type string; } } } choice vlan-ether-type_choice { case case_1 { leaf-list vlan-ether-type { description "(null)"; type string; } } case case_2 { leaf-list vlan-ether-type-except { description "(null)"; type string; } } } choice loss-priority_choice { case case_1 { leaf-list loss-priority { description "(null)"; type enumeration { enum low { description "Loss priority low"; } enum high { description "Loss priority high"; } enum medium-low { description "Loss priority medium-low"; } enum medium-high { description "Loss priority medium-high"; } } } } case case_2 { leaf-list loss-priority-except { description "(null)"; type enumeration { enum low { description "Loss priority low"; } enum high { description "Loss priority high"; } enum medium-low { description "Loss priority medium-low"; } enum medium-high { description "Loss priority medium-high"; } } } } } choice learn-vlan-id_choice { case case_1 { leaf-list learn-vlan-id { description "Range of values"; type string; } } case case_2 { leaf-list learn-vlan-id-except { description "Range of values"; type string; } } } choice learn-vlan-1p-priority_choice { case case_1 { leaf-list learn-vlan-1p-priority { description "802.1p priority value 0-7"; type uint32 { range "0 .. 7"; } } } case case_2 { leaf-list learn-vlan-1p-priority-except { description "802.1p priority value 0-7"; type uint32 { range "0 .. 7"; } } } } choice user-vlan-id_choice { case case_1 { leaf-list user-vlan-id { description "Range of values"; type string; } } case case_2 { leaf-list user-vlan-id-except { description "Range of values"; type string; } } } choice user-vlan-1p-priority_choice { case case_1 { leaf-list user-vlan-1p-priority { description "802.1p priority value 0-7"; type uint32 { range "0 .. 7"; } } } case case_2 { leaf-list user-vlan-1p-priority-except { description "802.1p priority value 0-7"; type uint32 { range "0 .. 7"; } } } } choice traffic-type_choice { case case_1 { leaf-list traffic-type { description "(null)"; type enumeration { enum broadcast { description "Packets with broadcast ethernet address"; } enum multicast { description "Packets with multicast ethernet address"; } enum unknown-unicast { description "Packets for which destination ethernet address has not been learnt"; } enum known-unicast { description "Packets for which destination ethernet address has been learnt"; } } } } case case_2 { leaf-list traffic-type-except { description "(null)"; type enumeration { enum broadcast { description "Packets with broadcast ethernet address"; } enum multicast { description "Packets with multicast ethernet address"; } enum unknown-unicast { description "Packets for which destination ethernet address has not been learnt"; } enum known-unicast { description "Packets for which destination ethernet address has been learnt"; } } } } } list ip-address { key name; ordered-by user; description "Match IP source or destination address"; uses firewall_addr_object; } choice igmp-type_choice { } choice igmp-code_choice { } list interface-set { key name; ordered-by user; description "Match interface in set"; uses match_interface_set_object; } list prefix-list { key name; ordered-by user; description "Match IP source or destination prefixes in named list"; uses firewall_prefix_list; } choice isid_choice { case case_1 { leaf-list isid { description "Range of values"; type string; } } case case_2 { leaf-list isid-except { description "Range of values"; type string; } } } choice isid-priority-code-point_choice { case case_1 { leaf-list isid-priority-code-point { description "802.1p priority value 0-7"; type uint32 { range "0 .. 7"; } } } case case_2 { leaf-list isid-priority-code-point-except { description "802.1p priority value 0-7"; type uint32 { range "0 .. 7"; } } } } choice isid-dei_choice { case case_1 { leaf-list isid-dei { description "DEI value 0-1"; type uint32 { range "0 .. 1"; } } } case case_2 { leaf-list isid-dei-except { description "DEI value 0-1"; type uint32 { range "0 .. 1"; } } } } choice forwarding-class_choice { case case_1 { leaf-list forwarding-class { description "String name"; type string { } } } case case_2 { leaf-list forwarding-class-except { description "String name"; type string { } } } } container to-fabric { description "Match packets going to fabric"; uses to_fabric_object; } leaf from-fabric { description "Match packets coming from fabric"; type empty; } choice arp-type_choice { case case_1 { leaf-list arp-type { description "(null)"; type string; } } } } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice designation { case case_1 { leaf accept { description "Accept the packet"; type empty; } } case case_2 { leaf discard { description "Discard the packet"; type empty; } } } leaf log { description "Log the packet"; type empty; } leaf syslog { description "System log (syslog) information about the packet"; type empty; } leaf forwarding-class { description "Classify packet to forwarding class"; type string { } } leaf analyzer { description "Name of analyzer - (Ingress only)"; type string { } } leaf loss-priority { description "Packet's loss priority"; type enumeration { enum low { description "Loss priority low"; } enum medium-high { description "Loss priority medium-high"; } enum high { description "Loss priority high"; } enum medium-low { description "Loss priority medium-low"; } } } leaf count { description "Count the packet in the named counter"; type string { } } choice policer-choice { case case_1 { leaf policer { description "Name of policer to use to rate-limit traffic"; type string { } } } case case_2 { container three-color-policer { description "Police the packet using a three-color-policer"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice type-choice { case case_1 { leaf single-rate { description "Name of single-rate three-color policer to use to rate-limit traffic"; type string { } } } case case_2 { leaf two-rate { description "Name of two-rate three-color policer to use to rate-limit traffic"; type string { } } } } } } case case_3 { leaf hierarchical-policer { description "Name of hierarchical policer to use to rate-limit traffic"; type string { } } } } leaf vlan { description "Name of VLAN - (Ingress only)"; type string; } leaf interface { description "Switch traffic to the specified interface by-passing switching lookup - (Ingress only)"; type interface-unit; } leaf next { description "Continue to next term in a filter"; type enumeration { enum term { description "Continue to next term in a filter"; } } } leaf port-mirror-instance { description "Port-mirror the packet to specified instance"; type string { } } leaf port-mirror { description "Port-mirror the packet"; type empty; } leaf next-hop-group { description "Use specified next-hop group"; type string; } } } } grouping ethernet-switching-type { description "Ethernet switching family"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port-mode { description "Type of port mode"; type enumeration { enum access { description "Interface mode is access"; } enum tagged-access { description "Interface mode is tagged-access"; } enum trunk { description "Interface mode is trunk"; } } } leaf interface-mode { description "Type of interface mode"; default "access"; type enumeration { enum access { description "Interface mode is access"; } enum trunk { description "Interface mode is trunk"; } } } leaf inter-switch-link { description "PVLAN inter switch link"; type empty; } leaf reflective-relay { description "Reflective-relay mode for this interface"; type empty; } choice vlan_choice_list { case case_1 { container vlan { description "Virtual LAN parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list members { description "Membership for this interface (name or id)"; type string; } } } case case_2 { container inner-vlan { description "Trunk mode vlan membership for this interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list members { description "Membership for this interface (name or id)"; type string; } } } case case_3 { leaf-list inner-vlan-id-list { description "Trunk mode VLAN membership for this interface based on inner VLAN tag"; type string; } } } leaf bridge-domain-type { description "Bridge domain type"; type enumeration { enum svlan { description "Bridge domain type SVLAN"; } enum bvlan { description "Bridge domain type BVLAN"; } } } container vlan-rewrite { description "Specify VLAN translation"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list translate { key name; ordered-by user; description "Translate incoming VLAN tag"; leaf name { description "Specify the incoming VLAN tag"; type uint32 { range "1 .. 4094"; } mandatory true; } leaf to-vlan-id { description "Specify the bridge-domain VLAN-ID"; type uint32 { range "1 .. 4094"; } mandatory true; } } } leaf native-vlan-id { description "Untagged packets on a trunk/tagged-access interface belong to this vlan"; type string { } } choice isid_list { case case_1 { leaf isid-list { description "Specify the ISID list"; type enumeration { enum all-service-groups { description "Map all ISIDs specified under the service-groups"; } enum all { description "Map all ISIDs"; } } } } } leaf core-facing { description "Interface is core facing"; type empty; } container filter { description "Packet filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of filter applied to received packets"; type string; } leaf input-precedence { description "Precedence of the filter"; type uint32 { range "0 .. 255"; } } leaf-list input-list { description "List of filter modules applied to received packets "; type string; } leaf output { description "Name of filter applied to transmitted packets"; type string; } leaf output-precedence { description "Precedence of the filter"; type uint32 { range "0 .. 255"; } } leaf-list output-list { description "List of filter modules applied to transmitted packets "; type string; } container adf { description "Ascend Data Filter definition"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Set of ADF rules"; leaf name { description "Value for a single rule"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf counter { description "Add a counter to each rule"; type empty; } leaf input-precedence { description "Precedence of the input rules"; type uint32 { range "0 .. 255"; } } leaf not-mandatory { description "No errors will be reported if no rules are present"; type empty; } leaf output-precedence { description "Precedence of the output rules"; type uint32 { range "0 .. 255"; } } } leaf group { description "Group to which interface belongs"; type uint32 { range "1 .. 255"; } } } container policer { description "Interface policing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of policer applied to received packets"; type string; } leaf output { description "Name of policer applied to transmitted packets"; type string; } } container storm-control { description "Storm control profile name to bind"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf profile-name { description "Profile name"; type string; mandatory true; } presence "enable storm-control"; } container recovery-timeout { description "Recovery timeout for this interface"; leaf time-in-seconds { description "(null)"; units "seconds"; type uint32 { range "10 .. 3600"; } } } } grouping ethernet_policer { description "Define a policer"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice bandwidth { case case_1 { leaf bandwidth-limit { description "Bandwidth limit"; units "bits per second"; type string; } } } leaf burst-size-limit { description "Burst size limit"; units "bytes"; type string; mandatory true; } } grouping family { container inet { description "IPv4 parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice if-addr { case case_1 { leaf dhcp { description "Enable DHCP on ethernet interface"; type empty; } } case case_2 { leaf address { description "Interface address/destination prefix"; type ipv4prefix; } } } } } grouping fibre-channel-type { description "Fibre Channel switching family"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port-mode { description "Port mode"; type enumeration { enum f-port { description "Fabric port"; } enum e-port { description "Inter-switch port"; } enum np-port { description "Proxy node port"; } enum auto { description "Interface mode (F/E) is determined at runtime"; } } } leaf no-npiv { description "Disable NPIV"; type empty; } container fc-fabric { description "Virtual fabric parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list members { description "Virtual Fabric Membership for this interface (name or id)"; type string; } } leaf native-fabric { description "FC frames with no virtual fabric header on a interface belong to this fabric"; type string { } } } grouping file_specification_type { leaf name { description "Name for file type"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf name-format { description "Format string for filename (allows {text} macros)"; type string; mandatory true; } leaf data-format { description "Data format for flow collection output"; type enumeration { enum flow-compressed { description "Flow format (compressed)"; } } } container transfer { leaf timeout { description "Timeout in seconds when the file is transferred"; default "600"; type uint32 { range "60 .. 1800"; } } leaf record-level { description "Number of records at which the file is transferred"; default "500000"; type uint32 { range "10000 .. 1000000"; } } } } grouping firewall_addr6_object { leaf name { description "Prefix to match"; type ipv6prefix; } leaf except { description "Match address not in this prefix"; type empty; } } grouping firewall_addr_object { leaf name { description "Prefix to match"; type ipv4prefix; } leaf except { description "Match address not in this prefix"; type empty; } } grouping firewall_flexible_match { description "Define a flexible match"; leaf name { description "Flex match template name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf match-start { description "Start point to match in packet"; type enumeration { enum layer-2 { description "Layer-2 match start"; } enum layer-3 { description "Layer-3 match start"; } enum layer-4 { description "Layer-4 match start"; } enum payload { description "Payload match start"; } } mandatory true; } leaf byte-offset { description "Byte offset after the match start point"; type uint32; } leaf bit-offset { description "Bit offset after the (match-start + byte) offset"; type uint32 { range "0 .. 7"; } } leaf bit-length { description "Length of the data to be matched in bits, not needed for string input"; type uint32 { range "0 .. 128"; } mandatory true; } } grouping firewall_hierpolicer { description "Define a hierarchical policer"; leaf name { description "Hierarchical Policer name"; type string { } } choice sharing { case case_1 { leaf logical-interface-policer { description "Hierarchical policer is a logical interface policer"; type empty; } } case case_2 { leaf physical-interface-policer { description "Hierarchical policer is a physical interface policer"; type empty; } } } leaf shared-bandwidth-policer { description "Share policer bandwidth among bundle links"; type empty; } container aggregate { description "Aggregate definition"; uses hierarchical-policer-aggregate-bucket; } container premium { description "Premium definition"; uses hierarchical-policer-premium-bucket; } leaf filter-specific { description "Hierarchical policer is filter-specific"; type empty; } } grouping firewall_load_balance_group { description "Define group of destinations for load balancing"; leaf name { description "Load balance group name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list next-hop-group { description "Use specified next-hop group"; type string; } } grouping firewall_mac_addr_object { leaf name { description "MAC address to match"; type mac-addr-prefix; } leaf except { description "Match MAC address not in this range"; type empty; } } grouping firewall_policer { description "Define a policer"; leaf name { description "Policer name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf filter-specific { description "Policer is filter-specific"; type empty; } leaf logical-interface-policer { description "Policer is logical interface policer"; type empty; } leaf physical-interface-policer { description "Policer is physical interface policer"; type empty; } leaf logical-bandwidth-policer { description "Policer uses logical interface bandwidth"; type empty; } leaf shared-bandwidth-policer { description "Share policer bandwidth among bundle links"; type empty; } container if-exceeding { presence "enable if-exceeding"; description "Define rate limits"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice bandwidth { case case_1 { leaf bandwidth-limit { description "Bandwidth limit"; units "bits per second"; type string; } } case case_2 { leaf bandwidth-percent { description "Bandwidth limit in percentage"; units "percent"; type uint32 { range "1 .. 100"; } } } } leaf burst-size-limit { description "Burst size limit"; units "bytes"; type string; mandatory true; } } container then { description "Action to take if the rate limits are exceeded"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf discard { description "Discard the packet"; type empty; } leaf loss-priority { description "Packet's loss priority"; type enumeration { enum low { description "Loss priority low"; } enum high { description "Loss priority high"; } enum medium-low { description "Loss priority medium-low"; } enum medium-high { description "Loss priority medium-high"; } } } leaf forwarding-class { description "Classify packet to forwarding class"; type string { } } leaf out-of-profile { description "Discard packets only if both congested and over threshold"; type empty; } } container counter { description "Define policer counter configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf counter-id { description "Counter Index"; type uint32 { range "0 .. 2"; } mandatory true; } presence "enable counter"; } } grouping firewall_prefix_list { leaf name { description "Prefix list to match"; type string; } leaf except { description "Match addresses not in this prefix list"; type empty; } } grouping gateway_type { leaf name { description "Gateway name"; type string; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf service-interface { description "Associated services interface"; type interface-device; mandatory true; } container sip { presence "enable sip"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container timers { description "Timers configuration"; uses sip_timers_type; } list new-transaction-policy { key name; ordered-by user; description "Definition of a new-transaction policy"; max-elements 500; uses transaction_policy_type; } list new-transaction-policy-set { key name; ordered-by user; description "Definition of a new-transaction policy set"; max-elements 5; uses new_transaction_set_type; } list new-registration-policy { key name; ordered-by user; description "Definition of a new-registration policy"; max-elements 500; uses registration_policy_type; } list new-registration-policy-set { key name; ordered-by user; description "Definition of a new-registration policy set"; max-elements 5; uses new_registration_set_type; } list new-call-usage-policy { key name; ordered-by user; description "Definition of a new-call usage policy"; max-elements 500; uses call_usage_policy_type; } list new-call-usage-policy-set { key name; ordered-by user; description "Definition of a new-call usage policy set"; max-elements 5; uses new_call_usage_set_type; } container routing-destinations { description "Definition of routing destinations"; uses routing-destinations; } container message-manipulation-rules { description "Definition of manipulation rules"; uses header-manipulation-message-manipulation-rules-type; } leaf local-tag-prefix { description "Local tag prefix"; default "bsg"; type string; } list signaling-realms { key name; ordered-by user; description "Signaling realm"; uses signaling-realm; } leaf local-uri-prefix { description "Local URI prefix"; default "J"; type string; } } list admission-control { key name; ordered-by user; description "Definition of an admission controller"; max-elements 10; uses admission-control-type; } list service-point { key name; ordered-by user; description "(null)"; max-elements 100; uses service_point_type; } container name-resolution-cache { uses name-resolution-cache-type; } container embedded-spdf { presence "enable embedded-spdf"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list service-class { key name; ordered-by user; description "Definition of service class policies"; max-elements 5; leaf name { description "Service class name"; type string { length "1 .. 63"; } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list term { key name; ordered-by user; description "Service class settings by media type"; max-elements 6; leaf name { description "Term name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { presence "enable from"; description "The media-related filter that the rate limiting and DSCP marking are based on"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list media-type { description "Media types to filter on"; type enumeration { enum any-media { description "(null)"; } enum audio { description "(null)"; } enum video { description "(null)"; } } } } container then { presence "enable then"; description "The action to take based on the 'from' filter"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf reject { description "Reject the request"; type empty; } leaf committed-information-rate { description "Committed information rate value per stream"; default "0x7FFFFFFF"; units "bytes-per-second"; type uint32 { range "0 .. 2147483647"; } } leaf committed-burst-size { description "Committed burst size value per stream"; default "0x7FFFFFFF"; units "bytes"; type uint32 { range "20 .. 2147483647"; } } leaf dscp { description "Code point alias or 6-bit pattern"; default "be"; type string { } } } } } } container traceoptions { description "Trace options for border signaling gateway"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container flag { presence "enable flag"; description "Per-component trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum { description "Minimum trace level for all the components"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf session-trace { description "Trace level for the session tracing component"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } container sip-stack { presence "enable sip-stack"; description "Sip stack trace level options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf event-tracing { description "Event tracing"; type empty; } leaf ips-tracing { description "IPS tracing"; type empty; } leaf per-tracing { description "Performance tracing"; type empty; } leaf dev-logging { description "Development tracing"; type empty; } leaf verbose-logging { description "Verbose tracing"; type empty; } leaf pd-log-level { description "Set pd trace level"; type enumeration { enum problem { description "Record a problem"; } enum exception { description "Record and exception that has been encountered in the code"; } enum audit { description "Record ordinary events for accounting purposes"; } } } leaf pd-log-detail { description "Set detail level for DC logs"; type enumeration { enum full { description "Full details for every entry"; } enum summary { description "Summary details for every entry"; } } } } container signaling { presence "enable signaling"; description "Signaling component sub-components"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum { description "Minimum trace level for the signaling subcomponents"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf sip-stack-wrapper { description "Sip stack wrapper trace level "; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf b2b-wrapper { description "B2B wrapper trace level "; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf ua { description "UA trace level "; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf b2b { description "B2B trace level "; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf topology-hiding { description "Topology hiding trace level "; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf policy { description "Policy trace level "; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf name-resolution-cache { description "Name resolution cache trace level"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf accounting-trigger { description "Accounting trigger trace level"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf event-trigger { description "Event trigger trace level"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf packet-capture { description "Packet capture trace level"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } } container framework { presence "enable framework"; description "Framework component sub-components"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum { description "Minimum trace level for the framework subcomponents"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf executor { description "Executor trace level "; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf action { description "Action trace level "; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf event { description "Event trace level "; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf freezer { description "Freezer trace level "; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf memory-pool { description "Memory pool trace level "; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } } container datastore { presence "enable datastore"; description "Datastore component sub-components"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum { description "Minimum trace level for the datastore subcomponents"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf data { description "Data trace level "; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf handle { description "Handle trace level "; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf db { description "DB trace level "; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } } container sbc-utils { presence "enable sbc-utils"; description "SBC utils component sub-components"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum { description "Minimum trace level for the sbc-utils subcomponents"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf configuration { description "Configuration trace level"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf ipc { description "IPC trace level"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf device-monitor { description "Device-monitor trace level"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf memory-management { description "Memory mgmt trace level"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf message { description "Messaging trace level"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf common { description "Common utils trace level"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf user-interface { description "User-interface trace level"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf memory-pool { description "Memory-pool trace level"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf packet-capture { description "Trace packet capture events"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } } } } } grouping admission-control-type { leaf name { description "Admission control profile name"; type string; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container dialogs { presence "enable dialogs"; description "Dialog admission control rules"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum-concurrent { description "Maximum concurrent dialogs allowed"; type uint32 { range "0 .. 100000"; } } leaf committed-attempts-rate { description "Committed rate of dialog admission attempts"; type uint32 { range "0 .. 500"; } } leaf committed-burst-size { description "Committed burst size of dialog admission attempts"; type uint32 { range "0 .. 1000"; } } } container transactions { presence "enable transactions"; description "Transaction admission control rules"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum-concurrent { description "Maximum concurrent transactions allowed"; type uint32 { range "0 .. 50000"; } } leaf committed-attempts-rate { description "Committed rate of transaction admission attempts"; type uint32 { range "0 .. 1500"; } } leaf committed-burst-size { description "Committed burst size of transaction admission attempts"; type uint32 { range "0 .. 3000"; } } } } grouping call_usage_policy_type { leaf name { description "Policy name"; type string; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list term { key name; ordered-by user; description "Term definition"; max-elements 20; leaf name { description "Term name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { presence "enable from"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list source-address { description "Source addresses and masks"; type ipaddr; max-elements 5; } list method { key name; ordered-by user; description "Methods"; uses call-usage-method-type; } container request-uri { presence "enable request-uri"; description "Request URI field"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list regular-expression { description "Regular expression matched on incoming Request-URI"; type regular-expression; max-elements 5; } } container contact { presence "enable contact"; description "Contact field"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list regular-expression { description "Regular expression matched on incoming contact"; type regular-expression; max-elements 5; } } } container then { description "Action"; uses new_call_then_type; } } } grouping call-usage-method-type { leaf name { description "(null)"; type enumeration { enum method-invite { description "(null)"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } grouping ggsn_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf node { description "Identifier for GGSN node"; type string { } } list apn { key name; description "Access point configuration"; uses apn_type; } container charging { description "GGSN charging and CDR configuration"; uses charging_type; } container dhcp { description "DHCP settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list server { key name; description "Shared DHCP server configuration"; max-elements 9999; uses dhcp_shared_type; } } container ggsnc { description "Global settings for GGSN-C PICs"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf gn-address-range { description "Gn network address range for GGSN-C PICs"; type ipv4prefix; mandatory true; } presence "enable ggsnc"; leaf gom-address-range { description "Gom network address range for GGSN-C PICs"; type ipv4prefix; } } container pic-allocation { presence "enable pic-allocation"; description "PIC allocation"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container dynamic-pics { presence "enable dynamic-pics"; description "PICs with dynamic role capabilities"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf number-of-ggsnc { description "Number of GGSN-C PICs"; type uint32 { range "0 .. 16"; } } leaf number-of-ggsnu { description "Number of GGSN-U PICs"; type uint32 { range "0 .. 16"; } } leaf number-of-ggsnt { description "Number of GGSN-T PICs"; type uint32 { range "0 .. 16"; } } } container static-pics { presence "enable static-pics"; description "PICs with static roles"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf number-of-ggsnc { description "Number of GGSN-C PICs"; type uint32 { range "0 .. 16"; } } leaf number-of-ggsnu { description "Number of GGSN-U PICs"; type uint32 { range "0 .. 16"; } } leaf number-of-ggsnt { description "Number of GGSN-T PICs"; type uint32 { range "0 .. 16"; } } } } container isp { description "ISP settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container session-resilience { description "Session resilience settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf session-controller { description "Enable session controller resilience"; type empty; } } } container ggsnu { description "Global settings for GGSN-U PICs"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf gn-address-range { description "Gn network address range for GGSN-U PICs"; type ipv4prefix; mandatory true; } presence "enable ggsnu"; leaf gom-address-range { description "Gom network address range for GGSN-U PICs"; type ipv4prefix; } } leaf gom-routing-instance { description "Routing instance for Gom network"; type string { } } container gtp { description "GTP settings"; uses gtp_type; } leaf address-reuse-timeout { description "Timeout for reuse of IP addresses"; default "300"; units "seconds"; type uint32 { range "120 .. 500"; } } leaf no-address-reuse-quarantine { description "Don't quarantine addresses before reuse"; type empty; } container ipv6-router-advertisement { description "IPv6 router advertisement parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum-router-advertisement-interval { description "Maximum interval between router advertisements"; default "21600"; units "seconds"; type uint32 { range "5400 .. 21600"; } } leaf minimum-router-advertisement-interval { description "Minimum interval between router advertisements"; default "16200"; units "seconds"; type uint32 { range "3600 .. 16200"; } } leaf maximum-initial-router-advertisement-interval { description "Maximum interval between initial router advertisements"; default "10"; units "seconds"; type uint32 { range "10 .. 16"; } } leaf maximum-initial-router-advertisements { description "Maximum number of initial router advertisements"; default "3"; type uint32 { range "2 .. 5"; } } leaf link-local-interface-identifier { description "Interface identifier for GGSN-U PIC link-local addresses"; default "::1"; type ipv6addr; } leaf reachable-time { description "Value to be placed in Reachable Time field"; default "0"; units "milliseconds"; type uint32 { range "0 .. 3600000"; } } leaf retransmission-timer { description "Value to be placed in Retrans Timer field"; default "0"; units "milliseconds"; type uint32; } leaf router-lifetime { description "Value to be placed in Router Lifetime field"; default "21840"; units "seconds"; type uint32 { range "5400 .. 21840"; } } leaf current-hop-limit { description "Value to be placed in Cur Hop Limit field"; default "0"; type uint32 { range "0 .. 3"; } } } list logical-apn { key name; description "Logical access point name configuration"; max-elements 200; uses logapn_type; } choice ggsn-mcc-plmn { case case_1 { leaf ggsn-plmn-id { description "GGSN Public Land Mobile Network identifier"; type string { } } } } list plmn { key name; ordered-by user; description "PLMN network data"; uses plmn_type; } container pdp-context { description "PDP context settings"; uses pdp_context_type; } container radius { description "RADIUS settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list server { key name; ordered-by user; description "Shared RADIUS server configuration"; max-elements 9999; uses radius_shared_type; } } container service-based-charging { description "Service-based charging settings"; uses sbcc_node_type; } list sgsn { key name; description "SGSN settings"; uses sgsn_type; } list rule-space { key name; ordered-by user; description "Rule space configuration for charging control"; max-elements 64; uses rule_space_type; } list service-set { key name; ordered-by user; description "Service set configuration for packet inspection"; uses service_set_type; } container service-identification { description "Service identification configuration for packet inspection"; uses service_identification_type; } container fault-management { presence "enable fault-management"; description "Settings for fault management"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container alarm { presence "enable alarm"; description "Settings for alarms"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container service-based-charging { presence "enable service-based-charging"; description "Settings for service-based-charging related alarms"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-invalid-service-context-id-ccr { description "Do not issue alarm on invalid service-context-id in CCR"; type empty; } leaf invalid-rating-group-ccr { description "Issue alarm on invalid rating group in CCR"; type empty; } leaf no-invalid-rating-group-cca { description "Do not issue alarm on invalid rating group in CCA"; type empty; } leaf no-invalid-cca { description "Do not issue alarm on invalid CCA"; type empty; } leaf no-invalid-rule-space-cca { description "Do not issue alarm on invalid rule-space CCA"; type empty; } container error-indication-cca { presence "enable error-indication-cca"; description "Codes for error indication CCA"; leaf-list error-codes { description "Error codes"; type string { length "1 .. 11"; } max-elements 64; } } } } } } grouping apn_type { leaf name { description "Access point name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container access-restrictions { description "Settings for APN access restrictions. "; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf selection-mode { description "User access to the APN"; default "restricted"; type enumeration { enum public { description "User does not need to be subscribed for APN"; } enum from-user { description "Can choose which APN to connect"; } enum from-sgsn { description "Can connect to default APN for the SGSN"; } enum restricted { description "Admit only users subscribed for APN"; } } } container radius-assisted-apn-selection { presence "enable radius-assisted-apn-selection"; description "Enable RADIUS assisted APN selection"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default { description "Default APN name for radius assisted APN selection"; type string { } } } } leaf routing-instance { description "Routing instance for in-APN traffic"; type string { } } leaf gi-address-range { description "IPv4 address range to use in APN routing instance"; type ipv4prefix; } container pdp-context { description "APN-specific PDP context settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf creation { description "PDP context creation state"; type enumeration { enum unblocked { description "No restrictions on PDP context creation"; } enum blocked { description "New PDP context creation fully blocked"; } } } leaf pdp-type { description "PDP context type"; type enumeration { enum ipv4 { description "IPv4 PDP context type"; } enum ipv6 { description "IPv6 PDP context type"; } enum ipv4+ipv6 { description "IPv4 and IPv6 PDP contexts"; } } } leaf limit { description "Maximum active PDP contexts"; type uint32 { range "1 .. 4294967295"; } } list address { key name; ordered-by user; description "APN IPv4 address range"; max-elements 99; uses apn_address_type; } list ipv6-address { key name; ordered-by user; description "APN IPv6 address range"; max-elements 99; uses apn_ipv6_address_type; } container policing { description "Policing settings"; uses policing_apn_type; } container session-control { description "Session control settings"; uses session_management_apn_type; } leaf address-allocation { description "Method used to allocate IPv4 addresses to PDP contexts"; type enumeration { enum static { description "Only static addresses accepted"; } enum radius { description "RADIUS authentication assigns addresses"; } enum dhcp-client { description "DHCP server assigns addresses"; } enum local-pool { description "GGSN assigns addresses from local pool"; } enum l2tp { description "L2TP assigns addresses"; } } } leaf ipv6-address-allocation { description "Method used to allocate IPv6 addresses to PDP contexts"; type enumeration { enum radius { description "RADIUS authentication assigns addresses"; } enum local-pool { description "GGSN assigns addresses from local pool"; } } } leaf allocation-prefix { description "Subnet prefix to use for GGSNU distribution"; type uint32 { range "21 .. 128"; } } leaf allocation-prefix-method { description "Prefix allocation method to use for GGSNU distribution"; type enumeration { enum slices { description "Base slice allocation with even number of slices between GGSNUs"; } enum load { description "Base slice allocation with even load between GGSNUs"; } } } leaf load-factor { description "PDP context load factor for GGSNU distribution"; type uint32 { range "1 .. 255"; } } leaf alarm-limit { description "APN utilization limit at which to raise alarm"; units "percent"; type uint32 { range "80 .. 100"; } } container signaling { description "PDP-Context signaling options for this APN"; choice ggsn-deletes-choice { case case_1 { leaf ggsn-deletes-per-second { description "GGSN-initiated deletions per second per session controller"; type uint32 { range "1 .. 5000"; } } } case case_2 { leaf ggsn-deletes-no-limit { description "No limit for GGSN-initiated deletions"; type empty; } } } leaf sgsn-creates-per-second { description "Maximum SGSN creates per second per session controller"; type uint32 { range "0 .. 5000"; } } } leaf allow-framed-ip-netmask { description "Allow framed-IP-netmask attribute from RADIUS"; type empty; } } container l2tp { description "L2TP settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf l2tp-routing-instance { description "Routing instance for the L2TP network"; type string { } } leaf hide-avps { description "Hide L2TP AVPs"; type empty; } leaf lac-address { description "GGSN (LAC) IP address"; type ipv4addr; mandatory true; } presence "enable l2tp"; list lns-server { key name; ordered-by user; description "L2TP network server"; max-elements 2; uses lns_server_type; } leaf secret { description "Shared secret for tunnel authentication and AVP hiding"; type unreadable; } leaf hello-interval { description "Keepalive timer for the L2TP tunnel"; default "30"; units "seconds"; type uint32 { range "0 .. 3600"; } } leaf receive-window { description "Size of receive window for the L2TP tunnel"; default "16"; type uint16 { range "1 .. 128"; } } leaf max-retry { description "Maximum number of retry attempts during L2TP negotiation"; default "4"; type uint32 { range "0 .. 60"; } } leaf max-retry-timeout { description "Maximum timeout between control channel retransmissions"; default "60"; units "seconds"; type uint32 { range "0 .. 3600"; } } leaf copy-inner-ip-dscp { description "Copy DSCP field from inner to outer IP-header"; type empty; } container ppp { description "Point-to-point protocol settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf retry-timeout { description "Timeout for a response during PPP negotiation"; default "2"; units "seconds"; type uint32 { range "1 .. 300"; } } leaf max-retry { description "Maximum number of retry attempts during PPP negotiation"; default "5"; type uint32 { range "0 .. 60"; } } leaf mru { description "Maximum value for negotiable receive unit"; default "1450"; type uint32 { range "500 .. 1500"; } } leaf user-name { description "Default user name for user authentication"; type string { } } leaf user-password { description "Default user password for user authentication"; type unreadable; } } } container radius { description "RADIUS configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf retry-method { description "RADIUS retry scheme settings"; default "single-server"; type enumeration { enum single-server { description "Single server retry scheme"; } enum multiple-server { description "Multiple server retry scheme"; } } } leaf load-balancing { description "Use load balancing to distribute requests"; type empty; } container authentication { description "RADIUS authentication settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container message-attributes { description "Attributes in RADIUS messages"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf apn-identifier { description "Include APN name"; type empty; } leaf apn-selection-mode { description "Include APN selection information"; type empty; } leaf charging-gateway { description "Include charging gateway address"; type empty; } leaf charging-characteristics { description "Include charging characteristics"; type empty; } leaf ggsn-address { description "Include GGSN node address"; type empty; } leaf gprs-qos { description "Include GPRS quality of service"; type empty; } leaf gprs-qos-extended { description "Include GPRS extended quality of service"; type empty; } leaf imsi { description "Include IMSI"; type empty; } leaf ms-timezone { description "Include MS timezone"; type empty; } leaf user-location-info { description "Include user location info"; type empty; } choice user-plmn-mcc { case case_1 { leaf user-plmn-id { description "Include User Public Land Mobile Network identifier"; type empty; } } } choice msisdn_choice { case case_1 { leaf msisdn { description "Include MSISDN"; type empty; } } case case_2 { leaf msisdn-value { description "MSISDN set to this value in RADIUS messages"; type string { } } } } leaf nsapi { description "Include NSAPI"; type empty; } leaf pdp-type { description "Include PDP type"; type empty; } leaf signaling-sgsn { description "Include signaling SGSN address"; type empty; } leaf user-value { description "User name set to this value in RADIUS messages"; type string { } } choice nas_port_choice { case case_1 { leaf nas-port { description "Include NAS port attribute"; type empty; } } case case_2 { leaf nas-port-value { description "NAS port set to this value in RADIUS messages"; type string { } } } } leaf nas-ip-address-value { description "NAS IP address set to this value in RADIUS messages"; type ipv4addr; } leaf sgsn-plmn-id { description "Include the SGSN Public Land Mobile Network identifier"; type empty; } leaf ggsn-plmn-id { description "Include the GGSN Public Land Mobile Network identifier"; type empty; } leaf rat-type { description "Include the radio access technology type in the request"; type empty; } leaf imei-sv { description "Include the IMEI-SV in the request"; type empty; } leaf override-user-info { description "Override username and password received in PCO"; type empty; } leaf user-password-value { description "User password set to this value in messages"; type string { } } } choice auth_shared_or_inband_choice { case case_1 { list server { key name; ordered-by user; description "Server for authentication requests"; max-elements 10; uses radius_type; } } case case_2 { leaf shared-server { description "Shared RADIUS server for authentication"; type string { length "1 .. 64"; } } } } } container accounting { description "RADIUS accounting settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container message-attributes { description "Attributes in RADIUS messages"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf apn-identifier { description "Include APN name"; type empty; } leaf apn-selection-mode { description "Include APN selection information"; type empty; } leaf charging-gateway { description "Include charging gateway address"; type empty; } leaf charging-characteristics { description "Include charging characteristics"; type empty; } leaf ggsn-address { description "Include GGSN node address"; type empty; } leaf gprs-qos { description "Include GPRS quality of service"; type empty; } leaf gprs-qos-extended { description "Include GPRS extended quality of service"; type empty; } leaf imsi { description "Include IMSI"; type empty; } leaf ms-timezone { description "Include MS timezone"; type empty; } leaf user-location-info { description "Include user location info"; type empty; } choice user-plmn-mcc { case case_1 { leaf user-plmn-id { description "Include User Public Land Mobile Network identifier"; type empty; } } } choice msisdn_choice { case case_1 { leaf msisdn { description "Include MSISDN"; type empty; } } case case_2 { leaf msisdn-value { description "MSISDN set to this value in RADIUS messages"; type string { } } } } leaf nsapi { description "Include NSAPI"; type empty; } leaf pdp-type { description "Include PDP type"; type empty; } leaf signaling-sgsn { description "Include signaling SGSN address"; type empty; } leaf user-value { description "User name set to this value in RADIUS messages"; type string { } } choice nas_port_choice { case case_1 { leaf nas-port { description "Include NAS port attribute"; type empty; } } case case_2 { leaf nas-port-value { description "NAS port set to this value in RADIUS messages"; type string { } } } } leaf nas-ip-address-value { description "NAS IP address set to this value in RADIUS messages"; type ipv4addr; } leaf sgsn-plmn-id { description "Include the SGSN Public Land Mobile Network identifier"; type empty; } leaf ggsn-plmn-id { description "Include the GGSN Public Land Mobile Network identifier"; type empty; } leaf rat-type { description "Include the radio access technology type in the request"; type empty; } leaf imei-sv { description "Include the IMEI-SV in the request"; type empty; } leaf override-user-info { description "Override username and password received in PCO"; type empty; } leaf charging-identifier { description "Include user charging identifier"; type empty; } leaf acct-input-octets { description "Include the number of octets sent"; type empty; } leaf acct-output-octets { description "Include the number of octets received"; type empty; } leaf acct-output-packets { description "Include the number of output packets"; type empty; } leaf acct-input-packets { description "Include the number of input packets"; type empty; } leaf negotiated-dscp { description "Include negotiated DSCP"; type empty; } leaf packet-filter { description "Include packet filter"; type empty; } leaf session-stop { description "Send session stop message"; type empty; } leaf include-session-time-in-all { description "Include session-time in all RADIUS accounting messages"; type empty; } } choice acct_shared_or_inband_choice { case case_1 { list server { key name; ordered-by user; description "Server for accounting requests"; max-elements 10; uses radius_type; } } case case_2 { leaf shared-server { description "Name of shared RADIUS server"; type string { length "1 .. 64"; } } } } leaf message-for-every-context { description "Send start/interim/stop message for every PDP context"; type empty; } leaf no-accounting-on { description "Don't send accounting on and off messages"; type empty; } container interim-update { description "Send interim accounting requests"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf transfer-interval { description "Send RADIUS interim update periodically"; units "minutes"; type uint32 { range "30 .. 1440"; } } leaf transfer-on-update { description "Send RADIUS interim update when receiving PDP context update request"; type empty; } } leaf un-acknowledge { description "Run in Un-Acknowledge mode"; type empty; } } leaf accept-disconnect { description "Perform PDP context deletion on receiving a disconnect request from a RADIUS server"; type empty; } } container dhcp { description "DHCP server configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice ob_or_ib_dhcp_choice { case case_1 { list server { key name; ordered-by user; description "DHCP server for APN"; max-elements 3; uses dhcp_server_type; } } case case_2 { leaf-list shared-server { description "Shared DHCP server configuration"; type string { length "1 .. 64"; } max-elements 3; } } } leaf gtp-cpic-ipaddress { description "Include GTP-C_PIC_IP-address in Client ID parameter (Option 61)"; type empty; } leaf imsi { description "Include IMSI in Client ID parameter (Option 61)"; type empty; } leaf nsapi { description "Include NSAPI in Client ID parameter (Option 61)"; type empty; } leaf msisdn { description "Include MSISDN in Client ID parameter (Option 61)"; type empty; } } list bandwidth-constraint { key name; ordered-by user; description "APN bandwidth constraints"; uses bandconst_type; } container uplink-dscp-remapping { description "Gi quality-of-service to DSCP remapping"; uses dscp_qos_map_type; } leaf disable-uplink-dscp-remapping { description "Do not change DSCP in uplink packets"; type empty; } list name-server { key name; ordered-by user; description "IPv4 DNS name server"; max-elements 2; uses name_server_type; } list ipv6-name-server { key name; ordered-by user; description "IPv6 DNS name server"; max-elements 2; uses ipv6_name_server_type; } container service-based-charging { description "Service-based charging configuration"; uses sbcc_apn_type; } leaf-list allow-rule-space { description "Rule space authorized for the APN"; type string; } container charging { description "APN-specific charging configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf select-gn-apn { description "Include Gn APN in CDR"; type empty; } leaf allow-cc-from-radius { description "Enable charging characteristics from RADIUS"; type empty; } container imsi-based-characteristics { description "Charging characteristic based on IMSI"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice imsi-based-characteristics-choice { case case_1 { leaf disable { description "Disable IMSI-based selection of charging characteristics"; type empty; } } case case_2 { leaf override { description "Force IMSI-based selection of charging characteristics"; type empty; } } } } } container roaming { description "Roaming class settings"; uses roaming_type; } container sgsn { description "SGSN class settings"; uses apn_sgsn_type; } container user-category { description "User category settings"; uses user_category_type; } container qos-control { description "QoS control"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list profile { key name; description "QoS control profile"; max-elements 16; leaf name { description "Profile identifier"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container default { presence "enable default"; description "Default QoS"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list quality-of-service { key name; description "Quality of service"; uses fbc_qos_control_qos_type; } container default-quality-of-service { description "Default quality of service"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf traffic-class { description "Traffic class"; type enumeration { enum conversational { description "Conversational quality of service"; } enum streaming { description "Streaming quality of service"; } enum interactive-1 { description "Interactive priority 1 quality of service"; } enum interactive-2 { description "Interactive priority 2 quality of service"; } enum interactive-3 { description "Interactive priority 3 quality of service"; } enum background { description "Background quality of service"; } } } leaf policy { description "QoS policy"; default "must"; type enumeration { enum must { description "Exact QoS required"; } enum min-required { description "Minimum QoS required"; } enum max-allowed { description "Maximum QoS allowed"; } } } leaf maximum-bit-rate-uplink { description "Maximum uplink bit rate"; units "kilobits"; type uint32 { range "0 .. 8640"; } } leaf maximum-bit-rate-downlink { description "Maximum downlink bit rate"; units "kilobits"; type uint32 { range "0 .. 16000"; } } leaf guaranteed-bit-rate-uplink { description "Guaranteed uplink bit rate"; units "kilobits"; type uint32 { range "0 .. 8640"; } } leaf guaranteed-bit-rate-downlink { description "Guaranteed downlink bit rate"; units "kilobits"; type uint32 { range "0 .. 16000"; } } leaf transfer-delay { description "Transfer delay"; units "milliseconds"; type uint32 { range "10 .. 4000"; } } } } list roaming-class { key name; description "Roaming class"; max-elements 24; leaf name { description "Roaming class identifier"; type uint32 { range "1 .. 24"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list quality-of-service { key name; description "Quality of service"; uses fbc_qos_control_qos_type; } container default-quality-of-service { description "Default quality of service"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf traffic-class { description "Traffic class"; type enumeration { enum conversational { description "Conversational quality of service"; } enum streaming { description "Streaming quality of service"; } enum interactive-1 { description "Interactive priority 1 quality of service"; } enum interactive-2 { description "Interactive priority 2 quality of service"; } enum interactive-3 { description "Interactive priority 3 quality of service"; } enum background { description "Background quality of service"; } } } leaf policy { description "QoS policy"; default "must"; type enumeration { enum must { description "Exact QoS required"; } enum min-required { description "Minimum QoS required"; } enum max-allowed { description "Maximum QoS allowed"; } } } leaf maximum-bit-rate-uplink { description "Maximum uplink bit rate"; units "kilobits"; type uint32 { range "0 .. 8640"; } } leaf maximum-bit-rate-downlink { description "Maximum downlink bit rate"; units "kilobits"; type uint32 { range "0 .. 16000"; } } leaf guaranteed-bit-rate-uplink { description "Guaranteed uplink bit rate"; units "kilobits"; type uint32 { range "0 .. 8640"; } } leaf guaranteed-bit-rate-downlink { description "Guaranteed downlink bit rate"; units "kilobits"; type uint32 { range "0 .. 16000"; } } leaf transfer-delay { description "Transfer delay"; units "milliseconds"; type uint32 { range "10 .. 4000"; } } } } list sgsn-class { key name; description "SGSN class"; max-elements 24; leaf name { description "SGSN class identifier"; type uint32 { range "1 .. 24"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list quality-of-service { key name; description "Quality of service"; uses fbc_qos_control_qos_type; } container default-quality-of-service { description "Default quality of service"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf traffic-class { description "Traffic class"; type enumeration { enum conversational { description "Conversational quality of service"; } enum streaming { description "Streaming quality of service"; } enum interactive-1 { description "Interactive priority 1 quality of service"; } enum interactive-2 { description "Interactive priority 2 quality of service"; } enum interactive-3 { description "Interactive priority 3 quality of service"; } enum background { description "Background quality of service"; } } } leaf policy { description "QoS policy"; default "must"; type enumeration { enum must { description "Exact QoS required"; } enum min-required { description "Minimum QoS required"; } enum max-allowed { description "Maximum QoS allowed"; } } } leaf maximum-bit-rate-uplink { description "Maximum uplink bit rate"; units "kilobits"; type uint32 { range "0 .. 8640"; } } leaf maximum-bit-rate-downlink { description "Maximum downlink bit rate"; units "kilobits"; type uint32 { range "0 .. 16000"; } } leaf guaranteed-bit-rate-uplink { description "Guaranteed uplink bit rate"; units "kilobits"; type uint32 { range "0 .. 8640"; } } leaf guaranteed-bit-rate-downlink { description "Guaranteed downlink bit rate"; units "kilobits"; type uint32 { range "0 .. 16000"; } } leaf transfer-delay { description "Transfer delay"; units "milliseconds"; type uint32 { range "10 .. 4000"; } } } } } } container p-cscf { description "P-CSCF settings"; uses p_cscf_apn_type; } } grouping apn_address_type { leaf name { description "Address range for APN network"; type ipv4prefix; } leaf static { description "Range is only for static contexts"; type empty; } leaf subnet-name { description "Name of the subnet"; type string { length "1 .. 64"; } } } grouping apn_ipv6_address_type { leaf name { description "Address range for APN network"; type ipv6prefix; } leaf static { description "Range is only for static contexts"; type empty; } leaf subnet-name { description "Name of the subnet"; type string { length "1 .. 64"; } } } grouping apn_sgsn_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list sgsn-class { key name; description "SGSN class"; uses apn_sgsn_class_type; } } grouping apn_sgsn_class_type { leaf name { description "SGSN class identifier"; type uint32 { range "1 .. 24"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list sgsn-address { key name; ordered-by user; description "SGSN address associated with class"; leaf name { description "SGSN address or address prefix"; type ipv4prefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list rat-types { description "Radio access type (RAT) global defaults"; type enumeration { enum unknown { description "Unknown or missing"; } enum utran { description "WCDMA/UMTS Terrestrial radio access network"; } enum geran { description "GSM/EDGE radio access network"; } enum wlan { description "Wireless local area network"; } } } } } grouping bandconst_type { leaf name { description "Type of traffic to limit"; type enumeration { enum ef { description "Expedited forwarding"; } enum af1 { description "Assured forwarding class 1"; } enum af2 { description "Assured forwarding class 2"; } } } leaf limit { description "Limit for traffic"; units "kilobits"; type uint32 { range "100 .. 10000000"; } mandatory true; } } grouping charging_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container cdr-attribute { description "Attributes in charging data records"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-reduced-partial { description "Generate fully qualified partial CDRs only"; type empty; } leaf no-node-identifier { description "Don't include node identifier"; type empty; } leaf no-local-record-sequence-number { description "Don't include local record sequence number"; type empty; } choice msisdn-choice { case case_1 { leaf no-msisdn { description "Don't include MSISDN"; type empty; } } case case_2 { leaf msisdn-always { description "Always include MSISDN even if there is no change"; type empty; } } } leaf no-apn-network-identifier { description "Don't include network identifier of APN"; type empty; } leaf no-pdp-type { description "Don't include PDP type"; type empty; } leaf no-pdp-address { description "Don't include PDP address"; type empty; } leaf no-dynamic-address-flag { description "Don't include indication if served PDP address is dynamic"; type empty; } choice t-volume-choice { case case_1 { leaf no-traffic-volumes { description "Don't include list of traffic data volumes"; type empty; } } case case_2 { container traffic-volumes { description "Include list of traffic data volumes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf qos-always { description "Always include QoS information even if there is no change"; type empty; } } } } leaf no-apn-selection-mode { description "Don't include index indicating how the APN was selected"; type empty; } leaf no-cc-selection-mode { description "Don't include information about how charging characteristics were selected"; type empty; } leaf record-extension { description "Include record extension"; type empty; } leaf no-sgsn-plmn-id { description "Don't include the SGSN PLMN identifier"; type empty; } leaf apn-encoding { description "Method of ASN.1 encoding of the APN field in G-CDR"; type enumeration { enum dot-notation { description "Encode dot as '.'"; } enum digit-notation { description "Encode dot as digit"; } } } container record-extension-attributes { description "Record extension CDR attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf user-category { description "Include user category"; type empty; } leaf bearer-control { description "Include bearer control"; type empty; } container service-based-charging { description "Service-based charging CDR attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf service-identifier-volume { description "Include volume per service identifier"; type empty; } container service-class-volume { presence "enable service-class-volume"; description "Include volume per service class"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf include-rate { description "Include volume rate per service class"; type empty; } } container service-class-block { presence "enable service-class-block"; description "Include number of blocks per service class"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf include-rate { description "Include block-based rate per service class"; type empty; } leaf payload-time { description "Include actual data transfer start and stop time"; type empty; } } container block { presence "enable block"; description "Include number of blocks"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf include-rate { description "Include block-based rate"; type empty; } leaf payload-time { description "Include actual data transfer start and stop time"; type empty; } } leaf initial-charge { description "Include initial charge"; type empty; } leaf volume-limit-action { description "Include session policy volume limit action"; type empty; } leaf block-based-limit-action { description "Include session policy block-based limit action"; type empty; } } leaf include-uri { description "Include URI in CDRs for event-based packet inspection"; type empty; } leaf include-redirect-info { description "Include redirect information"; type empty; } } leaf no-external-charging-id { description "Don't include external charging id"; type empty; } leaf no-ms-time-zone { description "Don't include ms time zone"; type empty; } leaf no-user-location-information { description "Don't include user location information"; type empty; } container enhanced-cdr { presence "enable enhanced-cdr"; description "Attribute settings for enhanced CDR"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-ps-furnish-charging-information { description "Don't include PS furnish charging information"; type empty; } leaf no-traffic-volume { description "Don't include traffic-volume"; type empty; } leaf no-service-data { description "Don't include service data"; type empty; } container service-data-attributes { presence "enable service-data-attributes"; description "Settings for service data attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-rat-type { description "Don't include radio access technology (RAT) type"; type empty; } leaf no-sgsn-plmn-id { description "Don't include SGSN PLMN ID "; type empty; } leaf no-sgsn-address { description "Don't include SGSN address "; type empty; } leaf no-qos-information { description "Don't include QoS information "; type empty; } leaf reporting-level { description "Level for CDR reporting"; default "rating-group"; type enumeration { enum rating-group { description "Report on rating-group level"; } enum service-id { description "Report on service-id level"; } } } list rule-space { key name; ordered-by user; description "Setting for enhanced CDRs handling in rule-space"; leaf name { description "Apply setting to rule space "; type string { length "1 .. 64"; } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list service-id-level-reporting { description "Report CDRs on SI level"; type string { length "1 .. 21"; } max-elements 64; } } } } leaf no-ims-signaling-context { description "Don't include IMS signaling context"; type empty; } leaf no-rat-type { description "Don't include radio access technology (RAT) type"; type empty; } leaf no-imei-sv { description "Don't include IMEI and software version"; type empty; } } container gtp-prime { description "GTP Prime configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf keepalive-interval { description "Seconds between sending keepalive messages"; default "60"; units "seconds"; type uint32 { range "60 .. 200"; } } leaf t3-response-time { description "Seconds between control message retries"; default "20"; units "seconds"; type uint32 { range "1 .. 30"; } } leaf n3-requests { description "Retransmissions allowed for a control message"; default "5"; type uint32 { range "1 .. 8"; } } leaf diffserv { description "DiffServ DSCP for GTP packets"; default "be"; type enumeration { enum af11 { description "Assured forwarding class 1, low drop precedence"; } enum af12 { description "Assured forwarding class 1, medium drop precedence"; } enum af13 { description "Assured forwarding class 1, high drop precedence"; } enum af21 { description "Assured forwarding class 2, low drop precedence"; } enum af22 { description "Assured forwarding class 2, medium drop precedence"; } enum af23 { description "Assured forwarding class 2, high drop precedence"; } enum af31 { description "Assured forwarding class 3, low drop precedence"; } enum af32 { description "Assured forwarding class 3, medium drop precedence"; } enum af33 { description "Assured forwarding class 3, high drop precedence"; } enum af41 { description "Assured forwarding class 4, low drop precedence"; } enum af42 { description "Assured forwarding class 4, medium drop precedence"; } enum af43 { description "Assured forwarding class 4, high drop precedence"; } enum ef { description "Expedited forwarding"; } enum be { description "Best effort forwarding"; } } } leaf path-management { description "Use path management"; type empty; } leaf no-path-management { description "Use path management"; type empty; } leaf version { description "GTP Prime version"; default "v0-20"; type enumeration { enum v0-20 { description "Use GTP Prime version v0 with 20 bytes header"; } enum v0-6 { description "Use GTP Prime version v0 with 6 bytes header"; } } } } leaf charging-format { description "Format of charging records"; default "99"; type enumeration { enum 97 { description "Version 97"; } enum 98 { description "Version 98"; } enum 99 { description "Version 99"; } enum 4 { description "Version 4"; } enum 5 { description "Version 5"; } enum 6 { description "Version 6"; } } } container charging-log { description "Charging records logged to node"; uses charging_log_type; } container characteristics { description "Account-type charging characteristics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default { description "Profile applied to context if context contains no charging characteristic"; type enumeration { enum profile0 { description "Profile 0"; } enum profile1 { description "Profile 1"; } enum profile2 { description "Profile 2"; } enum profile3 { description "Profile 3"; } enum profile4 { description "Profile 4"; } enum profile5 { description "Profile 5"; } enum profile6 { description "Profile 6"; } enum profile7 { description "Profile 7"; } enum profile8 { description "Profile 8"; } enum profile9 { description "Profile 9"; } enum profile10 { description "Profile 10"; } enum profile11 { description "Profile 11"; } enum profile12 { description "Profile 12"; } enum profile13 { description "Profile 13"; } enum profile14 { description "Profile 14"; } enum profile15 { description "Profile 15"; } } } container profile8 { description "Profile 8 clients"; uses charging_attr_type; } container profile4 { description "Profile 4 clients"; uses charging_attr_type; } container profile1 { description "Profile 1 clients"; uses charging_attr_type; } container profile2 { description "Profile 2 clients"; uses charging_attr_type; } container profile0 { description "Profile 0 clients"; uses charging_attr_type; } container profile3 { description "Profile 3 clients"; uses charging_attr_type; } container profile5 { description "Profile 5 clients"; uses charging_attr_type; } container profile6 { description "Profile 6 clients"; uses charging_attr_type; } container profile7 { description "Profile 7 clients"; uses charging_attr_type; } container profile9 { description "Profile 9 clients"; uses charging_attr_type; } container profile10 { description "Profile 10 clients"; uses charging_attr_type; } container profile11 { description "Profile 11 clients"; uses charging_attr_type; } container profile12 { description "Profile 12 clients"; uses charging_attr_type; } container profile13 { description "Profile 13 clients"; uses charging_attr_type; } container profile14 { description "Profile 14 clients"; uses charging_attr_type; } container profile15 { description "Profile 15 clients"; uses charging_attr_type; } } choice tariff_choice { case case_1 { list tariff-activation { key name; description "Local times when new tariffs apply"; uses deprecated_tariff_type; } } } container imsi-based-characteristics { description "Select charging characteristic based on IMSI"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container profile8 { description "Profile 8 clients"; uses imsi_charac_type; } container profile4 { description "Profile 4 clients"; uses imsi_charac_type; } container profile1 { description "Profile 1 clients"; uses imsi_charac_type; } container profile2 { description "Profile 2 clients"; uses imsi_charac_type; } container profile0 { description "Profile 0 clients"; uses imsi_charac_type; } container profile3 { description "Profile 3 clients"; uses imsi_charac_type; } container profile5 { description "Profile 5 clients"; uses imsi_charac_type; } container profile6 { description "Profile 6 clients"; uses imsi_charac_type; } container profile7 { description "Profile 7 clients"; uses imsi_charac_type; } container profile9 { description "Profile 9 clients"; uses imsi_charac_type; } container profile10 { description "Profile 10 clients"; uses imsi_charac_type; } container profile11 { description "Profile 11 clients"; uses imsi_charac_type; } container profile12 { description "Profile 12 clients"; uses imsi_charac_type; } container profile13 { description "Profile 13 clients"; uses imsi_charac_type; } container profile14 { description "Profile 14 clients"; uses imsi_charac_type; } container profile15 { description "Profile 15 clients"; uses imsi_charac_type; } } leaf no-empty-cdr { description "Do not close CDR at time limit if volume is zero"; type empty; } } grouping charging_attr_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf volume-limit { description "Volume of charging data to buffer"; default "500"; units "kilobytes"; type uint32 { range "100 .. 1000000"; } } leaf time-limit { description "Time to buffer charging data"; default "60"; units "minutes"; type uint32 { range "15 .. 1440"; } } leaf call-detail { description "Generate call data records"; type empty; } leaf no-call-detail { description "Generate call data records"; type empty; } leaf change-limit { description "Maximum record changes to buffer on PIC"; default "1"; type uint32 { range "1 .. 5"; } } leaf transfer-type { description "Method used to transfer charging data"; type enumeration { enum ftp-pull { description "Charging data transfer uses FTP pull only"; } enum gtp-prime { description "Charging data transfer uses GTP Prime only"; } enum gtpp-ftp { description "Charging data transfer uses both FTP pull and GTP Prime"; } } } container gtp-prime { description "Characteristic specific GTP Prime configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list gateway { description "Address of billing gateway"; type ipv4addr; max-elements 3; } } } grouping charging_log_type { description "Charging records logged to node"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf user { description "User to own charging files"; type string { } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf maximum-size { description "Maximum size of charging log file"; default "307200"; units "kilobytes"; type uint32 { range "1024 .. 1048576"; } } leaf maximum-age { description "Maximum age of charging log file"; default "120"; units "minutes"; type uint32 { range "5 .. 1440"; } } leaf compression { description "Compress all CDR log files"; type empty; } leaf no-mirror { description "Disable mirroring of charging log files on backup Routing Engine"; type empty; } container local-log { description "CDRs meant for normal offline transfer"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf force-empty-files { description "Generate empty CDR log files if no CDRs are received"; type empty; } } container gtp-prime-log { description "GTP Prime CDRs logged to disk on failure in reaching charging gateways"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf activate-on-failure { description "Store GTP Prime CDRs on disk if all charging gateways are down"; type empty; } } container traceoptions { description "Charging-log trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum init { description "Trace initialization events"; } enum connections { description "Trace connection-specific events"; } enum charging { description "Trace charging-specific events"; } enum all { description "Trace everything"; } } } } } } grouping deprecated_tariff_type { leaf name { description "Tariff time index"; type uint32 { range "1 .. 24"; } } leaf starts { description "Local time that the new tariff is activated"; type string { } } } grouping dhcp_server_type { leaf name { description "DHCP server address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf timeout { description "Request timeout period"; default "3"; units "seconds"; type uint32 { range "1 .. 90"; } } leaf retry { description "Retry attempts"; default "3"; type uint32 { range "1 .. 10"; } } } grouping dhcp_shared_type { leaf name { description "Name of server"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list address { description "DHCP server addresses"; type ipv4addr; } leaf routing-instance { description "Routing instance for server"; type string { } } choice address-range-choice { case case_1 { leaf gi-address-range { description "Address range used in routing instance"; type ipv4prefix; } } } leaf timeout { description "Request timeout period"; default "3"; units "seconds"; type uint32 { range "1 .. 90"; } } leaf retry { description "Retry attempts"; default "3"; type uint32 { range "1 .. 10"; } } } grouping dscp_qos_map_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container conversational-1 { description "DSCP name for conversational class 1 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf low-drop-precedence { description "SDU error ratio = (10^-4 | 10^-5 | 10^-6)"; default "ef"; type enumeration { enum af11 { description "Assured forwarding class 1, low drop precedence"; } enum af12 { description "Assured forwarding class 1, medium drop precedence"; } enum af13 { description "Assured forwarding class 1, high drop precedence"; } enum af21 { description "Assured forwarding class 2, low drop precedence"; } enum af22 { description "Assured forwarding class 2, medium drop precedence"; } enum af23 { description "Assured forwarding class 2, high drop precedence"; } enum af31 { description "Assured forwarding class 3, low drop precedence"; } enum af32 { description "Assured forwarding class 3, medium drop precedence"; } enum af33 { description "Assured forwarding class 3, high drop precedence"; } enum af41 { description "Assured forwarding class 4, low drop precedence"; } enum af42 { description "Assured forwarding class 4, medium drop precedence"; } enum af43 { description "Assured forwarding class 4, high drop precedence"; } enum ef { description "Expedited forwarding"; } enum be { description "Best effort forwarding"; } } } leaf medium-drop-precedence { description "SDU error ratio = (7*10^-3 | 10^-3)"; default "ef"; type enumeration { enum af11 { description "Assured forwarding class 1, low drop precedence"; } enum af12 { description "Assured forwarding class 1, medium drop precedence"; } enum af13 { description "Assured forwarding class 1, high drop precedence"; } enum af21 { description "Assured forwarding class 2, low drop precedence"; } enum af22 { description "Assured forwarding class 2, medium drop precedence"; } enum af23 { description "Assured forwarding class 2, high drop precedence"; } enum af31 { description "Assured forwarding class 3, low drop precedence"; } enum af32 { description "Assured forwarding class 3, medium drop precedence"; } enum af33 { description "Assured forwarding class 3, high drop precedence"; } enum af41 { description "Assured forwarding class 4, low drop precedence"; } enum af42 { description "Assured forwarding class 4, medium drop precedence"; } enum af43 { description "Assured forwarding class 4, high drop precedence"; } enum ef { description "Expedited forwarding"; } enum be { description "Best effort forwarding"; } } } leaf high-drop-precedence { description "SDU error ratio = (10^-1 | 10^-2)"; default "ef"; type enumeration { enum af11 { description "Assured forwarding class 1, low drop precedence"; } enum af12 { description "Assured forwarding class 1, medium drop precedence"; } enum af13 { description "Assured forwarding class 1, high drop precedence"; } enum af21 { description "Assured forwarding class 2, low drop precedence"; } enum af22 { description "Assured forwarding class 2, medium drop precedence"; } enum af23 { description "Assured forwarding class 2, high drop precedence"; } enum af31 { description "Assured forwarding class 3, low drop precedence"; } enum af32 { description "Assured forwarding class 3, medium drop precedence"; } enum af33 { description "Assured forwarding class 3, high drop precedence"; } enum af41 { description "Assured forwarding class 4, low drop precedence"; } enum af42 { description "Assured forwarding class 4, medium drop precedence"; } enum af43 { description "Assured forwarding class 4, high drop precedence"; } enum ef { description "Expedited forwarding"; } enum be { description "Best effort forwarding"; } } } } container conversational-2 { description "DSCP name for conversational class 2 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf low-drop-precedence { description "SDU error ratio = (10^-4 | 10^-5 | 10^-6)"; default "af11"; type enumeration { enum af11 { description "Assured forwarding class 1, low drop precedence"; } enum af12 { description "Assured forwarding class 1, medium drop precedence"; } enum af13 { description "Assured forwarding class 1, high drop precedence"; } enum af21 { description "Assured forwarding class 2, low drop precedence"; } enum af22 { description "Assured forwarding class 2, medium drop precedence"; } enum af23 { description "Assured forwarding class 2, high drop precedence"; } enum af31 { description "Assured forwarding class 3, low drop precedence"; } enum af32 { description "Assured forwarding class 3, medium drop precedence"; } enum af33 { description "Assured forwarding class 3, high drop precedence"; } enum af41 { description "Assured forwarding class 4, low drop precedence"; } enum af42 { description "Assured forwarding class 4, medium drop precedence"; } enum af43 { description "Assured forwarding class 4, high drop precedence"; } enum ef { description "Expedited forwarding"; } enum be { description "Best effort forwarding"; } } } leaf medium-drop-precedence { description "SDU error ratio = (7*10^-3 | 10^-3)"; default "af12"; type enumeration { enum af11 { description "Assured forwarding class 1, low drop precedence"; } enum af12 { description "Assured forwarding class 1, medium drop precedence"; } enum af13 { description "Assured forwarding class 1, high drop precedence"; } enum af21 { description "Assured forwarding class 2, low drop precedence"; } enum af22 { description "Assured forwarding class 2, medium drop precedence"; } enum af23 { description "Assured forwarding class 2, high drop precedence"; } enum af31 { description "Assured forwarding class 3, low drop precedence"; } enum af32 { description "Assured forwarding class 3, medium drop precedence"; } enum af33 { description "Assured forwarding class 3, high drop precedence"; } enum af41 { description "Assured forwarding class 4, low drop precedence"; } enum af42 { description "Assured forwarding class 4, medium drop precedence"; } enum af43 { description "Assured forwarding class 4, high drop precedence"; } enum ef { description "Expedited forwarding"; } enum be { description "Best effort forwarding"; } } } leaf high-drop-precedence { description "SDU error ratio = (10^-1 | 10^-2)"; default "af13"; type enumeration { enum af11 { description "Assured forwarding class 1, low drop precedence"; } enum af12 { description "Assured forwarding class 1, medium drop precedence"; } enum af13 { description "Assured forwarding class 1, high drop precedence"; } enum af21 { description "Assured forwarding class 2, low drop precedence"; } enum af22 { description "Assured forwarding class 2, medium drop precedence"; } enum af23 { description "Assured forwarding class 2, high drop precedence"; } enum af31 { description "Assured forwarding class 3, low drop precedence"; } enum af32 { description "Assured forwarding class 3, medium drop precedence"; } enum af33 { description "Assured forwarding class 3, high drop precedence"; } enum af41 { description "Assured forwarding class 4, low drop precedence"; } enum af42 { description "Assured forwarding class 4, medium drop precedence"; } enum af43 { description "Assured forwarding class 4, high drop precedence"; } enum ef { description "Expedited forwarding"; } enum be { description "Best effort forwarding"; } } } } container streaming-1 { description "DSCP name for streaming class 1 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf low-drop-precedence { description "SDU error ratio = (10^-4 | 10^-5 | 10^-6)"; default "af11"; type enumeration { enum af11 { description "Assured forwarding class 1, low drop precedence"; } enum af12 { description "Assured forwarding class 1, medium drop precedence"; } enum af13 { description "Assured forwarding class 1, high drop precedence"; } enum af21 { description "Assured forwarding class 2, low drop precedence"; } enum af22 { description "Assured forwarding class 2, medium drop precedence"; } enum af23 { description "Assured forwarding class 2, high drop precedence"; } enum af31 { description "Assured forwarding class 3, low drop precedence"; } enum af32 { description "Assured forwarding class 3, medium drop precedence"; } enum af33 { description "Assured forwarding class 3, high drop precedence"; } enum af41 { description "Assured forwarding class 4, low drop precedence"; } enum af42 { description "Assured forwarding class 4, medium drop precedence"; } enum af43 { description "Assured forwarding class 4, high drop precedence"; } enum ef { description "Expedited forwarding"; } enum be { description "Best effort forwarding"; } } } leaf medium-drop-precedence { description "SDU error ratio = (7*10^-3 | 10^-3)"; default "af12"; type enumeration { enum af11 { description "Assured forwarding class 1, low drop precedence"; } enum af12 { description "Assured forwarding class 1, medium drop precedence"; } enum af13 { description "Assured forwarding class 1, high drop precedence"; } enum af21 { description "Assured forwarding class 2, low drop precedence"; } enum af22 { description "Assured forwarding class 2, medium drop precedence"; } enum af23 { description "Assured forwarding class 2, high drop precedence"; } enum af31 { description "Assured forwarding class 3, low drop precedence"; } enum af32 { description "Assured forwarding class 3, medium drop precedence"; } enum af33 { description "Assured forwarding class 3, high drop precedence"; } enum af41 { description "Assured forwarding class 4, low drop precedence"; } enum af42 { description "Assured forwarding class 4, medium drop precedence"; } enum af43 { description "Assured forwarding class 4, high drop precedence"; } enum ef { description "Expedited forwarding"; } enum be { description "Best effort forwarding"; } } } leaf high-drop-precedence { description "SDU error ratio = (10^-1 | 10^-2)"; default "af13"; type enumeration { enum af11 { description "Assured forwarding class 1, low drop precedence"; } enum af12 { description "Assured forwarding class 1, medium drop precedence"; } enum af13 { description "Assured forwarding class 1, high drop precedence"; } enum af21 { description "Assured forwarding class 2, low drop precedence"; } enum af22 { description "Assured forwarding class 2, medium drop precedence"; } enum af23 { description "Assured forwarding class 2, high drop precedence"; } enum af31 { description "Assured forwarding class 3, low drop precedence"; } enum af32 { description "Assured forwarding class 3, medium drop precedence"; } enum af33 { description "Assured forwarding class 3, high drop precedence"; } enum af41 { description "Assured forwarding class 4, low drop precedence"; } enum af42 { description "Assured forwarding class 4, medium drop precedence"; } enum af43 { description "Assured forwarding class 4, high drop precedence"; } enum ef { description "Expedited forwarding"; } enum be { description "Best effort forwarding"; } } } } container streaming-2 { description "DSCP name for streaming class 2 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf low-drop-precedence { description "SDU error ratio = (10^-4 | 10^-5 | 10^-6)"; default "af21"; type enumeration { enum af11 { description "Assured forwarding class 1, low drop precedence"; } enum af12 { description "Assured forwarding class 1, medium drop precedence"; } enum af13 { description "Assured forwarding class 1, high drop precedence"; } enum af21 { description "Assured forwarding class 2, low drop precedence"; } enum af22 { description "Assured forwarding class 2, medium drop precedence"; } enum af23 { description "Assured forwarding class 2, high drop precedence"; } enum af31 { description "Assured forwarding class 3, low drop precedence"; } enum af32 { description "Assured forwarding class 3, medium drop precedence"; } enum af33 { description "Assured forwarding class 3, high drop precedence"; } enum af41 { description "Assured forwarding class 4, low drop precedence"; } enum af42 { description "Assured forwarding class 4, medium drop precedence"; } enum af43 { description "Assured forwarding class 4, high drop precedence"; } enum ef { description "Expedited forwarding"; } enum be { description "Best effort forwarding"; } } } leaf medium-drop-precedence { description "SDU error ratio = (7*10^-3 | 10^-3)"; default "af22"; type enumeration { enum af11 { description "Assured forwarding class 1, low drop precedence"; } enum af12 { description "Assured forwarding class 1, medium drop precedence"; } enum af13 { description "Assured forwarding class 1, high drop precedence"; } enum af21 { description "Assured forwarding class 2, low drop precedence"; } enum af22 { description "Assured forwarding class 2, medium drop precedence"; } enum af23 { description "Assured forwarding class 2, high drop precedence"; } enum af31 { description "Assured forwarding class 3, low drop precedence"; } enum af32 { description "Assured forwarding class 3, medium drop precedence"; } enum af33 { description "Assured forwarding class 3, high drop precedence"; } enum af41 { description "Assured forwarding class 4, low drop precedence"; } enum af42 { description "Assured forwarding class 4, medium drop precedence"; } enum af43 { description "Assured forwarding class 4, high drop precedence"; } enum ef { description "Expedited forwarding"; } enum be { description "Best effort forwarding"; } } } leaf high-drop-precedence { description "SDU error ratio = (10^-1 | 10^-2)"; default "af23"; type enumeration { enum af11 { description "Assured forwarding class 1, low drop precedence"; } enum af12 { description "Assured forwarding class 1, medium drop precedence"; } enum af13 { description "Assured forwarding class 1, high drop precedence"; } enum af21 { description "Assured forwarding class 2, low drop precedence"; } enum af22 { description "Assured forwarding class 2, medium drop precedence"; } enum af23 { description "Assured forwarding class 2, high drop precedence"; } enum af31 { description "Assured forwarding class 3, low drop precedence"; } enum af32 { description "Assured forwarding class 3, medium drop precedence"; } enum af33 { description "Assured forwarding class 3, high drop precedence"; } enum af41 { description "Assured forwarding class 4, low drop precedence"; } enum af42 { description "Assured forwarding class 4, medium drop precedence"; } enum af43 { description "Assured forwarding class 4, high drop precedence"; } enum ef { description "Expedited forwarding"; } enum be { description "Best effort forwarding"; } } } } container interactive-1 { description "DSCP name for interactive class 1 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf low-drop-precedence { description "SDU error ratio = (10^-4 | 10^-5 | 10^-6)"; default "af21"; type enumeration { enum af11 { description "Assured forwarding class 1, low drop precedence"; } enum af12 { description "Assured forwarding class 1, medium drop precedence"; } enum af13 { description "Assured forwarding class 1, high drop precedence"; } enum af21 { description "Assured forwarding class 2, low drop precedence"; } enum af22 { description "Assured forwarding class 2, medium drop precedence"; } enum af23 { description "Assured forwarding class 2, high drop precedence"; } enum af31 { description "Assured forwarding class 3, low drop precedence"; } enum af32 { description "Assured forwarding class 3, medium drop precedence"; } enum af33 { description "Assured forwarding class 3, high drop precedence"; } enum af41 { description "Assured forwarding class 4, low drop precedence"; } enum af42 { description "Assured forwarding class 4, medium drop precedence"; } enum af43 { description "Assured forwarding class 4, high drop precedence"; } enum ef { description "Expedited forwarding"; } enum be { description "Best effort forwarding"; } } } leaf medium-drop-precedence { description "SDU error ratio = (7*10^-3 | 10^-3)"; default "af22"; type enumeration { enum af11 { description "Assured forwarding class 1, low drop precedence"; } enum af12 { description "Assured forwarding class 1, medium drop precedence"; } enum af13 { description "Assured forwarding class 1, high drop precedence"; } enum af21 { description "Assured forwarding class 2, low drop precedence"; } enum af22 { description "Assured forwarding class 2, medium drop precedence"; } enum af23 { description "Assured forwarding class 2, high drop precedence"; } enum af31 { description "Assured forwarding class 3, low drop precedence"; } enum af32 { description "Assured forwarding class 3, medium drop precedence"; } enum af33 { description "Assured forwarding class 3, high drop precedence"; } enum af41 { description "Assured forwarding class 4, low drop precedence"; } enum af42 { description "Assured forwarding class 4, medium drop precedence"; } enum af43 { description "Assured forwarding class 4, high drop precedence"; } enum ef { description "Expedited forwarding"; } enum be { description "Best effort forwarding"; } } } leaf high-drop-precedence { description "SDU error ratio = (10^-1 | 10^-2)"; default "af23"; type enumeration { enum af11 { description "Assured forwarding class 1, low drop precedence"; } enum af12 { description "Assured forwarding class 1, medium drop precedence"; } enum af13 { description "Assured forwarding class 1, high drop precedence"; } enum af21 { description "Assured forwarding class 2, low drop precedence"; } enum af22 { description "Assured forwarding class 2, medium drop precedence"; } enum af23 { description "Assured forwarding class 2, high drop precedence"; } enum af31 { description "Assured forwarding class 3, low drop precedence"; } enum af32 { description "Assured forwarding class 3, medium drop precedence"; } enum af33 { description "Assured forwarding class 3, high drop precedence"; } enum af41 { description "Assured forwarding class 4, low drop precedence"; } enum af42 { description "Assured forwarding class 4, medium drop precedence"; } enum af43 { description "Assured forwarding class 4, high drop precedence"; } enum ef { description "Expedited forwarding"; } enum be { description "Best effort forwarding"; } } } } container interactive-2 { description "DSCP name for interactive class 2 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf low-drop-precedence { description "SDU error ratio = (10^-4 | 10^-5 | 10^-6)"; default "af31"; type enumeration { enum af11 { description "Assured forwarding class 1, low drop precedence"; } enum af12 { description "Assured forwarding class 1, medium drop precedence"; } enum af13 { description "Assured forwarding class 1, high drop precedence"; } enum af21 { description "Assured forwarding class 2, low drop precedence"; } enum af22 { description "Assured forwarding class 2, medium drop precedence"; } enum af23 { description "Assured forwarding class 2, high drop precedence"; } enum af31 { description "Assured forwarding class 3, low drop precedence"; } enum af32 { description "Assured forwarding class 3, medium drop precedence"; } enum af33 { description "Assured forwarding class 3, high drop precedence"; } enum af41 { description "Assured forwarding class 4, low drop precedence"; } enum af42 { description "Assured forwarding class 4, medium drop precedence"; } enum af43 { description "Assured forwarding class 4, high drop precedence"; } enum ef { description "Expedited forwarding"; } enum be { description "Best effort forwarding"; } } } leaf medium-drop-precedence { description "SDU error ratio = (7*10^-3 | 10^-3)"; default "af32"; type enumeration { enum af11 { description "Assured forwarding class 1, low drop precedence"; } enum af12 { description "Assured forwarding class 1, medium drop precedence"; } enum af13 { description "Assured forwarding class 1, high drop precedence"; } enum af21 { description "Assured forwarding class 2, low drop precedence"; } enum af22 { description "Assured forwarding class 2, medium drop precedence"; } enum af23 { description "Assured forwarding class 2, high drop precedence"; } enum af31 { description "Assured forwarding class 3, low drop precedence"; } enum af32 { description "Assured forwarding class 3, medium drop precedence"; } enum af33 { description "Assured forwarding class 3, high drop precedence"; } enum af41 { description "Assured forwarding class 4, low drop precedence"; } enum af42 { description "Assured forwarding class 4, medium drop precedence"; } enum af43 { description "Assured forwarding class 4, high drop precedence"; } enum ef { description "Expedited forwarding"; } enum be { description "Best effort forwarding"; } } } leaf high-drop-precedence { description "SDU error ratio = (10^-1 | 10^-2)"; default "af33"; type enumeration { enum af11 { description "Assured forwarding class 1, low drop precedence"; } enum af12 { description "Assured forwarding class 1, medium drop precedence"; } enum af13 { description "Assured forwarding class 1, high drop precedence"; } enum af21 { description "Assured forwarding class 2, low drop precedence"; } enum af22 { description "Assured forwarding class 2, medium drop precedence"; } enum af23 { description "Assured forwarding class 2, high drop precedence"; } enum af31 { description "Assured forwarding class 3, low drop precedence"; } enum af32 { description "Assured forwarding class 3, medium drop precedence"; } enum af33 { description "Assured forwarding class 3, high drop precedence"; } enum af41 { description "Assured forwarding class 4, low drop precedence"; } enum af42 { description "Assured forwarding class 4, medium drop precedence"; } enum af43 { description "Assured forwarding class 4, high drop precedence"; } enum ef { description "Expedited forwarding"; } enum be { description "Best effort forwarding"; } } } } container interactive-3 { description "DSCP name for interactive class 3 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf low-drop-precedence { description "SDU error ratio = (10^-4 | 10^-5 | 10^-6)"; default "af41"; type enumeration { enum af11 { description "Assured forwarding class 1, low drop precedence"; } enum af12 { description "Assured forwarding class 1, medium drop precedence"; } enum af13 { description "Assured forwarding class 1, high drop precedence"; } enum af21 { description "Assured forwarding class 2, low drop precedence"; } enum af22 { description "Assured forwarding class 2, medium drop precedence"; } enum af23 { description "Assured forwarding class 2, high drop precedence"; } enum af31 { description "Assured forwarding class 3, low drop precedence"; } enum af32 { description "Assured forwarding class 3, medium drop precedence"; } enum af33 { description "Assured forwarding class 3, high drop precedence"; } enum af41 { description "Assured forwarding class 4, low drop precedence"; } enum af42 { description "Assured forwarding class 4, medium drop precedence"; } enum af43 { description "Assured forwarding class 4, high drop precedence"; } enum ef { description "Expedited forwarding"; } enum be { description "Best effort forwarding"; } } } leaf medium-drop-precedence { description "SDU error ratio = (7*10^-3 | 10^-3)"; default "af42"; type enumeration { enum af11 { description "Assured forwarding class 1, low drop precedence"; } enum af12 { description "Assured forwarding class 1, medium drop precedence"; } enum af13 { description "Assured forwarding class 1, high drop precedence"; } enum af21 { description "Assured forwarding class 2, low drop precedence"; } enum af22 { description "Assured forwarding class 2, medium drop precedence"; } enum af23 { description "Assured forwarding class 2, high drop precedence"; } enum af31 { description "Assured forwarding class 3, low drop precedence"; } enum af32 { description "Assured forwarding class 3, medium drop precedence"; } enum af33 { description "Assured forwarding class 3, high drop precedence"; } enum af41 { description "Assured forwarding class 4, low drop precedence"; } enum af42 { description "Assured forwarding class 4, medium drop precedence"; } enum af43 { description "Assured forwarding class 4, high drop precedence"; } enum ef { description "Expedited forwarding"; } enum be { description "Best effort forwarding"; } } } leaf high-drop-precedence { description "SDU error ratio = (10^-1 | 10^-2)"; default "af43"; type enumeration { enum af11 { description "Assured forwarding class 1, low drop precedence"; } enum af12 { description "Assured forwarding class 1, medium drop precedence"; } enum af13 { description "Assured forwarding class 1, high drop precedence"; } enum af21 { description "Assured forwarding class 2, low drop precedence"; } enum af22 { description "Assured forwarding class 2, medium drop precedence"; } enum af23 { description "Assured forwarding class 2, high drop precedence"; } enum af31 { description "Assured forwarding class 3, low drop precedence"; } enum af32 { description "Assured forwarding class 3, medium drop precedence"; } enum af33 { description "Assured forwarding class 3, high drop precedence"; } enum af41 { description "Assured forwarding class 4, low drop precedence"; } enum af42 { description "Assured forwarding class 4, medium drop precedence"; } enum af43 { description "Assured forwarding class 4, high drop precedence"; } enum ef { description "Expedited forwarding"; } enum be { description "Best effort forwarding"; } } } } container background { description "DSCP name for background traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf low-drop-precedence { description "SDU error ratio = (10^-4 | 10^-5 | 10^-6)"; default "be"; type enumeration { enum af11 { description "Assured forwarding class 1, low drop precedence"; } enum af12 { description "Assured forwarding class 1, medium drop precedence"; } enum af13 { description "Assured forwarding class 1, high drop precedence"; } enum af21 { description "Assured forwarding class 2, low drop precedence"; } enum af22 { description "Assured forwarding class 2, medium drop precedence"; } enum af23 { description "Assured forwarding class 2, high drop precedence"; } enum af31 { description "Assured forwarding class 3, low drop precedence"; } enum af32 { description "Assured forwarding class 3, medium drop precedence"; } enum af33 { description "Assured forwarding class 3, high drop precedence"; } enum af41 { description "Assured forwarding class 4, low drop precedence"; } enum af42 { description "Assured forwarding class 4, medium drop precedence"; } enum af43 { description "Assured forwarding class 4, high drop precedence"; } enum ef { description "Expedited forwarding"; } enum be { description "Best effort forwarding"; } } } leaf medium-drop-precedence { description "SDU error ratio = (7*10^-3 | 10^-3)"; default "be"; type enumeration { enum af11 { description "Assured forwarding class 1, low drop precedence"; } enum af12 { description "Assured forwarding class 1, medium drop precedence"; } enum af13 { description "Assured forwarding class 1, high drop precedence"; } enum af21 { description "Assured forwarding class 2, low drop precedence"; } enum af22 { description "Assured forwarding class 2, medium drop precedence"; } enum af23 { description "Assured forwarding class 2, high drop precedence"; } enum af31 { description "Assured forwarding class 3, low drop precedence"; } enum af32 { description "Assured forwarding class 3, medium drop precedence"; } enum af33 { description "Assured forwarding class 3, high drop precedence"; } enum af41 { description "Assured forwarding class 4, low drop precedence"; } enum af42 { description "Assured forwarding class 4, medium drop precedence"; } enum af43 { description "Assured forwarding class 4, high drop precedence"; } enum ef { description "Expedited forwarding"; } enum be { description "Best effort forwarding"; } } } leaf high-drop-precedence { description "SDU error ratio = (10^-1 | 10^-2)"; default "be"; type enumeration { enum af11 { description "Assured forwarding class 1, low drop precedence"; } enum af12 { description "Assured forwarding class 1, medium drop precedence"; } enum af13 { description "Assured forwarding class 1, high drop precedence"; } enum af21 { description "Assured forwarding class 2, low drop precedence"; } enum af22 { description "Assured forwarding class 2, medium drop precedence"; } enum af23 { description "Assured forwarding class 2, high drop precedence"; } enum af31 { description "Assured forwarding class 3, low drop precedence"; } enum af32 { description "Assured forwarding class 3, medium drop precedence"; } enum af33 { description "Assured forwarding class 3, high drop precedence"; } enum af41 { description "Assured forwarding class 4, low drop precedence"; } enum af42 { description "Assured forwarding class 4, medium drop precedence"; } enum af43 { description "Assured forwarding class 4, high drop precedence"; } enum ef { description "Expedited forwarding"; } enum be { description "Best effort forwarding"; } } } } } grouping fbc_qos_control_qos_type { leaf name { description "Quality of service"; type enumeration { enum conversational { description "Conversational quality of service"; } enum streaming { description "Streaming quality of service"; } enum interactive-1 { description "Interactive priority 1 quality of service"; } enum interactive-2 { description "Interactive priority 2 quality of service"; } enum interactive-3 { description "Interactive priority 3 quality of service"; } enum background { description "Background quality of service"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf traffic-class { description "Traffic class"; type enumeration { enum conversational { description "Conversational quality of service"; } enum streaming { description "Streaming quality of service"; } enum interactive-1 { description "Interactive priority 1 quality of service"; } enum interactive-2 { description "Interactive priority 2 quality of service"; } enum interactive-3 { description "Interactive priority 3 quality of service"; } enum background { description "Background quality of service"; } } } leaf policy { description "QoS policy"; default "must"; type enumeration { enum must { description "Exact QoS required"; } enum min-required { description "Minimum QoS required"; } enum max-allowed { description "Maximum QoS allowed"; } } } leaf maximum-bit-rate-uplink { description "Maximum uplink bit rate"; units "kilobits"; type uint32 { range "0 .. 8640"; } } leaf maximum-bit-rate-downlink { description "Maximum downlink bit rate"; units "kilobits"; type uint32 { range "0 .. 16000"; } } leaf guaranteed-bit-rate-uplink { description "Guaranteed uplink bit rate"; units "kilobits"; type uint32 { range "0 .. 8640"; } } leaf guaranteed-bit-rate-downlink { description "Guaranteed downlink bit rate"; units "kilobits"; type uint32 { range "0 .. 16000"; } } leaf transfer-delay { description "Transfer delay"; units "milliseconds"; type uint32 { range "10 .. 4000"; } } } grouping gtp_type { description "GTP settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf keepalive-interval { description "Seconds between sending keepalive messages"; default "60"; units "seconds"; type uint32 { range "60 .. 200"; } } leaf t3-response-time { description "Seconds between control message retries"; default "20"; units "seconds"; type uint32 { range "1 .. 30"; } } leaf n3-requests { description "Retransmissions allowed for a control message"; default "5"; type uint32 { range "1 .. 8"; } } leaf diffserv { description "DiffServ DSCP for GTP packets"; default "be"; type enumeration { enum af11 { description "Assured forwarding class 1, low drop precedence"; } enum af12 { description "Assured forwarding class 1, medium drop precedence"; } enum af13 { description "Assured forwarding class 1, high drop precedence"; } enum af21 { description "Assured forwarding class 2, low drop precedence"; } enum af22 { description "Assured forwarding class 2, medium drop precedence"; } enum af23 { description "Assured forwarding class 2, high drop precedence"; } enum af31 { description "Assured forwarding class 3, low drop precedence"; } enum af32 { description "Assured forwarding class 3, medium drop precedence"; } enum af33 { description "Assured forwarding class 3, high drop precedence"; } enum af41 { description "Assured forwarding class 4, low drop precedence"; } enum af42 { description "Assured forwarding class 4, medium drop precedence"; } enum af43 { description "Assured forwarding class 4, high drop precedence"; } enum ef { description "Expedited forwarding"; } enum be { description "Best effort forwarding"; } } } leaf path-management { description "Use path management"; type empty; } leaf no-path-management { description "Use path management"; type empty; } leaf gn-routing-instance { description "Routing instance for GTP traffic"; type string { } } leaf-list version-list { description "GTP version"; type enumeration { enum 97 { description "Use GTP version 97"; } enum 98 { description "Use GTP version 98"; } enum 99 { description "Use GTP version 99"; } } } list bandwidth-constraint { key name; ordered-by user; description "SGSN-GGSN bandwidth constraints"; uses bandconst_type; } container downlink-dscp-remapping { description "Gn interface quality-of-service to DSCP remapping"; uses dscp_qos_map_type; } leaf no-n3t3-path-failure { description "Disable path failure on N3-T3 timeout"; type empty; } leaf no-recovery-path-failure { description "Disable path failure on recovery change"; type empty; } } grouping hcm_tag_rule_object { leaf name { description "Rule name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list term { key name; ordered-by user; description "One or more terms in HCM tag rule"; leaf name { description "Term name"; type uint16 { range "1 .. 32767"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Match criteria"; uses hcm_tag_match_object; } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list tag { key name; ordered-by user; description "One or more terms in HCM tag rule"; leaf name { description "Tag name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf tag-header { description "Tag header string"; type string { length "1 .. 63"; } mandatory true; } leaf do-not-rename-existing-tag-header { description "Disable renaming of the tag header"; type empty; } leaf tag-separator { description "Tag separator character"; type string { length 1; } } leaf-list tag-attribute { description "One or more tag attributes"; type string; } container encrypt { description "Specify encryption or hashing algorithm"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf hash { description "Hashing algorithm"; type enumeration { enum md5 { description "Md5 hash"; } } mandatory true; } presence "enable encrypt"; leaf prefix { description "Hash prefix key"; type string { length "1 .. 63"; } mandatory true; } } } leaf count { description "Enable statistics for term"; type empty; } } } } grouping hcm_tag_match_object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list destination-address { key name; ordered-by user; description "Match IP destination address"; uses sfw_addr_object; } list destination-address-range { key "low high"; ordered-by user; description "Match IP destination address range"; leaf low { description "Lower limit of address range"; type ipaddr; } leaf high { description "Upper limit of address range"; type ipaddr; } leaf except { description "Match address not in this prefix"; type empty; } } list destination-prefix-list { key name; ordered-by user; description "One or more named lists of destination prefixes to match"; leaf name { description "Name of prefix list to match against"; type string; } leaf except { description "Name of prefix list not to match against"; type empty; } } leaf-list destination-ports { description "Destination port list specification"; type uint32 { range "0 .. 65535"; } } list destination-port-range { key "low high"; ordered-by user; description "Match destination port range"; leaf low { description "Lower limit of port range"; type uint32 { range "0 .. 65535"; } } leaf high { description "Upper limit of port range"; type uint32 { range "0 .. 65535"; } } } } grouping hcm_url_list_object { leaf name { description "List name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list host { key name; ordered-by user; description "One or more host(s)"; leaf name { description "Domain name"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list request-uri { key name; ordered-by user; description "One or more uri's"; leaf name { description "Uri name"; type string { length "1 .. 40"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } grouping hcm_url_rule_object { leaf name { description "Rule name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list term { key name; ordered-by user; description "One or more terms in HCM url_rule"; leaf name { description "Term name"; type uint16 { range "1 .. 255"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Match criteria"; uses hcm_url_match_object; } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf count { description "Enable statistics for term"; type empty; } leaf log-request { description "Enable logging for term"; type empty; } choice designation { case case_1 { leaf accept { description "Accept the URL"; type empty; } } case case_2 { leaf discard { description "Discard the URL"; type empty; } } } } } } grouping hcm_url_match_object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list url-list { key name; ordered-by user; description "List of Url lists to referance"; leaf name { description "Url list name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list url { key name; ordered-by user; description "Rule specific url list"; leaf name { description "Url name"; type uint16 { range "1 .. 32767"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list host { key name; ordered-by user; description "One or more host(s)"; leaf name { description "Domain name"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list request-uri { key name; ordered-by user; description "One or more uri's"; leaf name { description "Uri name"; type string { length "1 .. 40"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } grouping header-manipulation-message-manipulation-rules-type { description "Definition of header manipulation"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list manipulation-rule { key name; ordered-by user; description "Definition of manipulation rules"; uses header-manipulation-manipulation-rule-type; } } grouping header-manipulation-manipulation-rule-type { leaf name { description "Header manipulation rule name"; type string; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container actions { description "Header manipulation actions"; uses header-manipulation-actions-type; } } grouping header-manipulation-actions-type { description "Manipulations on sip-headers or request-uri"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list sip-header { key name; ordered-by user; description "Manipulation of the SIP header"; max-elements 50; leaf name { description "SIP header field name"; type string; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container field-value { description "Manipulation on the header's field value"; uses header-manipulation-sip-header-field-value-type; } } container request-uri { presence "enable request-uri"; description "Manipulation of the message request-uri"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container field-value { presence "enable field-value"; description "Manipulation on the request-uri field value"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list modify-regular-expression { key name; ordered-by user; description "Set modify regular expression and patterns"; max-elements 5; uses header-manipulation-modify-type; } } } } grouping header-manipulation-modify-type { description "Modify header using regular expression"; leaf name { description "Regular expression pattern"; type regular-expression; mandatory true; } leaf with { description "Modification string"; type string; mandatory true; } } grouping header-manipulation-sip-header-field-value-type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf remove-all { description "Remove all headers"; type empty; } list remove-regular-expression { key name; ordered-by user; description "Remove field-value"; max-elements 5; uses header-manipulation-remove-type; } list reject-regular-expression { key name; ordered-by user; description "Reject message using regular expression"; max-elements 5; uses header-manipulation-reject-type; } list modify-regular-expression { key name; ordered-by user; description "Modify field-value using regular expression"; max-elements 5; uses header-manipulation-modify-type; } list add { key name; ordered-by user; description "Add field-value to header"; max-elements 5; uses header-manipulation-add-type; } list add-missing { key name; ordered-by user; description "Add field-value only if header is missing"; max-elements 5; uses header-manipulation-add-missing-type; } list add-overwrite { key name; ordered-by user; description "Overwrite headers field-value"; max-elements 5; uses header-manipulation-add-overwrite-type; } } grouping header-manipulation-add-missing-type { description "Add header only if missing"; leaf name { description "Field-value to add"; type string; mandatory true; } } grouping header-manipulation-add-overwrite-type { description "Overwrite existing header"; leaf name { description "Field-value to add"; type string; mandatory true; } } grouping header-manipulation-add-type { description "Add header"; leaf name { description "Field-value to add"; type string; mandatory true; } } grouping header-manipulation-reject-type { description "Reject messages that match a regular expression"; leaf name { description "Regular expression pattern"; type regular-expression; mandatory true; } } grouping header-manipulation-remove-type { description "Remove headers that match a regular expression"; leaf name { description "Regular expression pattern"; type regular-expression; mandatory true; } } grouping hierarchical-policer-aggregate-bucket { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container if-exceeding { presence "enable if-exceeding"; description "Define rate limits"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice bandwidth { case case_1 { leaf bandwidth-limit { description "Bandwidth limit"; units "bits per second"; type string; } } } leaf burst-size-limit { description "Burst size limit"; units "bytes"; type string; mandatory true; } } container then { description "Action to take if the rate limits are exceeded"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice hierarchical-policer-action { case case_1 { leaf discard { description "Discard the packet"; type empty; } } case case_2 { leaf loss-priority { description "Packet's loss priority"; type enumeration { enum low { description "Loss priority low"; } enum high { description "Loss priority high"; } enum medium-low { description "Loss priority medium-low"; } enum medium-high { description "Loss priority medium-high"; } } } } case case_3 { leaf forwarding-class { description "Classify packet to forwarding class"; type string { } } } } } } grouping hierarchical-policer-premium-bucket { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container if-exceeding { presence "enable if-exceeding"; description "Define rate limits"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice bandwidth { case case_1 { leaf bandwidth-limit { description "Bandwidth limit"; units "bits per second"; type string; } } } leaf burst-size-limit { description "Burst size limit"; units "bytes"; type string; mandatory true; } } container then { description "Action to take if the rate limits are exceeded"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice hierarchical-policer-action { case case_1 { leaf discard { description "Discard the packet"; type empty; } } } } } grouping idp-policy-type { leaf name { description "IDP policy name"; type string; } container rulebase-ips { description "IPS rulebase"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Configure IPS rule"; leaf name { description "Rule name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf description { description "Rule description"; type string; } container match { description "Rule match criteria"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf from-zone { description "Match from zone"; default "any"; type string; } choice source { case case_1 { leaf-list source-address { description "Match source address"; type string; } } case case_2 { leaf-list source-except { description "Don't match source address"; type string; } } case case_3 { leaf-list source-prefix { description "Match source address"; type ipv4prefix; } } case case_4 { leaf-list source-prefix-except { description "Don't match source address"; type ipv4prefix; } } } leaf to-zone { description "Match to zone"; default "any"; type string; } choice destination { case case_1 { leaf-list destination-address { description "Match destination address"; type string; } } case case_2 { leaf-list destination-except { description "Don't match destination address"; type string; } } case case_3 { leaf-list destination-prefix { description "Match destination address"; type ipv4prefix; } } case case_4 { leaf-list destination-prefix-except { description "Don't match destination address"; type ipv4prefix; } } } leaf application { description "Specify application or application-set name to match"; type string; } container attacks { description "Match attack objects"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list custom-attacks { description "Custom attacks"; type string; } leaf-list custom-attack-groups { description "Custom attack groups"; type string; } leaf-list dynamic-attack-groups { description "Dynamic attack groups"; type string; } leaf-list predefined-attacks { description "Predefined attacks"; type string; } leaf-list predefined-attack-groups { description "Predefined attack groups"; type string; } } } container then { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container action { choice action { case case_1 { leaf no-action { description "No action"; type empty; } } case case_2 { leaf ignore-connection { description "Ignore"; type empty; } } case case_3 { container mark-diffserv { description "Mark differentiated services codepoint (DSCP)"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf codepoint { description "Codepoint value"; type uint32 { range "0 .. 63"; } mandatory true; } presence "enable mark-diffserv"; } } case case_4 { container class-of-service { description "Classification of traffic based on class-of-service"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf forwarding-class { description "Forwarding class for outgoing packets"; type string { } } leaf dscp-code-point { description "Differentiated services code point value"; type uint32 { range "0 .. 63"; } } } } case case_5 { leaf drop-packet { description "Drop packet"; type empty; } } case case_6 { leaf drop-connection { description "Drop connection"; type empty; } } case case_7 { leaf close-client { description "Close client"; type empty; } } case case_8 { leaf close-server { description "Close server"; type empty; } } case case_9 { leaf close-client-and-server { description "Close client and server"; type empty; } } case case_10 { leaf recommended { description "Recommended"; type empty; } } } } container ip-action { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice ip-action { case case_1 { leaf ip-notify { description "Notify about future traffic"; type empty; } } case case_2 { leaf ip-close { description "Close future conenctions"; type empty; } } case case_3 { leaf ip-block { description "Block future conenctions"; type empty; } } } leaf target { description "(null)"; type enumeration { enum service { description "Match source, destination, dst-port and protocol"; } enum source-zone-address { description "Match source-zone and source-address"; } enum source-address { description "Match source"; } enum destination-address { description "Match destination"; } enum zone-service { description "Match source-zone, destination, dst-port, protocol"; } enum source-zone { description "Match source-zone"; } } } leaf log { description "Log IP action taken"; type empty; } leaf log-create { description "Log IP action creation"; type empty; } leaf timeout { description "Number of seconds IP action should remain effective"; type uint32 { range "0 .. 64800"; } } leaf refresh-timeout { description "Refresh timeout when future connections match installed ip-action filter"; type empty; } } container notification { presence "enable notification"; description "Configure notification/logging options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container log-attacks { presence "enable log-attacks"; description "Enable attack logging"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf alert { description "Set alert flag in attack log"; type empty; } } container packet-log { presence "enable packet-log"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf pre-attack { description "No of packets to capture before attack"; default "1"; type uint32 { range "1 .. 255"; } } leaf post-attack { description "No of packets to capture after attack"; default "5"; type uint32 { range "0 .. 255"; } } leaf post-attack-timeout { description "Timeout (seconds) after attack before stopping packet capture"; default "5"; type uint32 { range "0 .. 1800"; } } } } leaf severity { description "Set rule severity level"; type enumeration { enum info { description "(null)"; } enum warning { description "(null)"; } enum minor { description "(null)"; } enum major { description "(null)"; } enum critical { description "(null)"; } } } } leaf terminal { description "Set/Unset terminal flag"; type empty; } } } container rulebase-exempt { description "Exempt rulebase"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Configure exempt rule"; leaf name { description "Rule name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf description { description "Rule description"; type string; } container match { description "Rule match criteria"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf from-zone { description "Match from zone"; default "any"; type string; } choice source { case case_1 { leaf-list source-address { description "Match source address"; type string; } } case case_2 { leaf-list source-except { description "Don't match source address"; type string; } } case case_3 { leaf-list source-prefix { description "Match source address"; type ipv4prefix; } } case case_4 { leaf-list source-prefix-except { description "Don't match source address"; type ipv4prefix; } } } leaf to-zone { description "Match to zone"; default "any"; type string; } choice destination { case case_1 { leaf-list destination-address { description "Match destination address"; type string; } } case case_2 { leaf-list destination-except { description "Don't match destination address"; type string; } } case case_3 { leaf-list destination-prefix { description "Match destination address"; type ipv4prefix; } } case case_4 { leaf-list destination-prefix-except { description "Don't match destination address"; type ipv4prefix; } } } container attacks { description "Match attack objects"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list custom-attacks { description "Custom attacks"; type string; } leaf-list custom-attack-groups { description "Custom attack groups"; type string; } leaf-list dynamic-attack-groups { description "Dynamic attack groups"; type string; } leaf-list predefined-attacks { description "Predefined attacks"; type string; } leaf-list predefined-attack-groups { description "Predefined attack groups"; type string; } } } } } container rulebase-ddos { description "DDOS rulebase"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Configure DDOS rule"; leaf name { description "Rule name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf description { description "Rule description"; type string; } container match { description "Rule match criteria"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf from-zone { description "Match from zone"; default "any"; type string; } choice source { case case_1 { leaf-list source-address { description "Match source address"; type string; } } case case_2 { leaf-list source-except { description "Don't match source address"; type string; } } case case_3 { leaf-list source-prefix { description "Match source address"; type ipv4prefix; } } case case_4 { leaf-list source-prefix-except { description "Don't match source address"; type ipv4prefix; } } } leaf to-zone { description "Match to zone"; default "any"; type string; } choice destination { case case_1 { leaf-list destination-address { description "Match destination address"; type string; } } case case_2 { leaf-list destination-except { description "Don't match destination address"; type string; } } case case_3 { leaf-list destination-prefix { description "Match destination address"; type ipv4prefix; } } case case_4 { leaf-list destination-prefix-except { description "Don't match destination address"; type ipv4prefix; } } } leaf application { description "Specify application or application-set name to match"; type string; } container application-ddos { presence "enable application-ddos"; description "Specify DDOS application"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf application-name { description "Application name"; type string; mandatory true; } } } container then { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container action { choice action { case case_1 { leaf no-action { description "No action"; type empty; } } case case_2 { leaf drop-packet { description "Drop packet"; type empty; } } case case_3 { leaf drop-connection { description "Drop connection"; type empty; } } case case_4 { leaf close-server { description "Close server"; type empty; } } } } container ip-action { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice ip-action { case case_1 { leaf ip-notify { description "Notify about future connections"; type empty; } } case case_2 { leaf ip-block { description "Block future connections"; type empty; } } case case_3 { leaf ip-close { description "Close future connections"; type empty; } } case case_4 { leaf ip-connection-rate-limit { description "Rate limit future connections, number of connections per second limit"; type uint32; } } } leaf log { description "Log IP action taken"; type empty; } leaf log-create { description "Log IP action creation"; type empty; } leaf timeout { description "Number of seconds IP action should remain effective"; type uint32 { range "0 .. 64800"; } } leaf refresh-timeout { description "Refresh timeout when future connections match installed ip-action filter"; type empty; } } container notification { description "Configure notification/logging options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container log-attacks { presence "enable log-attacks"; description "Enable attack logging"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf alert { description "Set alert flag in attack log"; type empty; } } } } } } } grouping idpd-traceoptions-type { description "Trace options for idpd"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Events and other information to include in trace output"; leaf name { description "Flag name to include in trace output"; type enumeration { enum all { description "All events"; } } } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } } grouping ids_rule_object { leaf name { description "Rule name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf match-direction { description "Direction for which the rule match is applied"; type enumeration { enum input { description "Match on input to interface"; } enum output { description "Match on output from interface"; } enum input-output { description "Match on input to and output from interface"; } } mandatory true; } list term { key name; ordered-by user; description "Define an IDS term"; leaf name { description "Term name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Define match criteria"; uses sfw_match_object; } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice accept_choice { case case_1 { leaf force-entry { description "Force entries in IDS tables for matching traffic"; type empty; } } case case_2 { leaf ignore-entry { description "Ignore IDS events for matching traffic"; type empty; } } case case_3 { leaf user-interface { description "User-interface trace level"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } } } container aggregation { description "Define aggregation parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-prefix { description "Prefix length for IPv4 source addresses"; type int32 { range "1 .. 32"; } } leaf destination-prefix { description "Prefix length for IPv4 destination addresses"; type int32 { range "1 .. 32"; } } leaf source-prefix-ipv6 { description "Prefix length for IPv6 source addresses"; type int32 { range "1 .. 128"; } } leaf destination-prefix-ipv6 { description "Prefix length for IPv6 destination addresses"; type int32 { range "1 .. 128"; } } } container logging { description "Define system logging parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "Threshold above which events should be logged"; type int32; } leaf syslog { description "System log information about the packet"; type empty; } } container syn-cookie { description "Define SYN cookie parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "Threshold above which SYN cookies are enabled"; type int32; mandatory true; } presence "enable syn-cookie"; leaf mss { description "MSS value for TCP delayed binding"; type int32 { range "128 .. 8192"; } mandatory true; } } container session-limit { description "Define IDS session limit parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container by-source { description "Define IDS session limit parameters by source"; uses ids_limit_type; } container by-destination { description "Define IDS session limit parameters by destination"; uses ids_limit_type; } container by-pair { description "Define IDS session limit parameters by source-destination pair"; uses ids_limit_type; } } } } } grouping ids_limit_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum { description "Maximum number of open sessions allowed simultaneously"; type string; } leaf rate { description "Maximum number of new sessions allowed per second"; type string; } leaf packets { description "Maximum number of packets allowed per second"; type string; } leaf hold-time { description "How long to keep limit information after session is deleted"; units "second"; type int32 { range "0 .. 60"; } } } grouping imsi_charac_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list imsi { description "Specify IMSI patterns using regular expressions"; type regular-expression; } } grouping inet6_dialer_filter { description "Define an IPv6 dialer filter"; leaf name { description "Filter name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list accounting-profile { description "Accounting profile name"; type string; } list term { key name; ordered-by user; description "Define a firewall term"; leaf name { description "Term name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Define match criteria"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list source-address { key name; ordered-by user; description "Match source address"; uses firewall_addr6_object; } list destination-address { key name; ordered-by user; description "Match destination address"; uses firewall_addr6_object; } list address { key name; ordered-by user; description "Match source or destination address"; uses firewall_addr6_object; } list source-prefix-list { key name; ordered-by user; description "Match source prefixes in named list"; uses firewall_prefix_list; } list destination-prefix-list { key name; ordered-by user; description "Match destination prefixes in named list"; uses firewall_prefix_list; } list prefix-list { key name; ordered-by user; description "Match source or destination prefixes in named list"; uses firewall_prefix_list; } choice packet-length_choice { case case_1 { leaf-list packet-length { description "Range of values"; type string; } } case case_2 { leaf-list packet-length-except { description "Range of values"; type string; } } } choice next-header_choice { case case_1 { leaf-list next-header { description "(null)"; type string; } } case case_2 { leaf-list next-header-except { description "(null)"; type string; } } } choice icmp-type_choice { case case_1 { leaf-list icmp-type { description "(null)"; type string; } } case case_2 { leaf-list icmp-type-except { description "(null)"; type string; } } } choice icmp-code_choice { case case_1 { leaf-list icmp-code { description "(null)"; type string; } } case case_2 { leaf-list icmp-code-except { description "(null)"; type string; } } } choice source-port_choice { case case_1 { leaf-list source-port { description "(null)"; type string; } } case case_2 { leaf-list source-port-except { description "(null)"; type string; } } } choice destination-port_choice { case case_1 { leaf-list destination-port { description "(null)"; type string; } } case case_2 { leaf-list destination-port-except { description "(null)"; type string; } } } choice port_choice { case case_1 { leaf-list port { description "(null)"; type string; } } case case_2 { leaf-list port-except { description "(null)"; type string; } } } } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf log { description "Log the packet"; type empty; } leaf syslog { description "System log (syslog) information about the packet"; type empty; } leaf sample { description "Sample the packet"; type empty; } choice designation { case case_1 { leaf note { description "Interested ISDN packet"; type empty; } } case case_2 { leaf ignore { description "Non-interested ISDN packet"; type empty; } } } } } } grouping inet6_filter { description "Define an IPv6 firewall filter"; leaf name { description "Filter name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list accounting-profile { description "Accounting profile name"; type string; } leaf interface-specific { description "Defined counters are interface specific"; type empty; } leaf physical-interface-filter { description "Filter is physical interface filter"; type empty; } list term { key name; ordered-by user; description "Define a firewall term"; leaf name { description "Term name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf filter { description "Filter to include"; type string { } } container from { description "Define match criteria"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice destination-class_choice { case case_1 { leaf-list destination-class { description "String name"; type string; } } case case_2 { leaf-list destination-class-except { description "String name"; type string; } } case case_3 { leaf-list source-class { description "String name"; type string; } } case case_4 { leaf-list source-class-except { description "String name"; type string; } } } choice interface-group_choice { case case_1 { leaf-list interface-group { description "Range of values"; type string; } } case case_2 { leaf-list interface-group-except { description "Range of values"; type string; } } } list source-address { key name; ordered-by user; description "Match source address"; uses firewall_addr6_object; } list destination-address { key name; ordered-by user; description "Match destination address"; uses firewall_addr6_object; } list address { key name; ordered-by user; description "Match source or destination address"; uses firewall_addr6_object; } list source-prefix-list { key name; ordered-by user; description "Match source prefixes in named list"; uses firewall_prefix_list; } list destination-prefix-list { key name; ordered-by user; description "Match destination prefixes in named list"; uses firewall_prefix_list; } list prefix-list { key name; ordered-by user; description "Match source or destination prefixes in named list"; uses firewall_prefix_list; } choice next-header_choice { case case_1 { leaf-list next-header { description "(null)"; type string; } } case case_2 { leaf-list next-header-except { description "(null)"; type string; } } } choice source-port_choice { case case_1 { leaf-list source-port { description "(null)"; type string; } } case case_2 { leaf-list source-port-except { description "(null)"; type string; } } } choice destination-port_choice { case case_1 { leaf-list destination-port { description "(null)"; type string; } } case case_2 { leaf-list destination-port-except { description "(null)"; type string; } } } choice port_choice { case case_1 { leaf-list port { description "(null)"; type string; } } case case_2 { leaf-list port-except { description "(null)"; type string; } } } choice packet-length_choice { case case_1 { leaf-list packet-length { description "Range of values"; type string { } } } case case_2 { leaf-list packet-length-except { description "Range of values"; type string { } } } } choice traffic-class_choice { case case_1 { leaf-list traffic-class { description "(null)"; type string; } } case case_2 { leaf-list traffic-class-except { description "(null)"; type string; } } } choice icmp-type_choice { case case_1 { leaf-list icmp-type { description "(null)"; type string; } } case case_2 { leaf-list icmp-type-except { description "(null)"; type string; } } } choice icmp-code_choice { case case_1 { leaf-list icmp-code { description "(null)"; type string; } } case case_2 { leaf-list icmp-code-except { description "(null)"; type string; } } } leaf tcp-initial { description "Match initial packet of a TCP connection"; type empty; } leaf tcp-established { description "Match packet of an established TCP connection"; type empty; } leaf tcp-flags { description "Match TCP flags (in symbolic or hex formats)"; type string; } list interface { key name; ordered-by user; description "Match interface name"; uses match_interface_object; } list interface-set { key name; ordered-by user; description "Match interface in set"; uses match_interface_set_object; } choice forwarding-class_choice { case case_1 { leaf-list forwarding-class { description "String name"; type string { } } } case case_2 { leaf-list forwarding-class-except { description "String name"; type string { } } } } choice loss-priority_choice { case case_1 { leaf-list loss-priority { description "(null)"; type enumeration { enum low { description "Loss priority low"; } enum high { description "Loss priority high"; } enum medium-low { description "Loss priority medium-low"; } enum medium-high { description "Loss priority medium-high"; } } } } case case_2 { leaf-list loss-priority-except { description "(null)"; type enumeration { enum low { description "Loss priority low"; } enum high { description "Loss priority high"; } enum medium-low { description "Loss priority medium-low"; } enum medium-high { description "Loss priority medium-high"; } } } } } leaf service-filter-hit { description "Match if service-filter-hit is set"; type empty; } choice hop-limit_choice { } choice payload-protocol_choice { case case_1 { leaf-list payload-protocol { description "(null)"; type string; } } case case_2 { leaf-list payload-protocol-except { description "(null)"; type string; } } } choice extension-header_choice { case case_1 { leaf-list extension-header { description "(null)"; type string; } } case case_2 { leaf-list extension-header-except { description "(null)"; type string; } } } choice gre-key_choice { case case_1 { leaf-list gre-key { description "Range of values"; type string; } } case case_2 { leaf-list gre-key-except { description "Range of values"; type string; } } } choice flex-mask_choice { case case_1 { container flexible-match-mask { description "Match flexible mask"; uses match_L3_flexible_mask; } } } choice flex-range_choice { case case_1 { container flexible-match-range { description "Match flexible range"; uses match_L3_flexible_range; } } } } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice policer-choice { case case_1 { leaf policer { description "Name of policer to use to rate-limit traffic"; type string { } } } case case_2 { container three-color-policer { description "Police the packet using a three-color-policer"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice type-choice { case case_1 { leaf single-rate { description "Name of single-rate three-color policer to use to rate-limit traffic"; type string { } } } case case_2 { leaf two-rate { description "Name of two-rate three-color policer to use to rate-limit traffic"; type string { } } } } } } case case_3 { leaf hierarchical-policer { description "Name of hierarchical policer to use to rate-limit traffic"; type string { } } } } leaf count { description "Count the packet in the named counter"; type string { } } leaf service-accounting { description "Count the packets for service accounting"; type empty; } leaf log { description "Log the packet"; type empty; } leaf syslog { description "System log (syslog) information about the packet"; type empty; } leaf sample { description "Sample the packet"; type empty; } leaf port-mirror-instance { description "Port-mirror the packet to specified instance"; type string { } } leaf port-mirror { description "Port-mirror the packet"; type empty; } leaf analyzer { description "Name of analyzer"; type string { } } leaf loss-priority { description "Packet's loss priority"; type enumeration { enum low { description "Loss priority low"; } enum high { description "Loss priority high"; } enum medium-low { description "Loss priority medium-low"; } enum medium-high { description "Loss priority medium-high"; } } } leaf forwarding-class { description "Classify packet to forwarding class"; type string { } } leaf service-filter-hit { description "Marked when packet processing by the current type of chained filters is done, the packet is directed to the next type of filters"; type empty; } choice designation { case case_1 { leaf accept { description "Accept the packet"; type empty; } } case case_2 { leaf discard { description "Discard the packet"; type empty; } } case case_3 { leaf traffic-class { description "Set traffic-class code point"; type string; } } case case_4 { leaf next { description "Continue to next term in a filter"; type enumeration { enum term { description "Continue to next term in a filter"; } } } } case case_5 { list logical-system { key logical-system-name; ordered-by user; description "Packets are directed to specified logical system"; max-elements 1; leaf logical-system-name { description "Name of logical system"; type string { } } container routing-instance { description "Packets are directed to specified routing instance"; leaf routing-instance-name { description "Name of routing instance"; type string { } mandatory true; } presence "enable routing-instance"; leaf topology { description "Packets are directed to specified topology"; type string { } } } leaf topology { description "Packets are directed to specified topology"; type string { } } } } case case_6 { container routing-instance { description "Packets are directed to specified routing instance"; leaf routing-instance-name { description "Name of routing instance"; type string { } mandatory true; } presence "enable routing-instance"; leaf topology { description "Packets are directed to specified topology"; type string { } } } } case case_7 { leaf topology { description "Packets are directed to specified topology"; type string { } } } case case_8 { container reject { presence "enable reject"; description "Reject the packet"; choice style { case case_1 { leaf no-route { description "Send ICMPv6 No Route message"; type empty; } } case case_2 { leaf administratively-prohibited { description "Send ICMPv6 Administratively Prohibited message"; type empty; } } case case_3 { leaf beyond-scope { description "Send ICMPv6 Beyond Scope of Source Address message"; type empty; } } case case_4 { leaf address-unreachable { description "Send ICMPv6 Address Unreachable message"; type empty; } } case case_5 { leaf port-unreachable { description "Send ICMPv6 Port Unreachable message"; type empty; } } case case_6 { leaf tcp-reset { description "Send TCP Reset message"; type empty; } } } } } } choice policy-map-choice { case case_1 { leaf clear-policy-map { description "Clear the policy marking"; type empty; } } case case_2 { leaf policy-map { description "Policy map action"; type string { } } } } leaf service-accounting-deferred { description "Count the packets for deferred service accounting"; type empty; } leaf force-premium { description "When this bit is marked, traffic is considered as premium by the following hierarchical policer"; type empty; } container decapsulate { presence "enable decapsulate"; description "Terminate a tunnel"; choice tunnel-protocol { case case_1 { container gre { presence "enable gre"; description "GRE protocol"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf sample { description "Sample the packet"; type enumeration { enum inet { description "IPV4 protocol"; } enum inet6 { description "IPV6 protocol"; } enum mpls { description "MPLS protocol"; } } } leaf no-decrement-ttl { description "Do not decrement TTL"; type empty; } leaf forwarding-class { description "Classify packet to forwarding class"; type string { } } leaf interface-group { description "Set the interface group"; type uint32 { range "0 .. 255"; } } choice destination { case case_1 { container routing-instance { description "Packets are directed to specified routing instance"; leaf routing-instance-name { description "Name of routing instance"; type string { } mandatory true; } presence "enable routing-instance"; } } } } } case case_2 { container l2tp { description "L2TP protocol"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf sample { description "Sample the packet"; type enumeration { enum inet { description "IPV4 protocol"; } enum inet6 { description "IPV6 protocol"; } enum mpls { description "MPLS protocol"; } } } leaf no-decrement-ttl { description "Do not decrement TTL"; type empty; } leaf forwarding-class { description "Classify packet to forwarding class"; type string { } } leaf interface-group { description "Set the interface group"; type uint32 { range "0 .. 255"; } } leaf-list cookie { description "L2TPv3 cookie"; type string { length "1 .. 32"; } } choice destination { case case_1 { leaf output-interface { description "Interface name"; type interface-unit; } } } } } } } container encapsulate { presence "enable encapsulate"; description "Send to a tunnel"; leaf tunnel-end-point { description "Name of the tunnel end point"; type string { } mandatory true; } } leaf next-hop-group { description "Use specified next-hop group"; type string; } container next-ip6 { description "Packets are directed to specified the specified ipv6 address"; leaf address { description "Address to route"; type ipv6prefix; } container routing-instance { description "Packets are directed to specified routing instance"; leaf routing-instance-name { description "Name of routing instance"; type string { } mandatory true; } presence "enable routing-instance"; leaf topology { description "Packets are directed to specified topology"; type string { } } } } container next-interface { presence "enable next-interface"; description "Packets are to be routed through the specified interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interface-name { description "Interface name"; type string { length "1 .. 127"; } mandatory true; } container routing-instance { description "Packets are directed to specified routing instance"; leaf routing-instance-name { description "Name of routing instance"; type string { } mandatory true; } presence "enable routing-instance"; leaf topology { description "Packets are directed to specified topology"; type string { } } } choice designation { case case_1 { leaf accept { description "Accept the packet"; type empty; } } case case_2 { leaf next { description "Continue to next term in a filter"; type enumeration { enum term { description "Continue to next term in a filter"; } } } } } } } } leaf enhanced-mode { description "Define filter for chassis network-services enhanced mode"; type empty; } leaf interface-shared { description "Filter is interface-shared"; type empty; } leaf enhanced-mode-override { description "Override the default chassis network-services enhanced mode for dynamic filter"; type empty; } leaf fast-lookup-filter { description "Configure filter in the fast lookup hardware block"; type empty; } leaf instance-shared { description "Filter is routing-instance shared"; type empty; } } grouping inet6_fuf { leaf name { description "Name of fast update filter"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interface-specific { description "Defined counters are interface specific"; type empty; mandatory true; } leaf-list match-order { description "(null)"; type enumeration { enum next-header { description "Include next header protocol in match set"; } enum source-address { description "Include source-address in match set"; } enum destination-address { description "Include destination-address in match set"; } enum source-port { description "Include source-port in match set"; } enum destination-port { description "Include destination-port in match set"; } enum traffic-class { description "Include traffic-class (DSCP) in match set"; } enum payload-protocol { description "Include payload protocol in match set"; } } } list term { key name; ordered-by user; description "One or more firewall terms"; leaf name { description "Term name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf only-at-create { description "Add term only when filter is first created."; type empty; } container from { description "Match criteria"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container source-address { description "Match source IP address"; uses firewall_addr6_simple_object; } container destination-address { description "Match destination IP address"; uses firewall_addr6_simple_object; } choice source-port_choice { case case_1 { container source-port { description "Match TCP/UDP source port"; uses match_simple_port_value; } } } choice destination-port_choice { case case_1 { container destination-port { description "Match TCP/UDP destination port"; uses match_simple_port_value; } } } choice next-header_choice { case case_1 { container next-header { description "Match next header protocol type"; uses match_simple_protocol_value; } } } choice traffic-class_choice { case case_1 { container traffic-class { description "Match Differentiated Services (DiffServ) code point"; uses match_simple_dscp_value; } } } leaf match-terms { description "Dynamically supplied list of match criteria"; type string; } choice payload-protocol_choice { case case_1 { container payload-protocol { description "Match payload protocol type"; uses match_simple_payload_protocol_value; } } } } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice policer-choice { case case_1 { leaf policer { description "Name of policer to use to rate-limit traffic"; type string { } } } } leaf count { description "Count the packet in the named counter"; type string { } } leaf service-accounting { description "Count the packets for service accounting"; type empty; } leaf log { description "Log the packet"; type empty; } leaf port-mirror { description "Port-mirror the packet"; type empty; } leaf loss-priority { description "Packet's loss priority"; type enumeration { enum low { description "Loss priority low"; } enum high { description "Loss priority high"; } enum medium-low { description "Loss priority medium-low"; } enum medium-high { description "Loss priority medium-high"; } } } leaf forwarding-class { description "Classify packet to forwarding class"; type string { } } leaf action-terms { description "Dynamically supplied list of actions"; type string; } choice designation { case case_1 { leaf accept { description "Accept the packet"; type empty; } } case case_2 { leaf discard { description "Discard the packet"; type empty; } } case case_3 { container routing-instance { description "Packets are directed to specified routing instance"; leaf routing-instance-name { description "Name of routing instance"; type string { } mandatory true; } presence "enable routing-instance"; leaf topology { description "Packets are directed to specified topology"; type string { } } } } } } } } grouping firewall_addr6_simple_object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf address { description "Prefix to match"; type ipv6prefix; } } grouping inet6_service_filter { leaf name { description "Filter name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list term { key name; ordered-by user; description "Service filter term"; leaf name { description "Term name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Match criteria"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice interface-group_choice { case case_1 { leaf-list interface-group { description "Range of values"; type string; } } case case_2 { leaf-list interface-group-except { description "Range of values"; type string; } } } list source-address { key name; ordered-by user; description "Match source address"; uses firewall_addr6_object; } list destination-address { key name; ordered-by user; description "Match destination address"; uses firewall_addr6_object; } list address { key name; ordered-by user; description "Match source or destination address"; uses firewall_addr6_object; } list source-prefix-list { key name; ordered-by user; description "Match source prefixes in named list"; uses firewall_prefix_list; } list destination-prefix-list { key name; ordered-by user; description "Match destination prefixes in named list"; uses firewall_prefix_list; } list prefix-list { key name; ordered-by user; description "Match source or destination prefixes in named list"; uses firewall_prefix_list; } choice next-header_choice { case case_1 { leaf-list next-header { description "(null)"; type string; } } case case_2 { leaf-list next-header-except { description "(null)"; type string; } } } choice source-port_choice { case case_1 { leaf-list source-port { description "(null)"; type string; } } case case_2 { leaf-list source-port-except { description "(null)"; type string; } } } choice destination-port_choice { case case_1 { leaf-list destination-port { description "(null)"; type string; } } case case_2 { leaf-list destination-port-except { description "(null)"; type string; } } } choice port_choice { case case_1 { leaf-list port { description "(null)"; type string; } } case case_2 { leaf-list port-except { description "(null)"; type string; } } } choice esp-spi_choice { case case_1 { leaf-list esp-spi { description "Range of values"; type string; } } case case_2 { leaf-list esp-spi-except { description "Range of values"; type string; } } } choice ah-spi_choice { case case_1 { leaf-list ah-spi { description "Range of values"; type string; } } case case_2 { leaf-list ah-spi-except { description "Range of values"; type string; } } } leaf tcp-flags { description "Match TCP flags (in symbolic or hex formats)"; type string; } choice payload-protocol_choice { case case_1 { leaf-list payload-protocol { description "(null)"; type string; } } case case_2 { leaf-list payload-protocol-except { description "(null)"; type string; } } } choice extension-header_choice { case case_1 { leaf-list extension-header { description "(null)"; type string; } } case case_2 { leaf-list extension-header-except { description "(null)"; type string; } } } choice loss-priority_choice { case case_1 { leaf-list loss-priority { description "(null)"; type enumeration { enum low { description "Loss priority low"; } enum high { description "Loss priority high"; } enum medium-low { description "Loss priority medium-low"; } enum medium-high { description "Loss priority medium-high"; } } } } case case_2 { leaf-list loss-priority-except { description "(null)"; type enumeration { enum low { description "Loss priority low"; } enum high { description "Loss priority high"; } enum medium-low { description "Loss priority medium-low"; } enum medium-high { description "Loss priority medium-high"; } } } } } choice forwarding-class_choice { case case_1 { leaf-list forwarding-class { description "String name"; type string { } } } case case_2 { leaf-list forwarding-class-except { description "String name"; type string { } } } } } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf count { description "Count the packet in the named counter"; type string { } } leaf log { description "Log the packet"; type empty; } leaf sample { description "Sample the packet"; type empty; } leaf port-mirror { description "Port-mirror the packet"; type empty; } choice designation { case case_1 { leaf service { description "Forward packets to service processing"; type empty; } } case case_2 { leaf skip { description "Skip service processing"; type empty; } } } } } } grouping inet_dialer_filter { leaf name { description "Filter name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list accounting-profile { description "Accounting profile name"; type string; } list term { key name; ordered-by user; description "Define a firewall term"; leaf name { description "Term name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Define match criteria"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list source-address { key name; ordered-by user; description "Match IP source address"; uses firewall_addr_object; } list destination-address { key name; ordered-by user; description "Match IP destination address"; uses firewall_addr_object; } list address { key name; ordered-by user; description "Match IP source or destination address"; uses firewall_addr_object; } list source-prefix-list { key name; ordered-by user; description "Match IP source prefixes in named list"; uses firewall_prefix_list; } list destination-prefix-list { key name; ordered-by user; description "Match IP destination prefixes in named list"; uses firewall_prefix_list; } list prefix-list { key name; ordered-by user; description "Match IP source or destination prefixes in named list"; uses firewall_prefix_list; } choice packet-length_choice { case case_1 { leaf-list packet-length { description "Range of values"; type string { } } } case case_2 { leaf-list packet-length-except { description "Range of values"; type string { } } } } choice precedence_choice { case case_1 { leaf-list precedence { description "(null)"; type string; } } case case_2 { leaf-list precedence-except { description "(null)"; type string; } } } choice dscp_choice { case case_1 { leaf-list dscp { description "(null)"; type string; } } case case_2 { leaf-list dscp-except { description "(null)"; type string; } } } choice ip-options_choice { case case_1 { leaf-list ip-options { description "(null)"; type string; } } case case_2 { leaf-list ip-options-except { description "(null)"; type string; } } } leaf is-fragment { description "Match if packet is a fragment"; type empty; } leaf first-fragment { description "Match if packet is the first fragment"; type empty; } choice fragment-offset_choice { case case_1 { leaf-list fragment-offset { description "Range of values"; type string { } } } case case_2 { leaf-list fragment-offset-except { description "Range of values"; type string { } } } } leaf fragment-flags { description "Match fragment flags"; type string; } choice protocol_choice { case case_1 { leaf-list protocol { description "(null)"; type string; } } case case_2 { leaf-list protocol-except { description "(null)"; type string; } } } choice ttl_choice { case case_1 { leaf-list ttl { description "Range of values"; type string { } } } case case_2 { leaf-list ttl-except { description "Range of values"; type string { } } } } choice icmp-type_choice { case case_1 { leaf-list icmp-type { description "(null)"; type string; } } case case_2 { leaf-list icmp-type-except { description "(null)"; type string; } } } choice icmp-code_choice { case case_1 { leaf-list icmp-code { description "(null)"; type string; } } case case_2 { leaf-list icmp-code-except { description "(null)"; type string; } } } choice source-port_choice { case case_1 { leaf-list source-port { description "(null)"; type string; } } case case_2 { leaf-list source-port-except { description "(null)"; type string; } } } choice destination-port_choice { case case_1 { leaf-list destination-port { description "(null)"; type string; } } case case_2 { leaf-list destination-port-except { description "(null)"; type string; } } } choice port_choice { case case_1 { leaf-list port { description "(null)"; type string; } } case case_2 { leaf-list port-except { description "(null)"; type string; } } } leaf tcp-initial { description "Match initial packet of a TCP connection"; type empty; } leaf tcp-established { description "Match packet of an established TCP connection"; type empty; } leaf tcp-flags { description "Match TCP flags (in symbolic or hex formats)"; type string; } choice esp-spi_choice { case case_1 { leaf-list esp-spi { description "Range of values"; type string; } } case case_2 { leaf-list esp-spi-except { description "Range of values"; type string; } } } choice ah-spi_choice { case case_1 { leaf-list ah-spi { description "Range of values"; type string; } } case case_2 { leaf-list ah-spi-except { description "Range of values"; type string; } } } } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf log { description "Log the packet"; type empty; } leaf syslog { description "System log (syslog) information about the packet"; type empty; } leaf sample { description "Sample the packet"; type empty; } choice designation { case case_1 { leaf note { description "Interested ISDN packet"; type empty; } } case case_2 { leaf ignore { description "Non-interested ISDN packet"; type empty; } } } } } } grouping inet_filter { leaf name { description "Filter name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list accounting-profile { description "Accounting profile name"; type string; } leaf interface-specific { description "Defined counters are interface specific"; type empty; } leaf physical-interface-filter { description "Filter is physical interface filter"; type empty; } list term { key name; ordered-by user; description "Define a firewall term"; leaf name { description "Term name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf filter { description "Filter to include"; type string { } } container from { description "Define match criteria"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice destination-class_choice { case case_1 { leaf-list destination-class { description "String name"; type string; } } case case_2 { leaf-list destination-class-except { description "String name"; type string; } } case case_3 { leaf-list source-class { description "String name"; type string; } } case case_4 { leaf-list source-class-except { description "String name"; type string; } } } choice interface-group_choice { case case_1 { leaf-list interface-group { description "Range of values"; type string; } } case case_2 { leaf-list interface-group-except { description "Range of values"; type string; } } } list source-address { key name; ordered-by user; description "Match IP source address"; uses firewall_addr_object; } list destination-address { key name; ordered-by user; description "Match IP destination address"; uses firewall_addr_object; } list address { key name; ordered-by user; description "Match IP source or destination address"; uses firewall_addr_object; } list source-prefix-list { key name; ordered-by user; description "Match IP source prefixes in named list"; uses firewall_prefix_list; } list destination-prefix-list { key name; ordered-by user; description "Match IP destination prefixes in named list"; uses firewall_prefix_list; } list prefix-list { key name; ordered-by user; description "Match IP source or destination prefixes in named list"; uses firewall_prefix_list; } choice packet-length_choice { case case_1 { leaf-list packet-length { description "Range of values"; type string { } } } case case_2 { leaf-list packet-length-except { description "Range of values"; type string { } } } } choice dscp_choice { case case_1 { leaf-list dscp { description "(null)"; type string; } } case case_2 { leaf-list dscp-except { description "(null)"; type string; } } } choice precedence_choice { case case_1 { leaf-list precedence { description "(null)"; type string; } } case case_2 { leaf-list precedence-except { description "(null)"; type string; } } } choice ip-options_choice { case case_1 { leaf-list ip-options { description "(null)"; type string; } } case case_2 { leaf-list ip-options-except { description "(null)"; type string; } } } leaf is-fragment { description "Match if packet is a fragment"; type empty; } leaf first-fragment { description "Match if packet is the first fragment"; type empty; } leaf service-filter-hit { description "Match if service-filter-hit is set"; type empty; } choice fragment-offset_choice { case case_1 { leaf-list fragment-offset { description "Range of values"; type string { } } } case case_2 { leaf-list fragment-offset-except { description "Range of values"; type string { } } } } leaf fragment-flags { description "Match fragment flags (in symbolic or hex formats) - (Ingress only)"; type string; } choice protocol_choice { case case_1 { leaf-list protocol { description "(null)"; type string; } } case case_2 { leaf-list protocol-except { description "(null)"; type string; } } } choice ttl_choice { case case_1 { leaf-list ttl { description "Range of values"; type string { } } } case case_2 { leaf-list ttl-except { description "Range of values"; type string { } } } } choice icmp-type_choice { case case_1 { leaf-list icmp-type { description "(null)"; type string; } } case case_2 { leaf-list icmp-type-except { description "(null)"; type string; } } } choice icmp-code_choice { case case_1 { leaf-list icmp-code { description "(null)"; type string; } } case case_2 { leaf-list icmp-code-except { description "(null)"; type string; } } } choice source-port_choice { case case_1 { leaf-list source-port { description "(null)"; type string; } } case case_2 { leaf-list source-port-except { description "(null)"; type string; } } } choice destination-port_choice { case case_1 { leaf-list destination-port { description "(null)"; type string; } } case case_2 { leaf-list destination-port-except { description "(null)"; type string; } } } choice port_choice { case case_1 { leaf-list port { description "(null)"; type string; } } case case_2 { leaf-list port-except { description "(null)"; type string; } } } leaf tcp-initial { description "Match initial packet of a TCP connection"; type empty; } leaf tcp-established { description "Match packet of an established TCP connection"; type empty; } leaf tcp-flags { description "Match TCP flags (in symbolic or hex formats)"; type string; } choice esp-spi_choice { case case_1 { leaf-list esp-spi { description "Range of values"; type string; } } case case_2 { leaf-list esp-spi-except { description "Range of values"; type string; } } } choice ah-spi_choice { case case_1 { leaf-list ah-spi { description "Range of values"; type string; } } case case_2 { leaf-list ah-spi-except { description "Range of values"; type string; } } } list interface { key name; ordered-by user; description "Match interface name"; uses match_interface_object; } list interface-set { key name; ordered-by user; description "Match interface in set"; uses match_interface_set_object; } choice forwarding-class_choice { case case_1 { leaf-list forwarding-class { description "String name"; type string { } } } case case_2 { leaf-list forwarding-class-except { description "String name"; type string { } } } } choice loss-priority_choice { case case_1 { leaf-list loss-priority { description "(null)"; type enumeration { enum low { description "Loss priority low"; } enum high { description "Loss priority high"; } enum medium-low { description "Loss priority medium-low"; } enum medium-high { description "Loss priority medium-high"; } } } } case case_2 { leaf-list loss-priority-except { description "(null)"; type enumeration { enum low { description "Loss priority low"; } enum high { description "Loss priority high"; } enum medium-low { description "Loss priority medium-low"; } enum medium-high { description "Loss priority medium-high"; } } } } } leaf source-port-range-optimize { description "Optimize the source port range"; type empty; } leaf destination-port-range-optimize { description "Optimize the destination port range"; type empty; } choice rat-type_choice { case case_1 { leaf-list rat-type { description "(null)"; type string; } } case case_2 { leaf-list rat-type-except { description "(null)"; type string; } } } choice redirect-reason_choice { case case_1 { leaf-list redirect-reason { description "(null)"; type enumeration { enum aoc { description "Advice of Charge"; } enum aolb { description "Advice of Low Balance"; } enum dpi { description "Layer7 match required"; } } } } case case_2 { leaf-list redirect-reason-except { description "(null)"; type enumeration { enum aoc { description "Advice of Charge"; } enum aolb { description "Advice of Low Balance"; } enum dpi { description "Layer7 match required"; } } } } } choice gre-key_choice { case case_1 { leaf-list gre-key { description "Range of values"; type string; } } case case_2 { leaf-list gre-key-except { description "Range of values"; type string; } } } choice flex-mask_choice { case case_1 { container flexible-match-mask { description "Match flexible mask"; uses match_L3_flexible_mask; } } } choice flex-range_choice { case case_1 { container flexible-match-range { description "Match flexible range"; uses match_L3_flexible_range; } } } } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice policer-choice { case case_1 { leaf policer { description "Name of policer to use to rate-limit traffic"; type string { } } } case case_2 { container three-color-policer { description "Police the packet using a three-color-policer"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice type-choice { case case_1 { leaf single-rate { description "Name of single-rate three-color policer to use to rate-limit traffic"; type string { } } } case case_2 { leaf two-rate { description "Name of two-rate three-color policer to use to rate-limit traffic"; type string { } } } } } } case case_3 { leaf hierarchical-policer { description "Name of hierarchical policer to use to rate-limit traffic"; type string { } } } } leaf count { description "Count the packet in the named counter"; type string { } } leaf service-accounting { description "Count the packets for service accounting"; type empty; } leaf log { description "Log the packet"; type empty; } leaf packet-mode { description "Bypass flow mode for the packet"; type empty; } leaf syslog { description "System log (syslog) information about the packet"; type empty; } leaf sample { description "Sample the packet"; type empty; } leaf port-mirror-instance { description "Port-mirror the packet to specified instance"; type string { } } leaf port-mirror { description "Port-mirror the packet"; type empty; } leaf analyzer { description "Name of analyzer - (Ingress only)"; type string { } } leaf loss-priority { description "Packet's loss priority"; type enumeration { enum low { description "Loss priority low"; } enum high { description "Loss priority high"; } enum medium-low { description "Loss priority medium-low"; } enum medium-high { description "Loss priority medium-high"; } } } leaf forwarding-class { description "Classify packet to forwarding class"; type string { } } leaf service-filter-hit { description "Marked when packet processing by the current type of chained filters is done, the packet is directed to the next type of filters"; type empty; } leaf virtual-channel { description "Set the output interface virtual channel"; type string { } } choice designation { case case_1 { leaf accept { description "Accept the packet"; type empty; } } case case_2 { container discard { presence "enable discard"; description "Discard the packet"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf accounting { description "Named discard collector for packet"; type string; } } } case case_3 { leaf next { description "Continue to next term in a filter"; type enumeration { enum term { description "Continue to next term in a filter"; } } } } case case_4 { list logical-system { key logical-system-name; ordered-by user; description "Packets are directed to specified logical system"; max-elements 1; leaf logical-system-name { description "Name of logical system"; type string { } } container routing-instance { description "Packets are directed to specified routing instance"; leaf routing-instance-name { description "Name of routing instance"; type string { } mandatory true; } presence "enable routing-instance"; leaf topology { description "Packets are directed to specified topology"; type string { } } } leaf topology { description "Packets are directed to specified topology"; type string { } } } } case case_5 { container routing-instance { description "Packets are directed to specified routing instance"; leaf routing-instance-name { description "Name of routing instance"; type string { } mandatory true; } presence "enable routing-instance"; leaf topology { description "Packets are directed to specified topology"; type string { } } } } case case_6 { leaf topology { description "Packets are directed to specified topology"; type string { } } } case case_7 { leaf ipsec-sa { description "Use specified IPSec security association"; type string; } } case case_8 { leaf next-hop-group { description "Use specified next-hop group"; type string; } } case case_9 { container reject { presence "enable reject"; description "Reject the packet"; choice style { case case_1 { leaf network-unreachable { description "Send ICMP Network Unreachable message"; type empty; } } case case_2 { leaf host-unreachable { description "Send ICMP Host Unreachable message"; type empty; } } case case_3 { leaf protocol-unreachable { description "Send ICMP Protocol Unreachable message"; type empty; } } case case_4 { leaf port-unreachable { description "Send ICMP Port Unreachable message"; type empty; } } case case_5 { leaf fragmentation-needed { description "Send ICMP Fragmentation Needed message"; type empty; } } case case_6 { leaf source-route-failed { description "Send ICMP Source Route Failed message"; type empty; } } case case_7 { leaf network-unknown { description "Send ICMP Network Unknown message"; type empty; } } case case_8 { leaf host-unknown { description "Send ICMP Host Unknown message"; type empty; } } case case_9 { leaf source-host-isolated { description "Send ICMP Source Host Isolated message"; type empty; } } case case_10 { leaf network-prohibited { description "Send ICMP Network Prohibited message"; type empty; } } case case_11 { leaf host-prohibited { description "Send ICMP Host Prohibited message"; type empty; } } case case_12 { leaf bad-network-tos { description "Send ICMP Bad Network ToS message"; type empty; } } case case_13 { leaf bad-host-tos { description "Send ICMP Bad Host ToS message"; type empty; } } case case_14 { leaf administratively-prohibited { description "Send ICMP Administratively Prohibited message"; type empty; } } case case_15 { leaf precedence-violation { description "Send ICMP Precedence Violation message"; type empty; } } case case_16 { leaf precedence-cutoff { description "Send ICMP Precedence Cutoff message"; type empty; } } case case_17 { leaf tcp-reset { description "Send TCP Reset message"; type empty; } } } } } case case_10 { leaf load-balance { description "Use specified load balancing group"; type string { } } } } leaf dscp { description "Set Differentiated Services (DiffServ) code point"; type string; } leaf prefix-action { description "Police or count packets using named prefix action"; type string { } } choice policy-map-choice { case case_1 { leaf clear-policy-map { description "Clear the policy marking"; type empty; } } case case_2 { leaf policy-map { description "Policy map action"; type string { } } } } leaf service-accounting-deferred { description "Count the packets for deferred service accounting"; type empty; } leaf force-premium { description "When this bit is marked, traffic is considered as premium by the following hierarchical policer"; type empty; } container next-ip { description "Packets are directed to specified the specified ipv4 address"; leaf address { description "Address to route"; type ipv4prefix; } container routing-instance { description "Packets are directed to specified routing instance"; leaf routing-instance-name { description "Name of routing instance"; type string { } mandatory true; } presence "enable routing-instance"; leaf topology { description "Packets are directed to specified topology"; type string { } } } } container next-interface { presence "enable next-interface"; description "Packets are to be routed through the specified interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interface-name { description "Interface name"; type string { length "1 .. 127"; } mandatory true; } container routing-instance { description "Packets are directed to specified routing instance"; leaf routing-instance-name { description "Name of routing instance"; type string { } mandatory true; } presence "enable routing-instance"; leaf topology { description "Packets are directed to specified topology"; type string { } } } choice designation { case case_1 { leaf accept { description "Accept the packet"; type empty; } } case case_2 { leaf next { description "Continue to next term in a filter"; type enumeration { enum term { description "Continue to next term in a filter"; } } } } } } container decapsulate { presence "enable decapsulate"; description "Terminate a tunnel"; choice tunnel-protocol { case case_1 { container gre { presence "enable gre"; description "GRE protocol"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf sample { description "Sample the packet"; type enumeration { enum inet { description "IPV4 protocol"; } enum inet6 { description "IPV6 protocol"; } enum mpls { description "MPLS protocol"; } } } leaf no-decrement-ttl { description "Do not decrement TTL"; type empty; } leaf forwarding-class { description "Classify packet to forwarding class"; type string { } } leaf interface-group { description "Set the interface group"; type uint32 { range "0 .. 255"; } } choice destination { case case_1 { container routing-instance { description "Packets are directed to specified routing instance"; leaf routing-instance-name { description "Name of routing instance"; type string { } mandatory true; } presence "enable routing-instance"; } } } } } case case_2 { container l2tp { description "L2TP protocol"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf sample { description "Sample the packet"; type enumeration { enum inet { description "IPV4 protocol"; } enum inet6 { description "IPV6 protocol"; } enum mpls { description "MPLS protocol"; } } } leaf no-decrement-ttl { description "Do not decrement TTL"; type empty; } leaf forwarding-class { description "Classify packet to forwarding class"; type string { } } leaf interface-group { description "Set the interface group"; type uint32 { range "0 .. 255"; } } leaf-list cookie { description "L2TPv3 cookie"; type string { length "1 .. 32"; } } choice destination { case case_1 { leaf output-interface { description "Interface name"; type interface-unit; } } } } } } } container encapsulate { presence "enable encapsulate"; description "Send to a tunnel"; leaf tunnel-end-point { description "Name of the tunnel end point"; type string { } mandatory true; } } leaf dont-fragment { description "Set or clear the DF bit flag of the IP header (ingress only)"; type enumeration { enum clear { description "Clear DF bit flag"; } enum set { description "Set DF bit flag"; } } } } } leaf enhanced-mode { description "Define filter for chassis network-services enhanced mode"; type empty; } leaf interface-shared { description "Filter is interface-shared"; type empty; } leaf enhanced-mode-override { description "Override the default chassis network-services enhanced mode for dynamic filter"; type empty; } leaf instance-shared { description "Filter is routing-instance shared"; type empty; } leaf fast-lookup-filter { description "Configure filter in the fast lookup hardware block"; type empty; } } grouping inet_fuf { leaf name { description "Name of fast update filter"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interface-specific { description "Defined counters are interface specific"; type empty; mandatory true; } leaf-list match-order { description "(null)"; type enumeration { enum protocol { description "Include IP protocol in match set"; } enum source-address { description "Include source-address in match set"; } enum destination-address { description "Include destination-address in match set"; } enum source-port { description "Include source-port in match set"; } enum destination-port { description "Include destination-port in match set"; } enum dscp { description "Include Differentiated Services (DiffServ) code point in match set"; } } } list term { key name; ordered-by user; description "One or more firewall terms"; leaf name { description "Term name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf only-at-create { description "Add term only when filter is first created."; type empty; } container from { description "Match criteria"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container source-address { description "Match source IP address"; uses firewall_addr_simple_object; } container destination-address { description "Match destination IP address"; uses firewall_addr_simple_object; } choice source-port_choice { case case_1 { container source-port { description "Match TCP/UDP source port"; uses match_simple_port_value; } } } choice destination-port_choice { case case_1 { container destination-port { description "Match TCP/UDP destination port"; uses match_simple_port_value; } } } choice protocol_choice { case case_1 { container protocol { description "Match IP protocol type"; uses match_simple_protocol_value; } } } choice dscp_choice { case case_1 { container dscp { description "Match Differentiated Services (DiffServ) code point"; uses match_simple_dscp_value; } } } leaf match-terms { description "Dynamically supplied list of match criteria"; type string; } } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice policer-choice { case case_1 { leaf policer { description "Name of policer to use to rate-limit traffic"; type string { } } } } leaf count { description "Count the packet in the named counter"; type string { } } leaf service-accounting { description "Count the packets for service accounting"; type empty; } leaf log { description "Log the packet"; type empty; } leaf port-mirror { description "Port-mirror the packet"; type empty; } leaf loss-priority { description "Packet's loss priority"; type enumeration { enum low { description "Loss priority low"; } enum high { description "Loss priority high"; } enum medium-low { description "Loss priority medium-low"; } enum medium-high { description "Loss priority medium-high"; } } } leaf forwarding-class { description "Classify packet to forwarding class"; type string { } } leaf action-terms { description "Dynamically supplied list of actions"; type string; } choice designation { case case_1 { leaf accept { description "Accept the packet"; type empty; } } case case_2 { leaf discard { description "Discard the packet"; type empty; } } case case_3 { container routing-instance { description "Packets are directed to specified routing instance"; leaf routing-instance-name { description "Name of routing instance"; type string { } mandatory true; } presence "enable routing-instance"; leaf topology { description "Packets are directed to specified topology"; type string { } } } } } } } } grouping firewall_addr_simple_object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf address { description "Prefix to match"; type ipv4prefix; } } grouping inet_service_filter { leaf name { description "Filter name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list term { key name; ordered-by user; description "Service filter term"; leaf name { description "Term name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Match criteria"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice interface-group_choice { case case_1 { leaf-list interface-group { description "Range of values"; type string; } } case case_2 { leaf-list interface-group-except { description "Range of values"; type string; } } } list source-address { key name; ordered-by user; description "Match IP source address"; uses firewall_addr_object; } list destination-address { key name; ordered-by user; description "Match IP destination address"; uses firewall_addr_object; } list address { key name; ordered-by user; description "Match IP source or destination address"; uses firewall_addr_object; } list source-prefix-list { key name; ordered-by user; description "Match IP source prefixes in named list"; uses firewall_prefix_list; } list destination-prefix-list { key name; ordered-by user; description "Match IP destination prefixes in named list"; uses firewall_prefix_list; } list prefix-list { key name; ordered-by user; description "Match IP source or destination prefixes in named list"; uses firewall_prefix_list; } choice protocol_choice { case case_1 { leaf-list protocol { description "(null)"; type string; } } case case_2 { leaf-list protocol-except { description "(null)"; type string; } } } choice ip-options_choice { case case_1 { leaf-list ip-options { description "(null)"; type enumeration { enum any { description "Any IP option"; } } } } case case_2 { leaf-list ip-options-except { description "(null)"; type enumeration { enum any { description "Any IP option"; } } } } } choice source-port_choice { case case_1 { leaf-list source-port { description "(null)"; type string; } } case case_2 { leaf-list source-port-except { description "(null)"; type string; } } } choice destination-port_choice { case case_1 { leaf-list destination-port { description "(null)"; type string; } } case case_2 { leaf-list destination-port-except { description "(null)"; type string; } } } choice port_choice { case case_1 { leaf-list port { description "(null)"; type string; } } case case_2 { leaf-list port-except { description "(null)"; type string; } } } choice esp-spi_choice { case case_1 { leaf-list esp-spi { description "Range of values"; type string; } } case case_2 { leaf-list esp-spi-except { description "Range of values"; type string; } } } leaf is-fragment { description "Match if packet is a fragment"; type empty; } leaf first-fragment { description "Match if packet is the first fragment"; type empty; } choice fragment-offset_choice { case case_1 { leaf-list fragment-offset { description "Range of values"; type string { } } } case case_2 { leaf-list fragment-offset-except { description "Range of values"; type string { } } } } leaf fragment-flags { description "Match fragment flags"; type string; } leaf tcp-flags { description "Match TCP flags (in symbolic or hex formats)"; type string; } choice ah-spi_choice { case case_1 { leaf-list ah-spi { description "Range of values"; type string; } } case case_2 { leaf-list ah-spi-except { description "Range of values"; type string; } } } choice loss-priority_choice { case case_1 { leaf-list loss-priority { description "(null)"; type enumeration { enum low { description "Loss priority low"; } enum high { description "Loss priority high"; } enum medium-low { description "Loss priority medium-low"; } enum medium-high { description "Loss priority medium-high"; } } } } case case_2 { leaf-list loss-priority-except { description "(null)"; type enumeration { enum low { description "Loss priority low"; } enum high { description "Loss priority high"; } enum medium-low { description "Loss priority medium-low"; } enum medium-high { description "Loss priority medium-high"; } } } } } choice forwarding-class_choice { case case_1 { leaf-list forwarding-class { description "String name"; type string { } } } case case_2 { leaf-list forwarding-class-except { description "String name"; type string { } } } } choice redirect-reason_choice { case case_1 { leaf-list redirect-reason { description "(null)"; type enumeration { enum aoc { description "Advice of Charge"; } enum aolb { description "Advice of Low Balance"; } enum dpi { description "Layer7 match required"; } } } } case case_2 { leaf-list redirect-reason-except { description "(null)"; type enumeration { enum aoc { description "Advice of Charge"; } enum aolb { description "Advice of Low Balance"; } enum dpi { description "Layer7 match required"; } } } } } } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf count { description "Count the packet in the named counter"; type string { } } leaf log { description "Log the packet"; type empty; } leaf sample { description "Sample the packet"; type empty; } leaf port-mirror { description "Port-mirror the packet"; type empty; } choice designation { case case_1 { leaf service { description "Forward packets to service processing"; type empty; } } case case_2 { leaf skip { description "Skip service processing"; type empty; } } } } } } grouping inet_simple_filter { leaf name { description "Name of simple filter"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list term { key name; ordered-by user; description "One or more firewall terms"; leaf name { description "Term name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Match criteria"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container source-address { description "Source IP address"; uses firewall_addr_simple_object; } container destination-address { description "Destination IP address"; uses firewall_addr_simple_object; } choice protocol_choice { case case_1 { container protocol { description "Match IP protocol type"; uses match_simple_protocol_value; } } } choice source-port_choice { case case_1 { container source-port { description "Match TCP/UDP source port"; uses match_simple_port_value; } } } choice destination-port_choice { case case_1 { container destination-port { description "Match TCP/UDP destination port"; uses match_simple_port_value; } } } choice forwarding-class_choice { case case_1 { leaf-list forwarding-class { description "String name"; type string { } } } } choice loss-priority_choice { } } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice policer-choice { case case_1 { leaf policer { description "Name of policer to use to rate-limit traffic"; type string { } } } case case_2 { container three-color-policer { description "Police the packet using a three-color-policer"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice type-choice { case case_1 { leaf single-rate { description "Name of single-rate three-color policer to use to rate-limit traffic"; type string { } } } case case_2 { leaf two-rate { description "Name of two-rate three-color policer to use to rate-limit traffic"; type string { } } } } } } } leaf loss-priority { description "Packet's loss priority"; type enumeration { enum low { description "Low loss priority"; } enum medium-high { description "Medium-high loss priority"; } enum medium-low { description "Medium-low loss priority"; } enum high { description "High loss priority"; } } } leaf forwarding-class { description "Classify packet to forwarding class"; type string { } } leaf discard { description "Discard the packet"; type empty; } leaf accept { description "Accept the packet"; type empty; } } } } grouping interface_map_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf file-specification { description "Default file specification"; type string; mandatory true; } leaf collector { description "Default Collector PIC to be used for flow manipulation"; type interface-device; mandatory true; } list input_intf_to_cpic_map { key name; description "(null)"; uses input_intf_to_cpic_map_type; } } grouping input_intf_to_cpic_map_type { leaf name { description "Input interface for flow collection"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf file-specification { description "File specification to use for this interface"; type string; } leaf collector { description "Collector PIC to be used for flow manipulation"; type interface-device; } } grouping interface_set_type { leaf name { description "Interface set name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list interface-list { key name; ordered-by user; description "Interface list"; leaf name { description "Interface name"; type interface-wildcard; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } grouping interface_type { description "Physical interface"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf queue-statistics { description "Enable queue statistics collection"; type empty; } leaf no-queue-statistics { description "Enable queue statistics collection"; type empty; } leaf traffic-statistics { description "Enable traffic statistics collection"; type empty; } leaf no-traffic-statistics { description "Enable traffic statistics collection"; type empty; } container depth-threshold { description "Depth threshold configuration"; leaf high { description "High queue depth threshold"; units "bytes"; type uint32 { range "1 .. 1250000000"; } mandatory true; } presence "enable depth-threshold"; leaf low { description "Low queue depth threshold"; units "bytes"; type uint32 { range "1 .. 1250000000"; } mandatory true; } } container latency-threshold { description "Latency threshold configuration"; leaf high { description "High latency threshold"; units "microseconds"; type uint32 { range "1 .. 100000"; } mandatory true; } presence "enable latency-threshold"; leaf low { description "Low latency threshold"; units "microseconds"; type uint32 { range "1 .. 100000"; } mandatory true; } } } grouping interfaces_type { description "Physical interface"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf description { description "Text description of interface"; type string; } leaf metadata { description "Text metadata attached to interface"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable this interface"; type empty; } } } leaf promiscuous-mode { description "Enable promiscuous mode for L3 interface"; type empty; } leaf port-mirror-instance { description "Port-mirror the packet to specified instance"; type string { length "1 .. 64"; } } leaf multicast-statistics { description "Enable multicast statistics"; type empty; } leaf oam-on-svlan { description "Propagate SVLAN OAM state to CVLANs"; type empty; } container fabric-options { description "Fabric interface specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list member-interfaces { key name; description "Member interface for the fabric interface"; leaf name { description "Interface name of member"; type interface-device; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } container traceoptions { presence "enable traceoptions"; description "Interface trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum ipc { description "Trace interface IPC messages"; } enum event { description "Trace interface events"; } enum media { description "Trace interface media changes"; } enum all { description "Enable all interface trace flags"; } } } } } leaf passive-monitor-mode { description "Use interface to tap packets from another router"; type empty; } choice keepalive_choices { case case_1 { container keepalives { description "Send or demand keepalive messages"; uses keepalives_type; } } case case_2 { leaf no-keepalives { description "Do not send keepalive messages"; type empty; } } } leaf traps { description "Enable SNMP notifications on state changes"; type empty; } leaf no-traps { description "Enable SNMP notifications on state changes"; type empty; } leaf accounting-profile { description "Accounting profile name"; type string; } container anchor-point { presence "enable anchor-point"; description "Anchor point"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interface-name { description "Interface name"; type interface-device; mandatory true; } } leaf bypass-queueing-chip { description "Enable to bypass queueing chip"; type empty; } leaf no-bypass-queueing-chip { description "Enable to bypass queueing chip"; type empty; } choice scheduler_type { case case_1 { leaf per-unit-scheduler { description "Enable subunit queuing on Frame Relay or VLAN IQ interface"; type empty; } leaf no-per-unit-scheduler { description "Enable subunit queuing on Frame Relay or VLAN IQ interface"; type empty; } } case case_2 { leaf shared-scheduler { description "Enabled shared queuing on an IQ2 interface"; type empty; } } case case_3 { container hierarchical-scheduler { presence "enable hierarchical-scheduler"; description "Enable hierarchical scheduling"; leaf maximum-hierarchy-levels { description "Maximum hierarchy levels"; type uint32 { range 2; } } leaf implicit-hierarchy { description "Implicit hierarchy (follows interface hierarchy)"; type empty; } } } } leaf schedulers { description "Number of schedulers to allocate for interface"; type uint32; } leaf interface-transmit-statistics { description "Interface statistics based on the transmitted packets"; type empty; } leaf cascade-port { description "Cascade port"; type empty; } leaf dce { description "Respond to Frame Relay status enquiry messages"; type empty; } choice vlan_tag_mode { case case_1 { leaf vlan-tagging { description "802.1q VLAN tagging support"; type empty; } } case case_2 { leaf stacked-vlan-tagging { description "Stacked 802.1q VLAN tagging support"; type empty; } } case case_3 { leaf flexible-vlan-tagging { description "Support for no tagging, or single and double 802.1q VLAN tagging"; type empty; } } case case_4 { leaf vlan-vci-tagging { description "CCC for VLAN Q-in-Q and ATM VPI/VCI interworking"; type empty; } } } leaf native-vlan-id { description "Virtual LAN identifier for untagged frames"; type uint32 { range "0 .. 4094"; } } leaf speed { description "Link speed"; type enumeration { enum auto { description "Enable auto negotiation of interface speed"; } enum auto-10m-100m { description "Enable auto negotiation of limiting interface speed to 10m/100m"; } enum 10m { description "(null)"; } enum 100m { description "(null)"; } enum 1g { description "(null)"; } enum 10g { description "(null)"; } enum 40g { description "(null)"; } enum oc3 { description "(null)"; } enum oc12 { description "(null)"; } enum oc48 { description "(null)"; } } } container forwarding-class-accounting { presence "enable forwarding-class-accounting"; description "Configure Forwarding-class-accounting parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf direction { description "Direction of the traffic to be accounted for IFD"; type enumeration { enum ingress { description "Enable forwarding-class-accounting for ingress traffic"; } enum egress { description "Enable forwarding-class-accounting for egress traffic"; } enum both { description "Enable forwarding-class-accounting for both directions"; } } } container enhanced { presence "enable enhanced"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf traffic-type { description "Traffic-type to be accounted for forwarding-class-accounting"; type enumeration { enum unicast-statistics { description "Count only unicast traffic for forwarding-class-accounting"; } enum multicast-statistics { description "Count only multicast traffic for forwarding-class-accounting"; } } } leaf family { description "Protocol traffic to be accounted for forwarding-class-accounting"; type enumeration { enum inet { description "Enable forwarding-class-accounting for IPv4 family only"; } enum inet6 { description "Enable forwarding-class-accounting for IPv6 family only"; } enum both { description "Enable forwarding-class-accounting for both IPv4 and IPv6 family only"; } } } leaf direction { description "Direction of the traffic to be accounted for forwarding-class-accounting"; type enumeration { enum ingress { description "Enable forwarding-class-accounting for ingress traffic"; } enum egress { description "Enable forwarding-class-accounting for egress traffic"; } enum both { description "Enable forwarding-class-accounting for both ingress and egress traffic"; } } } leaf overhead-bytes { description "Per octet overhead bytes to be accounted for forwarding-class-accounting"; default "0"; type uint32 { range "0 .. 255"; } } } } container auto-configure { description "Auto configuration"; uses auto_configure_vlan_type; } leaf mtu { description "Maximum transmit packet size"; type uint32 { range "256 .. 9216"; } } container hold-time { description "Hold time for link up and link down"; leaf up { description "Link up hold time"; units "milliseconds"; type uint32; mandatory true; } presence "enable hold-time"; leaf down { description "Link down hold time"; units "milliseconds"; type uint32; mandatory true; } } container damping { description "Interface damping parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf half-life { description "Damping half life time"; default "5"; units "seconds"; type uint32 { range "1 .. 30"; } } leaf max-suppress { description "Maximum suppress time"; default "20"; units "seconds"; type uint32 { range "1 .. 20000"; } } leaf reuse { description "Reuse threshold"; default "1000"; type uint32 { range "1 .. 20000"; } } leaf suppress { description "Suppress threshold"; default "2000"; type uint32 { range "1 .. 20000"; } } leaf enable { description "Enable interface damping"; type empty; } } container satop-options { description "Structure-Agnostic TDM over Packet protocol options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf idle-pattern { description "An 8-bit hexadecimal pattern to replace TDM data in a lost packet"; type uint32 { range "0 .. 255"; } } leaf payload-size { description "Number of payload bytes per packet"; type uint32 { range "64 .. 1024"; } } container excessive-packet-loss-rate { description "Packet loss options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "Percentile designating the threshold of excessive packet loss rate"; type uint8 { range "1 .. 100"; } } leaf sample-period { description "Number of milliseconds over which excessive packet loss rate is calculated"; type uint32 { range "1000 .. 65535"; } } } choice jitter-buffer-size { case case_1 { leaf jitter-buffer-packets { description "Number of packets in jitter buffer before packet data is played out in the line"; type uint32 { range "1 .. 64"; } } } case case_2 { leaf jitter-buffer-latency { description "Number of milliseconds delay in jitter buffer before packet data is played out in the line"; units "milliseconds"; type uint32 { range "1 .. 1000"; } } } case case_3 { leaf jitter-buffer-auto-adjust { description "Automatically adjust jitter buffer"; type empty; } } } leaf bit-rate { description "In multiples of DS0"; type uint32 { range "1 .. 10240"; } } } container cesopsn-options { description "Structure-Aware TDM over Packet protocol options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf idle-pattern { description "An 8-bit hexadecimal pattern to replace TDM data in a lost packet"; type uint32 { range "0 .. 255"; } } leaf packetization-latency { description "Number of microseconds to create packets"; units "microseconds"; type uint32 { range "1000 .. 8000"; } } leaf payload-size { description "Number of payload bytes per packet"; type uint32 { range "64 .. 1024"; } } container excessive-packet-loss-rate { description "Packet loss options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "Percentile designating the threshold of excessive packet loss rate"; type uint8 { range "1 .. 100"; } } leaf sample-period { description "Number of milliseconds over which excessive packet loss rate is calculated"; type uint32 { range "1000 .. 65535"; } } } choice jitter-buffer-size { case case_1 { leaf jitter-buffer-packets { description "Number of packets in jitter buffer before packet data is played out in the line"; type uint32 { range "1 .. 64"; } } } case case_2 { leaf jitter-buffer-latency { description "Number of milliseconds delay in jitter buffer before packet data is played out in the line"; units "milliseconds"; type uint32 { range "1 .. 1000"; } } } case case_3 { leaf jitter-buffer-auto-adjust { description "Automatically adjust jitter buffer"; type empty; } } } leaf bit-rate { description "In multiples of DS0"; type uint32 { range "1 .. 10240"; } } } container ima-group-options { description "IMA group options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf frame-length { description "Frame length (cells)"; type enumeration { enum 32 { description "(null)"; } enum 64 { description "(null)"; } enum 128 { description "(null)"; } enum 256 { description "(null)"; } } } leaf symmetry { description "Symmetry of IMA group"; default "symmetrical-config-and-operation"; type enumeration { enum symmetrical-config-and-operation { description "(null)"; } enum symmetrical-config-asymmetrical-operation { description "(null)"; } } } leaf transmit-clock { description "Transmit clock"; type enumeration { enum common { description "Common transmit clock"; } enum independent { description "Independent transmit clock"; } } } leaf version { description "IMA specification version"; type enumeration { enum 1.0 { description "Version 1.0"; } enum 1.1 { description "Version 1.1"; } } } container minimum-links { description "IMA group minimum active links"; choice minimum_links_type { case case_1 { leaf symmetrical { description "Minimum active receive and transmit links"; type uint32 { range "1 .. 32"; } } } } } container frame-synchronization { description "IMA group frame synchronization state parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf alpha { description "Consecutive invalid ICP cells"; type uint32 { range "1 .. 2"; } } leaf beta { description "Consecutive errored ICP cells"; type uint32 { range "1 .. 5"; } } leaf gamma { description "Consecutive valid ICP cells"; type uint32 { range "1 .. 5"; } } } container test-procedure { description "IMA group test pattern procedure"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf period { description "Length of IMA pattern test"; units "seconds"; type uint32 { range "1 .. 4294967294"; } } leaf interface { description "Interface name of the IMA link to test"; type interface-device; } leaf pattern { description "IMA test pattern"; type uint32 { range "1 .. 254"; } } } leaf differential-delay { description "Maximum differential delay among links in the IMA group"; units "milliseconds"; type uint32 { range "1 .. 56"; } } } container ima-link-options { description "IMA link options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf group-id { description "IMA group ID this IMA link belongs to"; type uint32 { range "12 .. 57"; } } } list multi-chassis-protection { key name; description "Inter-Chassis protection configuration"; uses multi-chassis-protection-group; } container clocking { presence "enable clocking"; description "Interface clock source"; choice clocking_choices { case case_1 { leaf internal { description "Clocking provided by local system"; type empty; } } case case_2 { container external { presence "enable external"; description "Clocking provided by DCE (loop timing)"; } } } } leaf link-mode { description "Link operational mode"; type enumeration { enum automatic { description "Automatically negotiate duplex"; } enum half-duplex { description "Half-duplex operation"; } enum full-duplex { description "Full-duplex operation"; } } } leaf media-type { description "Interface media type (copper or fiber)"; type enumeration { enum copper { description "Copper as media"; } enum fiber { description "Fiber as media"; } } } leaf encapsulation { description "Physical link-layer encapsulation"; type enumeration { enum ppp { description "Serial PPP device"; } enum ppp-ccc { description "Serial PPP device for a cross-connect"; } enum ppp-tcc { description "Serial PPP device for a translational cross-connect"; } enum ether-vpls-ppp { description "Ethernet VPLS over PPP (bridging) device"; } enum frame-relay { description "Frame Relay encapsulation"; } enum frame-relay-ccc { description "Frame Relay for cross-connect"; } enum frame-relay-tcc { description "Frame Relay for translational cross-connect"; } enum extended-frame-relay-ccc { description "Any Frame Relay DLCI for cross-connect"; } enum extended-frame-relay-tcc { description "Any Frame Relay DLCI for translational cross-connect"; } enum flexible-frame-relay { description "Multiple Frame Relay encapsulations"; } enum frame-relay-port-ccc { description "Frame Relay port encapsulation for a cross-connect"; } enum frame-relay-ether-type { description "Cisco-compatible Frame Relay encapsulation"; } enum frame-relay-ether-type-tcc { description "Cisco-compatible Frame Relay encapsulation for translational cross-connect"; } enum extended-frame-relay-ether-type-tcc { description "Cisco-compatible Frame Relay encapsulation any DLCI for translational cross-connect"; } enum cisco-hdlc { description "Cisco-compatible HDLC framing"; } enum cisco-hdlc-ccc { description "Cisco-compatible HDLC framing for a cross-connect"; } enum cisco-hdlc-tcc { description "Cisco-compatible HDLC framing for a translational cross-connect"; } enum vlan-ccc { description "802.1q tagging for a cross-connect"; } enum extended-vlan-ccc { description "Nonstandard TPID tagging for a cross-connect"; } enum ethernet-ccc { description "Ethernet cross-connect"; } enum flexible-ethernet-services { description "Allows per-unit Ethernet encapsulation configuration"; } enum atm-pvc { description "ATM permanent virtual circuits"; } enum atm-ccc-cell-relay { description "ATM cell relay encapsulation for cross-connect"; } enum ethernet-over-atm { description "Ethernet over ATM encapsulation"; } enum ethernet-tcc { description "Ethernet translational cross-connect"; } enum extended-vlan-tcc { description "802.1q tagging for a translational cross-connect"; } enum multilink-frame-relay-uni-nni { description "Multilink Frame Relay UNI NNI (FRF.16) encapsulation"; } enum satop { description "Structure-Agnostic TDM over Packet encapsulation"; } enum cesopsn { description "Structure-Agnostic TDM over Packet encapsulation"; } enum ima { description "Inverse Multiplexing for ATM"; } enum ethernet-vpls { description "Ethernet virtual private LAN service"; } enum ethernet-bridge { description "Ethernet layer-2 bridging"; } enum vlan-vpls { description "VLAN virtual private LAN service"; } enum vlan-vci-ccc { description "CCC for VLAN Q-in-Q and ATM VPI/VCI interworking"; } enum extended-vlan-vpls { description "Extended VLAN virtual private LAN service"; } enum extended-vlan-bridge { description "VLAN layer-2 bridging"; } enum multilink-ppp { description "Multilink PPP"; } enum generic-services { description "Generic services"; } } } container esi { description "ESI configuration of multi-homed interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf identifier { description "ESI value for the interface"; type esi; mandatory true; } presence "enable esi"; choice mode { case case_1 { leaf single-active { description "Single-active mode"; type empty; } } case case_2 { leaf all-active { description "All-active mode"; type empty; } } } } container framing { description "Frame type"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice frame { case case_1 { leaf lan-phy { description "802.3ae 10-Gbps LAN-mode interface"; type empty; } } case case_2 { leaf wan-phy { description "802.3ae 10-Gbps WAN-mode interface"; type empty; } } case case_3 { leaf sonet { description "SONET framing"; type empty; } } case case_4 { leaf sdh { description "SDH framing"; type empty; } } } } leaf unidirectional { description "Unidirectional Mode"; type empty; } container lmi { description "Local Management Interface settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf n391dte { description "DTE full status polling interval"; type uint16 { range "1 .. 255"; } } leaf n392dce { description "DCE error threshold"; type uint16 { range "1 .. 10"; } } leaf n392dte { description "DTE error threshold"; type uint16 { range "1 .. 10"; } } leaf n393dce { description "DCE monitored event count"; type uint16 { range "1 .. 10"; } } leaf n393dte { description "DTE monitored event count"; type uint16 { range "1 .. 10"; } } leaf t391dte { description "DTE polling timer"; units "seconds"; type uint16 { range "5 .. 30"; } } leaf t392dce { description "DCE polling verification timer"; units "seconds"; type uint16 { range "5 .. 30"; } } leaf lmi-type { description "Specify the Frame Relay LMI type"; type enumeration { enum ansi { description "Use ANSI Annex D LMI"; } enum itu { description "Use ITU Q933a Annex A LMI"; } enum c-lmi { description "Use Consortium LMI"; } } } } container mlfr-uni-nni-bundle-options { description "Multilink Frame Relay UNI NNI (FRF.16) management settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container cisco-interoperability { description "FRF.16 Cisco interoperability settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf send-lip-remove-link-for-link-reject { description "Send Link Integrity Protocol remove link on receiving add-link rejection"; type empty; } } leaf mrru { description "Maximum received reconstructed unit"; units "bytes"; type uint16 { range "1500 .. 4500"; } } leaf yellow-differential-delay { description "Yellow differential delay among bundle links to give warning"; units "milliseconds"; type uint16 { range "3 .. 2000"; } } leaf red-differential-delay { description "Red differential delay among bundle links to take action"; units "milliseconds"; type uint16 { range "5 .. 2000"; } } leaf action-red-differential-delay { description "Type of actions when differential delay exceeds red limit"; type enumeration { enum remove-link { description "Remove bundle link from service when exceeding red limit"; } enum disable-tx { description "Disable transfer of bundle link when exceeding red limit"; } } } leaf fragment-threshold { description "Fragmentation threshold"; units "bytes"; type uint32 { range "64 .. 16320"; } } leaf drop-timeout { description "Drop timeout"; units "milliseconds"; type uint16 { range "0 .. 2000"; } } leaf link-layer-overhead { description "Link layer bit stuffing overhead (0.0 .. 50.0 percent)"; type unsigned-float; } leaf lmi-type { description "Specify the multilink Frame Relay UNI NNI LMI type"; type enumeration { enum ansi { description "Use ANSI Annex D LMI"; } enum itu { description "Use ITU Q933a Annex A LMI"; } enum c-lmi { description "Use Consortium LMI"; } } } leaf minimum-links { description "Minimum number of links to sustain the bundle"; type uint16 { range "1 .. 8"; } } leaf hello-timer { description "LIP hello timer"; type uint16 { range "5 .. 180"; } } leaf acknowledge-timer { description "LIP ack timer"; type uint16 { range "1 .. 10"; } } leaf acknowledge-retries { description "LIP ack retry times"; type uint16 { range "1 .. 5"; } } leaf n391 { description "Multilink Frame Relay UNI NNI full status polling counter"; type uint16 { range "1 .. 255"; } } leaf n392 { description "Multilink Frame Relay UNI NNI LMI error threshold"; type uint16 { range "1 .. 10"; } } leaf n393 { description "Multilink Frame Relay UNI NNI LMI monitored event count"; type uint16 { range "1 .. 10"; } } leaf t391 { description "Multilink Frame Relay UNI NNI link integrity verify polling timer"; type uint16 { range "5 .. 30"; } } leaf t392 { description "Multilink Frame Relay UNI NNI polling verification timer"; type uint16 { range "5 .. 30"; } } } leaf mac { description "Hardware MAC address"; type mac-unicaset; } container receive-bucket { description "Set receive bucket parameters"; uses dcd_rx_bucket_config; } container transmit-bucket { description "Set transmit bucket parameters"; uses dcd_tx_bucket_config; } leaf shared-interface { description "Enable shared interface on the interface"; type empty; } container sonet-options { description "SONET interface-specific options"; uses sonet_options_type; } container logical-tunnel-options { description "Logical Tunnel interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf per-unit-mac-disable { description "Disable the creation of per unit mac address on LT IFLs for VPLS/CCC encaps"; type empty; } } container aggregated-sonet-options { description "Aggregated SONET interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-links { description "Minimum number of aggregated links"; type uint16 { range "1 .. 32"; } } leaf link-speed { description "Aggregated links speed"; type enumeration { enum oc3 { description "Links are OC-3c or STM-1c"; } enum oc12 { description "Links are OC-12c or STM-4c"; } enum oc48 { description "Links are OC-48c or STM-16c"; } enum oc192 { description "Links are OC-192c or STM-64c"; } enum oc768 { description "Links are OC-768c or STM-256c"; } enum mixed { description "Links are various speeds"; } } } leaf minimum-bandwidth { description "Minimum bandwidth necessary to sustain bundle"; units "bps"; type uint64 { range "0 .. 159232000000"; } } } container atm-options { description "ATM interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf pic-type { description "Type of ATM PIC (ATM I, ATM II or ATM CE)"; type enumeration { enum atm-ce { description "CE PIC"; } enum atm2 { description "ATM II IQ PIC"; } enum atm1 { description "ATM I PIC"; } } } leaf cell-bundle-size { description "L2 circuit cell bundle size"; units "cells"; type uint32 { range "1 .. 176"; } } leaf cell-bundle-timeout { description "L2 circuit cell bundle timeout"; units "microseconds"; type uint32 { range "1 .. 512"; } } leaf plp-to-clp { description "Enable ATM2 PLP to CLP copy"; type empty; } leaf use-null-cw { description "Always insert/strip null control words with cell-relay"; type empty; } container promiscuous-mode { presence "enable promiscuous-mode"; description "Set ATM interface to promiscuous mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list vpi { key name; ordered-by user; description "Open this VPI in promiscuous mode"; leaf name { description "Virtual path index"; type uint32 { range "0 .. 255"; } } } } list vpi { key name; ordered-by user; description "Define a virtual path"; leaf name { description "Virtual path index"; type uint32 { range "0 .. 255"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum-vcs { description "Maximum number of virtual circuits on this VP"; type uint32; } container shaping { description "Virtual path traffic-shaping options"; uses dcd_shaping_config; } container oam-period { description "F4 OAM cell period"; choice oam_period_choices { case case_1 { leaf oam-period { description "F4 OAM cell period"; units "seconds"; type uint32 { range "1 .. 900"; } } } case case_2 { container disable { presence "enable disable"; description "Disable F4 OAM loopback"; } } } } container oam-liveness { description "F4 OAM virtual path liveness parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf up-count { description "Number of F4 OAM cells to consider VP up"; type uint32 { range "1 .. 255"; } } leaf down-count { description "Number of F4 OAM cells to consider VP down"; type uint32 { range "1 .. 255"; } } } } container ilmi { presence "enable ilmi"; description "Enable Interim Local Management Interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list linear-red-profiles { key name; ordered-by user; description "ATM2 CoS virtual circuit drop profiles"; leaf name { description "Linear RED profile name"; type string { } } leaf queue-depth { description "Maximum queue depth"; units "cells"; type string; mandatory true; } leaf high-plp-threshold { description "Fill level percentage when linear RED is applied for high PLP"; type uint32 { range "0 .. 100"; } mandatory true; } leaf low-plp-threshold { description "Fill level percentage when linear RED is applied for low PLP"; type uint32 { range "0 .. 100"; } mandatory true; } leaf high-plp-max-threshold { description "Fill level percentage with 100 percent packet drop for high PLP"; type uint32 { range "0 .. 100"; } } leaf low-plp-max-threshold { description "Fill level percentage with 100 percent packet drop for low PLP"; type uint32 { range "0 .. 100"; } } } list scheduler-maps { key name; ordered-by user; description "ATM2 CoS parameters assigned to forwarding classes"; leaf name { description "ATM2 CoS scheduler map name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf vc-cos-mode { description "ATM2 virtual circuit CoS mode"; type enumeration { enum strict { description "Always schedule high priority queue first"; } enum alternate { description "Every other packet from high priority queue (default)"; } } } list forwarding-class { key name; ordered-by user; description "Scheduling parameters associated with forwarding class"; leaf name { description "Forwarding class name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf priority { description "Queuing priority assigned to forwarding class"; type enumeration { enum low { description "Low priority queuing"; } enum high { description "High priority queuing"; } } } container transmit-weight { description "Transmit weight"; choice weight-method { case case_1 { leaf percent { description "Transmit weight as percentage"; type uint32 { range "5 .. 100"; } } } case case_2 { leaf cells { description "Transmit weight by cells count"; type string; } } } } choice drop-profile-method { case case_1 { container epd-threshold { description "Early packet discard threshold for ATM2"; uses epd_threshold_config; } } case case_2 { leaf linear-red-profile { description "Linear RED profile profile name"; type string; } } } } } container mpls { description "MPLS options"; uses mpls_ifd_options; } leaf payload-scrambler { description "Enable payload scrambling"; type empty; } leaf no-payload-scrambler { description "Enable payload scrambling"; type empty; } } container multiservice-options { description "Multiservice interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf syslog { description "Enable system logging on this interface"; type empty; } leaf no-syslog { description "Enable system logging on this interface"; type empty; } leaf core-dump { description "Enable core dumping on this interface"; type empty; } leaf no-core-dump { description "Enable core dumping on this interface"; type empty; } container flow-control-options { description "Flow control configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf dump-on-flow-control { description "Cause core dump during prolonged flow-control"; type empty; } leaf reset-on-flow-control { description "Reset interface during prolonged flow-control"; type empty; } leaf down-on-flow-control { description "Bring interface down during prolonged flow-control"; type empty; } } } container ggsn-options { description "GGSN interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf syslog { description "Enable system logging on this interface"; type empty; } leaf no-syslog { description "Enable system logging on this interface"; type empty; } leaf core-dump { description "Enable core dumping on this interface"; type empty; } leaf no-core-dump { description "Enable core dumping on this interface"; type empty; } } container ppp-options { description "Point-to-Point Protocol (PPP) interface-specific options"; uses ppp_options_type; } container redundancy-options { description "Redundancy options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf primary { description "Specify the primary interface"; type interface-device; } leaf secondary { description "Specify the secondary interface"; type interface-device; } container redundancy-local { description "Specify information for the local peer"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf data-address { description "Specify the HA local data IP address"; type ipv4addr; } } leaf routing-instance { description "Specify routing-instance for the HA traffic"; type string; } container replicate-services { description "Replicate services state from active to backup"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf pgcp { description "Replicate the PGCP service state"; type empty; } } } container load-balancing-options { description "Load-balancing on services pics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list member-interface { key name; description "(null)"; max-elements 24; leaf name { description "Interface name"; type interface-device; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container member-failure-options { description "Load balancing member failure handling options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice member-failure { case case_1 { container redistribute-all-traffic { presence "enable redistribute-all-traffic"; description "On a member failure, redistribute traffic to ams"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf enable-rejoin { description "Failed member can rejoin after recovery"; type empty; } } } case case_2 { container drop-member-traffic { presence "enable drop-member-traffic"; description "On a member failure, drop its traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf rejoin-timeout { description "Wait time(in seconds) for failed member to rejoin"; default "120"; type uint32 { range "0 .. 1000"; } } leaf enable-rejoin { description "Failed member can join after recovery"; type empty; } } } } } container high-availability-options { description "High Availability options for Load-balancing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice ha-type { case case_1 { container many-to-one { description "N:1 High Availability model"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf preferred-backup { description "Preferred backup Interface name"; type interface-device; } } } } } } container anchoring-options { description "Groups anchoring PFEs or FPCs together."; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf apfe-group-set { description "Ties up different anchoring groups to share similar fate"; type string { length "1 .. 32"; } } list primary-list { key name; description "Primary anchoring PFE name."; leaf name { description "Anchoring PFE name."; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container secondary { presence "enable secondary"; description "Secondary anchoring PFE name."; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf anchoring-device-name { description "Anchoring PFE name."; type string { } } } choice mode { case case_1 { leaf warm-standby { description "Delayed failover to secondary when primary fails"; type empty; } } } } container lsq-failure-options { description "Link services queuing failure options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list trigger-link-failure { key name; ordered-by user; description "Link on which to trigger failure"; leaf name { description "Interface name"; type interface-device; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf no-termination-request { description "Do not send PPP termination requests"; type empty; } leaf no-no-termination-request { description "Do not send PPP termination requests"; type empty; } } container redundancy-group { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list member-interface { key name; description "Member interface for the redundancy group"; leaf name { description "Interface name of member"; type interface-device; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice redundancy { case case_1 { leaf active { description "Active interface"; type empty; } } case case_2 { leaf backup { description "Backup interface"; type empty; } } } } leaf maximum-links { description "(null)"; type uint32 { range "2 .. 32"; } } } container services-options { description "Services interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container syslog { description "Define system log parameters"; uses service_set_syslog_object; } container jflow-log { description "Define Jflow-log parameters."; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf message-rate-limit { description "Maximum jflow-log NAT error events allowed per second from this interface"; units "messages per second"; type uint32 { range "1 .. 2147483647"; } } } leaf open-timeout { description "Timeout period for TCP session establishment"; units "seconds"; type uint32 { range "4 .. 300"; } } leaf close-timeout { description "Timeout period for TCP session tear-down"; units "seconds"; type uint32 { range "2 .. 300"; } } leaf inactivity-timeout { description "Inactivity timeout period for established sessions (4..86400)"; units "seconds"; type uint32; } leaf inactivity-tcp-timeout { description "Inactivity timeout period for TCP established sessions"; units "seconds"; type uint32 { range "4 .. 86400"; } } leaf inactivity-asymm-tcp-timeout { description "Inactivity timeout period for asymmetric TCP established sessions"; units "seconds"; type uint32 { range "4 .. 86400"; } } leaf inactivity-non-tcp-timeout { description "Inactivity timeout period for non-TCP established sessions"; units "seconds"; type uint32 { range "4 .. 86400"; } } leaf session-timeout { description "Session timeout period for established sessions"; units "seconds"; type uint32 { range "4 .. 86400"; } } leaf disable-global-timeout-override { description "Disallow overriding global inactivity or session timeout"; type empty; } leaf tcp-tickles { description "Number of TCP keep-alive packets to be sent for bi-directional TCP flows"; default "4"; type uint8 { range "0 .. 30"; } } container trio-flow-offload { presence "enable trio-flow-offload"; description "Allow PIC to offload flows to Trio-based PFE"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-bytes { description "Attempt flow offload after minimum bytes are seen on the flow"; type uint32; } } leaf fragment-limit { description "Maximum number of fragments allowed for a packet"; default "250"; type uint8 { range "1 .. 250"; } } leaf reassembly-timeout { description "Re-assembly timeout (seconds) for fragments of a packet"; default "4"; units "seconds"; type uint8 { range "1 .. 60"; } } leaf cgn-pic { description "PIC will be used for Carrier Grade NAT configuration only"; type empty; } leaf pba-interim-logging-interval { description "Interim logging interval in seconds"; default "0"; units "seconds"; type uint32 { range "0 .. 86400"; } } container session-limit { presence "enable session-limit"; description "Session limit"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum { description "Maximum number of sessions allowed simultaneously"; type string; } leaf rate { description "Maximum number of new sessions allowed per second"; type string; } leaf cpu-load-threshold { description "CPU limit in percentage for auto-tuning of session rate"; units "percent"; type uint8 { range "1 .. 100"; } } } container ignore-errors { presence "enable ignore-errors"; description "Ignore anomalies or errors"; leaf tcp { description "TCP anomalies or errors"; type empty; } leaf alg { description "ALG anomalies or errors"; type empty; } } } container t3-options { description "T3 interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf loopback { description "Loopback mode"; type enumeration { enum local { description "Local loopback"; } enum remote { description "Remote loopback"; } enum payload { description "Payload loopback"; } } } leaf long-buildout { description "Set hardware to drive line longer than 255 feet"; type empty; } leaf no-long-buildout { description "Set hardware to drive line longer than 255 feet"; type empty; } leaf loop-timing { description "Set loop timing for T3"; type empty; } leaf no-loop-timing { description "Set loop timing for T3"; type empty; } leaf unframed { description "Enable unframed mode"; type empty; } leaf no-unframed { description "Enable unframed mode"; type empty; } container compatibility-mode { description "Set CSU compatibility mode"; choice vendor { case case_1 { container larscom { presence "enable larscom"; description "Compatible with Larscom CSU"; leaf subrate { description "Set subrate value"; type uint32 { range "1 .. 14"; } } } } case case_2 { container verilink { presence "enable verilink"; description "Compatible with Verilink CSU (not on 2/4-port T3 PIC)"; leaf subrate { description "Set subrate value"; type uint32 { range "1 .. 28"; } } } } case case_3 { container adtran { presence "enable adtran"; description "Compatible with Adtran CSU (not on 2/4-port T3 PIC)"; leaf subrate { description "Set subrate value"; type uint32 { range "1 .. 588"; } } } } case case_4 { container kentrox { presence "enable kentrox"; description "Compatible with Kentrox CSU"; leaf subrate { description "Set subrate value (not on 2/4-port T3 PIC)"; type uint32 { range "1 .. 69"; } } } } case case_5 { container digital-link { presence "enable digital-link"; description "Compatible with Digital Link CSU"; leaf subrate { description "Set subrate value"; type enumeration { enum 301Kb { description "301 Kbps"; } enum 601Kb { description "601 Kbps"; } enum 902Kb { description "902 Kbps"; } enum 1.2Mb { description "1.2 Mbps"; } enum 1.5Mb { description "1.5 Mbps"; } enum 1.8Mb { description "1.8 Mbps"; } enum 2.1Mb { description "2.1 Mbps"; } enum 2.4Mb { description "2.4 Mbps"; } enum 2.7Mb { description "2.7 Mbps"; } enum 3.0Mb { description "3.0 Mbps"; } enum 3.3Mb { description "3.3 Mbps"; } enum 3.6Mb { description "3.6 Mbps"; } enum 3.9Mb { description "3.9 Mbps"; } enum 4.2Mb { description "4.2 Mbps"; } enum 4.5Mb { description "4.5 Mbps"; } enum 4.8Mb { description "4.8 Mbps"; } enum 5.1Mb { description "5.1 Mbps"; } enum 5.4Mb { description "5.4 Mbps"; } enum 5.7Mb { description "5.7 Mbps"; } enum 6.0Mb { description "6.0 Mbps"; } enum 6.3Mb { description "6.3 Mbps"; } enum 6.6Mb { description "6.6 Mbps"; } enum 6.9Mb { description "6.9 Mbps"; } enum 7.2Mb { description "7.2 Mbps"; } enum 7.5Mb { description "7.5 Mbps"; } enum 7.8Mb { description "7.8 Mbps"; } enum 8.1Mb { description "8.1 Mbps"; } enum 8.4Mb { description "8.4 Mbps"; } enum 8.7Mb { description "8.7 Mbps"; } enum 9.0Mb { description "9.0 Mbps"; } enum 9.3Mb { description "9.3 Mbps"; } enum 9.6Mb { description "9.6 Mbps"; } enum 9.9Mb { description "9.9 Mbps"; } enum 10.2Mb { description "10.2 Mbps"; } enum 10.5Mb { description "10.5 Mbps"; } enum 10.8Mb { description "10.8 Mbps"; } enum 11.1Mb { description "11.1 Mbps"; } enum 11.4Mb { description "11.4 Mbps"; } enum 11.7Mb { description "11.7 Mbps"; } enum 12.0Mb { description "12.0 Mbps"; } enum 12.3Mb { description "12.3 Mbps"; } enum 12.6Mb { description "12.6 Mbps"; } enum 12.9Mb { description "12.9 Mbps"; } enum 13.2Mb { description "13.2 Mbps"; } enum 13.5Mb { description "13.5 Mbps"; } enum 13.8Mb { description "13.8 Mbps"; } enum 14.1Mb { description "14.1 Mbps"; } enum 14.4Mb { description "14.4 Mbps"; } enum 14.7Mb { description "14.7 Mbps"; } enum 15.0Mb { description "15.0 Mbps"; } enum 15.3Mb { description "15.3 Mbps"; } enum 15.6Mb { description "15.6 Mbps"; } enum 15.9Mb { description "15.9 Mbps"; } enum 16.2Mb { description "16.2 Mbps"; } enum 16.5Mb { description "16.5 Mbps"; } enum 16.8Mb { description "16.8 Mbps"; } enum 17.1Mb { description "17.1 Mbps"; } enum 17.4Mb { description "17.4 Mbps"; } enum 17.7Mb { description "17.7 Mbps"; } enum 18.0Mb { description "18.0 Mbps"; } enum 18.3Mb { description "18.3 Mbps"; } enum 18.6Mb { description "18.6 Mbps"; } enum 18.9Mb { description "18.9 Mbps"; } enum 19.2Mb { description "19.2 Mbps"; } enum 19.5Mb { description "19.5 Mbps"; } enum 19.8Mb { description "19.8 Mbps"; } enum 20.1Mb { description "20.1 Mbps"; } enum 20.5Mb { description "20.5 Mbps"; } enum 20.8Mb { description "20.8 Mbps"; } enum 21.1Mb { description "21.1 Mbps"; } enum 21.4Mb { description "21.4 Mbps"; } enum 21.7Mb { description "21.7 Mbps"; } enum 22.0Mb { description "22.0 Mbps"; } enum 22.3Mb { description "22.3 Mbps"; } enum 22.6Mb { description "22.6 Mbps"; } enum 22.9Mb { description "22.9 Mbps"; } enum 23.2Mb { description "23.2 Mbps"; } enum 23.5Mb { description "23.5 Mbps"; } enum 23.8Mb { description "23.8 Mbps"; } enum 24.1Mb { description "24.1 Mbps"; } enum 24.4Mb { description "24.4 Mbps"; } enum 24.7Mb { description "24.7 Mbps"; } enum 25.0Mb { description "25.0 Mbps"; } enum 25.3Mb { description "25.3 Mbps"; } enum 25.6Mb { description "25.6 Mbps"; } enum 25.9Mb { description "25.9 Mbps"; } enum 26.2Mb { description "26.2 Mbps"; } enum 26.5Mb { description "26.5 Mbps"; } enum 26.8Mb { description "26.8 Mbps"; } enum 27.1Mb { description "27.1 Mbps"; } enum 27.4Mb { description "27.4 Mbps"; } enum 27.7Mb { description "27.7 Mbps"; } enum 28.0Mb { description "28.0 Mbps"; } enum 28.3Mb { description "28.3 Mbps"; } enum 28.6Mb { description "28.6 Mbps"; } enum 28.9Mb { description "28.9 Mbps"; } enum 29.2Mb { description "29.2 Mbps"; } enum 29.5Mb { description "29.5 Mbps"; } enum 29.8Mb { description "29.8 Mbps"; } enum 30.1Mb { description "30.1 Mbps"; } enum 30.4Mb { description "30.4 Mbps"; } enum 30.7Mb { description "30.7 Mbps"; } enum 31.0Mb { description "31.0 Mbps"; } enum 31.3Mb { description "31.3 Mbps"; } enum 31.6Mb { description "31.6 Mbps"; } enum 31.9Mb { description "31.9 Mbps"; } enum 32.2Mb { description "32.2 Mbps"; } enum 32.5Mb { description "32.5 Mbps"; } enum 32.8Mb { description "32.8 Mbps"; } enum 33.1Mb { description "33.1 Mbps"; } enum 33.4Mb { description "33.4 Mbps"; } enum 33.7Mb { description "33.7 Mbps"; } enum 34.0Mb { description "34.0 Mbps"; } enum 34.3Mb { description "34.3 Mbps"; } enum 34.6Mb { description "34.6 Mbps"; } enum 34.9Mb { description "34.9 Mbps"; } enum 35.2Mb { description "35.2 Mbps"; } enum 35.5Mb { description "35.5 Mbps"; } enum 35.8Mb { description "35.8 Mbps"; } enum 36.1Mb { description "36.1 Mbps"; } enum 36.4Mb { description "36.4 Mbps"; } enum 36.7Mb { description "36.7 Mbps"; } enum 37.0Mb { description "37.0 Mbps"; } enum 37.3Mb { description "37.3 Mbps"; } enum 37.6Mb { description "37.6 Mbps"; } enum 37.9Mb { description "37.9 Mbps"; } enum 38.2Mb { description "38.2 Mbps"; } enum 38.5Mb { description "38.5 Mbps"; } enum 38.8Mb { description "38.8 Mbps"; } enum 39.1Mb { description "39.1 Mbps"; } enum 39.4Mb { description "39.4 Mbps"; } enum 39.7Mb { description "39.7 Mbps"; } enum 40.0Mb { description "40.0 Mbps"; } enum 40.3Mb { description "40.3 Mbps"; } enum 40.6Mb { description "40.6 Mbps"; } enum 40.9Mb { description "40.9 Mbps"; } enum 41.2Mb { description "41.2 Mbps"; } enum 41.5Mb { description "41.5 Mbps"; } enum 41.8Mb { description "41.8 Mbps"; } enum 42.1Mb { description "42.1 Mbps"; } enum 42.4Mb { description "42.4 Mbps"; } enum 42.7Mb { description "42.7 Mbps"; } enum 43.0Mb { description "43.0 Mbps"; } enum 43.3Mb { description "43.3 Mbps"; } enum 43.6Mb { description "43.6 Mbps"; } enum 43.9Mb { description "43.9 Mbps"; } enum 44.2Mb { description "44.2 Mbps"; } } } } } } } leaf payload-scrambler { description "Enable payload scrambling"; type empty; } leaf no-payload-scrambler { description "Enable payload scrambling"; type empty; } leaf cbit-parity { description "Enable C-bit parity mode"; type empty; } leaf no-cbit-parity { description "Enable C-bit parity mode"; type empty; } leaf fcs { description "Frame checksum"; type enumeration { enum 32 { description "32-bit mode"; } enum 16 { description "16-bit mode"; } } } leaf idle-cycle-flag { description "Value to transmit in idle cycles"; type enumeration { enum flags { description "Transmit 0x7E in idle cycles"; } enum ones { description "Transmit 0xFF (all ones) in idle cycles"; } } } leaf start-end-flag { description "Set start/end flags on transmission"; type enumeration { enum shared { description "Share start/end flags on transmit"; } enum filler { description "Send two idle cycles between start/end flags"; } } } leaf feac-loop-respond { description "Respond to FEAC loop requests"; type empty; } leaf no-feac-loop-respond { description "Respond to FEAC loop requests"; type empty; } leaf bert-algorithm { description "Set BERT algorithm"; type enumeration { enum pseudo-2e3 { description "Pattern is 2^3 - 1"; } enum pseudo-2e4 { description "Pattern is 2^4 - 1"; } enum pseudo-2e5 { description "Pattern is 2^5 - 1"; } enum pseudo-2e6 { description "Pattern is 2^6 - 1"; } enum pseudo-2e7 { description "Pattern is 2^7 - 1"; } enum pseudo-2e9-o153 { description "Pattern is 2^9 - 1 (per O.153 standard)"; } enum pseudo-2e10 { description "Pattern is 2^10 - 1"; } enum pseudo-2e11-o152 { description "Pattern is 2^11 -1 (per O.152 standard)"; } enum pseudo-2e15-o151 { description "Pattern is 2^15 - 1 (per O.151 standard)"; } enum pseudo-2e17 { description "Pattern is 2^17 - 1"; } enum pseudo-2e18 { description "Pattern is 2^18 - 1"; } enum pseudo-2e20-o153 { description "Pattern is 2^20 - 1 (per O.153 standard)"; } enum pseudo-2e20-o151 { description "Pattern is 2^20 - 1 (per O.151 standard)"; } enum pseudo-2e21 { description "Pattern is 2^21 - 1"; } enum pseudo-2e22 { description "Pattern is 2^22 - 1"; } enum pseudo-2e23-o151 { description "Pattern is 2^23 (per O.151 standard)"; } enum pseudo-2e25 { description "Pattern is 2^25 - 1"; } enum pseudo-2e28 { description "Pattern is 2^28 - 1"; } enum pseudo-2e29 { description "Pattern is 2^29 - 1"; } enum pseudo-2e31 { description "Pattern is 2^31 - 1"; } enum pseudo-2e32 { description "Pattern is 2^32 - 1"; } enum all-ones-repeating { description "Repeating one bits"; } enum all-zeros-repeating { description "Repeating zero bits"; } enum alternating-ones-zeros { description "Alternating ones and zeros"; } enum alternating-double-ones-zeros { description "Alternating pairs of ones and zeros"; } enum repeating-3-in-24 { description "3 bits in 24 are set"; } enum repeating-1-in-8 { description "1 bit in 8 is set"; } enum repeating-1-in-4 { description "1 bit in 4 is set"; } } } leaf bert-error-rate { description "Bit error rate (10^-n for n > 0, and zero for n = 0)"; type uint32 { range "0 .. 7"; } } leaf bert-period { description "Length of BERT test"; units "seconds"; type uint32 { range "1 .. 240"; } } leaf buildout { description "Line buildout"; units "feet"; type uint32 { range "0 .. 450"; } } leaf atm-encapsulation { description "DS-3 interface encapsulation"; type enumeration { enum plcp { description "PLCP encapsulation"; } enum direct { description "ATM direct mapping"; } } } } container e3-options { description "E3 interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf loopback { description "Loopback mode"; type enumeration { enum local { description "Local loopback"; } enum remote { description "Remote loopback"; } } } leaf unframed { description "Enable unframed mode"; type empty; } leaf no-unframed { description "Enable unframed mode"; type empty; } container compatibility-mode { description "Set CSU compatibility mode"; choice vendor { case case_1 { leaf larscom { description "Compatible with Larscom CSU (only non IQ E3 interfaces)"; type empty; } } case case_2 { container digital-link { presence "enable digital-link"; description "Compatible with Digital Link CSU"; leaf subrate { description "Set subrate value"; type enumeration { enum 358Kb { description "358 Kbps"; } enum 716Kb { description "716 Kbps"; } enum 1.1Mb { description "1.1 Mbps"; } enum 1.4Mb { description "1.4 Mbps"; } enum 1.8Mb { description "1.8 Mbps"; } enum 2.1Mb { description "2.1 Mbps"; } enum 2.5Mb { description "2.5 Mbps"; } enum 2.9Mb { description "2.9 Mbps"; } enum 3.2Mb { description "3.2 Mbps"; } enum 3.6Mb { description "3.6 Mbps"; } enum 3.9Mb { description "3.9 Mbps"; } enum 4.3Mb { description "4.3 Mbps"; } enum 4.7Mb { description "4.7 Mbps"; } enum 5.0Mb { description "5.0 Mbps"; } enum 5.4Mb { description "5.4 Mbps"; } enum 5.7Mb { description "5.7 Mbps"; } enum 6.1Mb { description "6.1 Mbps"; } enum 6.4Mb { description "6.4 Mbps"; } enum 6.8Mb { description "6.8 Mbps"; } enum 7.2Mb { description "7.2 Mbps"; } enum 7.5Mb { description "7.5 Mbps"; } enum 7.9Mb { description "7.9 Mbps"; } enum 8.2Mb { description "8.2 Mbps"; } enum 8.6Mb { description "8.6 Mbps"; } enum 9.0Mb { description "9.0 Mbps"; } enum 9.3Mb { description "9.3 Mbps"; } enum 9.7Mb { description "9.7 Mbps"; } enum 10.0Mb { description "10.0 Mbps"; } enum 10.4Mb { description "10.4 Mbps"; } enum 10.7Mb { description "10.7 Mbps"; } enum 11.1Mb { description "11.1 Mbps"; } enum 11.5Mb { description "11.5 Mbps"; } enum 11.8Mb { description "11.8 Mbps"; } enum 12.2Mb { description "12.2 Mbps"; } enum 12.5Mb { description "12.5 Mbps"; } enum 12.9Mb { description "12.9 Mbps"; } enum 13.2Mb { description "13.2 Mbps"; } enum 13.6Mb { description "13.6 Mbps"; } enum 14.0Mb { description "14.0 Mbps"; } enum 14.3Mb { description "14.3 Mbps"; } enum 14.7Mb { description "14.7 Mbps"; } enum 15.0Mb { description "15.0 Mbps"; } enum 15.4Mb { description "15.4 Mbps"; } enum 15.8Mb { description "15.8 Mbps"; } enum 16.1Mb { description "16.1 Mbps"; } enum 16.5Mb { description "16.5 Mbps"; } enum 16.8Mb { description "16.8 Mbps"; } enum 17.2Mb { description "17.2 Mbps"; } enum 17.5Mb { description "17.5 Mbps"; } enum 17.9Mb { description "17.9 Mbps"; } enum 18.3Mb { description "18.3 Mbps"; } enum 18.6Mb { description "18.6 Mbps"; } enum 19.0Mb { description "19.0 Mbps"; } enum 19.3Mb { description "19.3 Mbps"; } enum 19.7Mb { description "19.7 Mbps"; } enum 20.0Mb { description "20.0 Mbps"; } enum 20.4Mb { description "20.4 Mbps"; } enum 20.8Mb { description "20.8 Mbps"; } enum 21.1Mb { description "21.1 Mbps"; } enum 21.5Mb { description "21.5 Mbps"; } enum 21.8Mb { description "21.8 Mbps"; } enum 22.2Mb { description "22.2 Mbps"; } enum 22.6Mb { description "22.6 Mbps"; } enum 22.9Mb { description "22.9 Mbps"; } enum 23.3Mb { description "23.3 Mbps"; } enum 23.6Mb { description "23.6 Mbps"; } enum 24.0Mb { description "24.0 Mbps"; } enum 24.3Mb { description "24.3 Mbps"; } enum 24.7Mb { description "24.7 Mbps"; } enum 25.1Mb { description "25.1 Mbps"; } enum 25.4Mb { description "25.4 Mbps"; } enum 25.8Mb { description "25.8 Mbps"; } enum 26.1Mb { description "26.1 Mbps"; } enum 26.5Mb { description "26.5 Mbps"; } enum 26.9Mb { description "26.9 Mbps"; } enum 27.2Mb { description "27.2 Mbps"; } enum 27.6Mb { description "27.6 Mbps"; } enum 27.9Mb { description "27.9 Mbps"; } enum 28.3Mb { description "28.3 Mbps"; } enum 28.6Mb { description "28.6 Mbps"; } enum 29.0Mb { description "29.0 Mbps"; } enum 29.4Mb { description "29.4 Mbps"; } enum 29.7Mb { description "29.7 Mbps"; } enum 30.1Mb { description "30.1 Mbps"; } enum 30.4Mb { description "30.4 Mbps"; } enum 30.8Mb { description "30.8 Mbps"; } enum 31.1Mb { description "31.1 Mbps"; } enum 31.5Mb { description "31.5 Mbps"; } enum 31.9Mb { description "31.9 Mbps"; } enum 32.2Mb { description "32.2 Mbps"; } enum 32.6Mb { description "32.6 Mbps"; } enum 32.9Mb { description "32.9 Mbps"; } enum 33.3Mb { description "33.3 Mbps"; } enum 33.7Mb { description "33.7 Mbps"; } enum 34.0Mb { description "34.0 Mbps"; } } } } } case case_3 { container kentrox { presence "enable kentrox"; description "Compatible with Kentrox CSU"; leaf subrate { description "Set subrate value (only for E3 IQ interfaces)"; type uint32 { range "1 .. 48"; } } } } } } leaf payload-scrambler { description "Enable payload scrambling"; type empty; } leaf no-payload-scrambler { description "Enable payload scrambling"; type empty; } leaf fcs { description "Frame checksum"; type enumeration { enum 32 { description "32-bit mode"; } enum 16 { description "16-bit mode"; } } } leaf idle-cycle-flag { description "Value to transmit in idle cycles"; type enumeration { enum flags { description "Transmit 0x7E in idle cycles"; } enum ones { description "Transmit 0xFF (all ones) in idle cycles"; } } } leaf invert-data { description "Invert data"; type empty; } leaf start-end-flag { description "Set start/end flags on transmission"; type enumeration { enum shared { description "Share start/end flags on transmit"; } enum filler { description "Send two idle cycles between start/end flags"; } } } leaf bert-algorithm { description "Set BERT algorithm"; type enumeration { enum pseudo-2e3 { description "Pattern is 2^3 - 1"; } enum pseudo-2e4 { description "Pattern is 2^4 - 1"; } enum pseudo-2e5 { description "Pattern is 2^5 - 1"; } enum pseudo-2e6 { description "Pattern is 2^6 - 1"; } enum pseudo-2e7 { description "Pattern is 2^7 - 1"; } enum pseudo-2e9-o153 { description "Pattern is 2^9 - 1 (per O.153 standard)"; } enum pseudo-2e10 { description "Pattern is 2^10 - 1"; } enum pseudo-2e11-o152 { description "Pattern is 2^11 -1 (per O.152 standard)"; } enum pseudo-2e15-o151 { description "Pattern is 2^15 - 1 (per O.151 standard)"; } enum pseudo-2e17 { description "Pattern is 2^17 - 1"; } enum pseudo-2e18 { description "Pattern is 2^18 - 1"; } enum pseudo-2e20-o153 { description "Pattern is 2^20 - 1 (per O.153 standard)"; } enum pseudo-2e20-o151 { description "Pattern is 2^20 - 1 (per O.151 standard)"; } enum pseudo-2e21 { description "Pattern is 2^21 - 1"; } enum pseudo-2e22 { description "Pattern is 2^22 - 1"; } enum pseudo-2e23-o151 { description "Pattern is 2^23 (per O.151 standard)"; } enum pseudo-2e25 { description "Pattern is 2^25 - 1"; } enum pseudo-2e28 { description "Pattern is 2^28 - 1"; } enum pseudo-2e29 { description "Pattern is 2^29 - 1"; } enum pseudo-2e31 { description "Pattern is 2^31 - 1"; } enum pseudo-2e32 { description "Pattern is 2^32 - 1"; } enum all-ones-repeating { description "Repeating one bits"; } enum all-zeros-repeating { description "Repeating zero bits"; } enum alternating-ones-zeros { description "Alternating ones and zeros"; } enum alternating-double-ones-zeros { description "Alternating pairs of ones and zeros"; } enum repeating-3-in-24 { description "3 bits in 24 are set"; } enum repeating-1-in-8 { description "1 bit in 8 is set"; } enum repeating-1-in-4 { description "1 bit in 4 is set"; } } } leaf bert-error-rate { description "Bit error rate (10^-n for n > 0, and zero for n = 0)"; type uint32 { range "0 .. 7"; } } leaf bert-period { description "Length of BERT test"; units "seconds"; type uint32 { range "1 .. 240"; } } leaf buildout { description "Line buildout"; units "feet"; type uint32 { range "0 .. 450"; } } leaf atm-encapsulation { description "E3 interface encapsulation"; type enumeration { enum plcp { description "PLCP encapsulation"; } enum direct { description "ATM direct mapping"; } } } leaf framing { description "E3 line format"; type enumeration { enum g.751 { description "G.751 format"; } enum g.832 { description "G.832 format"; } } } } container e1-options { description "E1 interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf timeslots { description "Timeslots (1..32); for example, 1-4,6,9-11,32 (no space)"; type string; } leaf loopback { description "Loopback mode"; type enumeration { enum local { description "Local loopback"; } enum remote { description "Remote loopback"; } } } leaf framing { description "Framing mode"; type enumeration { enum g704 { description "G704 mode with CRC4"; } enum unframed { description "Unframed mode"; } enum g704-no-crc4 { description "G704 mode without CRC4"; } } } leaf fcs { description "Frame checksum"; type enumeration { enum 32 { description "32-bit mode"; } enum 16 { description "16-bit mode"; } } } leaf invert-data { description "Invert data"; type empty; } leaf idle-cycle-flag { description "Value to transmit in idle cycles"; type enumeration { enum flags { description "Transmit 0x7E in idle cycles"; } enum ones { description "Transmit 0xFF (all ones) in idle cycles"; } } } leaf start-end-flag { description "Set start/end flags on transmission"; type enumeration { enum shared { description "Share start/end flags on transmit"; } enum filler { description "Send two idle cycles between start/end flags"; } } } leaf bert-algorithm { description "Set BERT algorithm"; type enumeration { enum pseudo-2e3 { description "Pattern is 2^3 - 1"; } enum pseudo-2e4 { description "Pattern is 2^4 - 1"; } enum pseudo-2e5 { description "Pattern is 2^5 - 1"; } enum pseudo-2e6 { description "Pattern is 2^6 - 1"; } enum pseudo-2e7 { description "Pattern is 2^7 - 1"; } enum pseudo-2e9-o153 { description "Pattern is 2^9 - 1 (per O.153 standard)"; } enum pseudo-2e10 { description "Pattern is 2^10 - 1"; } enum pseudo-2e11-o152 { description "Pattern is 2^11 -1 (per O.152 standard)"; } enum pseudo-2e15-o151 { description "Pattern is 2^15 - 1 (per O.151 standard)"; } enum pseudo-2e17 { description "Pattern is 2^17 - 1"; } enum pseudo-2e18 { description "Pattern is 2^18 - 1"; } enum pseudo-2e20-o153 { description "Pattern is 2^20 - 1 (per O.153 standard)"; } enum pseudo-2e20-o151 { description "Pattern is 2^20 - 1 (per O.151 standard)"; } enum pseudo-2e21 { description "Pattern is 2^21 - 1"; } enum pseudo-2e22 { description "Pattern is 2^22 - 1"; } enum pseudo-2e23-o151 { description "Pattern is 2^23 (per O.151 standard)"; } enum pseudo-2e25 { description "Pattern is 2^25 - 1"; } enum pseudo-2e28 { description "Pattern is 2^28 - 1"; } enum pseudo-2e29 { description "Pattern is 2^29 - 1"; } enum pseudo-2e31 { description "Pattern is 2^31 - 1"; } enum pseudo-2e32 { description "Pattern is 2^32 - 1"; } enum all-ones-repeating { description "Repeating one bits"; } enum all-zeros-repeating { description "Repeating zero bits"; } enum alternating-ones-zeros { description "Alternating ones and zeros"; } enum alternating-double-ones-zeros { description "Alternating pairs of ones and zeros"; } enum repeating-3-in-24 { description "3 bits in 24 are set"; } enum repeating-1-in-8 { description "1 bit in 8 is set"; } enum repeating-1-in-4 { description "1 bit in 4 is set"; } } } leaf bert-error-rate { description "Bit error rate (10^-n for n > 0, and zero for n = 0)"; type uint32 { range "0 .. 7"; } } leaf bert-period { description "Length of BERT test"; units "seconds"; type uint32 { range "1 .. 86400"; } } } container t1-options { description "T1 interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf timeslots { description "Timeslots (1..24; for example, 1-3,4,9,22-24 (no space)"; type string; } leaf voice-timeslots { description "Voice timeslots (1..24),for example, 1-3,4,9,22-24 (no space)"; type string; } leaf loopback { description "Loopback mode"; type enumeration { enum local { description "Local loopback"; } enum remote { description "Remote loopback"; } enum payload { description "Payload loopback"; } } } leaf buildout { description "Line buildout"; type enumeration { enum 0-132 { description "Line buildout is between 0-132 feet"; } enum 133-265 { description "Line buildout is between 133-265 feet"; } enum 266-398 { description "Line buildout is between 266-398 feet"; } enum 399-531 { description "Line buildout is between 399-531 feet"; } enum 532-655 { description "Line buildout is between 532-655 feet"; } enum long-0db { description "Long buildout with 0 dB transmit attenuation"; } enum long-7.5db { description "Long buildout with 7.5 dB transmit attenuation"; } enum long-15db { description "Long buildout with 15 dB transmit attenuation"; } enum long-22.5db { description "Long buildout with 22.5 dB transmit attenuation"; } } } leaf byte-encoding { description "Byte encoding"; type enumeration { enum nx64 { description "8 bits per byte"; } enum nx56 { description "7 bits per byte"; } } } leaf line-encoding { description "Line encoding"; type enumeration { enum ami { description "Automatic mark inversion"; } enum b8zs { description "8-bit zero suppression"; } } } leaf invert-data { description "Invert data"; type empty; } leaf framing { description "Framing mode"; type enumeration { enum sf { description "Super frame"; } enum esf { description "Extended super frame"; } } } leaf fcs { description "Frame checksum"; type enumeration { enum 32 { description "32-bit mode"; } enum 16 { description "16-bit mode"; } } } leaf idle-cycle-flag { description "Value to transmit in idle cycles"; type enumeration { enum flags { description "Transmit 0x7E in idle cycles"; } enum ones { description "Transmit 0xFF (all ones) in idle cycles"; } } } leaf start-end-flag { description "Set start/end flags on transmission"; type enumeration { enum shared { description "Share start/end flags on transmit"; } enum filler { description "Send two idle cycles between start/end flags"; } } } leaf bert-algorithm { description "Set BERT algorithm"; type enumeration { enum pseudo-2e3 { description "Pattern is 2^3 - 1"; } enum pseudo-2e4 { description "Pattern is 2^4 - 1"; } enum pseudo-2e5 { description "Pattern is 2^5 - 1"; } enum pseudo-2e6 { description "Pattern is 2^6 - 1"; } enum pseudo-2e7 { description "Pattern is 2^7 - 1"; } enum pseudo-2e9-o153 { description "Pattern is 2^9 - 1 (per O.153 standard)"; } enum pseudo-2e10 { description "Pattern is 2^10 - 1"; } enum pseudo-2e11-o152 { description "Pattern is 2^11 -1 (per O.152 standard)"; } enum pseudo-2e15-o151 { description "Pattern is 2^15 - 1 (per O.151 standard)"; } enum pseudo-2e17 { description "Pattern is 2^17 - 1"; } enum pseudo-2e18 { description "Pattern is 2^18 - 1"; } enum pseudo-2e20-o153 { description "Pattern is 2^20 - 1 (per O.153 standard)"; } enum pseudo-2e20-o151 { description "Pattern is 2^20 - 1 (per O.151 standard)"; } enum pseudo-2e21 { description "Pattern is 2^21 - 1"; } enum pseudo-2e22 { description "Pattern is 2^22 - 1"; } enum pseudo-2e23-o151 { description "Pattern is 2^23 (per O.151 standard)"; } enum pseudo-2e25 { description "Pattern is 2^25 - 1"; } enum pseudo-2e28 { description "Pattern is 2^28 - 1"; } enum pseudo-2e29 { description "Pattern is 2^29 - 1"; } enum pseudo-2e31 { description "Pattern is 2^31 - 1"; } enum pseudo-2e32 { description "Pattern is 2^32 - 1"; } enum all-ones-repeating { description "Repeating one bits"; } enum all-zeros-repeating { description "Repeating zero bits"; } enum alternating-ones-zeros { description "Alternating ones and zeros"; } enum alternating-double-ones-zeros { description "Alternating pairs of ones and zeros"; } enum repeating-3-in-24 { description "3 bits in 24 are set"; } enum repeating-1-in-8 { description "1 bit in 8 is set"; } enum repeating-1-in-4 { description "1 bit in 4 is set"; } } } leaf bert-error-rate { description "Bit error rate (10^-n for n > 0, and zero for n = 0)"; type uint32 { range "0 .. 7"; } } leaf bert-period { description "Length of BERT test"; units "seconds"; type uint32 { range "1 .. 86400"; } } leaf remote-loopback-respond { description "Respond to loop requests from remote end"; type empty; } leaf crc-major-alarm-threshold { description "CRC Major alarm threshold value"; default "5e-5"; type enumeration { enum 1e-3 { description "1 crc error in 10^3 bits"; } enum 5e-4 { description "5 crc errors in 10^4 bits"; } enum 1e-4 { description "1 crc error in 10^4 bits"; } enum 5e-5 { description "5 crc errors in 10^5 bits"; } enum 1e-5 { description "1 crc error in 10^5 bits"; } } } leaf crc-minor-alarm-threshold { description "CRC Minor alarm threshold value"; default "5e-6"; type enumeration { enum 1e-3 { description "1 crc error in 10^3 bits"; } enum 5e-4 { description "5 crc errors in 10^4 bits"; } enum 1e-4 { description "1 crc error in 10^4 bits"; } enum 5e-5 { description "5 crc errors in 10^5 bits"; } enum 1e-5 { description "1 crc error in 10^5 bits"; } enum 5e-6 { description "5 crc errors in 10^6 bits"; } enum 1e-6 { description "1 crc error in 10^6 bits"; } } } } container ds0-options { description "DS-0 interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf loopback { description "Loopback mode"; type enumeration { enum payload { description "Payload loopback"; } } } leaf byte-encoding { description "Byte encoding"; type enumeration { enum nx64 { description "8 bits per byte"; } enum nx56 { description "7 bits per byte"; } } } leaf invert-data { description "Invert data"; type empty; } leaf fcs { description "Frame checksum"; type enumeration { enum 32 { description "32-bit mode"; } enum 16 { description "16-bit mode"; } } } leaf idle-cycle-flag { description "Value to transmit in idle cycles"; type enumeration { enum flags { description "Transmit 0x7E in idle cycles"; } enum ones { description "Transmit 0xFF (all ones) in idle cycles"; } } } leaf start-end-flag { description "Set start/end flags on transmission"; type enumeration { enum shared { description "Share start/end flags on transmit"; } enum filler { description "Send two idle cycles between start/end flags"; } } } leaf bert-algorithm { description "Set BERT algorithm"; type enumeration { enum pseudo-2e11-o152 { description "Pattern is 2^11 -1 (per O.152 standard)"; } enum pseudo-2e15-o151 { description "Pattern is 2^15 - 1 (per O.151 standard)"; } enum pseudo-2e20-o153 { description "Pattern is 2^20 - 1 (per O.153 standard)"; } enum pseudo-2e20-o151 { description "Pattern is 2^20 - 1 (per O.151 standard)"; } enum all-ones-repeating { description "Repeating one bits"; } enum all-zeros-repeating { description "Repeating zero bits"; } enum alternating-ones-zeros { description "Alternating ones and zeros"; } enum alternating-double-ones-zeros { description "Alternating pairs of ones and zeros"; } enum repeating-3-in-24 { description "3 bits in 24 are set"; } enum repeating-1-in-8 { description "1 bit in 8 is set"; } enum repeating-1-in-4 { description "1 bit in 4 is set"; } enum repeating-1-in-16 { description "1 bit in 16 is set"; } } } leaf bert-error-rate { description "Bit error rate (10^-n for n > 0, and zero for n = 0)"; type uint32 { range "0 .. 7"; } } leaf bert-period { description "Length of BERT test"; units "seconds"; type uint32 { range "1 .. 240"; } } } container serial-options { description "Serial interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf line-protocol { description "Line protocol to be used"; default "eia530"; type enumeration { enum eia530 { description "Line protocol EIA530"; } enum v.35 { description "Line protocol V.35"; } enum x.21 { description "Line protocol X.21"; } } } choice control_leads_choice { case case_1 { container dte-options { description "DTE options/control leads"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ignore-all { description "Ignore all control leads"; type empty; } container dtr { description "Data Transmit Ready signal handling"; choice dtr_choices { case case_1 { leaf assert { description "Assert DTR signal"; type empty; } } case case_2 { leaf de-assert { description "Deassert DTR signal"; type empty; } } case case_3 { leaf normal { description "Normal DTR signal"; type empty; } } case case_4 { container auto-synchronize { presence "enable auto-synchronize"; description "Normal DTR signal, with autoresynchronization"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf duration { description "Duration of autoresynchronization"; units "milliseconds"; type uint16 { range "1 .. 1000"; } } leaf interval { description "Interval for autoresynchronization"; units "seconds"; type uint16 { range "1 .. 31"; } } } } } } leaf control-signal { description "X.21 control signal handling"; type enumeration { enum assert { description "Assert control signal"; } enum de-assert { description "Deassert control signal"; } enum normal { description "Normal control signal"; } } } leaf rts { description "Request To Send signal handling"; type enumeration { enum assert { description "Assert RTS signal"; } enum de-assert { description "Deassert RTS signal"; } enum normal { description "Normal RTS signal"; } } } leaf dcd { description "Data Carrier Detect signal handling"; type enumeration { enum require { description "Require DCD signal"; } enum ignore { description "Ignore DCD signal"; } enum normal { description "Normal DCD signal"; } } } leaf dsr { description "Data Set Ready signal handling"; type enumeration { enum require { description "Require DSR signal"; } enum ignore { description "Ignore DSR signal"; } enum normal { description "Normal DSR signal"; } } } leaf cts { description "Clear To Send signal handling"; type enumeration { enum require { description "Require CTS signal"; } enum ignore { description "Ignore CTS signal"; } enum normal { description "Normal CTS signal"; } } } leaf indication { description "X.21 Indication signal handling"; type enumeration { enum require { description "Require Indication signal"; } enum ignore { description "Ignore Indication signal"; } enum normal { description "Normal Indication signal"; } } } leaf tm { description "Test Mode signal handling"; type enumeration { enum require { description "Require TM signal"; } enum ignore { description "Ignore TM signal"; } enum normal { description "Normal TM signal"; } } } } } case case_2 { container dce-options { description "DCE options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ignore-all { description "Ignore all control leads"; type empty; } leaf dtr { description "Data Transmit Ready signal handling"; type enumeration { enum require { description "Require Data Carrier Detect (DCD) signal"; } enum ignore { description "Ignore Data Carrier Detect (DCD) signal"; } enum normal { description "Normal Data Carrier Detect (DCD) signal"; } } } leaf rts { description "Request To Send signal handling"; type enumeration { enum require { description "Require Data Carrier Detect (DCD) signal"; } enum ignore { description "Ignore Data Carrier Detect (DCD) signal"; } enum normal { description "Normal Data Carrier Detect (DCD) signal"; } } } leaf dcd { description "Data Carrier Detect signal handling"; type enumeration { enum assert { description "Assert Request To Send (RTS) signal"; } enum de-assert { description "Deassert Request To Send (RTS) signal"; } enum normal { description "Normal Request To Send (RTS) signal"; } } } leaf dsr { description "Data Set Ready signal handling"; type enumeration { enum assert { description "Assert Request To Send (RTS) signal"; } enum de-assert { description "Deassert Request To Send (RTS) signal"; } enum normal { description "Normal Request To Send (RTS) signal"; } } } leaf cts { description "Clear To Send signal handling"; type enumeration { enum assert { description "Assert Request To Send (RTS) signal"; } enum de-assert { description "Deassert Request To Send (RTS) signal"; } enum normal { description "Normal Request To Send (RTS) signal"; } } } leaf tm { description "Test Mode signal handling"; type enumeration { enum require { description "Require TM signal"; } enum ignore { description "Ignore TM signal"; } enum normal { description "Normal TM signal"; } } } leaf dce-loopback-override { description "DCE loopback override"; type empty; } } } } leaf dtr-circuit { description "Data Transmit Ready circuit mode"; type enumeration { enum balanced { description "Balanced signal"; } enum unbalanced { description "Unbalanced signal"; } } } leaf dtr-polarity { description "Data Transmit Ready signal polarity"; type enumeration { enum positive { description "Positive polarity"; } enum negative { description "Negative polarity"; } } } leaf rts-polarity { description "Request To Send signal polarity"; type enumeration { enum positive { description "Positive polarity"; } enum negative { description "Negative polarity"; } } } leaf control-polarity { description "X.21 Control signal polarity"; type enumeration { enum positive { description "Positive polarity"; } enum negative { description "Negative polarity"; } } } leaf dcd-polarity { description "Data Carrier Detect signal polarity"; type enumeration { enum positive { description "Positive polarity"; } enum negative { description "Negative polarity"; } } } leaf dsr-polarity { description "Data Set Ready signal polarity"; type enumeration { enum positive { description "Positive polarity"; } enum negative { description "Negative polarity"; } } } leaf cts-polarity { description "Clear To Send signal polarity"; type enumeration { enum positive { description "Positive polarity"; } enum negative { description "Negative polarity"; } } } leaf indication-polarity { description "X.21 Indication signal polarity"; type enumeration { enum positive { description "Positive polarity"; } enum negative { description "Negative polarity"; } } } leaf tm-polarity { description "Test Mode signal polarity"; type enumeration { enum positive { description "Positive polarity"; } enum negative { description "Negative polarity"; } } } leaf clocking-mode { description "Clock mode"; type enumeration { enum dce { description "DCE timing (DTE mode only, not valid for X.21)"; } enum internal { description "Internal baud timing"; } enum loop { description "Loop timing"; } } } leaf transmit-clock { description "Transmit clock phase"; type enumeration { enum invert { description "Shift clock phase 180 degrees"; } } } leaf clock-rate { description "Interface clock rate"; type enumeration { enum 2.048mhz { description "2.048 MHz"; } enum 2.341mhz { description "2.341 MHz"; } enum 2.731mhz { description "2.731 MHz"; } enum 3.277mhz { description "3.277 MHz"; } enum 4.096mhz { description "4.096 MHz"; } enum 5.461mhz { description "5.461 MHz"; } enum 8.192mhz { description "8.192 MHz"; } enum 16.384mhz { description "16.384 MHz"; } enum 1.2khz { description "1.2 KHz"; } enum 2.4khz { description "2.4 KHz"; } enum 9.6khz { description "9.6 KHz"; } enum 19.2khz { description "19.2 KHz"; } enum 38.4khz { description "38.4 KHz"; } enum 56.0khz { description "56.0 KHz"; } enum 64.0khz { description "64.0 KHz"; } enum 72.0khz { description "72.0 KHz"; } enum 125.0khz { description "125.0 KHz"; } enum 148.0khz { description "148.0 KHz"; } enum 250.0khz { description "250.0 KHz"; } enum 500.0khz { description "500.0 KHz"; } enum 800.0khz { description "800.0 KHz"; } enum 1.0mhz { description "1.0 MHz"; } enum 1.3mhz { description "1.3 MHz"; } enum 2.0mhz { description "2.0 MHz"; } enum 4.0mhz { description "4.0 MHz"; } enum 8.0mhz { description "8.0 MHz"; } } } leaf loopback { description "Loopback mode"; type enumeration { enum local { description "Local loopback"; } enum remote { description "Remote/LIU loopback"; } enum dce-local { description "DCE local loopback (DTE mode only)"; } enum dce-remote { description "DCE remote loopback"; } } } leaf encoding { description "Line encoding"; type enumeration { enum nrz { description "Non-Return-To-Zero"; } enum nrzi { description "Non-Return-To-Zero-Invertible"; } } } leaf idle-cycle-flag { description "Value to transmit in idle cycles"; type enumeration { enum flags { description "Transmit 0x7E in idle cycles"; } enum ones { description "Transmit 0xFF (all ones) in idle cycles"; } } } } leaf gratuitous-arp-reply { description "Enable gratuitous ARP reply"; type empty; } leaf no-gratuitous-arp-reply { description "Enable gratuitous ARP reply"; type empty; } leaf no-gratuitous-arp-request { description "Ignore gratuitous ARP request"; type empty; } leaf no-no-gratuitous-arp-request { description "Ignore gratuitous ARP request"; type empty; } leaf arp-l2-validate { description "Validate ARP against L2"; type empty; } container ether-options { description "Ethernet interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf loopback { description "Enable loopback"; type empty; } leaf no-loopback { description "Enable loopback"; type empty; } leaf source-filtering { description "Enable source address filtering"; type empty; } leaf no-source-filtering { description "Enable source address filtering"; type empty; } container ethernet-switch-profile { description "Ethernet virtual LAN/media access control-level options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list tag-protocol-id { description "IEEE 802.1q Tag Protocol Identifier values for VLAN-tagged frames"; type string; } container ethernet-policer-profile { description "Ethernet level CoS-based policer configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container input-priority-map { description "Input policer priority map"; uses cos_policer_input_priority_map; } container output-priority-map { description "Output policer priority map"; uses cos_policer_output_priority_map; } list policer { key name; ordered-by user; description "Policer template definition"; uses cos_policer; } } container storm-control { description "Storm control profile name to bind"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf profile-name { description "Profile name"; type string; mandatory true; } presence "enable storm-control"; } container recovery-timeout { description "Recovery timeout for this interface"; leaf time-in-seconds { description "(null)"; units "seconds"; type uint32 { range "10 .. 3600"; } } } leaf mac-learn-enable { description "Learn MAC addresses dynamically"; type empty; } leaf no-mac-learn-enable { description "Learn MAC addresses dynamically"; type empty; } } leaf asynchronous-notification { description "Enable sending asynchronous notification to peer on CCC-down"; type empty; } list source-address-filter { key name; description "Source address filters"; leaf name { description "Remote MAC address"; type mac-addr; } } leaf auto-negotiation { description "Enable auto-negotiation"; type empty; } leaf no-auto-negotiation { description "Enable auto-negotiation"; type empty; } leaf flow-control { description "Enable flow control"; type empty; } leaf no-flow-control { description "Enable flow control"; type empty; } container configured-flow-control { presence "enable configured-flow-control"; description "Enable flow control"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf rx-buffers { description "Enable/Disable Rx buffers"; type enumeration { enum on { description "Enable Rx buffers"; } enum off { description "Disable Rx buffers"; } } mandatory true; } leaf tx-buffers { description "Enable/Disable Tx buffers"; type enumeration { enum on { description "Enable Tx buffers"; } enum off { description "Disable Tx buffers"; } } mandatory true; } } leaf link-mode { description "Link duplex"; type enumeration { enum automatic { description "Automatic negotiate duplex "; } enum half-duplex { description "Half-duplex operation"; } enum full-duplex { description "Full-duplex operation"; } } } container mpls { description "MPLS options"; uses mpls_ifd_options; } leaf ignore-l3-incompletes { description "Ignore L3 incomplete errors"; type empty; } leaf no-auto-mdix { description "Disable auto MDI/MDIX"; type empty; } container speed { description "Specify speed"; choice automatic { case case_1 { container auto-negotiation { presence "enable auto-negotiation"; description "Enable auto-negotiation"; leaf auto-negotiate-10-100 { description "Limits the auto-negotiation to 10m/100m only"; type empty; } } } case case_2 { leaf ethernet-10m { description "10Mbps"; type empty; } } case case_3 { leaf ethernet-100m { description "100Mbps"; type empty; } } case case_4 { leaf ethernet-1g { description "1Gbps"; type empty; } } case case_5 { leaf ethernet-10g { description "10Gbps"; type empty; } } } } container ieee-802.3ad { description "IEEE 802.3ad"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container lacp { description "Link Aggregation Control Protocol configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf force-up { description "Keep the port up in absence of received LACPDU"; type empty; } leaf port-priority { description "Priority of the port (0 ... 65535)"; type uint16; } } leaf bundle { description "Join an aggregated Ethernet interface"; type interface-device; } choice type { case case_1 { leaf primary { description "Primary interface for link-protection mode"; type empty; } } case case_2 { leaf backup { description "Backup interface for link-protection mode"; type empty; } } } } leaf ieee-802-3az-eee { description "IEEE 802.3az Energy Efficient Ethernet(EEE)"; type empty; } leaf mdi-mode { description "Cable cross-over mode"; type enumeration { enum auto { description "Automatic mdi/mdi-x mode"; } enum mdi { description "MDI(straight through) mode"; } enum mdix { description "MDI Cross-over mode"; } } } } container fibrechannel-options { description "Fibre Channel interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf loopback { description "Enable loopback"; type empty; } leaf no-loopback { description "Enable loopback"; type empty; } leaf bb-sc-n { description "B2B state change number"; type uint16 { range "0 .. 15"; } } leaf speed { description "Specify speed"; type enumeration { enum auto-negotiation { description "Enable auto-negotiation"; } enum 1g { description "1Gbps"; } enum 2g { description "2Gbps"; } enum 4g { description "4Gbps"; } enum 8g { description "8Gbps"; } } } } container gigether-options { description "Gigabit Ethernet interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf loopback { description "Enable loopback"; type empty; } leaf no-loopback { description "Enable loopback"; type empty; } leaf flow-control { description "Enable flow control"; type empty; } leaf no-flow-control { description "Enable flow control"; type empty; } leaf source-filtering { description "Enable source address filtering"; type empty; } leaf no-source-filtering { description "Enable source address filtering"; type empty; } choice auto_negotiation_option { case case_1 { leaf no-auto-negotiation { description "Disable auto-negotiation"; type empty; } } case case_2 { container auto-negotiation { presence "enable auto-negotiation"; description "Enable auto-negotiation"; leaf remote-fault { description "(null)"; type enumeration { enum local-interface-offline { description "Disable local interface"; } enum local-interface-online { description "Enable local interface"; } } } } } } leaf mac-mode { description "Physical layer protocol of MAC's SERDES interface"; type enumeration { enum sgmii { description "Serial Gigabit Media Independent Interface (10/100/1000 Mbps)"; } enum mac-mode-1000base-x { description "1000Base-X (1000 Mbps)"; } } } leaf asynchronous-notification { description "Enable sending asynchronous notification to peer on CCC-down"; type empty; } list source-address-filter { key name; description "Source address filters"; leaf name { description "Remote MAC address"; type mac-addr; } } leaf pad-to-minimum-frame-size { description "Pad Tx vlan tagged frame to minimum of 68 bytes"; type empty; } container redundant-parent { description "Parent of this interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf parent { description "Join a redundant-ethernet interface"; type interface-device; mandatory true; } presence "enable redundant-parent"; } container ieee-802.3ad { description "IEEE 802.3ad"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container lacp { description "Link Aggregation Control Protocol configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port-priority { description "Priority of the port (0 ... 65535)"; type uint16; } } leaf bundle { description "Join an aggregated Ethernet interface"; type interface-device; } leaf link-index { description "Desired child link index within the Aggregated Interface"; type uint16 { range "0 .. 63"; } } choice type { case case_1 { leaf primary { description "Primary interface for link-protection mode"; type empty; } } case case_2 { leaf backup { description "Backup interface for link-protection mode"; type empty; } } } } container ethernet-switch-profile { description "Ethernet virtual LAN/media access control-level options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list tag-protocol-id { description "IEEE 802.1q Tag Protocol Identifier values for VLAN-tagged frames"; type string; } container ethernet-policer-profile { description "Ethernet level CoS-based policer configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container input-priority-map { description "Input policer priority map"; uses cos_policer_input_priority_map; } container output-priority-map { description "Output policer priority map"; uses cos_policer_output_priority_map; } list policer { key name; ordered-by user; description "Policer template definition"; uses cos_policer; } } leaf mac-learn-enable { description "Learn MAC addresses dynamically"; type empty; } leaf no-mac-learn-enable { description "Learn MAC addresses dynamically"; type empty; } } container mpls { description "MPLS options"; uses mpls_ifd_options; } leaf ignore-l3-incompletes { description "Ignore L3 incomplete errors"; type empty; } leaf no-auto-mdix { description "Disable auto MDI/MDIX"; type empty; } leaf ieee-802-3az-eee { description "IEEE 802.3az Energy Efficient Ethernet(EEE)"; type empty; } leaf mru { description "Maximum receive packet size"; type uint32 { range "256 .. 9200"; } } } container optics-options { description "Optics options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf wavelength { description "Wavelength of the optics (nanometers) for 50Ghz/100Ghz spacing"; type enumeration { enum 1528.38 { description "1528.38 nm 50Ghz spacing"; } enum 1528.77 { description "1528.77 nm 50/100Ghz spacing"; } enum 1529.16 { description "1529.16 nm 50Ghz spacing"; } enum 1529.55 { description "1529.55 nm 50/100Ghz spacing"; } enum 1529.94 { description "1529.94 nm 50Ghz spacing"; } enum 1530.33 { description "1530.33 nm 50/100Ghz spacing"; } enum 1530.72 { description "1530.72 nm 50Ghz spacing"; } enum 1531.12 { description "1531.12 nm 50/100Ghz spacing"; } enum 1531.51 { description "1531.51 nm 50Ghz spacing"; } enum 1531.90 { description "1531.90 nm 50/100Ghz spacing"; } enum 1532.29 { description "1532.29 nm 50Ghz spacing"; } enum 1532.68 { description "1532.68 nm 50/100Ghz spacing"; } enum 1533.07 { description "1533.07 nm 50Ghz spacing"; } enum 1533.47 { description "1533.47 nm 50/100Ghz spacing"; } enum 1533.86 { description "1533.86 nm 50Ghz spacing"; } enum 1534.25 { description "1534.25 nm 50/100Ghz spacing"; } enum 1534.64 { description "1534.64 nm 50Ghz spacing"; } enum 1535.04 { description "1535.04 nm 50/100Ghz spacing"; } enum 1535.43 { description "1535.43 nm 50Ghz spacing"; } enum 1535.82 { description "1535.82 nm 50/100Ghz spacing"; } enum 1536.22 { description "1536.22 nm 50Ghz spacing"; } enum 1536.61 { description "1536.61 nm 50/100Ghz spacing"; } enum 1537.00 { description "1537.00 nm 50Ghz spacing"; } enum 1537.40 { description "1537.40 nm 50/100Ghz spacing"; } enum 1537.79 { description "1537.79 nm 50Ghz spacing"; } enum 1538.19 { description "1538.19 nm 50/100Ghz spacing"; } enum 1538.58 { description "1538.58 nm 50Ghz spacing"; } enum 1538.98 { description "1538.98 nm 50/100Ghz spacing"; } enum 1539.37 { description "1539.37 nm 50Ghz spacing"; } enum 1539.77 { description "1539.77 nm 50/100Ghz spacing"; } enum 1540.16 { description "1540.16 nm 50Ghz spacing"; } enum 1540.56 { description "1540.56 nm 50/100Ghz spacing"; } enum 1540.95 { description "1540.95 nm 50Ghz spacing"; } enum 1541.35 { description "1541.35 nm 50/100Ghz spacing"; } enum 1541.75 { description "1541.75 nm 50Ghz spacing"; } enum 1542.14 { description "1542.14 nm 50/100Ghz spacing"; } enum 1542.54 { description "1542.54 nm 50Ghz spacing"; } enum 1542.94 { description "1542.94 nm 50/100Ghz spacing"; } enum 1543.33 { description "1543.33 nm 50Ghz spacing"; } enum 1543.73 { description "1543.73 nm 50/100Ghz spacing"; } enum 1544.13 { description "1544.13 nm 50Ghz spacing"; } enum 1544.53 { description "1544.53 nm 50/100Ghz spacing"; } enum 1544.92 { description "1544.92 nm 50Ghz spacing"; } enum 1545.32 { description "1545.32 nm 50/100Ghz spacing"; } enum 1545.72 { description "1545.72 nm 50Ghz spacing"; } enum 1546.12 { description "1546.12 nm 50/100Ghz spacing"; } enum 1546.52 { description "1546.52 nm 50Ghz spacing"; } enum 1546.92 { description "1546.92 nm 50/100Ghz spacing"; } enum 1547.32 { description "1547.32 nm 50Ghz spacing"; } enum 1547.72 { description "1547.72 nm 50/100Ghz spacing"; } enum 1548.11 { description "1548.11 nm 50Ghz spacing"; } enum 1548.51 { description "1548.51 nm 50/100Ghz spacing"; } enum 1548.91 { description "1548.91 nm 50Ghz spacing"; } enum 1549.32 { description "1549.32 nm 50/100Ghz spacing"; } enum 1549.72 { description "1549.72 nm 50Ghz spacing"; } enum 1550.12 { description "1550.12 nm 50/100Ghz spacing"; } enum 1550.52 { description "1550.52 nm 50Ghz spacing"; } enum 1550.92 { description "1550.92 nm 50/100Ghz spacing"; } enum 1551.32 { description "1551.32 nm 50Ghz spacing"; } enum 1551.72 { description "1551.72 nm 50/100Ghz spacing"; } enum 1552.12 { description "1552.12 nm 50Ghz spacing"; } enum 1552.52 { description "1552.52 nm 50/100Ghz spacing"; } enum 1552.93 { description "1552.93 nm 50Ghz spacing"; } enum 1553.33 { description "1553.33 nm 50/100Ghz spacing"; } enum 1553.73 { description "1553.73 nm 50Ghz spacing"; } enum 1554.13 { description "1554.13 nm 50/100Ghz spacing"; } enum 1554.54 { description "1554.54 nm 50Ghz spacing"; } enum 1554.94 { description "1554.94 nm 50/100Ghz spacing"; } enum 1555.34 { description "1555.34 nm 50Ghz spacing"; } enum 1555.75 { description "1555.75 nm 50/100Ghz spacing"; } enum 1556.15 { description "1556.15 nm 50Ghz spacing"; } enum 1556.55 { description "1556.55 nm 50/100Ghz spacing"; } enum 1556.96 { description "1556.96 nm 50Ghz spacing"; } enum 1557.36 { description "1557.36 nm 50/100Ghz spacing"; } enum 1557.77 { description "1557.77 nm 50Ghz spacing"; } enum 1558.17 { description "1558.17 nm 50/100Ghz spacing"; } enum 1558.58 { description "1558.58 nm 50Ghz spacing"; } enum 1558.98 { description "1558.98 nm 50/100Ghz spacing"; } enum 1559.39 { description "1559.39 nm 50Ghz spacing"; } enum 1559.79 { description "1559.79 nm 50/100Ghz spacing"; } enum 1560.20 { description "1560.20 nm 50Ghz spacing"; } enum 1560.61 { description "1560.61 nm 50/100Ghz spacing"; } enum 1561.01 { description "1561.01 nm 50Ghz spacing"; } enum 1561.42 { description "1561.42 nm 50/100Ghz spacing"; } enum 1561.83 { description "1561.83 nm 50Ghz spacing"; } enum 1562.23 { description "1562.23 nm 50/100Ghz spacing"; } enum 1562.64 { description "1562.64 nm 50Ghz spacing"; } enum 1563.05 { description "1563.05 nm 50/100Ghz spacing"; } enum 1563.45 { description "1563.45 nm 50Ghz spacing"; } enum 1563.86 { description "1563.86 nm 50/100Ghz spacing"; } enum 1564.27 { description "1564.27 nm 50Ghz spacing"; } enum 1564.68 { description "1564.68 nm 50/100Ghz spacing"; } enum 1565.09 { description "1565.09 nm 50Ghz spacing"; } enum 1565.50 { description "1565.50 nm 50/100Ghz spacing"; } enum 1565.90 { description "1565.90 nm 50Ghz spacing"; } enum 1566.31 { description "1566.31 nm 50/100Ghz spacing"; } enum 1566.72 { description "1566.72 nm 50Ghz spacing"; } enum 1567.13 { description "1567.13 nm 50/100Ghz spacing"; } enum 1567.54 { description "1567.54 nm 50Ghz spacing"; } enum 1567.95 { description "1567.95 nm 50/100Ghz spacing"; } enum 1568.36 { description "1568.36 nm 50Ghz spacing"; } enum 1568.77 { description "1568.77 nm 50/100Ghz spacing"; } } } leaf tx-power { description "Transmit laser output power"; units "dBm"; type string; } leaf los-warning-threshold { description "LOS warning threshold"; units "dBm"; type string; } leaf los-alarm-threshold { description "LOS alarm threshold"; units "dBm"; type string; } list alarm { key name; ordered-by user; description "Set optic alarms"; leaf name { description "(null)"; type enumeration { enum low-light-alarm { description "Enable low light alarm"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice actiontype { case case_1 { leaf syslog { description "(null)"; type empty; } } case case_2 { leaf link-down { description "(null)"; type empty; } } } } container tca { description "Set tca for optic alarms"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container tx-power-high-tca { description "Tx power high TCA"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf enable-tca { description "Enable tca"; type empty; } leaf no-enable-tca { description "Enable tca"; type empty; } leaf threshold { description "Threshold for 15 minute tx power high TCA in dBm"; type string; } leaf threshold-24hrs { description "Threshold for 24 hour tx power high TCA in dBm"; type string; } } container tx-power-low-tca { description "Tx power low TCA"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf enable-tca { description "Enable tca"; type empty; } leaf no-enable-tca { description "Enable tca"; type empty; } leaf threshold { description "Threshold for 15 minute tx power low TCA in dBm"; type string; } leaf threshold-24hrs { description "Threshold for 24 hour tx power low TCA in dBm"; type string; } } container rx-power-high-tca { description "Rx power high TCA"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf enable-tca { description "Enable tca"; type empty; } leaf no-enable-tca { description "Enable tca"; type empty; } leaf threshold { description "Threshold for 15 minute rx power high TCA in dBm"; type string; } leaf threshold-24hrs { description "Threshold for 24 hour rx power high TCA in dBm"; type string; } } container rx-power-low-tca { description "Rx power low TCA"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf enable-tca { description "Enable tca"; type empty; } leaf no-enable-tca { description "Enable tca"; type empty; } leaf threshold { description "Threshold for 15 minute rx power low TCA in dBm"; type string; } leaf threshold-24hrs { description "Threshold for 24 hour rx power low TCA in dBm"; type string; } } container temperature-high-tca { description "Temperature high TCA"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf enable-tca { description "Enable tca"; type empty; } leaf no-enable-tca { description "Enable tca"; type empty; } leaf threshold { description "Threshold for 15 minute high temperature TCA in celsius"; type string; } leaf threshold-24hrs { description "Threshold for 24 hour high temperature TCA in celsius"; type string; } } container temperature-low-tca { description "Temperature low TCA"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf enable-tca { description "Enable tca"; type empty; } leaf no-enable-tca { description "Enable tca"; type empty; } leaf threshold { description "Threshold for 15 minute low temperature TCA in celsius"; type string; } leaf threshold-24hrs { description "Threshold for 24 hour low temperature TCA in celsius"; type string; } } container carrier-frequency-offset-high-tca { description "Carrier frequency offset high TCA"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf enable-tca { description "Enable tca"; type empty; } leaf no-enable-tca { description "Enable tca"; type empty; } leaf threshold { description "Threshold for 15 minute frequency requency offset high TCA in MHz"; type string; } leaf threshold-24hrs { description "Threshold for 24 hour frequency requency offset high TCA in MHz"; type string; } } container carrier-frequency-offset-low-tca { description "Carrier frequency offset low TCA"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf enable-tca { description "Enable tca"; type empty; } leaf no-enable-tca { description "Enable tca"; type empty; } leaf threshold { description "Threshold for 15 minute frequency requency offset low TCA in MHz"; type string; } leaf threshold-24hrs { description "Threshold for 24 hour frequency requency offset low TCA in MHz"; type string; } } } list warning { key name; ordered-by user; description "Set optic warnings"; leaf name { description "(null)"; type enumeration { enum low-light-warning { description "Enable low light warning"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice actiontype { case case_1 { leaf syslog { description "Set action as syslog"; type empty; } } case case_2 { leaf link-down { description "Set action as link-down"; type empty; } } } } } container otn-options { description "Optical Transmission Network interface-specific options"; uses otn_options_type; } container fastether-options { description "Fast Ethernet interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf loopback { description "Enable loopback"; type empty; } leaf no-loopback { description "Enable loopback"; type empty; } leaf flow-control { description "Enable flow control"; type empty; } leaf no-flow-control { description "Enable flow control"; type empty; } leaf source-filtering { description "Enable source address filtering"; type empty; } leaf no-source-filtering { description "Enable source address filtering"; type empty; } leaf auto-negotiation { description "Enable auto-negotiation"; type empty; } leaf no-auto-negotiation { description "Enable auto-negotiation"; type empty; } leaf ingress-rate-limit { description "Ingress rate at port"; units "megabits per second"; type uint32 { range "1 .. 100"; } } list source-address-filter { key name; ordered-by user; description "Source address filters"; leaf name { description "Remote MAC address"; type mac-addr; } } container redundant-parent { description " Parent of this interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf parent { description "Join a redundant ethernet interface"; type interface-device; mandatory true; } presence "enable redundant-parent"; } container ieee-802.3ad { description "IEEE 802.3ad"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container lacp { description "Link Aggregation Control Protocol configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port-priority { description "Priority of the port (0 ... 65535)"; type uint16; } } leaf bundle { description "Join an aggregated Ethernet interface"; type interface-device; } choice type { case case_1 { leaf primary { description "Primary interface for link-protection mode"; type empty; } } case case_2 { leaf backup { description "Backup interface for link-protection mode"; type empty; } } } } container mpls { description "MPLS options"; uses mpls_ifd_options; } leaf ignore-l3-incompletes { description "Ignore L3 incomplete errors"; type empty; } } container redundant-ether-options { description "Ethernet redundancy options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf redundancy-group { description "Redundancy group of this interface"; type uint16 { range "1 .. 255"; } mandatory true; } presence "enable redundant-ether-options"; leaf loopback { description "Enable loopback"; type empty; } leaf no-loopback { description "Enable loopback"; type empty; } leaf flow-control { description "Enable flow control"; type empty; } leaf no-flow-control { description "Enable flow control"; type empty; } leaf source-filtering { description "Enable source address filtering"; type empty; } leaf no-source-filtering { description "Enable source address filtering"; type empty; } list source-address-filter { key name; ordered-by user; description "Source address filters"; leaf name { description "Remote MAC address"; type mac-addr; } } leaf link-speed { description "Link speed of individual interface that joins the RETH"; type enumeration { enum 10m { description "Links are 10M"; } enum 100m { description "Links are 100M"; } enum 1g { description "Links are 1G"; } enum 10g { description "Links are 10G"; } } } leaf minimum-links { description "Minimum number of active links"; default "1"; type uint16 { range "1 .. 8"; } } container lacp { description "Link Aggregation Control Protocol configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice mode { case case_1 { leaf active { description "Initiate transmission of LACP packets"; type empty; } } case case_2 { leaf passive { description "Respond to LACP packets"; type empty; } } } leaf periodic { description "Timer interval for periodic transmission of LACP packets"; type enumeration { enum fast { description "Receive packets every second"; } enum slow { description "Receive packets every 30 seconds"; } } } } } container aggregated-ether-options { description "Aggregated Ethernet interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf loopback { description "Enable loopback"; type empty; } leaf no-loopback { description "Enable loopback"; type empty; } leaf flow-control { description "Enable flow control"; type empty; } leaf no-flow-control { description "Enable flow control"; type empty; } leaf source-filtering { description "Enable source address filtering"; type empty; } leaf no-source-filtering { description "Enable source address filtering"; type empty; } container link-protection { presence "enable link-protection"; description "Enable link protection mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf backup-state { description "Link protection backup link state"; default "accept-data"; type enumeration { enum accept-data { description "Accept data on receive channel of backup link"; } enum discard-data { description "Discard data on receive channel of backup link"; } enum down { description "Backup link is marked down"; } } } } list source-address-filter { key name; ordered-by user; description "Source address filters"; leaf name { description "Remote MAC address"; type mac-addr; } } container configured-flow-control { presence "enable configured-flow-control"; description "Enable flow control"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf rx-buffers { description "Enable/Disable Rx buffers"; type enumeration { enum on { description "Enable Rx buffers"; } enum off { description "Disable Rx buffers"; } } mandatory true; } leaf tx-buffers { description "Enable/Disable Tx buffers"; type enumeration { enum on { description "Enable Tx buffers"; } enum off { description "Disable Tx buffers"; } } mandatory true; } } container load-balance { uses aggregate-load-balance; } container bfd-liveness-detection { presence "enable bfd-liveness-detection"; description "Bidirectional Forwarding Detection (BFD) options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } container authentication { description "Authentication options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf key-chain { description "Key chain name"; type string; } leaf algorithm { description "Algorithm name"; type enumeration { enum simple-password { description "Simple password"; } enum keyed-md5 { description "Keyed message Digest 5"; } enum meticulous-keyed-md5 { description "Meticulous keyed message Digest 5"; } enum keyed-sha-1 { description "Keyed secure hash algorithm (SHA1) "; } enum meticulous-keyed-sha-1 { description "Meticulous keyed secure hash algorithm (SHA1) "; } } } leaf loose-check { description "Verify authentication only if authentication is negotiated"; type empty; } } leaf neighbor { description "BFD neighbor address"; type ipaddr; mandatory true; } leaf local-address { description "BFD local address"; type ipaddr; mandatory true; } leaf holddown-interval { description "Time to hold the session-UP notification to the client"; units "milliseconds"; type uint32 { range "0 .. 255000"; } } } leaf minimum-links { description "Minimum number of aggregated links"; type uint16 { range "1 .. 64"; } } container minimum-bandwidth { presence "enable minimum-bandwidth"; description "Minimum bandwidth configured for aggregated bundle"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bw-value { description "Bandwidth value"; default "1"; type uint64; } leaf bw-unit { description "Bandwidth unit"; type enumeration { enum bps { description "Links are in bytes per sec"; } enum kbps { description "Links are in kilo bytes per sec"; } enum mbps { description "Links are in mega bytes per sec"; } enum gbps { description "Links are in giga bytes per sec "; } } } } choice redundancy_choice { case case_1 { leaf logical-interface-fpc-redundancy { description "Enable FPC redundancy for logical interfaces"; type empty; } } case case_2 { leaf logical-interface-chassis-redundancy { description "Enable CHASSIS redundancy for logical interfaces"; type empty; } } } container rebalance-periodic { presence "enable rebalance-periodic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf start-time { description "Start time of the rebalance operation ( Wall clock time )"; type time; mandatory true; } leaf interval { description "Interval of the rebalance operation in hrs"; type uint32 { range "1 .. 24"; } mandatory true; } } leaf pad-to-minimum-frame-size { description "Pad Tx vlan tagged frame to minimum of 68 bytes"; type empty; } leaf link-speed { description "Link speed of individual interface that joins the AE"; type enumeration { enum 10m { description "Links are 10M"; } enum 100m { description "Links are 100M"; } enum 1g { description "Links are 1G"; } enum 8g { description "Links are 8G"; } enum 10g { description "Links are 10G"; } enum 40g { description "Links are 40G"; } enum 50g { description "Links are 50G"; } enum 80g { description "Links are 80G"; } enum 100g { description "Links are 100G"; } enum oc192 { description "Links are OC-192"; } enum mixed { description "Links are various speeds"; } } } leaf local-bias { description "Turn on local bias functionality"; type empty; } container lacp { description "Link Aggregation Control Protocol configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice mode { case case_1 { leaf active { description "Initiate transmission of LACP packets"; type empty; } } case case_2 { leaf passive { description "Respond to LACP packets"; type empty; } } } leaf periodic { description "Timer interval for periodic transmission of LACP packets"; type enumeration { enum fast { description "Receive packets every second"; } enum slow { description "Receive packets every 30 seconds"; } } } leaf fast-failover { description "To turn off LACP fast-failover"; type empty; } container link-protection { presence "enable link-protection"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "To turn off LACP link-protection"; type empty; } choice mode { case case_1 { leaf revertive { description "Switch links when better priority link comes up"; type empty; } } case case_2 { leaf non-revertive { description "Do not switch links when better priority link comes up"; type empty; } } } } leaf accept-data { description "Keep receiving traffic even when LACP goes down"; type empty; } leaf system-priority { description "Priority of the system (0 ... 65535)"; type string; } leaf system-id { description "Node's System ID, encoded as a MAC address"; type mac-addr; } leaf admin-key { description "Node's administrative key"; type uint16; } container hold-time { description "Hold time for link up and link down for AE link members"; leaf up { description "Link up hold time for the AE link members"; units "seconds"; type uint16 { range "1 .. 6000"; } mandatory true; } presence "enable hold-time"; } leaf aggregate-wait-time { description "Aggregate wait time for the AE"; units "seconds"; type uint16 { range "2 .. 600"; } } leaf force-up { description "Forceup AE interface with LACP"; type empty; } } container ethernet-switch-profile { description "Ethernet virtual LAN/media access control-level options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list tag-protocol-id { description "IEEE 802.1q Tag Protocol Identifier values for VLAN-tagged frames"; type string; } } container mc-ae { description "Multi-chassis aggregation (MC-AE) network device configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf mc-ae-id { description "MC-AE group id"; type uint16 { range "1 .. 65535"; } mandatory true; } presence "enable mc-ae"; leaf redundancy-group { description "Redundancy group id"; type uint32 { range "1 .. 4294967294"; } } leaf chassis-id { description "Chassis id of MC-AE network device"; type uint16 { range "0 .. 1"; } mandatory true; } leaf mode { description "Mode of the MC-AE"; type enumeration { enum active-standby { description "MC-AE in active-standby mode"; } enum active-active { description "MC-AE in active-active mode"; } } mandatory true; } leaf status-control { description "Status of the MC-AE chassis"; type enumeration { enum active { description "Chassis is Active"; } enum standby { description "Chassis is Standby"; } } mandatory true; } leaf switchover-mode { description "Switchover mode"; type enumeration { enum revertive { description "Switch mcae node when preferred link comes up"; } enum non-revertive { description "Do not switch mcae node when preferred link comes up"; } } } leaf revert-time { description "Wait interval before performing switchover"; default "3"; units "minute"; type uint32 { range "1 .. 10"; } } leaf init-delay-time { description "Init delay timer for mcae sm for min traffic loss"; units "seconds"; type uint16 { range "1 .. 6000"; } } leaf recovery-delay-time { description "Delay timer for bringing up ICL, ICCP"; units "seconds"; type uint16 { range "1 .. 6000"; } } container events { presence "enable events"; description "MCAE related events"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container iccp-peer-down { presence "enable iccp-peer-down"; description "Define behavior in the event of ICCP peer down"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf force-icl-down { description "Bring down ICL logical interface"; type empty; } leaf prefer-status-control-active { description "Keep this node up (recommended only on status-control active)"; type empty; } } } } } container es-options { description "ES PIC interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf backup-interface { description "Name of backup interface"; type interface-device; } } container dsl-options { description "DSL interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf operating-mode { description "DSL operating mode"; type enumeration { enum auto { description "Autonegotiate mode"; } enum ansi-dmt { description "ANSI T1.413 Issue II mode"; } enum itu-dmt { description "ITU G.992.1 mode"; } enum etsi { description "ETSI TS 101 388 V1.3.1 mode"; } enum itu-annexb-ur2 { description "ITU G.992.1 UR-2 mode"; } enum itu-annexb-non-ur2 { description "ITU G.992.1 Non UR-2 mode"; } enum itu-dmt-bis { description "ITU G.992.3 mode"; } enum adsl2plus { description "ITU G.992.5 mode"; } enum annexm-itu-dmt-bis { description "AnnexM ITU G.992.3 mode"; } enum annexm-adsl2plus { description "AnnexM ITU G.992.5 mode"; } } } } container vdsl-options { description "VDSL interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf vdsl-profile { description "VDSL profile"; type enumeration { enum auto { description "Auto"; } enum 8a { description "Profile 8a"; } enum 8b { description "Profile 8b"; } enum 8c { description "Profile 8c"; } enum 8d { description "Profile 8d"; } enum 12a { description "Profile 12a"; } enum 12b { description "Profile 12b"; } enum 17a { description "Profile 17a"; } } } } container shdsl-options { description "SHDSL interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf annex { description "Type of SHDSL annex"; default "annex-b"; type enumeration { enum annex-a { description "Annex-a PIC"; } enum annex-b { description "Annex-b PIC"; } enum annex-f { description "Annex-f PIC"; } enum annex-g { description "Annex-g PIC"; } enum annex-auto { description "Annex-auto PIC"; } } } leaf line-rate { description "SHDSL line rate"; type string; } leaf loopback { description "Loopback mode"; type enumeration { enum local { description "Local loopback"; } enum remote { description "Remote loopback"; } } } container snr-margin { presence "enable snr-margin"; description "Signal to noise ratio margin"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf current { description "Current signal to noise ratio margin"; units "dB"; type string; } leaf snext { description "SNEXT signal to noise ratio margin"; units "dB"; type string; } } } container data-input { description "Configuration for drop-insert data input"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice input-choice { case case_1 { leaf system { description "Data sourced from system"; type empty; } } case case_2 { leaf interface { description "Interface that acts as data source"; type interface-device; } } } } container switch-options { description "Front end ports configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list switch-port { key name; description "(null)"; leaf name { description "Front end port number"; type uint32 { range "0 .. 15"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf auto-negotiation { description "Enable auto-negotiation"; type empty; } leaf no-auto-negotiation { description "Enable auto-negotiation"; type empty; } leaf link-mode { description "Link operational mode"; type enumeration { enum half-duplex { description "Half-duplex operation"; } enum full-duplex { description "Full-duplex operation"; } } } leaf speed { description "Link speed"; type enumeration { enum 10m { description "(null)"; } enum 100m { description "(null)"; } enum 1g { description "(null)"; } } } leaf vlan-id { description "VLAN ID for this port"; type uint32 { range "0 .. 4094"; } } leaf cascade-port { description "Port externally connected to another cascade port"; type empty; } } } container container-options { description "Container interface specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container container-type { presence "enable container-type"; description "Protocol type of the container interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice container-type-choice { case case_1 { container aps { description "APS options on the container"; uses aps_type; } } } } container member-interface-type { description "Link type of members of container"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice member_interface_type_choice { case case_1 { container sonet { presence "enable sonet"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf member-interface-speed { description "Link speed of members of container"; type enumeration { enum oc3 { description "Links are OC-3"; } enum oc12 { description "Links are OC-12"; } enum oc48 { description "Links are OC-48"; } enum oc192 { description "Links are OC-192"; } enum oc768 { description "Links are OC-768"; } enum mixed { description "Links are of different speeds"; } } mandatory true; } } } case case_2 { container atm { presence "enable atm"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf member-interface-speed { description "Link speed of members of container"; type enumeration { enum oc3 { description "Links are OC-3"; } enum oc12 { description "Links are OC-12"; } enum oc48 { description "Links are OC-48"; } } mandatory true; } } } } } container redundancy { description "Container interface redundancy options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container hold-time { description "Hold time for link up and link down"; leaf up { description "Link up hold time"; units "milliseconds"; type uint32 { range "0 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Link down hold time"; units "milliseconds"; type uint32 { range "0 .. 65534"; } mandatory true; } } } leaf-list container-list { description "List of container interfaces this member link is associated to"; type interface-device; } choice redundancy-type { case case_1 { choice aps-redundancy { case case_1 { leaf primary { description "This member link is primary interface of the container"; type empty; } } case case_2 { leaf standby { description "This member link is standby interface of the container"; type empty; } } } } } leaf allow-configuration-override { description "Allow physical configuration of member link to override container configuration"; type empty; } } container layer2-policer { description "Layer2 policing for interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input-hierarchical-policer { description "Hierarchical policer for received packets"; type string; } } list unit { key name; description "Logical interface"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf alias { description "Interface alias"; type string; } container peer-psd { presence "enable peer-psd"; description "Peer psd"; leaf psd-name { description "Peer psd name"; type string; mandatory true; } } container peer-interface { presence "enable peer-interface"; description "Peer interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interface-name { description "Peer interface name"; type interface-unit; } } container interface-shared-with { presence "enable interface-shared-with"; description "Specify which PSD owns this logical interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf psd-name { description "Name of protected system domain (psd[1-31], ex. psd2)"; type string { } mandatory true; } } choice enable-disable { case case_1 { leaf disable { description "Disable this logical interface"; type empty; } } } leaf passive-monitor-mode { description "Use interface to tap packets from another router"; type empty; } leaf per-session-scheduler { description "Enable per-session queuing on an IQ2 interface"; type empty; } container account-layer2-overhead { presence "enable account-layer2-overhead"; description "Account layer2 overhead in IFL byte statistics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf overhead-value { description "Layer2 overhead bytes to be accounted in ingress and egress"; units "bytes"; type int8 { range "-128 .. 127"; } } leaf ingress { description "Layer2 overhead bytes to be accounted in ingress"; units "bytes"; type int8 { range "-128 .. 127"; } } leaf egress { description "Layer2 overhead bytes to be accounted in egress"; units "bytes"; type int8 { range "-128 .. 127"; } } } container forwarding-class-accounting { presence "enable forwarding-class-accounting"; description "Configure Forwarding-class-accounting parameters for IFL "; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf direction { description "Direction of the traffic to be accounted for IFL"; type enumeration { enum ingress { description "Enable forwarding-class-accounting for ingress traffic"; } enum egress { description "Enable forwarding-class-accounting for egress traffic"; } enum both { description "Enable forwarding-class-accounting for both directions"; } } } container enhanced { presence "enable enhanced"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf traffic-type { description "Traffic-type to be accounted for forwarding-class-accounting for IFL"; type enumeration { enum unicast-statistics { description "Count only unicast traffic for forwarding-class-accounting for IFL "; } enum multicast-statistics { description "Count only multicast traffic for forwarding-class-accounting for IFL"; } } } leaf family { description "Protocol traffic to be accounted for forwarding-class-accounting for IFL"; type enumeration { enum inet { description "Enable forwarding-class-accounting for IPv4 family only for IFL"; } enum inet6 { description "Enable forwarding-class-accounting for IPv6 family only for IFL"; } enum both { description "Enable forwarding-class-accounting for both IPv4 and IPv6 family for IFL"; } } } leaf direction { description "Direction of the traffic to be accounted for forwarding-class-accounting for IFL"; type enumeration { enum ingress { description "Enable forwarding-class-accounting for ingress traffic for IFL"; } enum egress { description "Enable forwarding-class-accounting for egress traffic for IFL"; } enum both { description "Enable forwarding-class-accounting for both ingress and egress traffic for IFL"; } } } leaf overhead-bytes { description "Per octet overhead bytes to be accounted for forwarding-class-accounting for IFL "; default "0"; type uint32 { range "0 .. 255"; } } } } leaf clear-dont-fragment-bit { description "Clear DF bit in packet (AS PIC and J-series only as well as MIF)"; type empty; } leaf reassemble-packets { description "Do reassembly of fragmented tunnel packets"; type empty; } container services-options { description "Services interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container rpm { description "Enable RPM service on this interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice rpm_or_twamp { case case_1 { choice rpm-type { case case_1 { leaf client { description "Client mode"; type empty; } } case case_2 { leaf server { description "Server mode"; type empty; } } } } case case_2 { leaf twamp-server { description "Set TWAMP server mode on this interface"; type empty; } } case case_3 { leaf twamp-client { description "Set TWAMP server mode on this interface"; type empty; } } } } leaf description { description "Text description of interface"; type string; } leaf metadata { description "Text metadata attached to interface"; type string; } container dial-options { description "Dial options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice interface_id_choice { case case_1 { leaf l2tp-interface-id { description "Identifier for group of PPP sessions"; type string { length "1 .. 63"; } } } case case_2 { leaf ipsec-interface-id { description "Identifier for group of dynamic peers"; type string { length "1 .. 63"; } } } } choice ifl_type { case case_1 { leaf dedicated { description "Use this unit for only one PPP/IPSec session"; type empty; } } case case_2 { leaf shared { description "Share this unit for multiple PPP/IPSec sessions"; type empty; } } } } list demux-source { key name; ordered-by user; description "Demux based on source address"; uses demux_options_table; } list demux-destination { key name; ordered-by user; description "Demux based on destination address"; uses demux_options_table; } leaf encapsulation { description "Logical link-layer encapsulation"; type enumeration { enum atm-nlpid { description "ATM NLPID encapsulation"; } enum atm-cisco-nlpid { description "Cisco-compatible ATM NLPID encapsulation"; } enum atm-snap { description "ATM LLC/SNAP encapsulation"; } enum atm-vc-mux { description "ATM VC multiplexing"; } enum atm-ccc-vc-mux { description "ATM VC for CCC"; } enum atm-tcc-vc-mux { description "ATM VC for translational cross-connect"; } enum atm-tcc-snap { description "ATM LLC/SNAP for translational cross-connect"; } enum atm-ccc-cell-relay { description "ATM cell relay for CCC"; } enum vlan-vci-ccc { description "CCC for VLAN Q-in-Q and ATM VPI/VCI interworking"; } enum ether-over-atm-llc { description "Ethernet over ATM (LLC/SNAP) encapsulation"; } enum ether-vpls-over-atm-llc { description "Ethernet VPLS over ATM (bridging) encapsulation"; } enum ppp-over-ether-over-atm-llc { description "PPPoE over ATM (LLC/SNAP) encapsulation"; } enum ppp-over-ether { description "PPPoE encapsulation"; } enum atm-ppp-vc-mux { description "ATM PPP over raw AAL5"; } enum atm-ppp-llc { description "ATM PPP over AAL5/LLC"; } enum atm-mlppp-llc { description "ATM MLPPP over AAL5/LLC"; } enum frame-relay-ppp { description "PPP over Frame Relay"; } enum frame-relay-ccc { description "Frame Relay DLCI for CCC"; } enum frame-relay { description "Frame Relay DLCI"; } enum frame-relay-tcc { description "Frame Relay DLCI for translational cross-connect"; } enum frame-relay-ether-type { description "Cisco-compatible Frame Relay Encapsulation DLCI"; } enum frame-relay-ether-type-tcc { description "Cisco-compatible Frame Relay Encapsulation DLCI for TCC"; } enum ether-vpls-fr { description "Ethernet VPLS over Frame Relay (bridging) encapsulation"; } enum vlan-ccc { description "802.1q tagging for a cross-connect"; } enum ethernet-ccc { description "Ethernet for a cross-connect"; } enum vlan-vpls { description "VLAN virtual private LAN service"; } enum vlan-bridge { description "VLAN layer-2 bridging"; } enum dix { description "Ethernet DIXv2 (RFC 894)"; } enum ethernet { description "Ethernet II (RFC 894)"; } enum ethernet-vpls { description "Ethernet II virtual private LAN service"; } enum ethernet-bridge { description "Ethernet II bridging"; } enum vlan { description "802.1q-tagged Ethernet"; } enum vlan-tcc { description "802.1q tagging for a translational cross-connect"; } enum multilink-ppp { description "Multilink PPP"; } enum multilink-frame-relay-end-to-end { description "Multilink Frame Relay end-to-end (FRF.15)"; } enum ppp-ccc { description "Serial PPP device for a cross-connect"; } } } leaf mtu { description "Maximum transmission unit packet size"; type uint32 { range "256 .. 9216"; } } choice pointedness { case case_1 { leaf point-to-point { description "Point-to-point connection"; type empty; } } case case_2 { leaf multipoint { description "Multipoint connection"; type empty; } } } leaf bandwidth { description "Logical unit bandwidth (informational only)"; type string; } leaf global-layer2-domainid { description "Global Layer-2 Identifier for this interface"; type uint32 { range "5 .. 4094"; } } container radio-router { description "Parameters for dynamic link cost management"; uses dynamic_ifbw_parms_type; } leaf traps { description "Enable SNMP notifications on state changes"; type empty; } leaf no-traps { description "Enable SNMP notifications on state changes"; type empty; } container arp-resp { presence "enable arp-resp"; description "Knob to control ARP response on the interface, default is restricted"; choice arp-response-options { case case_1 { leaf unrestricted { description "Enable unrestricted ARP respone on the interface"; type empty; } } case case_2 { leaf restricted { description "Enable restricted proxy ARP response on the interface"; type empty; } } } } container proxy-arp { presence "enable proxy-arp"; description "Enable proxy ARP on the interface, default is unrestricted"; choice proxyarp-options { case case_1 { leaf unrestricted { description "Enable unrestricted proxy ARP on the interface"; type empty; } } case case_2 { leaf restricted { description "Enable restricted proxy ARP on the interface"; type empty; } } } } choice vlan_choice { case case_1 { leaf vlan-id { description "Virtual LAN identifier value for 802.1q VLAN tags"; type string; } } case case_2 { leaf vlan-id-range { description "Virtual LAN identifier range of form vid1-vid2"; type string { } } } case case_3 { leaf-list vlan-id-list { description "List of VLAN identifiers"; type vlan-range; } } case case_4 { container vlan-tags { presence "enable vlan-tags"; description "IEEE 802.1q tags"; leaf outer { description "[tpid.]vlan-id, tpid format is 0xNNNN and is optional"; type string; mandatory true; } choice inner_choice { case case_1 { leaf inner { description "[tpid.]vlan-id, tpid format is 0xNNNN and is optional"; type string; } } case case_2 { leaf inner-range { description "[tpid.]vid1-vid2, tpid format is 0xNNNN and is optional"; type string { } } } case case_3 { leaf-list inner-list { description "List of VLAN identifiers"; type vlan-range; } } } } } } leaf native-inner-vlan-id { description "Native virtual LAN identifier for singly tagged frames"; type uint32 { range "0 .. 4094"; } } container inner-vlan-id-range { description "Inner vlan-id range start end "; leaf start { description "Inner vlan-id range's start value"; type uint32 { range "32 .. 4094"; } mandatory true; } presence "enable inner-vlan-id-range"; leaf end { description "Inner vlan-id range's end value"; type uint32 { range "32 .. 4094"; } mandatory true; } } container accept-source-mac { description "Remote media access control address to/from which to accept traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list mac-address { key name; description "Remote MAC address"; uses mac_list; } } container input-vlan-map { description "VLAN map operation on input"; uses vlan_map; } container output-vlan-map { description "VLAN map operation on output"; uses vlan_map; } leaf swap-by-poppush { description "Pop original vlan tag and then push a new vlan tag"; type empty; } leaf receive-lsp { description "Name of incoming label-switched path"; type string; } leaf transmit-lsp { description "Name of outgoing label-switched path"; type string; } leaf dlci { description "Frame Relay data-link control identifier"; type uint32 { range "1 .. 1022"; } } leaf multicast-dlci { description "Frame Relay data-link control identifier for multicast packets"; type uint32 { range "1 .. 1022"; } } choice vci_type { case case_1 { leaf vci { description "ATM point-to-point virtual circuit identifier ([vpi.]vci)"; type atm-vci; } } case case_2 { leaf allow-any-vci { description "Allow all VCIs to open in atm-ccc-cell-relay mode"; type empty; } } case case_3 { leaf vpi { description "ATM point-to-point virtual path identifier (vpi)"; type uint32 { range "0 .. 255"; } } } case case_4 { leaf trunk-id { description "ATM trunk identifier"; type uint32 { range "0 .. 31"; } } } } leaf no-vpivci-swapping { description "Do not swap VPI/VCI for Cell Relay"; type empty; } choice psn_vci_type { case case_1 { leaf psn-vci { description "PSN VCI"; type atm-vci; } } case case_2 { leaf psn-vpi { description "PSN VPI"; type uint32 { range "0 .. 255"; } } } } container atm-l2circuit-mode { description "Select ATM Layer 2 circuit transport mode"; choice mode_choice { case case_1 { leaf cell { description "ATM Layer 2 circuit cell mode"; type empty; } } case case_2 { leaf aal5 { description "ATM Layer 2 circuit AAL5 mode"; type empty; } } } } container vci-range { presence "enable vci-range"; description "ATM VCI range start end "; leaf start { description "ATM VCI range's start value"; type uint16 { range "32 .. 4094"; } mandatory true; } leaf end { description "ATM VCI range's end value"; type uint16 { range "32 .. 4094"; } mandatory true; } } leaf trunk-bandwidth { description "ATM trunk bandwidth"; units "bits per second"; type string; } leaf multicast-vci { description "ATM virtual circuit identifier for multicast packets"; type atm-vci; } container shaping { description "Virtual circuit traffic-shaping options"; uses dcd_shaping_config; } container oam-period { description "OAM cell period"; choice oam_period_choices { case case_1 { leaf oam-period { description "OAM cell period"; units "seconds"; type uint32 { range "1 .. 900"; } } } case case_2 { container disable { presence "enable disable"; description "Disable F5 OAM loopback"; } } } } container oam-liveness { description "OAM virtual circuit liveness parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf up-count { description "Number of OAM cells to consider VC up"; type uint32 { range "1 .. 255"; } } leaf down-count { description "Number of OAM cells to consider VC down"; type uint32 { range "1 .. 255"; } } } container ppp-options { description "Point-to-Point Protocol interface-specific options"; uses ppp_options_type; } container pppoe-options { description "PPP over Ethernet interface-specific options"; uses pppoe_options_type; } container pppoe-underlying-options { description "PPP over Ethernet underlying interface-specific options"; uses pppoe_underlying_options_type; } container advisory-options { description "Interface-specific recommendations"; uses advisory_options_type; } container auto-configure { description "Auto configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container agent-circuit-identifier { description "ACI configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf dynamic-profile { description "Dynamic profile name"; type string { length "1 .. 64"; } mandatory true; } presence "enable agent-circuit-identifier"; } } container demux-options { description "IP demux interface-specific options"; uses demux_options_type; } leaf targeted-distribution { description "Interface participates in targeted-distribution"; type empty; } choice keepalive_choices { case case_1 { container keepalives { description "Send or demand keepalive messages"; uses keepalives_type; } } case case_2 { leaf no-keepalives { description "Do not send or demand keepalive messages"; type empty; } } } leaf inverse-arp { description "Enable inverse ARP"; type empty; } leaf transmit-weight { description "ATM2 transmit weight for VC under VP tunnel"; type uint16 { range "1 .. 32767"; } } container epd-threshold { description "Early packet discard threshold for ATM2"; uses epd_threshold_config; } leaf cell-bundle-size { description "L2 circuit cell bundle size"; units "cells"; type uint32 { range "1 .. 176"; } } leaf cell-bundle-timeout { description "L2 circuit cell bundle timeout"; units "microseconds"; type uint32 { range "1 .. 512"; } } leaf plp-to-clp { description "Enable ATM2 PLP to CLP copy"; type empty; } leaf atm-scheduler-map { description "Assign ATM2 CoS scheduling map"; type string; } leaf mrru { description "Maximum received reconstructed unit"; units "bytes"; type uint16 { range "1500 .. 9180"; } } leaf short-sequence { description "Short sequence number header format (MLPPP only)"; type empty; } leaf fragment-threshold { description "Fragmentation threshold"; units "bytes"; type uint32 { range "64 .. 16320"; } } leaf drop-timeout { description "Drop timeout"; units "milliseconds"; type uint16 { range "0 .. 2000"; } } leaf disable-mlppp-inner-ppp-pfc { description "Disable compression for inner PPP header in MLPPP payload"; type empty; } leaf minimum-links { description "Minimum number of links to sustain the bundle"; type uint16 { range "1 .. 8"; } } leaf multilink-max-classes { description "Number of multilink classes"; type uint16 { range "1 .. 8"; } } container compression { presence "enable compression"; description "Various packet header compressions"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container rtp { presence "enable rtp"; description "Compress and decompress RTP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf f-max-period { description "Maximum number of compressed packets between transmission of full headers"; type uint32 { range "1 .. 65535"; } } leaf-list queues { description "Queue holding RTP packets. Default is queue 1"; type enumeration { enum q0 { description "RTP packets assigned to queue 0"; } enum q1 { description "RTP packets assigned to queue 1"; } enum q2 { description "RTP packets assigned to queue 2"; } enum q3 { description "RTP packets assigned to queue 3"; } } } container port { presence "enable port"; description "UDP destination ports reserved for RTP packets"; leaf minimum { description "(null)"; type uint32 { range "0 .. 65535"; } mandatory true; } leaf maximum { description "(null)"; type uint32 { range "0 .. 65535"; } mandatory true; } } container maximum-contexts { description "Maximum number of simultaneous RTP contexts"; leaf number { description "Maximum number of simultaneous RTP contexts"; type uint32 { range "16 .. 2048"; } } } } } leaf interleave-fragments { description "Interleave long packets with high priority ones"; type empty; } leaf link-layer-overhead { description "Link layer bit stuffing overhead (0.0 .. 50.0 percent)"; type unsigned-float; } leaf accounting-profile { description "Accounting profile name"; type string; } leaf peer-unit { description "Peer unit number"; type uint32 { range "0 .. 16385"; } } container tunnel { description "Tunnel parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source { description "Tunnel source"; type ipaddr; mandatory true; } presence "enable tunnel"; leaf destination { description "Tunnel destination"; type ipaddr; mandatory true; } leaf key { description "Tunnel key"; type uint32 { range "0 .. 4294967295"; } } leaf backup-destination { description "Backup tunnel destination"; type ipaddr; } choice fragmentation { case case_1 { leaf allow-fragmentation { description "Do not set DF bit on packets"; type empty; } } case case_2 { leaf do-not-fragment { description "Set DF bit on packets"; type empty; } } } leaf ttl { description "Time to live"; type uint32 { range "0 .. 255"; } } leaf traffic-class { description "TOS/Traffic class field of IP-header"; type uint32 { range "0 .. 255"; } } leaf flow-label { description "Flow label field of IP6-header"; type uint32 { range "0 .. 1048575"; } } leaf path-mtu-discovery { description "Enable path MTU discovery for tunnels"; type empty; } leaf no-path-mtu-discovery { description "Enable path MTU discovery for tunnels"; type empty; } container routing-instance { description "Routing instance to which tunnel ends belong"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf destination { description "Routing instance of tunnel destination"; type string; } } } leaf compression-device { description "Logical interface used for compression"; type interface-unit; } container atm-policer { description "ATM policing for logical interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input-atm-policer { description "Input atm policer"; type string; } } container layer2-policer { description "Layer2 policing for logical interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice layer2-input-policer-choice { case case_1 { leaf input-policer { description "Two-color policer for received packets"; type string; } } case case_2 { leaf input-hierarchical-policer { description "Hierarchical policer for received packets"; type string; } } case case_3 { leaf input-three-color { description "Color-blind three-color policer for received packets"; type string; } } } choice layer2-output-policer-choice { case case_1 { leaf output-policer { description "Two-color policer for transmitted packets"; type string; } } case case_2 { leaf output-three-color { description "Three-color policer for transmitted packets"; type string; } } } } container filter { description "Filters to apply to all families configured under this logical interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of filter applied to received packets"; type string; } leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf output { description "Name of filter applied to transmitted packets"; type string; } } list multi-chassis-protection { key name; description "Inter-Chassis protection configuration"; uses multi-chassis-protection-group; } leaf statistics { description "Enable statistics collection in PFE"; type empty; } container esi { description "ESI configuration of local loopback interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf identifier { description "ESI value for the interface"; type esi; mandatory true; } presence "enable esi"; choice mode { case case_1 { leaf single-active { description "Single-active mode"; type empty; } } case case_2 { leaf all-active { description "All-active mode"; type empty; } } } } container family { description "Protocol family"; container inet { presence "enable inet"; description "IPv4 parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container dhcp-client { description "Dynamic Host Configuration Protocol client configuration"; uses dhcp-client-type; } container targeted-broadcast { presence "enable targeted-broadcast"; description "Directed broadcast"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice targeted-bcast-choice { case case_1 { leaf forward-and-send-to-re { description "Allow packets to be forwarded and sent to re"; type empty; } } case case_2 { leaf forward-only { description "Allow packets only to be forwarded"; type empty; } } } } leaf receive-options-packets { description "Receive IP options packets (don't send to Routing Engine)"; type empty; } leaf receive-ttl-exceeded { description "Receive IP TTL-exceeded packets (don't send to Routing Engine)"; type empty; } container accounting { description "Configure interface-based accounting options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container source-class-usage { description "Enable source class usage on this interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Specify this interface for source-class-usage input"; type empty; } leaf output { description "Specify this interface for source-class-usage output"; type empty; } } leaf destination-class-usage { description "Enable destination class usage on this interface"; type empty; } } leaf mac-validate { description "Validate source MAC address"; type enumeration { enum strict { description "Strict mac-validation"; } enum loose { description "Loose mac-validation"; } } } container rpf-check { presence "enable rpf-check"; description "Enable reverse-path-forwarding checks on this interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf fail-filter { description "Name of filter applied to packets failing RPF check"; type string; } container mode { description "Mode for reverse path forwarding"; leaf loose { description "Reverse-path-forwarding loose mode"; type empty; } } } leaf mtu { description "Protocol family maximum transmission unit"; type uint32; } leaf tcp-mss { description "Protocol family tcp maximum segment size"; type uint32 { range "1 .. 65535"; } } leaf no-redirects { description "Do not redirect traffic"; type empty; } leaf no-neighbor-learn { description "Disable neighbor address learning on interface"; type empty; } leaf unconditional-src-learn { description "Glean from arp packets even when source cannot be validated"; type empty; } leaf multicast-only { description "Allow only multicast traffic (tunnels only)"; type empty; } leaf primary { description "Candidate for primary interface in system"; type empty; } leaf ipsec-sa { description "Name of security association"; type string { length "1 .. 32"; } } list demux-source { key name; ordered-by user; description "Demux based on source prefix"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list demux-destination { key name; ordered-by user; description "Demux based on destination prefix"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container filter { description "Packet filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice input_choice { case case_1 { container input { description "Filter to be applied to received packets"; leaf filter-name { description "Name of the filter"; type string; mandatory true; } presence "enable input"; leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf precedence { description "Precedence of the filter"; type uint32 { range "0 .. 255"; } } } } case case_2 { leaf-list input-list { description "List of filter modules applied to received packets "; type string; } } } choice output_choice { case case_1 { container output { description "Filter to be applied to transmitted packets"; leaf filter-name { description "Name of the filter"; type string; mandatory true; } presence "enable output"; leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf precedence { description "Precedence of the filter"; type uint32 { range "0 .. 255"; } } } } case case_2 { leaf-list output-list { description "List of filter modules applied to transmitted packets "; type string; } } } container adf { description "Ascend Data Filter definition"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Set of ADF rules"; leaf name { description "Value for a single rule"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf counter { description "Add a counter to each rule"; type empty; } leaf input-precedence { description "Precedence of the input rules"; type uint32 { range "0 .. 255"; } } leaf not-mandatory { description "No errors will be reported if no rules are present"; type empty; } leaf output-precedence { description "Precedence of the output rules"; type uint32 { range "0 .. 255"; } } } leaf group { description "Group to which interface belongs"; type uint32 { range "1 .. 255"; } } } container simple-filter { description "Filter for doing multifield classification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of simple filter applied to received packets"; type string; } } leaf input-hierarchical-policer { description "Hierarchical policer for received packets"; type string; } container policer { description "Interface policing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf arp { description "Name of policer applied to received ARP packets"; type string; } leaf input { description "Name of policer applied to received packets"; type string; } leaf output { description "Name of policer applied to transmitted packets"; type string; } } container sampling { description "Interface sampling"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Sample all packets input on this interface"; type empty; } leaf output { description "Sample all packets output on this interface"; type empty; } } container service { description "Service operations"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container input { description "Service sets to consider for received packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list service-set { key name; ordered-by user; description "Service set to consider for received packets"; leaf name { description "Name of service set"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf service-filter { description "Name of service filter"; type string; } } leaf post-service-filter { description "Post-service filter to apply to received packets"; type string; } } container output { description "Service sets to consider for transmitted packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list service-set { key name; ordered-by user; description "Service set to consider for transmitted packets"; leaf name { description "Name of service set"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf service-filter { description "Name of service filter"; type string; } } } } list next-hop-tunnel { key name; ordered-by user; description "One or more next-hop tunnel tables"; leaf name { description "Next-hop tunnel gateway address"; type string; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ipsec-vpn { description "Name of IPSec VPN"; type string; mandatory true; } } list address { key name; ordered-by user; description "Interface address/destination prefix"; leaf name { description "Interface address/destination prefix"; type ipv4prefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf destination { description "Destination address"; type ipv4addr; } leaf destination-profile { description "Profile to use for destination address"; type string; } leaf broadcast { description "Broadcast address"; type ipv4addr; } leaf primary { description "Candidate for primary address in system"; type empty; } leaf preferred { description "Preferred address on interface"; type empty; } leaf master-only { description "Master management IP address for router"; type empty; } list multipoint-destination { key name; ordered-by user; description "Multipoint NBMA destination"; leaf name { description "Destination address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice link-address { case case_1 { leaf dlci { description "Frame Relay data-link control identifier"; type uint32 { range "1 .. 1022"; } } } case case_2 { leaf vci { description "ATM virtual circuit identifier ([vpi.]vci)"; type atm-vci; } } } container shaping { description "Virtual circuit traffic-shaping options"; uses dcd_shaping_config; } container oam-period { description "OAM cell period"; choice oam_period_choices { case case_1 { leaf oam_period { description "OAM cell period"; units "seconds"; type uint32 { range "1 .. 900"; } } } case case_2 { container disable { presence "enable disable"; description "Disable OAM loopback"; } } } } container oam-liveness { description "OAM virtual circuit liveness parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf up-count { description "Number of OAM cells to consider VC up"; type uint32 { range "1 .. 255"; } } leaf down-count { description "Number of OAM cells to consider VC down"; type uint32 { range "1 .. 255"; } } } leaf inverse-arp { description "Enable inverse ARP reply messages"; type empty; } leaf transmit-weight { description "ATM2 transmit weight for VC under VP tunnel"; type uint16 { range "1 .. 32767"; } } container epd-threshold { description "Early packet discard threshold for ATM2"; uses epd_threshold_config; } } list arp { key name; ordered-by user; description "Static Address Resolution Protocol entries"; leaf name { description "Destination IP address"; type ipv4addr; mandatory true; } leaf l2-interface { description "Layer 2 interface name for ARP entry"; type interface-name; } choice mac_address_type { case case_1 { leaf mac { description "MAC address"; type mac-unicaset; } } case case_2 { leaf multicast-mac { description "Multicast MAC address"; type mac-multicast; } } } leaf publish { description "Reply to ARP requests for this entry"; type empty; } } container web-authentication { description "Parameters for web-based firewall-user authentication"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf http { description "Enable authentication via HTTP"; type empty; } } list vrrp-group { key name; ordered-by user; description "VRRP group"; uses vrrp-group; } leaf virtual-gateway-address { description "Virtual Gateway IP address"; type ipv4addr; } } container unnumbered-address { presence "enable unnumbered-address"; description "Unnumbered interface address/destination prefix"; leaf source { description "Interface from which to take local address"; type interface-unit; mandatory true; } leaf preferred-source-address { description "Preferred address on the donor interface"; type string; } leaf destination { description "Destination address"; type ipv4addr; } leaf destination-profile { description "Profile to use for destination address"; type string; } } container location-pool-address { presence "enable location-pool-address"; description "Location-based IP address pool"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf pool-name { description "Pool name"; type string { length "1 .. 64"; } } } leaf negotiate-address { description "Negotiate address with remote"; type empty; } } container iso { presence "enable iso"; description "OSI ISO protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list address { key name; ordered-by user; description "Interface address"; leaf name { description "Interface address"; type isoaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf mtu { description "Protocol family maximum transmission unit"; type uint32; } } container inet6 { presence "enable inet6"; description "IPv6 protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container rpf-check { presence "enable rpf-check"; description "Enable reverse-path-forwarding checks on this interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf fail-filter { description "Name of filter applied to packets failing RPF check"; type string; } container mode { description "Mode for reverse path forwarding"; leaf loose { description "Reverse-path-forwarding loose mode"; type empty; } } } container accounting { description "Interface-based accounting options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container source-class-usage { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Interface for source-class-usage input"; type empty; } leaf output { description "Interface for source-class-usage output"; type empty; } } leaf destination-class-usage { description "Enable destination class usage on this interface"; type empty; } } leaf mtu { description "Protocol family maximum transmission unit"; type uint32; } leaf tcp-mss { description "Protocol family tcp maximum segment size"; type uint32; } leaf nd6-stale-time { description "Stale time to reconfirm reachability with inet6 neighbour"; units "seconds"; type uint32 { range "1 .. 1200"; } } leaf no-neighbor-learn { description "Disable neighbor address learning on interface"; type empty; } leaf no-redirects { description "Do not redirect traffic"; type empty; } container filter { description "Packet filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice input_choice { case case_1 { container input { description "Filter to be applied to received packets"; leaf filter-name { description "Name of the filter"; type string; mandatory true; } presence "enable input"; leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf precedence { description "Precedence of the filter"; type uint32 { range "0 .. 255"; } } } } case case_2 { leaf-list input-list { description "List of filter modules applied to received packets "; type string; } } } choice output_choice { case case_1 { container output { description "Filter to be applied to transmitted packets"; leaf filter-name { description "Name of the filter"; type string; mandatory true; } presence "enable output"; leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf precedence { description "Precedence of the filter"; type uint32 { range "0 .. 255"; } } } } case case_2 { leaf-list output-list { description "List of filter modules applied to transmitted packets "; type string; } } } container adf { description "Ascend Data Filter definition"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Set of ADF rules"; leaf name { description "Value for a single rule"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf counter { description "Add a counter to each rule"; type empty; } leaf input-precedence { description "Precedence of the input rules"; type uint32 { range "0 .. 255"; } } leaf not-mandatory { description "No errors will be reported if no rules are present"; type empty; } leaf output-precedence { description "Precedence of the output rules"; type uint32 { range "0 .. 255"; } } } leaf group { description "Group to which interface belongs"; type uint32 { range "1 .. 255"; } } } leaf input-hierarchical-policer { description "Hierarchical policer for received packets"; type string; } container policer { description "Interface policing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of policer applied to received packets"; type string; } leaf output { description "Name of policer applied to transmitted packets"; type string; } } container sampling { description "Interface sampling"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Sample all packets input on this interface"; type empty; } leaf output { description "Sample all packets output on this interface"; type empty; } } container service { description "Service operations"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container input { description "Service sets to consider for received packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list service-set { key name; ordered-by user; description "Service set to consider for received packets"; leaf name { description "Name of service set"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf service-filter { description "Name of service filter"; type string; } } leaf post-service-filter { description "Post-service filter to apply to received packets"; type string; } } container output { description "Service sets to consider for transmitted packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list service-set { key name; ordered-by user; description "Service set to consider for transmitted packets"; leaf name { description "Name of service set"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf service-filter { description "Name of service filter"; type string; } } } } list address { key name; ordered-by user; description "Interface address or destination prefix"; leaf name { description "Interface address or destination prefix"; type ipv6prefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf destination { description "Destination address"; type ipv6addr; } leaf eui-64 { description "Generate EUI-64 interface ID"; type empty; } leaf primary { description "Candidate for primary address in system"; type empty; } leaf preferred { description "Preferred address on interface"; type empty; } leaf master-only { description "Master management IP address for router"; type empty; } list ndp { key name; ordered-by user; description "Static Neighbor Discovery Protocol entries"; leaf name { description "Destination IP address"; type ipv6addr; } leaf l2-interface { description "Layer 2 interface name for NDP entry"; type interface-name; } choice mac_address_type { case case_1 { leaf mac { description "MAC address"; type mac-unicaset; } } case case_2 { leaf multicast-mac { description "Multicast MAC address"; type mac-multicast; } } } leaf publish { description "Reply to NDP requests for this entry"; type empty; } } list vrrp-inet6-group { key name; ordered-by user; description "VRRP group"; uses vrrp-group; } container web-authentication { description "Parameters for web-based firewall-user authentication"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf http { description "Enable authentication via HTTP"; type empty; } } leaf virtual-gateway-address { description "Virtual Gateway IP address"; type ipv6addr; } } list demux-source { key name; ordered-by user; description "Demux based on source prefix"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list demux-destination { key name; ordered-by user; description "Demux based on destination prefix"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container unnumbered-address { presence "enable unnumbered-address"; description "Unnumbered interface address/destination prefix"; leaf source { description "Interface from which to take local address"; type interface-unit; mandatory true; } leaf preferred-source-address { description "Preferred address on the donor interface"; type string; } } leaf dad-disable { description "Disable duplicate-address-detection"; type empty; } leaf no-dad-disable { description "Disable duplicate-address-detection"; type empty; } } container mpls { presence "enable mpls"; description "MPLS protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf mtu { description "Protocol family maximum transmission unit"; type uint32; } leaf maximum-labels { description "Protocol family maximum number of labels"; default "3"; type uint32 { range "3 .. 5"; } } container filter { description "Packet filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice input_choice { case case_1 { leaf input { description "Name of filter applied to received packets"; type string; } } case case_2 { leaf-list input-list { description "List of filter modules applied to received packets "; type string; } } } choice output_choice { case case_1 { leaf output { description "Name of filter applied to transmitted packets"; type string; } } case case_2 { leaf-list output-list { description "List of filter modules applied to transmitted packets "; type string; } } } leaf group { description "Interface group to which interface belongs"; type uint32 { range "1 .. 255"; } } } leaf input-hierarchical-policer { description "Hierarchical policer for received packets"; type string; } container policer { description "Interface policing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of policer applied to received packets"; type string; } leaf output { description "Name of policer applied to transmitted packets"; type string; } } } container mlppp { presence "enable mlppp"; description "Multilink PPP protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bundle { description "Logical interface name this link will join"; type string; mandatory true; } choice anchor-points { case case_1 { leaf service-interface { description "Services interface to use"; type interface-device; } } case case_2 { leaf service-device-pool { description "Service interface pool name to use"; type string { length "1 .. 63"; } } } } leaf dynamic-profile { description " dynamic profile for interface to use"; type string { length "1 .. 80"; } } } container mlfr-end-to-end { presence "enable mlfr-end-to-end"; description "Multilink Frame Relay end-to-end protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bundle { description "Logical interface name this link will join"; type interface-unit; mandatory true; } } container mlfr-uni-nni { presence "enable mlfr-uni-nni"; description "Multilink Frame Relay UNI NNI protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bundle { description "Logical interface name this link will join"; type interface-unit; mandatory true; } } container ccc { presence "enable ccc"; description "Circuit cross-connect parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf mtu { description "Protocol family maximum transmission unit"; type uint32; } container filter { description "Packet filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice input_choice { case case_1 { leaf input { description "Name of filter applied to received packets"; type string; } } case case_2 { leaf-list input-list { description "List of filter modules applied to received packets "; type string; } } } choice output_choice { case case_1 { leaf output { description "Name of filter applied to transmitted packets"; type string; } } case case_2 { leaf-list output-list { description "List of filter modules applied to transmitted packets "; type string; } } } leaf group { description "Interface group to which interface belongs"; type uint32 { range "1 .. 255"; } } } container policer { description "Interface policing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of policer applied to received packets"; type string; } leaf output { description "Name of policer applied to transmitted packets"; type string; } } leaf translate-fecn-and-becn { description "Translate FECN and BECN bits"; type empty; } choice de-or-plp { case case_1 { leaf translate-discard-eligible { description "Translate DE bit"; type empty; } } case case_2 { leaf translate-plp-control-word-de { description "Translate PLP to/from Martini Control DE bit"; type empty; } } } leaf keep-address-and-control { description "Don't strip PPP address and control bytes"; type empty; } } container tcc { presence "enable tcc"; description "Translational cross-connect parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container policer { description "Interface policing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of policer applied to received packets"; type string; } leaf output { description "Name of policer applied to transmitted packets"; type string; } } container proxy { presence "enable proxy"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf inet-address { description "Remote host address on non-Ethernet side of Ethernet TCC"; type ipv4addr; } } container remote { presence "enable remote"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf inet-address { description "Remote host address on Ethernet side of Ethernet TCC"; type ipv4addr; } leaf mac-address { description "Remote host MAC address on Ethernet side of Ethernet TCC"; type mac-addr; } } leaf-list protocols { description "Protocols supported on TCC interface"; type enumeration { enum mpls { description "Multiprotocol Label Switching"; } enum inet { description "IP version 4"; } enum iso { description "International Organization for Standardization"; } } } } container vpls { presence "enable vpls"; description "Virtual private LAN service parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf core-facing { description "Interface is core facing"; type empty; } container filter { description "Packet filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice input_choice { case case_1 { container input { description "Filter to be applied to received packets"; leaf filter-name { description "Name of the filter"; type string; mandatory true; } presence "enable input"; leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf precedence { description "Precedence of the filter"; type uint32 { range "0 .. 255"; } } } } case case_2 { leaf-list input-list { description "List of filter modules applied to received packets "; type string; } } } choice output_choice { case case_1 { container output { description "Filter to be applied to transmitted packets"; leaf filter-name { description "Name of the filter"; type string; mandatory true; } presence "enable output"; leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf precedence { description "Precedence of the filter"; type uint32 { range "0 .. 255"; } } } } case case_2 { leaf-list output-list { description "List of filter modules applied to transmitted packets "; type string; } } } container adf { description "Ascend Data Filter definition"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Set of ADF rules"; leaf name { description "Value for a single rule"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf counter { description "Add a counter to each rule"; type empty; } leaf input-precedence { description "Precedence of the input rules"; type uint32 { range "0 .. 255"; } } leaf not-mandatory { description "No errors will be reported if no rules are present"; type empty; } leaf output-precedence { description "Precedence of the output rules"; type uint32 { range "0 .. 255"; } } } leaf group { description "Group to which interface belongs"; type uint32 { range "1 .. 255"; } } } container policer { description "Interface policing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of policer applied to received packets"; type string; } leaf output { description "Name of policer applied to transmitted packets"; type string; } } } container bridge { presence "enable bridge"; description "Layer-2 bridging parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf core-facing { description "Interface is core facing"; type empty; } container filter { description "Packet filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice input_choice { case case_1 { container input { description "Filter to be applied to received packets"; leaf filter-name { description "Name of the filter"; type string; mandatory true; } presence "enable input"; leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf precedence { description "Precedence of the filter"; type uint32 { range "0 .. 255"; } } } } case case_2 { leaf-list input-list { description "List of filter modules applied to received packets "; type string; } } } choice output_choice { case case_1 { container output { description "Filter to be applied to transmitted packets"; leaf filter-name { description "Name of the filter"; type string; mandatory true; } presence "enable output"; leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf precedence { description "Precedence of the filter"; type uint32 { range "0 .. 255"; } } } } case case_2 { leaf-list output-list { description "List of filter modules applied to transmitted packets "; type string; } } } container adf { description "Ascend Data Filter definition"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Set of ADF rules"; leaf name { description "Value for a single rule"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf counter { description "Add a counter to each rule"; type empty; } leaf input-precedence { description "Precedence of the input rules"; type uint32 { range "0 .. 255"; } } leaf not-mandatory { description "No errors will be reported if no rules are present"; type empty; } leaf output-precedence { description "Precedence of the output rules"; type uint32 { range "0 .. 255"; } } } leaf group { description "Group to which interface belongs"; type uint32 { range "1 .. 255"; } } } container policer { description "Interface policing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of policer applied to received packets"; type string; } leaf output { description "Name of policer applied to transmitted packets"; type string; } } leaf interface-mode { description "Interface mode (access or trunk)"; type enumeration { enum access { description "Interface mode is access"; } enum trunk { description "Interface mode is trunk"; } } } leaf bridge-domain-type { description "Bridge domain type (svlan or bvlan)"; type enumeration { enum svlan { description "Bridge domain type svlan"; } enum bvlan { description "Bridge domain type bvlan"; } } } leaf inter-switch-link { description "PVLAN inter switch link"; type empty; } choice vlan_list { case case_1 { leaf vlan-id { description "Access mode and trunk mode VLAN membership"; type uint32 { range "1 .. 4094"; } } } case case_2 { leaf-list vlan-id-list { description "Trunk mode VLAN membership for this interface"; type string; } } case case_3 { leaf-list inner-vlan-id-list { description "Trunk mode VLAN membership for this interface based on inner VLAN tag"; type string; } } } container vlan-rewrite { description "Specify vlan translation"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list translate { key name; ordered-by user; description "Translate incoming VLAN tag"; leaf name { description "Specify the incoming VLAN tag"; type uint32 { range "1 .. 4094"; } mandatory true; } leaf to-vlan-id { description "Specify the bridge-domain VLAN-ID"; type uint32 { range "1 .. 4094"; } mandatory true; } } } choice isid_list { case case_1 { leaf isid-list { description "Specify the ISID list"; type enumeration { enum all-service-groups { description "Map all ISIDs specified under the service-groups"; } enum all { description "Map all ISIDs"; } } } } } container storm-control { description "Storm control profile name to bind"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf profile-name { description "Profile name"; type string; mandatory true; } presence "enable storm-control"; } container recovery-timeout { description "Recovery timeout for this interface"; leaf time-in-seconds { description "(null)"; units "seconds"; type uint32 { range "10 .. 3600"; } } } } container ethernet-switching { description "Ethernet switching parameters"; uses ethernet-switching-type; } container fibre-channel { description "Fibre channel switching parameters"; uses fibre-channel-type; } container pppoe { description "PPP over Ethernet underlying interface-specific options"; uses pppoe_underlying_options_type; } container any { presence "enable any"; description "Parameters for 'any' family"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container filter { description "Layer 2 packet filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of filter applied to received packets"; type string { } } leaf group { description "Group to which interface belongs"; type uint32 { range "1 .. 255"; } } } } } leaf service-domain { description "Service domain to which interface belongs"; type enumeration { enum inside { description "Inside network"; } enum outside { description "Outside network"; } } } leaf copy-tos-to-outer-ip-header { description "Copy IP payload header's ToS field to GRE delivery header"; type empty; } container load-balancing-options { description "AMS subunit load balancing options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf preferred-active { description "Preferred active Interface name"; type interface-device; } container hash-keys { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list ingress-key { description "Hash Key for the ingress direction"; type enumeration { enum source-ip { description "Source Ip Address"; } enum destination-ip { description "Destination Ip Address"; } enum protocol { description "Protocol"; } enum iif { description "Incoming Interface"; } } } } } leaf mac { description "Configure logical interface MAC address"; type mac-unicaset; } leaf virtual-gateway-v4-mac { description "Configure virtual gateway IPV4 virtual MAC address"; type mac-unicaset; } leaf virtual-gateway-v6-mac { description "Configure virtual gateway IPV6 virtual MAC address"; type mac-unicaset; } container forwarding-options { description "Aggregated Ethernet interface forwarding-options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container load-balance-stateful { description "Stateful load balancing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf per-flow { description "Enable feature"; type empty; mandatory true; } presence "enable load-balance-stateful"; leaf rebalance { description "Rebalancing interval"; units "per minute"; type uint32 { range "1 .. 1000"; } } leaf load-type { description "Load - defines the flows"; type enumeration { enum high { description "If the no of flows on this aggregate is large(1000-10000 flows) "; } enum medium { description "If the no of flows on this aggregate is moderate(100-1000 flows)"; } enum low { description "If the no of flows on this aggregate is less(1-100)"; } } } } } } container no-partition { description "Use channelizable interface as clear channel"; leaf interface-type { description "Interface type"; type enumeration { enum e1 { description "E1 interface"; } enum t1 { description "T1 interface"; } enum at { description "ATM interface"; } enum t3 { description "T3 interface"; } enum e3 { description "E3 interface"; } enum ct3 { description "Channelized T3 interface"; } enum so { description "SONET interface"; } enum cau4 { description "CAU4 interface"; } } } } list partition { key name; ordered-by user; description "Channelized interface partition"; leaf name { description "Sublevel interface partition index (for example, 1, 3-4)"; type string; } leaf oc-slice { description "Range of SONET/SDH slices (for example, 1, 7-9)"; type string; } leaf timeslots { description "Timeslots [(1..24) for T1, (1..31) for E1]; for example, 1-3,4,9,22-24 (no spaces)"; type string; } leaf interface-type { description "Sublevel interface type"; type enumeration { enum ds { description "DS0 interface"; } enum e1 { description "E1 interface"; } enum t1 { description "T1 interface"; } enum at { description "ATM interface"; } enum ct1 { description "Channelized T1 interface"; } enum ce1 { description "Channelized E1 interface"; } enum t3 { description "T3 interface"; } enum ct3 { description "Channelized T3 interface"; } enum e3 { description "E3 interface"; } enum so { description "SONET interface"; } enum coc1 { description "Channelized OC1 interface"; } enum cau4 { description "Channelized AU4 interface"; } enum dc { description "D channel interface"; } enum bc { description "B channel interface"; } } mandatory true; } } container test-clocking { presence "enable test-clocking"; description "DDL-Test Interface clock source"; } leaf eaid-test-attr { description "(null)"; type string; } leaf eaid-default-test-attr { description "(null)"; default "defs"; type string; } leaf ia-test-so-only { description "(null)"; type string; } leaf ia-test-not-so-only { description "(null)"; type string; } leaf ia-test-ge-fe-only { description "(null)"; type string; } leaf ia-test-t3-channelized-only { description "(null)"; type string; } leaf ia-test-sonnet-options { description "(null)"; type string; } leaf ia-test-not-fe-ge { description "(null)"; type string; } } grouping ipr_profile_object { leaf name { description "IP-reassembly profile name"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf timeout { description "IP-reassembly timeout value"; type int32 { range "2 .. 60"; } } leaf max-reassembly-pending-packets { description "IP-reassembly pending packets"; type int32 { range "100 .. 100000"; } } } grouping ipr_rule_object { leaf name { description "Rule name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf match-direction { description "Direction for which the rule match is applied"; type enumeration { enum input { description "Match on input to interface"; } } mandatory true; } } grouping ipsec-services-traceoptions { description "Trace options for key management process"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum timer { description "Trace internal timer events"; } enum routing-socket { description "Trace routing socket messages"; } enum parse { description "Trace configuration processing"; } enum ike { description "Trace IKE module processing"; } enum policy-manager { description "Trace policy manager processing"; } enum general { description "Trace general events"; } enum database { description "Trace security associations database events"; } enum certificates { description "Trace certificate events"; } enum snmp { description "Trace SNMP operations"; } enum ams { description "Trace AMS events"; } enum lic { description "Trace License events"; } enum all { description "Trace everything"; } } } } } grouping ipsec_vpn_rule_object { leaf name { description "Rule name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list term { key name; ordered-by user; description "Define an IPSec term"; leaf name { description "Term name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Define match criteria"; uses ipsec_vpn_match_object; } container then { presence "enable then"; description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf syslog { description "System log information about the packet"; type empty; } leaf remote-gateway { description "Remote gateway address"; type ipaddr; mandatory true; } leaf backup-remote-gateway { description "Backup remote gateway address"; type ipaddr; } choice sa_choice { case case_1 { container manual { description "Define a manual security association"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list direction { key name; ordered-by user; description "Define the direction of the security association"; leaf name { description "(null)"; type enumeration { enum inbound { description "Inbound security association"; } enum outbound { description "Outbound security association"; } enum bidirectional { description "Bidirectional security association"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf protocol { description "Define an IPSec protocol for the security association"; type enumeration { enum ah { description "Authentication header"; } enum esp { description "Encapsulated Security Payload header"; } enum bundle { description "Bundle (AH authentication plus ESP encryption)"; } } mandatory true; } leaf spi { description "Define security parameter index"; type uint32 { range "256 .. 16639"; } mandatory true; } leaf auxiliary-spi { description "ESP security parameter index for IPSec SA bundle"; type uint32 { range "256 .. 16639"; } } container authentication { description "Define authentication parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf algorithm { description "Define authentication algorithm"; type enumeration { enum hmac-md5-96 { description "HMAC-MD5-96 authentication algorithm"; } enum hmac-sha1-96 { description "HMAC-SHA1-96 authentication algorithm"; } enum hmac-sha2-256 { description "HMAC-SHA2-256 authentication algorithm"; } enum hmac-sha-256-128 { description "HMAC-SHA-256-128 authentication algorithm"; } } mandatory true; } presence "enable authentication"; container key { description "Define an authentication key"; choice key-choice { case case_1 { leaf ascii-text { description "Format as text"; type string { length "1 .. 255"; } } } case case_2 { leaf hexadecimal { description "Format as hexadecimal"; type string { length "1 .. 255"; } } } } } } container encryption { description "Define encryption parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf algorithm { description "Define encryption algorithm"; type enumeration { enum des-cbc { description "DES-CBC encryption algorithm"; } enum 3des-cbc { description "3DES-CBC encryption algorithm"; } enum aes-128-cbc { description "AES-CBC 128-bit encryption algorithm"; } enum aes-192-cbc { description "AES-CBC 192-bit encryption algorithm"; } enum aes-256-cbc { description "AES-CBC 256-bit encryption algorithm"; } } mandatory true; } presence "enable encryption"; container key { description "Define an encryption key"; choice key-choice { case case_1 { leaf ascii-text { description "Format as text"; type string { length "1 .. 255"; } } } case case_2 { leaf hexadecimal { description "Format as hexadecimal"; type string { length "1 .. 255"; } } } } } } } } } case case_2 { container dynamic { description "Define a dynamic security association"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ike-policy { description "Name of the IKE policy"; type string { length "1 .. 32"; } mandatory true; } presence "enable dynamic"; leaf ipsec-policy { description "Name of the IPSec policy"; type string { length "1 .. 32"; } } } } } leaf clear-dont-fragment-bit { description "Clear the do not fragment bit"; type empty; } leaf copy-dont-fragment-bit { description "Copy the do not fragment bit"; type empty; } leaf set-dont-fragment-bit { description "Set the do not fragment bit"; type empty; } leaf no-anti-replay { description "Disable the anti-replay check"; type empty; } leaf tunnel-mtu { description "Maximum transmit packet size"; type uint32 { range "256 .. 9192"; } } leaf initiate-dead-peer-detection { description "Initiate dead peer detection"; type empty; } container dead-peer-detection { presence "enable dead-peer-detection"; description "Dead peer detection options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interval { description "Interval at which the DPD messages should be sent"; default "2"; units "seconds"; type uint32 { range "1 .. 180"; } } leaf threshold { description "Maximum number of DPD messages"; default "3"; type uint32 { range "1 .. 10"; } } } leaf anti-replay-window-size { description "Size of the anti-replay window"; type uint32 { range "64 .. 4096"; } } } } leaf match-direction { description "Direction for which the rule match is applied"; type enumeration { enum input { description "Match on input to interface"; } enum output { description "Match on output from interface"; } } mandatory true; } } grouping ipsec_vpn_match_object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list source-address { key name; ordered-by user; description "Match IP source address"; max-elements 1; uses ipsec_vpn_addr_object; } list destination-address { key name; ordered-by user; description "Match IP destination address"; max-elements 1; uses ipsec_vpn_addr_object; } leaf ipsec-inside-interface { description "IPSec interface to internal network"; type interface-unit; } } grouping ipsec_vpn_addr_object { leaf name { description "Prefix to match"; type ipprefix-only; } } grouping ipv6_name_server_type { leaf name { description "IPv6 DNS name server address"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } grouping jsrc-options { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list partition { key name; ordered-by user; description "JSRC partition definition"; leaf name { description "JSRC partition name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf diameter-instance { description "JSRC diameter instance"; type string { length "1 .. 63"; } mandatory true; } leaf destination-realm { description "JSRC destination realm"; type string { length "1 .. 63"; } mandatory true; } leaf destination-host { description "JSRC destination host"; type string { length "1 .. 63"; } mandatory true; } } } grouping juniper-access-options { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list radius-server { key name; ordered-by user; description "RADIUS server configuration"; uses access-radius-server-object; } leaf radius-disconnect-port { description "Server port on which to access disconnect requests from RADIUS client"; default "1700"; type uint16; } list radius-disconnect { key name; ordered-by user; description "RADIUS-initiated disconnect configuration for dynamic termination of user sessions by external entity"; uses radius-disconnect-object; } list domain-name-server { key name; ordered-by user; description "Default DNS server's IPv4 address"; leaf name { description "Address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list domain-name-server-inet { key name; ordered-by user; description "DNS server's IPv4 address"; leaf name { description "Address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list domain-name-server-inet6 { key name; ordered-by user; description "DNS server's IPv6 address"; leaf name { description "Address"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list address-pool { key name; ordered-by user; description "Address pool"; uses address-pool-object; } list group-profile { key name; ordered-by user; description "Group profile to use for this client"; uses group-profile-object; } list profile { key name; ordered-by user; description "Set of attributes that define access"; leaf name { description "Profile name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list accounting-order { description "Order in which accounting mechanisms are used"; type enumeration { enum radius { description "Remote Authentication Dial-In User Service"; } } } leaf-list authentication-order { description "Order in which authentication mechanisms are used"; type enumeration { enum radius { description "Remote Authentication Dial-In User Service"; } enum password { description "Locally configured password in access profile"; } enum none { description "No authentication performed"; } enum ldap { description "Lightweight Directory Access Protocol"; } enum securid { description "RSA SecurID Authentication"; } } } leaf-list authorization-order { description "Order in which authorization mechanisms are used"; type enumeration { enum jsrc { description "Address authorization via SRC"; } } } leaf provisioning-order { description "Order in which provisioning mechanisms are used"; type enumeration { enum jsrc { description "Address authorization via SRC"; } enum gx-plus { description "Policy/service provisioning via GXPLUS"; } } } leaf-list preauthentication-order { description "Order in which preauthentication mechanisms are used"; type enumeration { enum radius { description "Remote Authentication Dial-In User Service"; } } } list domain-name-server { key name; ordered-by user; description "Default DNS server's IPv4 address"; leaf name { description "Address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list domain-name-server-inet { key name; ordered-by user; description "DNS server's IPv4 address"; leaf name { description "Address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list domain-name-server-inet6 { key name; ordered-by user; description "DNS server's IPv6 address"; leaf name { description "Address"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list client { key name; description "Entity requesting access"; uses access-client-object; } container address-assignment { description "Address assignment pool"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf pool { description "Name of address-assignment pool"; type string { length "1 .. 63"; } } } container radius { description "Set of RADIUS configurations"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list authentication-server { description "The authentication server list to use in the specified order to send authentication messages"; type ipv4addr; } leaf-list accounting-server { description "The accounting server list to use in the specified order to send accounting messages"; type ipv4addr; } leaf-list preauthentication-server { description "The preauthentication server list to use in the specified order to send preauthentication messages"; type ipv4addr; } container options { description "Specifies the RADIUS options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ethernet-port-type-virtual { description "Type of physical port to authenticate the user is virtual (RADIUS attribute 61)"; type empty; } container interface-description-format { description "Interface description in the NAS-port-ID attribute"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf exclude-sub-interface { description "Exclude sub-interface from interface description"; type empty; } leaf exclude-adapter { description "Exclude adapter from interface description"; type empty; } } leaf nas-identifier { description "NAS-Identifier to be used for authentication and accounting requests (RADIUS attribute 32)"; type string { length "1 .. 64"; } } container nas-port-extended-format { description "RADIUS client's use of an extended format for RADIUS attribute 5"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ae-width { description "Number of bits for the aggregated ethernet identifier field"; units "bits"; type uint32 { range "0 .. 32"; } } leaf slot-width { description "Number of bits for the slot field"; units "bits"; type uint32 { range "0 .. 32"; } } leaf adapter-width { description "Number of bits for the adapter field"; units "bits"; type uint32 { range "0 .. 32"; } } leaf port-width { description "Number of bits for the port field"; units "bits"; type uint32 { range "0 .. 32"; } } leaf stacked-vlan-width { description "Number of bits for the S-VLAN subinterface field"; units "bits"; type uint32 { range "0 .. 32"; } } leaf vlan-width { description "Number of bits for the VLAN subinterface field"; units "bits"; type uint32 { range "0 .. 32"; } } container atm { description "ATM specific parameters for NAS Port"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf slot-width { description "Number of bits for the ATM slot field"; units "bits"; type uint32 { range "1 .. 32"; } } leaf adapter-width { description "Number of bits for the ATM adapter field"; units "bits"; type uint32 { range "1 .. 32"; } } leaf port-width { description "Number of bits for the ATM port field"; units "bits"; type uint32 { range "1 .. 32"; } } leaf vpi-width { description "Number of bits for the ATM VPI field"; units "bits"; type uint32 { range "1 .. 32"; } } leaf vci-width { description "Number of bits for the ATM VCI field"; units "bits"; type uint32 { range "1 .. 32"; } } } } leaf nas-port-id-delimiter { description "Single character delimiter character to use in the NAS-Port-Id"; type string { length 1; } } container nas-port-id-format { description "Format methods for building the NAS-Port-Id radius attribute"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf nas-identifier { description "Include the nas-identifier value"; type empty; } leaf interface-description { description "Include the interface-description value"; type empty; } leaf agent-circuit-id { description "Include (ACI) agent-circuit-id value"; type empty; } leaf agent-remote-id { description "Include (ARI) agent-remote-id value"; type empty; } } container nas-port-type { description "Translation mechanism for changing the NAS-Port-Type radius attribute"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ethernet { description "Translation mechanism for changing the Ethernet value"; type string; } } leaf calling-station-id-delimiter { description "Single character separator for calling-station-id"; type string { length 1; } } container calling-station-id-format { description "Format method for building the calling-station-id"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf nas-identifier { description "Include the nas-identifier value"; type empty; } leaf interface-description { description "Include the interface-description value"; type empty; } leaf agent-circuit-id { description "Include agent-circuit-id value"; type empty; } leaf agent-remote-id { description "Include agent-remote-id value"; type empty; } } leaf remote-circuit-id-delimiter { description "Single delimiter character to use in the remote-circuit-id"; type string { length 1; } } container remote-circuit-id-format { description "Format method for building the remote-circuit-id attribute"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf agent-circuit-id { description "Include agent-circuit-id (ACI) value"; type empty; } leaf agent-remote-id { description "Include agent-remote-id (ARI) value"; type empty; } } leaf remote-circuit-id-fallback { description "Configure the fallback for remote-circuit-id attribute"; type enumeration { enum default { description "Fallback to default underlying-interface"; } enum configured-calling-station-id { description "Fallback to configured calling-station-id"; } } } container override { description "Configure RADIUS to override the standard use of an attribute"; container calling-station-id { description "Configure RADIUS value for calling-station-id attribute"; leaf remote-circuit-id { description "Configure RADIUS to use remote-circuit-id"; type empty; } } } leaf accounting-session-id-format { description "Decimal format or description format for the accounting session ID"; type enumeration { enum decimal { description "Decimal-session-identifier"; } enum description { description "Description Format: :"; } } } leaf revert-interval { description "Time after which to revert to primary server"; units "seconds"; type uint32 { range "0 .. 604800"; } } leaf vlan-nas-port-stacked-format { description "Include the S-VLAN ID, in addition to the VLAN ID, for subscribers on Ethernet interfaces"; type empty; } leaf client-authentication-algorithm { description "Algorithm to access the RADIUS servers for authentication"; type enumeration { enum direct { description "Contacts the first AAA server on the list for each request, the second AAA server if the first one fails, and so on"; } enum round-robin { description "Contacts the first AAA server for the first request, the second AAA server for the second request, and so on"; } } } leaf client-accounting-algorithm { description "Algorithm to access the RADIUS servers for accounting"; type enumeration { enum direct { description "Contacts the first AAA server on the list for each request, the second AAA server if the first one fails, and so on"; } enum round-robin { description "Contacts the first AAA server for the first request, the second AAA server for the second request, and so on"; } } } leaf juniper-dsl-attributes { description "Include the Juniper (IANA 4874) DSL VSAs in requests to RADIUS servers"; type empty; } container ip-address-change-notify { presence "enable ip-address-change-notify"; description "Include IPv4-Release-Control VSA (26-164) in requests to RADIUS server"; leaf message { description "Message to be added in IPv4-Release-Control VSA (26-164)"; type string { length "1 .. 32"; } } } leaf coa-dynamic-variable-validation { description "Enable strict dynamic variable validation (no undefined variable) in CoA processing"; type empty; } } container attributes { description "Specifies how RADIUS attributes should be handled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container ignore { description "Ignores the specified attribute in RADIUS Access-Accept messages"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf output-filter { description "Output-filter/egress-Policy-Name (VSA 26-11)"; type empty; } leaf input-filter { description "Input-filter/ingress-Policy-Name (VSA 26-10)"; type empty; } leaf framed-ip-netmask { description "Framed-ip-netmask/framed-Ip-Netmask (attribute 9)"; type empty; } leaf logical-system-routing-instance { description "Logical-system-routing-instance/virtual-Router (VSA 26-1)"; type empty; } leaf dynamic-iflset-name { description "Interface-set/Dynamic-Iflset-name (VSA 26-130)"; type empty; } } container exclude { description "Configures the exclusion of RADIUS attributes in RADIUS messages"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list accounting-authentic { description "Excludes RADIUS attribute 45, Acct-Authentic"; type enumeration { enum accounting-on { description "RADIUS Accounting-On Message"; } enum accounting-off { description "RADIUS Accounting-Off message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list accounting-delay-time { description "Excludes RADIUS attribute 41, Acct-Delay-Time"; type enumeration { enum accounting-on { description "RADIUS Accounting-On Message"; } enum accounting-off { description "RADIUS Accounting-Off message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list accounting-session-id { description "Excludes RADIUS attribute 44, Acct-Session-ID"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } } } leaf-list accounting-terminate-cause { description "Excludes RADIUS attribute 49, Acct-Terminate-Cause"; type enumeration { enum accounting-off { description "RADIUS Accounting-Off message"; } } } leaf-list called-station-id { description "Excludes RADIUS attribute 30, Called-Station-ID"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list calling-station-id { description "Excludes RADIUS attribute 31, Calling-Station-ID"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list class { description "Excludes RADIUS attribute 25, Class"; type enumeration { enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list delegated-ipv6-prefix { description "Excludes RADIUS attribute 123, Delegated-IPv6-Prefix"; type enumeration { enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list dhcp-options { description "Excludes RADIUS attribute 26-55, DHCP-Options"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list dhcp-gi-address { description "Excludes RADIUS attribute 26-57, DHCP-GI-Address"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list dhcp-mac-address { description "Excludes RADIUS attribute 26-56, DHCP-MAC-Address"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list output-filter { description "Excludes RADIUS attribute 26-11, Egress-Policy-Name"; type enumeration { enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list event-time-stamp { description "Excludes RADIUS attribute 55, Event-Timestamp"; type enumeration { enum accounting-on { description "RADIUS Accounting-On Message"; } enum accounting-off { description "RADIUS Accounting-Off message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list filter-id { description "Excludes RADIUS attribute 11, Filter-Id"; type enumeration { enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list framed-ip-address { description "Excludes RADIUS attribute 8, Framed-IP-Address"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list framed-ip-netmask { description "Excludes RADIUS attribute 9, Framed-IP-Netmask"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list framed-ip-route { description "Excludes RADIUS attribute 22, Framed-Route"; type enumeration { enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list framed-ipv6-pool { description "Excludes RADIUS attribute 100, Framed-IPv6-Pool"; type enumeration { enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list framed-ipv6-prefix { description "Excludes RADIUS attribute 97, Framed-IPv6-Prefix"; type enumeration { enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list framed-ipv6-route { description "Excludes RADIUS attribute 99, Framed-IPv6-Route"; type enumeration { enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list framed-pool { description "Excludes RADIUS attribute 88, Framed-Pool"; type enumeration { enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list input-filter { description "Excludes RADIUS attribute 26-10, Ingress-Policy-Name"; type enumeration { enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list input-gigapackets { description "Excludes RADIUS attribute 26-42, Acct-Input-Gigapackets"; type enumeration { enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list input-gigawords { description "Excludes RADIUS attribute 52, Acct-Input-Gigawords"; type enumeration { enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list input-ipv6-packets { description "Excludes RADIUS attribute 26-153, Acct-Input-IPv6-Packets"; type enumeration { enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list input-ipv6-gigawords { description "Excludes RADIUS attribute 26-155, Acct-Input-IPv6-Gigawords"; type enumeration { enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list input-ipv6-octets { description "Excludes RADIUS attribute 26-151, Acct-Input-IPv6-Octets"; type enumeration { enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list interface-description { description "Excludes RADIUS attribute 26-63, Interface-Desc"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list nas-identifier { description "Excludes RADIUS attribute 32, NAS-identifier"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-on { description "RADIUS Accounting-On Message"; } enum accounting-off { description "RADIUS Accounting-Off message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list nas-port { description "Excludes RADIUS attribute 5, NAS-Port"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list nas-port-id { description "Excludes RADIUS attribute 87, NAS-Port-ID"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list nas-port-type { description "Excludes RADIUS attribute 61, NAS-Port-Type"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list output-gigapackets { description "Excludes RADIUS attribute 26-43, Acct-Output-Gigapackets"; type enumeration { enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list output-gigawords { description "Excludes RADIUS attribute 53, Acct-Output-Gigawords"; type enumeration { enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list output-ipv6-packets { description "Excludes RADIUS attribute 26-154, Acct-Output-IPv6-Packets"; type enumeration { enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list output-ipv6-gigawords { description "Excludes RADIUS attribute 26-156, Acct-Output-IPv6-Gigawords"; type enumeration { enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list output-ipv6-octets { description "Excludes RADIUS attribute 26-152, Acct-Output-IPv6-Octets"; type enumeration { enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list dynamic-iflset-name { description "Excludes RADIUS attribute 26-130, Dynamic-Iflset-Name"; type enumeration { enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list dsl-forum-attributes { description "Excludes DSL Forum RADIUS attributes (RFC 4679)"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list l2c-upstream-data { description "Excludes Juniper (IANA 4874) DSL VSA 26-92, L2C-Upstream-Data"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list l2c-downstream-data { description "Excludes Juniper (IANA 4874) DSL VSA 26-93, L2C-Downstream-Data"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list acc-loop-cir-id { description "Excludes Juniper (IANA 4874) DSL VSA 26-110, Acc-Loop-Cir-Id"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list acc-aggr-cir-id-bin { description "Excludes Juniper (IANA 4874) DSL VSA 26-111, Acc-Aggr-Cir-Id-Bin"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list acc-aggr-cir-id-asc { description "Excludes Juniper (IANA 4874) DSL VSA 26-112, Acc-Aggr-Cir-Id-Asc"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list act-data-rate-up { description "Excludes Juniper (IANA 4874) DSL VSA 26-113, Act-Data-Rate-Up"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list act-data-rate-dn { description "Excludes Juniper (IANA 4874) DSL VSA 26-114, Act-Data-Rate-Dn"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list min-data-rate-up { description "Excludes Juniper (IANA 4874) DSL VSA 26-115, Min-Data-Rate-Up"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list min-data-rate-dn { description "Excludes Juniper (IANA 4874) DSL VSA 26-116, Min-Data-Rate-Dn"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list att-data-rate-up { description "Excludes Juniper (IANA 4874) DSL VSA 26-117, Att-Data-Rate-Up"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list att-data-rate-dn { description "Excludes Juniper (IANA 4874) DSL VSA 26-118, Att-Data-Rate-Dn"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list max-data-rate-up { description "Excludes Juniper (IANA 4874) DSL VSA 26-119, Max-Data-Rate-Up"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list max-data-rate-dn { description "Excludes Juniper (IANA 4874) DSL VSA 26-120, Max-Data-Rate-Dn"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list min-lp-data-rate-up { description "Excludes Juniper (IANA 4874) DSL VSA 26-121, Min-Lp-Data-Rate-Up"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list min-lp-data-rate-dn { description "Excludes Juniper (IANA 4874) DSL VSA 26-122, Min-Lp-Data-Rate-Dn"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list max-interlv-delay-up { description "Excludes Juniper (IANA 4874) DSL VSA 26-123, Max-Interlv-Delay-Up"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list act-interlv-delay-up { description "Excludes Juniper (IANA 4874) DSL VSA 26-124, Act-Interlv-Delay-Up"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list max-interlv-delay-dn { description "Excludes Juniper (IANA 4874) DSL VSA 26-125, Max-Interlv-Delay-Dn"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list act-interlv-delay-dn { description "Excludes Juniper (IANA 4874) DSL VSA 26-126, Act-Interlv-Delay-Dn"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list dsl-line-state { description "Excludes Juniper (IANA 4874) DSL VSA 26-127, DSL-Line-State"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list dsl-type { description "Excludes Juniper (IANA 4874) DSL VSA 26-128, DSL-Type"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list downstream-calculated-qos-rate { description "Excludes Juniper (IANA 4874) DSL VSA 26-141, Downstream-Calculated-QoS-Rate"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list upstream-calculated-qos-rate { description "Excludes Juniper (IANA 4874) DSL VSA 26-142, Upstream-Calculated-QoS-Rate"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list cos-shaping-rate { description "Excludes Juniper (IANA 4874) VSA 26-177, Cos-Shaping-Rate"; type enumeration { enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list framed-interface-id { description "Excludes RADIUS attribute 96, Framed-Interface-Id"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } leaf-list pppoe-description { description "Excludes RADIUS attribute 26-24, PPPOE-Description"; type enumeration { enum access-request { description "RADIUS Access-Request message"; } enum accounting-start { description "RADIUS Accounting-Start message"; } enum accounting-stop { description "RADIUS Accounting-Stop message"; } } } } } } container session-options { description "Options for an authenticated client's session"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list client-group { description "One or more groups to which client belongs"; type string; } leaf client-idle-timeout { description "Time in minutes of idleness after which access is denied"; units "minutes"; type uint32 { range "10 .. 1440"; } } leaf client-session-timeout { description "Time in minutes since initial access after which access is denied"; units "minutes"; type uint32 { range "1 .. 527040"; } } } container client-name-filter { description "Restrictions on client names"; uses access-client-name-filter-object; } container ldap-options { description "Lightweight Directory Access Protocol options"; uses access-ldap-options; } list ldap-server { key name; ordered-by user; description "Lightweight Directory Access Protocol server"; uses ldap-server-object; } list radius-server { key name; ordered-by user; description "RADIUS server configuration"; uses profile-radius-server-object; } container radius-options { description "RADIUS options"; uses access-radius-options; } container accounting { description "Specifies the accounting options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list order { description "Order in which accounting mechanisms are used"; type enumeration { enum radius { description "Remote authentication dial-in user service"; } } } leaf accounting-stop-on-failure { description "Send an Acct-Stop message if a user fails authentication, but AAA-server grants access"; type empty; } leaf accounting-stop-on-access-deny { description "Send an Acct-Stop message if AAA-server denies access"; type empty; } leaf immediate-update { description "Send an Acct-Update message on receipt of a Acct-response for the Acct-Start message"; type empty; } leaf coa-immediate-update { description "Send an Acct-Update message on completion of processing a change of authorization"; type empty; } leaf address-change-immediate-update { description "Send an Acct-Update message to notify address change"; type empty; } leaf update-interval { description "The interval in minutes between accounting updates(Interim-stats off, if not specified)"; units "minutes"; type uint32 { range "10 .. 1440"; } } leaf statistics { description "Reports set of statistics attributes based on reporting type"; type enumeration { enum volume-time { description "Configures the option to report both volume and uptime"; } enum time { description "Configures the option to report only uptime"; } } } leaf wait-for-acct-on-ack { description "Wait for ACCT-ON-ACK"; type empty; } leaf send-acct-status-on-config-change { description "Send ACCT-ON/OFF on config change"; type empty; } leaf duplication { description "Send duplicated accounting reports if applied"; type empty; } container duplication-vrf { description "Duplication vrf configurations"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf vrf-name { description "VRF name"; type string { length "1 .. 257"; } mandatory true; } presence "enable duplication-vrf"; leaf-list access-profile-name { description "Access profile name"; type string { length "1 .. 63"; } max-elements 5; } } } container service { description "Subscriber service configurations"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf accounting-order { description "Order in which accounting mechanism service is used"; type enumeration { enum activation-protocol { description "Send service accounting reports via service activation protocol"; } enum radius { description "Send service accounting reports via radius protocol"; } } } container accounting { description "Specifies the service accounting options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf update-interval { description "The interval in minutes between accounting updates(Interim-stats off, if not specified)"; units "minutes"; type uint32 { range "10 .. 1440"; } } leaf statistics { description "Reports set of statistics attributes based on reporting type"; type enumeration { enum time { description "Configures the option to report only uptime"; } enum volume-time { description "Configures the option to report both volume and uptime"; } } } } } container jsrc { description "Set of JSRC configurations"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container attributes { description "Specifies how JSRC attributes should be handled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container exclude { description "Configures the exclusion of JSRC attributes in DIAMETER messages"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list user-name { description "Excludes Diameter attribute 1, User-Name"; type enumeration { enum authorization-request { description "Authorization AA-Request message"; } enum provisioning-request { description "Provisioning AA-Request message"; } } } } } } } container address-assignment { description "Address assignment configuration"; uses address-assignment-type; } leaf address-protection { description "Initiate Duplicate Address Protection"; type empty; } list tunnel-profile { key name; ordered-by user; description "Set of attributes that define tunnel access"; leaf name { description "Tunnel profile name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list tunnel { key name; ordered-by user; description "Tunnel id 1 to 31"; leaf name { description "Tunnel indicator"; type int32 { range "1 .. 31"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf preference { description "Preference value"; default "2000"; type uint32 { range "0 .. 2000"; } } container remote-gateway { description "Tunnel remote gateway"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf address { description "IP address"; type ipv4addr; mandatory true; } presence "enable remote-gateway"; leaf gateway-name { description "Gateway name"; type string; } } container source-gateway { description "Tunnel source gateway"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf address { description "IP address"; type ipv4addr; } leaf gateway-name { description "Tunnel source name"; type string; } } choice ri_or_ls { case case_1 { leaf routing-instance { description "Routing instance to be used for tunneled subscriber"; type string; } } case case_2 { list logical-system { key name; ordered-by user; description "Logical system to be used for tunneled subscriber"; max-elements 1; leaf name { description "Logical system name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf routing-instance { description "Routing instance to be used for tunneled subscriber"; type string; } } } } leaf secret { description "Tunnel password sent to remote gateway"; type string { length "1 .. 64"; } } leaf medium { description "Tunnel medium"; default "ipv4"; type enumeration { enum ipv4 { description "Internet protocol version 4"; } } } leaf tunnel-type { description "Tunnel type"; default "l2tp"; type enumeration { enum l2tp { description "Layer 2 tunnel protocol"; } } } leaf identification { description "Tunnel assignment identification"; type string; } leaf max-sessions { description "Maximum number of sessions per tunnel"; default "0"; type uint32 { range "0 .. 60000"; } } leaf nas-port-method { description "Tunnel network access server port method"; type enumeration { enum cisco-avp { description "Limited Cisco vendor specific mechanism"; } } } } } list tunnel-switch-profile { key name; ordered-by user; description "Tunnel switch profile name"; leaf name { description "Tunnel switch profile name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container avp { description "L2TP AVPs action configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf calling-number { description "Action for L2TP AVP calling number"; type enumeration { enum regenerate { description "Regenerate L2TP AVP"; } enum relay { description "Relay L2TP AVP"; } enum drop { description "Drop L2TP AVP"; } } } leaf bearer-type { description "Action for L2TP AVP bearer type"; type enumeration { enum regenerate { description "Regenerate L2TP AVP"; } enum relay { description "Relay L2TP AVP"; } enum drop { description "Drop L2TP AVP"; } } } leaf cisco-nas-port-info { description "Action for L2TP AVP Cisco NAS port information"; type enumeration { enum regenerate { description "Regenerate L2TP AVP"; } enum relay { description "Relay L2TP AVP"; } enum drop { description "Drop L2TP AVP"; } } } } leaf tunnel-profile { description "Tunnel profile name"; type string { length "1 .. 64"; } } } container domain { description "Domain map configuration"; uses domain-map-type; } container ppp-options { presence "enable ppp-options"; description "Point-to-Point Protocol (PPP) specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container compliance { description "Standards compliance definition"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list rfc { description "Enforce compliance with RFC standards"; type enumeration { enum 2486 { description "RFC 2486 compliant"; } } } } } container gx-plus { description "GX-PLUS configuration"; uses gx-plus-definition; } leaf report-interface-descriptions { description "Support reporting of interface descriptions"; type empty; } container terminate-code { description "Terminate code mapping configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aaa { description "AAA terminate-code mapping configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container deny { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container authentication-denied { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-resources { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container server-request-timeout { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container shutdown { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container administrative-reset { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container idle-timeout { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container remote-reset { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container session-timeout { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } } container dhcp { description "DHCP terminate-code mapping configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container client-request { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container lost-carrier { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container nak { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container nas-logout { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-offers { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container l2tp { description "L2TP terminate-code mapping configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container issu { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container in-progress { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container session { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container access-interface-down { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container administrative-close { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container administrative-drain { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container call-down { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container call-failed { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container create-failed { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container icrq-to-initiator-tunnel { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container invalid-config { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container limit-reached { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-resources { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container single-shot-tunnel-already-fired { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container too-busy { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container failover-protocol-resync-disconnect { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container hardware-unavailable { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-resources-server-port { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container not-ready { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container receive-cdn { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } container avp-bad-hidden { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-assigned-session-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-duplicate-value-assigned-session-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-bad-length { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-truncated { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-assigned-session-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-result-code { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-random-vector { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-secret { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-unknown { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-resources { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container receive-iccn { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container avp-bad-hidden { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-framing-type { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-proxy-authen-type { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-unsupported-proxy-authen-type { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-bad-length { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-truncated { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-connect-speed { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-framing-type { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-proxy-authen-challenge { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-proxy-authen-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-proxy-authen-name { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-proxy-authen-response { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-random-vector { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-secret { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-unknown { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-resources { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container unexpected { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container receive-icrp { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container avp-bad-hidden { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-assigned-session-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-duplicate-value-assigned-session-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-bad-length { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-truncated { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-assigned-session-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-random-vector { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-secret { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-unknown { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-resources { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container unexpected { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container receive-icrq { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container administrative-close { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container authenticate-failed-host { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-hidden { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-assigned-session-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-bearer-type { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-cisco-nas-port { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-duplicate-value-assigned-session-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-bad-length { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-truncated { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-assigned-session-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-call-serial-number { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-random-vector { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-secret { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-unknown { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-resources { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container unexpected { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container receive-occn { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container avp-bad-hidden { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-framing-type { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-bad-length { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-truncated { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-connect-speed { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-framing-type { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-random-vector { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-secret { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-unknown { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-resources { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container unexpected { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container receive-ocrp { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container avp-bad-hidden { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-assigned-session-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-duplicate-value-assigned-session-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-bad-length { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-truncated { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-assigned-session-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-random-vector { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-secret { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-unknown { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-resources { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container unexpected { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container receive-ocrq { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container administrative-close { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container authenticate-failed-host { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-hidden { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-assigned-session-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-bearer-type { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-framing-type { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-duplicate-value-assigned-session-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-bad-length { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-truncated { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-assigned-session-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-bearer-type { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-call-serial-number { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-called-number { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-framing-type { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-maximum-bps { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-minimum-bps { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-random-vector { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-secret { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-unknown { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-resources { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container unexpected { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container unsupported { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container receive-sli { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container avp-bad-hidden { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-accm { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-bad-length { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-truncated { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-accm { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-random-vector { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-secret { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-unknown { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-resources { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container receive-unexpected-packet { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container lac-incoming { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container lac-outgoing { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container lns-incoming { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container lns-outgoing { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container receive-unknown-session-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container receive-wen { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container avp-bad-hidden { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-bad-length { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-truncated { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-call-errors { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-random-vector { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-secret { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-unknown { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-resources { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container timeout-connection { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container timeout-inactivity { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container timeout-session { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container timeout-upper-create { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container transmit-speed-unavailable { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container tunnel-down { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container tunnel-failed { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container tunnel-switch-profile-deleted { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container tunneled-interface-down { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container unknown-cause { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container upper-create-failed { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container upper-removed { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container warmstart-not-operational { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container warmstart-recovery-error { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container warmstart-uppper-not-restacked { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container session-rx-icrq-issu-in-progress { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container session-rx-ocrq-issu-in-progress { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container tunnel { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container administrative-close { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container administrative-drain { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container control-channel-failed { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container created-no-sessions { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container destination-address-changed { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container destination-down { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container failover-protocol { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container no-resources-for-recovery-tunnel { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-resources-for-session-resync { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container not-supported { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container not-supported-by-peer { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container recovery-control-channel-failed { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container recovery-tunnel-failed { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container recovery-tunnel-finished { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container recovery-tunnel-primary-down { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container session-resync-failed { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container host-profile-changed { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container host-profile-deleted { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container receive-fsq { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container avp-bad-hidden { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-bad-length { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-truncated { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-failover-session-state { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-random-vector { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-secret { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-unknown { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-resources { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container session-id-not-null { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container receive-fsr { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container avp-bad-hidden { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-bad-length { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-truncated { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-failover-session-state { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-random-vector { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-secret { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-unknown { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-resources { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container session-id-not-null { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container receive-recovery-scccn { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container authenticate-failed-challenge { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-hidden { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-challenge-response { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-bad-length { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-truncated { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-challenge-response { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-random-vector { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-secret { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-unexpected-challenge-response { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-unknown { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-resources { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container session-id-not-null { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container receive-recovery-scccp { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container avp-unexpected-challenge-response { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container receive-recovery-scccp-avp-bad-value-challenge-response { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container receive-recovery-scccp-avp-missing-challenge-response { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container receive-recovery-sccrp { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container authenticate-failed-challenge { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-hidden { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-assigned-tunnel-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-bearer-capabilities { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-challenge { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-framing-capabilities { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-protocol-version { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-receive-window-size { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-suggested-control-sequence { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-duplicate-value-assigned-tunnel-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-bad-length { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-truncated { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-mismatched-host-name { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-mismatched-vendor-name { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-assigned-tunnel-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-framing-capabilities { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-host-name { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-protocol-version { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-random-vector { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-secret { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-unexpected-challenge-without-secret { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-unknown { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-resources { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container session-id-not-null { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container receive-recovery-sccrq { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container administrative-close { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-hidden { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-assigned-tunnel-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-bearer-capabilities { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-challenge { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-framing-capabilities { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-protocol-version { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-receive-window-size { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-tunnel { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container recovery { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container avp-duplicate-value-assigned-tunnel-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-duplicate-value-tie-breaker { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-bad-length { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-truncated { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-mismatched-host-name { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-mismatched-vendor-name { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-assigned-tunnel-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-framing-capabilities { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-host-name { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-protocol-version { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-tunnel { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container recovery { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container avp-missing-random-vector { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-secret { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-tie-breaker { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-unexpected-challenge-without-secret { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-unknown { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-resources-max-tunnels { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container session-id-not-null { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container tunnel-id-not-null { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container receive-recovery-stopccn { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container avp-bad-hidden { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-assigned-tunnel-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-duplicate-value-assigned-tunnel-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-bad-length { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-truncated { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-assigned-tunnel-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-result-code { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-random-vector { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-secret { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-unknown { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-resources { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container session-id-not-null { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container receive-recovery-unexpected-packet { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container receive-recovery-unknown-packet { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container message-type-indecipherable { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container message-type-unrecognized { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container receive-scccn { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container authenticate-failed-challenge { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-hidden { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-challenge-response { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-bad-length { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-truncated { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-challenge-response { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-random-vector { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-secret { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-unexpected-challenge-response { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-unknown { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-resources { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container session-id-not-null { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container unexpected { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container receive-sccrp { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container authenticate-failed-challenge { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container authenticate-failed-host { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-hidden { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-assigned-tunnel-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-bearer-capabilities { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-challenge { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-challenge-response { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-failover-capability { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-framing-capabilities { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-protocol-version { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-receive-window-size { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-duplicate-value-assigned-tunnel-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-bad-length { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-truncated { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-challenge-response { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-assigned-tunnel-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-framing-capabilities { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-host-name { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-protocol-version { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-random-vector { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-secret { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-unexpected-challenge-response { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-unexpected-challenge-without-secret { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-unknown { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-resources { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container session-id-not-null { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container unexpected { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container receive-sccrq { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container administrative-close { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container authenticate-failed-host { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-hidden { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-assigned-tunnel-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-bearer-capabilities { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-challenge { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-failover-capability { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-framing-capabilities { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-protocol-version { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-receive-window-size { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-duplicate-value-assigned-tunnel-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-bad-length { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-truncated { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-assigned-tunnel-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-framing-capabilities { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-host-name { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-protocol-version { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-random-vector { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-secret { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-unexpected-challenge-without-secret { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-unknown { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container bad-address { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container invalid-ns { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-resources { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-resources-max-tunnels { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container session-id-not-null { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container unexpected { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container receive-session-packet { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container null-session-id-invalid { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container null-session-id-without-assigned-session-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container receive-stopccn { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } container avp-bad-hidden { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-bad-value-assigned-tunnel-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-duplicate-value-assigned-tunnel-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-bad-length { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-malformed-truncated { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-assigned-tunnel-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-mandatory-result-code { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-random-vector { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-missing-secret { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container avp-unknown { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-resources { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container session-id-not-null { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container receive-unexpected-packet { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } container for-session { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container receive-unknown-packet { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container message-type-indecipherable { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container message-type-unrecognized { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container timeout-connection { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container timeout-connection-recovery-tunnel { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container timeout-idle { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container unknown-cause { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container warmstart-not-operational { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container warmstart-recovery-error { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } } container ppp { description "PPP terminate-code mapping configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container admin-logout { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container authenticate { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container authenticator-timeout { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container challenge-timeout { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container chap-no-resources { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container chap-peer-authenticator-timeout { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container chap-peer-challenge-timeout { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container deny-by-peer { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container eap-challenge-larger-than-mtu { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container eap-peer-authenticator-timeout { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container eap-request-timeout { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container inactivity-timeout { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container max-requests { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-authenticator { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-resources { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container pap-peer-authenticator-timeout { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container pap-request-timeout { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container session-timeout { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container too-many-requests { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container tunnel-fail-immediate { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container tunnel-unsupported-tunnel-type { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container bridging { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container admin-disable { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container failed-to-activate-family-bridging { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container inhibited-by-authentication { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container link-down { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container max-configure-exceeded { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container max-passive-retries-exceeded { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container max-sevice-disable { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-local-ieee802-tagged-frame-format { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-local-mac-frame-format { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-peer-ieee802-tagged-frame-format { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-peer-mac-fram-fromat { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-service { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container renegotiate-rx-conf-ack { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container renegotiate-rx-conf-nak { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container renegotiate-rx-conf-rej { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container renegotiate-rx-conf-req { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container stale-stacking { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container terminate-code-rej { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container terminate-term-ack { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container terminate-term-req { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container bundle { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container fail-activation { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container fail-create { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container fail-engine-add { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container fail-fragment-size-mismatch { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container fail-fragmentation-location { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container fail-fragmentation-mismatch { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container fail-hash-link-selection-mismatch { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container fail-join { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container fail-local-mped-not-set-yet { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container fail-local-mrru-mismatch { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container fail-local-mru-mismatch { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container fail-peer-endpoint-discriminator-mismatch { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container fail-peer-mrru-mismatch { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container fail-profile-nak { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container fail-reassembly-location { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container fail-reassembly-mismatch { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container fail-record-network { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container fail-server-location-mismatch { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container fail-static-link { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container fail-unrecoverable-ifl { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container dynamic-profile-instantiation-failed { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container failover-during-authentication { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container interface-admin-disable { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container interface-no-hardware { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container ip { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container admin-disable { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container failed-to-activate-family-inet { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container failed-to-add-access-internal-route { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container inhibited-by-authentication { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container link-down { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container max-configure-exceeded { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container max-passive-retries-exceeded { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-local-ip-address { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-local-ip-address-mask { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-local-primary-dns-address { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-local-primary-nbns-address { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-local-secondary-dns-address { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-local-secondary-nbns-address { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-peer-ip-address { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-peer-ip-address-mask { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-peer-primary-dns-address { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-peer-primary-nbns-address { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-peer-secondary-dns-address { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-peer-secondary-nbns-address { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-service { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-renegotiate-rx-conf-ack { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-renegotiate-rx-conf-nak { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-renegotiate-rx-conf-rej { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-renegotiate-rx-conf-req { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-terminate-code-rej { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-terminate-term-ack { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-terminate-term-req { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container service-disable { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container stale-stacking { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container ipv6 { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container admin-disable { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container failed-to-activate-family-inet6 { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container inhibited-by-authentication { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container link-down { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container local-and-peer-interface-ids-identical { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container max-configure-exceeded { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container max-passive-retries-exceeded { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-local-ipv6-interface-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-peer-ipv6-interface-id { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-service { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-renegotiate-rx-conf-ack { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-renegotiate-rx-conf-nak { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-renegotiate-rx-conf-rej { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-renegotiate-rx-conf-req { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-terminate-code-rej { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-terminate-term-ack { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-terminate-term-req { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container service-disable { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container stale-stacking { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container l2tp-session { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container apply-link-attribute-failed { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container lcp { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container authenticate-terminate-hold { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container configured-mrru-too-small { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container configured-mru-invalid { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container configured-mru-too-small { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container dynamic-interface-hold { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container keepalive-failure { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container loopback-rx-conf-req { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container loopback-rx-echo-reply { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container loopback-rx-echo-req { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container max-configure-exceeded { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container max-passive-retries-exceeded { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container mru-changed { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container negotiation-timeout { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-local-accm { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-local-acfc { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-local-authentication { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-local-endpoint-discriminator { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-local-magic-number { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-local-mrru { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-local-mru { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-local-pfc { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-peer-accm { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-peer-acfc { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-peer-authentication { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-peer-endpoint-discriminator { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-peer-magic-number { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-peer-mrru { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-peer-mru { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-peer-pfc { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-renegotiate-rx-conf-ack { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-renegotiate-rx-conf-nak { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-renegotiate-rx-conf-rej { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-renegotiate-rx-conf-req { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-terminate-code-rej { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-terminate-protocol-reject { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-terminate-term-ack { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-terminate-term-req { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container tunnel-disconnected { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container tunnel-failed { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container license-limit-exceeded { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container link-interface-no-hardware { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container lower-interface-attach-failed { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container lower-interface-down { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container lower-interface-teardown { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container mpls { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container admin-disable { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container failed-to-activate-family-mpls { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container link-down { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container max-configure-exceeded { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container max-passive-retries-exceeded { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-service { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-renegotiate-rx-conf-ack { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-renegotiate-rx-conf-nak { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-renegotiate-rx-conf-rej { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-renegotiate-rx-conf-req { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-terminate-code-rej { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-terminate-term-ack { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-terminate-term-req { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container service-disable { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container stale-stacking { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container network-interface-admin-disable { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-bundle { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-interface { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-link-interface { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-ncps-available { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-network-interface { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-upper-interface { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container osi { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container admin-disable { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container failed-to-activate-family-osi { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container link-down { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container max-configure-exceeded { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container max-passive-retries-exceeded { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-local-align-npdu { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-peer-align-npdu { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container no-service { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-renegotiate-rx-conf-ack { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-renegotiate-rx-conf-nak { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-renegotiate-rx-conf-rej { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-renegotiate-rx-conf-req { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-terminate-code-rej { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-terminate-term-ack { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container peer-terminate-term-req { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container service-disable { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container stale-stacking { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container recovery { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container active-state-cleanup { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container configured-state-cleanup { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container init-state-cleanup { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container terminated-state-cleanup { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container terminating-state-cleanup { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } container session-init-failed { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container subscriber-mgr { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container activation-failed { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container get-credentials-failed { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container link-interface-not-found { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } container set-state-active-failed { description "Terminate-code specification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Radius Acct-Terminate-Cause configuration"; leaf acct-terminate-cause { description "Set value"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable radius"; } } } } } container radius-options { description "RADIUS options"; uses access-radius-options; } container ldap-options { description "Lightweight Directory Access Protocol options"; uses access-ldap-options; } list ldap-server { key name; ordered-by user; description "Lightweight Directory Access Protocol server options"; uses ldap-server-object; } list securid-server { key name; ordered-by user; description "SecurID server configuration"; max-elements 1; uses securid-server-object; } container accounting-backup-options { description "Pending accounting backup-options "; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf max-pending-accounting-stops { description "Max pending accouting stops"; type uint32 { range "1 .. 168000"; } } leaf max-withhold-time { description "Maximum time in mins to hold the pending accounting stops"; units "minutes"; type uint32 { range "60 .. 1440"; } } } container radius { description "RADIUS server and network-element configuration"; uses juniper-radius; } container diameter { description "Diameter server and network-element configuration"; uses juniper-mobile-diameter; } } grouping access-client-name-filter-object { description "Restrictions on client names authenticated on this server"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf domain-name { description "Domain name to match (must be part of username)"; type string; } leaf separator { description "Separator character in domain name"; type string { length 1; } } leaf count { description "Number of separator instances"; default "0"; type uint8 { range "0 .. 255"; } } } grouping access-client-object { leaf name { description "Name of entity requesting access"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-rfc2486 { description "RFC2486 compliance is not enforced"; type empty; } leaf chap-secret { description "CHAP secret"; type unreadable; } leaf pap-password { description "PAP password"; type unreadable; } choice client_type { case case_1 { container ppp { presence "enable ppp"; description "Configuration for Point-to-Point Protocol"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf framed-pool { description "Address pool used to assign an address for the user"; type string { length "1 .. 63"; } } leaf idle-timeout { description "Idle timeout before termination of session"; default "0"; units "seconds"; type uint32 { range "0 .. 4294967295"; } } container ppp-options { presence "enable ppp-options"; description "Point-to-Point Protocol interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf pap { description "Password Authentication Protocol"; type empty; } leaf chap { description "Challenge Handshake Authentication Protocol"; type empty; } } leaf keepalive { description "PPP keepalive interval"; default "10"; units "seconds"; type uint16 { range "0 .. 32767"; } } leaf primary-dns { description "Primary DNS server name"; type string; } leaf secondary-dns { description "Secondary DNS server name"; type string; } leaf primary-wins { description "Primary wins server name"; type string; } leaf secondary-wins { description "Secondary wins server name"; type string; } leaf encapsulation-overhead { description "Encapsulation overhead for Class of Service calculation"; type int8 { range "-63 .. 64"; } } leaf cell-overhead { description "ATM cell overhead for Class of Service calculation"; type empty; } leaf interface-id { description "Interface identifier to look up session information"; type string { length "1 .. 63"; } } leaf framed-ip-address { description "Address to be configured for the user"; type ipv4prefix; } leaf keepalive-retries { description "PPP keepalive retries"; default "10"; type uint16 { range "3 .. 32767"; } } } } case case_2 { container l2tp { presence "enable l2tp"; description "Configuration for Layer 2 Tunneling Protocol"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum-sessions-per-tunnel { description "Maximum number of sessions per L2TP tunnel"; default "0"; type uint16; } leaf interface-id { description "Interface identifier for PPP users missing one"; type string { length "1 .. 63"; } } leaf lcp-renegotiation { description "Force renegotiation of LCP options"; type empty; } leaf local-chap { description "Force local CHAP challenge"; type empty; } leaf aaa-access-profile { description "AAA access profile name"; type string { length "1 .. 64"; } } container multilink { description "Multilink Point-to-Point Protocol command options"; uses multilink-object; } leaf ppp-authentication { description "Method for authenticating client"; type enumeration { enum chap { description "Challenge Handshake Authentication Protocol"; } enum pap { description "Password Authentication Protocol"; } } } leaf shared-secret { description "Shared secret for authenticating peer"; type string { length "1 .. 64"; } } leaf ppp-profile { description "User profile name"; type string; } leaf dynamic-profile { description "Dynamic profile name"; type string; } } } case case_3 { container ike { presence "enable ike"; description "Configuration for dynamic IKE peers"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list allowed-proxy-pair { key "local remote"; ordered-by user; description "List of local and remote proxy identity pairs"; leaf local { description "Local proxy identity"; type ipprefix-only; } leaf remote { description "Remote proxy identity"; type ipprefix-only; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf initiate-dead-peer-detection { description "Initiate dead peer detection"; type empty; } container dead-peer-detection { presence "enable dead-peer-detection"; description "Dead peer detection options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interval { description "Interval at which the DPD messages should be sent"; default "2"; units "seconds"; type uint32 { range "1 .. 180"; } } leaf threshold { description "Maximum number of DPD messages"; default "3"; type uint32 { range "1 .. 10"; } } } container respond-bad-spi { presence "enable respond-bad-spi"; description "Respond to IPsec packets with bad security parameter index (SPI) values"; leaf max-responses { description "Maximum number of times to respond"; default "5"; type uint32 { range "1 .. 30"; } } } choice name { case case_1 { container pre-shared-key { description "Define pre-shared key"; choice key-choice { case case_1 { leaf ascii-text { description "Format as text"; type string { length "1 .. 255"; } } } case case_2 { leaf hexadecimal { description "Format as hexadecimal"; type string { length "1 .. 255"; } } } } } } case case_2 { leaf ike-policy { description "Name of IKE policy"; type string { length "1 .. 32"; } } } } leaf ipsec-policy { description "Name of IPsec policy"; type string { length "1 .. 32"; } } container reverse-route { presence "enable reverse-route"; description "Reverse route parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container preference { description "Preference value"; leaf metric-value { description "Metric value"; type uint32; mandatory true; } presence "enable preference"; } } leaf interface-id { description "Identity of logical service interface pool"; type string { length "1 .. 32"; } mandatory true; } } } } leaf group-profile { description "Group profile name"; type string; } leaf user-group-profile { description "User group profile name"; type string; } container xauth { description "Configure xauth attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ip-address { description "Specify the ip-address for client"; type ipv4prefix; } } leaf-list client-group { description "One or more groups to which the client belongs"; type string; } container firewall-user { description "Client is configured as a firewall user"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf password { description "Password for user"; type string { length "1 .. 128"; } } } } grouping access-ldap-options { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf revert-interval { description "Time after which to revert to primary server"; default "600"; units "seconds"; type uint32 { range "60 .. 4294967295"; } } leaf base-distinguished-name { description "Suffix when assembling user distinguished name (DN) or base DN under which to search for user DN"; type string; mandatory true; } choice search_type { case case_1 { container assemble { presence "enable assemble"; description "Derive user distinguished name from 'common-name' and 'base-distinguished-name'"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf common-name { description "Prefix in user distinguished name (for example, 'cn' or 'uid')"; default "cn"; type string; } } } case case_2 { container search { presence "enable search"; description "Search for user's distinguished name"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf search-filter { description "Filter to use in search (examples: 'cn=' or 'givenName=')"; type string; mandatory true; } container admin-search { presence "enable admin-search"; description "Perform an administrator search to find user's distinguished name"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf distinguished-name { description "Administrator's distinguished name"; type string; mandatory true; } leaf password { description "Administrator password"; type unreadable; mandatory true; } } } } } } grouping access-radius-options { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf revert-interval { description "Time after which to revert to primary server"; default "60"; units "seconds"; type uint32 { range "0 .. 604800"; } } leaf request-rate { description "Maximum number of RADIUS requests sent per second"; default "500"; type uint32 { range "500 .. 4000"; } } leaf interim-rate { description "Maximum number of RADIUS requests sent per second"; default "500"; units "seconds"; type uint32 { range "50 .. 4000"; } } leaf interim-update-tolerance { description "Maximum tolerance for Interim Updates to RADIUS"; default "60"; units "seconds"; type uint32 { range "1 .. 600"; } } } grouping access-radius-server-object { leaf name { description "RADIUS server address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port { description "RADIUS server authentication port number"; default "1812"; type uint16 { range "1 .. 65535"; } } leaf accounting-port { description "Port number to send RADIUS accounting messages"; default "1813"; type uint16 { range "1 .. 65535"; } } leaf dynamic-request-port { description "RADIUS client dynamic request port number"; default "3799"; type uint16 { range "1 .. 65535"; } } leaf secret { description "Shared secret with the RADIUS server"; type unreadable; mandatory true; } leaf timeout { description "Request timeout period"; default "3"; units "seconds"; type uint32 { range "1 .. 90"; } } leaf retry { description "Retry attempts"; default "3"; type uint32 { range "1 .. 10"; } } leaf accounting-timeout { description "Accounting equest timeout period"; default "0"; units "seconds"; type uint32 { range "0 .. 900"; } } leaf accounting-retry { description "Accounting retry attempts"; default "0"; type uint32 { range "0 .. 10"; } } leaf max-outstanding-requests { description "Maximum requests in flight to server"; default "1000"; type uint32 { range "0 .. 2000"; } } leaf source-address { description "Use specified address as source address"; type ipaddr; } leaf routing-instance { description "Use specified routing instance"; type string; } } grouping address-assignment-type { description "Address assignment configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container neighbor-discovery-router-advertisement { description "Designated NDRA pool for this instance"; leaf ndra-name { description "Designated NDRA pool name"; type string { length "1 .. 63"; } } } leaf high-utilization { description "Generate an SNMP trap when address pool use surpasses this percentage"; type uint16 { range "2 .. 99"; } } leaf abated-utilization { description "Generate an SNMP clear trap when address pool use falls below this percentage"; type uint16 { range "1 .. 98"; } } leaf high-utilization-v6 { description "Generate an SNMP trap when address pool use surpasses this percentage"; type uint16 { range "2 .. 99"; } } leaf abated-utilization-v6 { description "Generate an SNMP clear trap when address pool use falls below this percentage"; type uint16 { range "1 .. 98"; } } list pool { key name; ordered-by user; description "Address pool"; leaf name { description "Address pool name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf link { description "Address pool link name"; type string { length "1 .. 63"; } } container family { presence "enable family"; description "Address family"; choice family_type { case case_1 { container inet { presence "enable inet"; description "IPv4"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf network { description "Network address"; type ipv4prefix; mandatory true; } list range { key name; ordered-by user; description "Address range"; leaf name { description "Range name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf low { description "Lower limit of address range"; type ipv4addr; mandatory true; } leaf high { description "Upper limit of address range"; type ipv4addr; mandatory true; } } container dhcp-attributes { description "DHCP options and match criteria"; uses dhcp-attribute-type; } container xauth-attributes { description "Configure xauth attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf primary-dns { description "Specify the primary-dns IP address"; type ipv4prefix; } leaf secondary-dns { description "Specify the secondary-dns IP address"; type ipv4prefix; } leaf primary-wins { description "Specify the primary-wins IP address"; type ipv4prefix; } leaf secondary-wins { description "Specify the secondary-wins IP address"; type ipv4prefix; } } list host { key name; ordered-by user; description "Hostname for static reservations"; leaf name { description "Hostname"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf hardware-address { description "Hardware address"; type mac-addr; mandatory true; } leaf ip-address { description "Reserved address"; type ipv4addr; mandatory true; } } } } case case_2 { container inet6 { presence "enable inet6"; description "IPv6"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf prefix { description "IPv6 network prefix"; type ipv6prefix-mandatory; mandatory true; } list range { key name; ordered-by user; description "IPv6 address range"; leaf name { description "Range name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf low { description "Lower limit of ipv6 address range"; type ipv6prefix-mandatory; } leaf high { description "Upper limit of ipv6 address range"; type ipv6prefix-mandatory; } leaf prefix-length { description "IPv6 delegated prefix length"; type uint32 { range "1 .. 128"; } } } container dhcp-attributes { description "DHCP options and match criteria"; uses dhcp-attribute-type; } } } } } } list location-pool { key name; ordered-by user; description "Location-based IP address pool"; max-elements 10; leaf name { description "Pool name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container family { presence "enable family"; description "Address family"; container inet { description "IPv4 location pool"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list location { key name; description "Relative location of router"; max-elements 32; leaf name { description "Location number"; type uint32 { range "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf address { description "IP address/destination prefix"; type ipv4prefix; mandatory true; } } } } } list mobile-pools { key name; ordered-by user; description "Address pools for mobile subscribers"; max-elements 10000; uses sm-ippool-pool; } list mobile-pool-groups { key name; ordered-by user; description "Address pool groups for mobile subscribers"; uses sm-ippool-group; } } grouping address-pool-object { leaf name { description "Address pool name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice address_choice { case case_1 { leaf address { description "Address or address prefix"; type ipv4prefix; } } case case_2 { container address-range { presence "enable address-range"; description "Range of addresses for pool"; leaf low { description "Lower limit of address range"; type ipv4addr; } leaf high { description "Upper limit of address range"; type ipv4addr; } } } } } grouping dhcp-attribute-type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container option-match { description "Match"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container option-82 { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list circuit-id { key name; ordered-by user; description "Circuit ID portion of the option 82"; leaf name { description "(null)"; type string; } leaf range { description "Range name"; type string; mandatory true; } } list remote-id { key name; ordered-by user; description "Remote ID portion of the option 82"; leaf name { description "(null)"; type string; } leaf range { description "Range name"; type string; mandatory true; } } } } leaf maximum-lease-time { description "Maximum lease time advertised to clients"; units "seconds"; type string; } leaf next-server { description "Next server that clients need to contact"; type ipv4addr; } leaf server-identifier { description "Server Identifier - IP address value"; type ipv4addr; } leaf grace-period { description "Grace period for leases"; units "seconds"; type uint32; } leaf domain-name { description "Domain name advertised to clients"; type string { } } list name-server { key name; ordered-by user; description "Domain name servers available to the client"; leaf name { description "DNS server's IPv4 address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list wins-server { key name; ordered-by user; description "WINS name servers"; leaf name { description "WINS server's IPv4 address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list router { key name; ordered-by user; description "Routers advertised to clients"; leaf name { description "Router's IPv4 address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf boot-file { description "Boot filename advertised to clients"; type string; } leaf boot-server { description "Boot server advertised to clients"; type string { } } leaf tftp-server { description "TFTP server IP address advertised to clients"; type ipv4addr; } leaf netbios-node-type { description "Type of NETBIOS node advertised to clients"; type enumeration { enum b-node { description "Broadcast node"; } enum p-node { description "Peer-to-peer node"; } enum m-node { description "Mixed Node"; } enum h-node { description "Hybrid node"; } } } container sip-server { description "SIP servers to clients"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list name { key name; ordered-by user; description "SIP server domain name available to clients"; leaf name { description "SIP server name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list ip-address { key name; ordered-by user; description "SIP servers list of IPv4 addresses available to the client"; leaf name { description "SIP server's IPv4 address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } leaf sip-server-domain-name { description "SIP server domain name available to clients"; type string { } } list sip-server-address { key name; ordered-by user; description "SIP Servers list of IPv6 addresses available to the client"; leaf name { description "SIP Server's IPv6 address"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list dns-server { key name; ordered-by user; description "Domain name servers available to the client"; leaf name { description "DNS server's IPv6 address"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf propagate-settings { description "Interface name for propagating TCP/IP Settings to pool"; type string; } leaf-list propagate-ppp-settings { description "PPP interface name for propagating DNS/WINS settings"; type interface-name; max-elements 8; } list option { key name; ordered-by user; description "DHCP option"; leaf name { description "DHCP option identifier code"; type uint32; } choice option-type-choice { case case_1 { leaf flag { description "Boolean flag value"; type enumeration { enum true { description "True value"; } enum false { description "False value"; } enum on { description "On value"; } enum off { description "Off value"; } } } } case case_2 { leaf byte { description "Unsigned 8-bit value"; type uint8; } } case case_3 { leaf short { description "Signed 16-bit numeric value"; type int16; } } case case_4 { leaf unsigned-short { description "Unsigned 16-bit numeric value"; type uint16; } } case case_5 { leaf integer { description "Signed 32-bit numeric value"; type int32; } } case case_6 { leaf unsigned-integer { description "Unsigned 32-bit numeric value"; type uint32; } } case case_7 { leaf hex-string { description "Hexadecimal string"; type string { length "1 .. 510"; } } } case case_8 { leaf string { description "Character string value"; type string { length "1 .. 254"; } } } case case_9 { leaf ip-address { description "IP address value"; type ipv4addr; } } case case_10 { leaf ipv6-address { description "IPV6 address value"; type ipv6addr; } } case case_11 { container array { presence "enable array"; description "Array of values"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice option-type-array-choice { case case_1 { leaf-list flag { description "Array of boolean flag values"; type enumeration { enum true { description "True value"; } enum false { description "False value"; } enum on { description "On value"; } enum off { description "Off value"; } } } } case case_2 { leaf-list byte { description "Array of unsigned 8-bit values"; type uint8; } } case case_3 { leaf-list short { description "Array of signed 16-bit numeric values"; type int16; } } case case_4 { leaf-list unsigned-short { description "Array of 16-bit numeric values"; type uint16; } } case case_5 { leaf-list integer { description "Array of signed 32-bit numeric values"; type int32; } } case case_6 { leaf-list unsigned-integer { description "Array of unsigned 32-bit numeric values"; type uint32; } } case case_7 { leaf-list hex-string { description "Hexadecimal string"; type string { length "1 .. 510"; } } } case case_8 { leaf-list string { description "Array of character string values"; type string { length "1 .. 254"; } } } case case_9 { leaf-list ip-address { description "Array of IP address values"; type ipv4addr; } } case case_10 { leaf-list ipv6-address { description "Array of IPv6 address values"; type ipv6addr; } } } } } } } leaf valid-lifetime { description "Valid lifetime advertised to clients"; units "seconds"; type string; } leaf preferred-lifetime { description "Preferred lifetime advertised to clients"; units "seconds"; type string; } leaf t1-percentage { description "T1 time as percentage of preferred lifetime advertised to clients"; units "percent"; type uint32 { range "0 .. 100"; } } leaf t2-percentage { description "T2 time as percentage of preferred lifetime advertised to clients"; units "percent"; type uint32 { range "0 .. 100"; } } } grouping domain-map-type { description "Domain map configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list map { key name; ordered-by user; description "Domain map definitions"; leaf name { description "Domain map name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice aaa_ri_or_ls { case case_1 { leaf aaa-routing-instance { description "Routing instance to be used for applying AAA services"; type string; } } case case_2 { list aaa-logical-system { key name; ordered-by user; description "Logical system to be used for applying AAA services"; max-elements 1; leaf name { description "Logical system name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf aaa-routing-instance { description "Routing instance to be used for applying AAA services"; type string; } } } } leaf access-profile { description "Access profile to be used for applying AAA services"; type string { length "1 .. 64"; } } leaf address-pool { description "Address pool to use for providing address-allocation services"; type string { length "1 .. 63"; } } leaf dynamic-profile { description "Dynamic profile to be used for this client's session"; type string { length "1 .. 80"; } } list padn { key name; ordered-by user; description "PPPoE Active Discovery Network parameters to apply for this client's session"; max-elements 16; leaf name { description "Destination IP address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf mask { description "Destination mask"; type ipv4addr; mandatory true; } leaf metric { description "Metric value"; type uint16 { range "0 .. 255"; } mandatory true; } } choice target_ri_or_ls { case case_1 { leaf target-routing-instance { description "Routing instance the client's session will be mapped to"; type string; } } case case_2 { list target-logical-system { key name; ordered-by user; description "Logical system the client's session will be mapped to"; max-elements 1; leaf name { description "Logical system name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf target-routing-instance { description "Routing instance the client's session will be mapped to"; type string; } } } } leaf strip-domain { description "Enable domain name stripping from the username"; type empty; } leaf tunnel-profile { description "Tunnel profile to be used for this client's session"; type string { length "1 .. 80"; } } leaf tunnel-switch-profile { description "Tunnel switch profile"; type string { length "1 .. 64"; } } } container parse-order { description "Order in which search parsing is conducted (i.e. look for domain-namd or realm-name first)"; choice order { case case_1 { leaf domain-first { description "Search for domain name in username field before searching for realm name"; type empty; } } case case_2 { leaf realm-first { description "Search for realm name in username field before searching for domain name"; type empty; } } } } container delimiter { description "Allowable delimiter characters for domain name separation"; leaf characters { description "Sequence of characters without spaces and commas"; type string { length "1 .. 8"; } } } container parse-direction { description "Domain name parsing direction"; choice direction { case case_1 { leaf right-to-left { description "Parse the username field from right to left to find domain name"; type empty; } } case case_2 { leaf left-to-right { description "Parse the username field from left to right to find domain name"; type empty; } } } } container realm-delimiter { description "Allowable delimiter characters for realm name separation"; leaf characters { description "Sequence of characters without spaces and commas"; type string { length "1 .. 8"; } } } container realm-parse-direction { description "Realm name parsing direction"; choice direction { case case_1 { leaf left-to-right { description "Parse the username field from left to right to find realm name"; type empty; } } case case_2 { leaf right-to-left { description "Parse the username field from right to left to find realm name"; type empty; } } } } } grouping group-profile-object { leaf name { description "Group profile name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container ppp { presence "enable ppp"; description "Configuration for Point-to-Point Protocol"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf framed-pool { description "Address pool used to assign an address for the user"; type string { length "1 .. 63"; } } leaf idle-timeout { description "Idle timeout before termination of session"; default "0"; units "seconds"; type uint32 { range "0 .. 4294967295"; } } container ppp-options { presence "enable ppp-options"; description "Point-to-Point Protocol interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf pap { description "Password Authentication Protocol"; type empty; } leaf chap { description "Challenge Handshake Authentication Protocol"; type empty; } leaf mru { description "The Maximum Receive Unit size in bytes"; type uint32 { range "64 .. 9192"; } } leaf mtu { description "The Maximum Transfer Unit size in bytes"; type string; } container initiate-ncp { description "Enable server initiated NCP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ip { description "Enable server initiated IPNCP"; type empty; } leaf ipv6 { description "Enable server initiated IPv6NCP"; type empty; } leaf dual-stack-passive { description "Disable server initiated IPNCP/IPv6NCP for dual-stack client"; type empty; } } } leaf keepalive { description "PPP keepalive interval"; default "10"; units "seconds"; type uint16 { range "0 .. 32767"; } } leaf primary-dns { description "Primary DNS server name"; type string; } leaf secondary-dns { description "Secondary DNS server name"; type string; } leaf primary-wins { description "Primary wins server name"; type string; } leaf secondary-wins { description "Secondary wins server name"; type string; } leaf encapsulation-overhead { description "Encapsulation overhead for Class of Service calculation"; type int8 { range "-63 .. 64"; } } leaf cell-overhead { description "ATM cell overhead for Class of Service calculation"; type empty; } leaf interface-id { description "Interface identifier to look up session information"; type string { length "1 .. 63"; } } } container l2tp { presence "enable l2tp"; description "Configuration for Layer 2 Tunneling Protocol"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum-sessions-per-tunnel { description "Maximum number of sessions per L2TP tunnel"; default "0"; type uint16; } leaf interface-id { description "Interface identifier for PPP users missing one"; type string { length "1 .. 63"; } } leaf lcp-renegotiation { description "Force renegotiation of LCP options"; type empty; } leaf local-chap { description "Force local CHAP challenge"; type empty; } container multilink { description "Multilink Point-to-Point Protocol command options"; uses multilink-object; } } } grouping gx-plus-definition { description "GX-PLUS configuration definition"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list partition { key name; ordered-by user; description "GX-PLUS partition configuratio"; leaf name { description "GX-PLUS partition name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf diameter-instance { description "GX-PLUS diameter instance"; type string { length "1 .. 63"; } } leaf destination-realm { description "GX-PLUS destination realm"; type string { length "1 .. 255"; } mandatory true; } leaf destination-host { description "GX-PLUS destination host"; type string { length "1 .. 255"; } } } container global { presence "enable global"; description "GX-PLUS global parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf include-ipv6 { description "Send provisioning request for IPv6-only subscribers"; type empty; } leaf max-outstanding-requests { description "Maximum number of outstanding requests"; default "40"; type uint32 { range "2 .. 40"; } } } } grouping juniper-bridge-domains { description "Bridge domains"; leaf name { description "Bridge domain name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf description { description "Text description of bridge domain"; type string { } } leaf domain-type { description "Type of bridge domain"; type enumeration { enum bridge { description "Forwarding instance"; } } } choice vlan_choice { case case_1 { leaf vlan-id { description "IEEE 802.1q VLAN identifier for bridging domain"; type string; } } case case_2 { container vlan-tags { presence "enable vlan-tags"; description "IEEE 802.1q VLAN tags for bridging domain"; leaf outer { description "[tpid.]vlan-id, tpid format is 0xNNNN and is optional"; type string { } mandatory true; } leaf inner { description "[tpid.]vlan-id, tpid format is 0xNNNN and is optional"; type string { } } } } case case_3 { leaf-list vlan-id-list { description "Create bridge-domain for each of the vlan-id specified in the vlan-id-list"; type vlan-range; } } } leaf service-id { description "Service id required if bridge-domain is of type MC-AE and vlan-id all or vlan-id none or vlan-tags"; type uint32 { range "1 .. 65535"; } } leaf domain-id { description "Domain-id for auto derived Route Target"; type uint32 { range "1 .. 15"; } } leaf no-local-switching { description "Disable local switching within CE-facing interfaces"; type empty; } leaf mcae-mac-synchronize { description "Enable IRB MAC synchronization in this bridge domain"; type empty; } leaf mcae-mac-flush { description "Enable MCAE MAC flush in a/s mode for a bridge domain on MCAE link up"; type empty; } leaf no-irb-layer-2-copy { description "Disable transmission of layer-2 copy of packets of irb routing-interface"; type empty; } leaf enable-mac-move-action { description "Enable blocking action due to mac-move in this Bridge Domain"; type empty; } list interface { key name; ordered-by user; description "Interface name for this bridge domain"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf routing-interface { description "Routing interface name for this bridge-domain"; type interface-unit; } container forwarding-options { description "Forwarding options configuration"; uses juniper-bridge-forwarding-options; } container multicast-snooping-options { description "Multicast snooping option configuration"; uses juniper-multicast-snooping-options; } container bridge-options { description "Bridge domain configuration"; uses juniper-protocols-bd; } container protocols { presence "enable protocols"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container igmp-snooping { description "IGMP snooping configuration"; uses juniper-bd-protocols-igmp-snooping; } container mld-snooping { description "MLD snooping configuration"; uses juniper-bd-protocols-mld-snooping; } } container vxlan { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ovsdb-managed { description "Bridge-domain is managed remotely via VXLAN OVSDB Controller"; type empty; } leaf vni { description "VXLAN identifier"; type uint32 { range "1 .. 16777214"; } mandatory true; } presence "enable vxlan"; leaf multicast-group { description "Multicast group registered for VXLAN segment"; type ipv4addr; } leaf encapsulate-inner-vlan { description "Retain inner VLAN in the packet"; type empty; } leaf decapsulate-accept-inner-vlan { description "Accept VXLAN packets with inner VLAN"; type empty; } leaf unreachable-vtep-aging-timer { description "Unreachable VXLAN tunnel endpoint removal timer"; units "seconds"; type uint16 { range "300 .. 1800"; } } leaf ingress-node-replication { description "Enable ingress node replication"; type empty; } } leaf isolated-vlan { description "Isolated VLAN ID for private vlan bridge domain"; type uint32 { range "1 .. 4094"; } } leaf-list community-vlans { description "List of Community VLANs for private vlan bridge domain"; type vlan-range; } } grouping juniper-bd-protocols-igmp-snooping { description "IGMP snooping options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for IGMP Snooping"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum packets { description "Trace all IGMP packets"; } enum query { description "Trace IGMP membership query messages"; } enum report { description "Trace membership report messages"; } enum leave { description "Trace leave group messages (IGMPv2 only)"; } enum group { description "Trace group operations"; } enum client-notification { description "Trace notifications"; } enum host-notification { description "Trace host notifications"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } leaf query-interval { description "When to send host query messages"; default "125"; units "seconds"; type uint32 { range "1 .. 1024"; } } leaf query-response-interval { description "How long to wait for a host query response"; default "10"; units "seconds"; type string { } } leaf query-last-member-interval { description "When to send group query messages"; default "1"; units "seconds"; type string { } } leaf robust-count { description "Expected packet loss on a subnet"; default "2"; type uint32 { range "2 .. 10"; } } leaf learn-pim-router { description "Learn PIM router interfaces from PIM hellos"; type empty; } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } container proxy { presence "enable proxy"; description "Enable proxy mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-address { description "Source IP address to use for proxy"; type ipv4addr; } } list interface { key name; ordered-by user; description "Interface options for IGMP"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf multicast-router-interface { description "Enabling multicast-router-interface on the interface"; type empty; } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } leaf host-only-interface { description "Enable interfaces to be treated as host-side interfaces"; type empty; } leaf group-limit { description "Maximum number of (source,group) per interface"; type uint16 { range "1 .. 65535"; } } container static { description "Static group or source membership"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "IP multicast group address"; leaf name { description "IP multicast group address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list source { key name; ordered-by user; description "IP multicast source address"; leaf name { description "Source address of IP multicast data"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } list vlan { key name; ordered-by user; description "Vlan options"; leaf name { description "Vlan"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf query-interval { description "When to send host query messages"; units "seconds"; type uint32 { range "1 .. 1024"; } } leaf query-response-interval { description "How long to wait for a host query response"; units "seconds"; type string { } } leaf query-last-member-interval { description "When to send group query messages"; units "seconds"; type string { } } leaf robust-count { description "Expected packet loss on a subnet"; type uint32 { range "2 .. 10"; } } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } container proxy { presence "enable proxy"; description "Enable proxy mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-address { description "Source IP address to use for proxy"; type ipv4addr; } } list interface { key name; ordered-by user; description "Interface options for IGMP"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf multicast-router-interface { description "Enabling multicast-router-interface on the interface"; type empty; } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } leaf host-only-interface { description "Enable interfaces to be treated as host-side interfaces"; type empty; } leaf group-limit { description "Maximum number of (source,group) per interface"; type uint16 { range "1 .. 65535"; } } container static { description "Static group or source membership"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "IP multicast group address"; leaf name { description "IP multicast group address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list source { key name; ordered-by user; description "IP multicast source address"; leaf name { description "Source address of IP multicast data"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } list qualified-vlan { key name; ordered-by user; description "VLAN options for qualified-learning"; leaf name { description "VLAN ID of the learning-domain"; type uint32 { range "0 .. 1023"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf query-interval { description "When to send host query messages"; units "seconds"; type uint32 { range "1 .. 1024"; } } leaf query-response-interval { description "How long to wait for a host query response"; units "seconds"; type string { } } leaf query-last-member-interval { description "When to send group query messages"; units "seconds"; type string { } } leaf robust-count { description "Expected packet loss on a subnet"; type uint32 { range "2 .. 10"; } } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } container proxy { presence "enable proxy"; description "Enable proxy mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-address { description "Source IP address to use for proxy"; type ipv4addr; } } list interface { key name; ordered-by user; description "Interface options for IGMP"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf multicast-router-interface { description "Enabling multicast-router-interface on the interface"; type empty; } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } leaf host-only-interface { description "Enable interfaces to be treated as host-side interfaces"; type empty; } leaf group-limit { description "Maximum number of (source,group) per interface"; type uint16 { range "1 .. 65535"; } } container static { description "Static group or source membership"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "IP multicast group address"; leaf name { description "IP multicast group address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list source { key name; ordered-by user; description "IP multicast source address"; leaf name { description "Source address of IP multicast data"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } } } } grouping juniper-bd-protocols-mld-snooping { description "MLD snooping options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for MLD Snooping"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum packets { description "Trace all MLD packets"; } enum query { description "Trace MLD membership query messages"; } enum report { description "Trace membership report messages"; } enum leave { description "Trace leave group messages (MLDv2 only)"; } enum group { description "Trace group operations"; } enum client-notification { description "Trace notifications"; } enum host-notification { description "Trace host notifications"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } leaf query-interval { description "When to send host query messages"; default "125"; units "seconds"; type uint32 { range "1 .. 1024"; } } leaf query-response-interval { description "How long to wait for a host query response"; default "10"; units "seconds"; type string { } } leaf query-last-member-interval { description "When to send group query messages"; default "1"; units "seconds"; type string { } } leaf robust-count { description "Expected packet loss on a subnet"; default "2"; type uint32 { range "2 .. 10"; } } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } container proxy { presence "enable proxy"; description "Enable proxy mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-address { description "Source IP address to use for proxy"; type ipv6addr; mandatory true; } } list interface { key name; ordered-by user; description "Interface options for MLD"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf multicast-router-interface { description "Enabling multicast-router-interface on the interface"; type empty; } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } leaf host-only-interface { description "Enable interfaces to be treated as host-side interfaces"; type empty; } leaf group-limit { description "Maximum number of (source,group) per interface"; type uint16 { range "1 .. 65535"; } } container static { description "Static group or source membership"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "IP multicast group address"; leaf name { description "IP multicast group address"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list source { key name; ordered-by user; description "IP multicast source address"; leaf name { description "Source address of IP multicast data"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } list vlan { key name; ordered-by user; description "Vlan options"; leaf name { description "Vlan of the bridge-domain"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf query-interval { description "When to send host query messages"; units "seconds"; type uint32 { range "1 .. 1024"; } } leaf query-response-interval { description "How long to wait for a host query response"; units "seconds"; type string { } } leaf query-last-member-interval { description "When to send group query messages"; units "seconds"; type string { } } leaf robust-count { description "Expected packet loss on a subnet"; type uint32 { range "2 .. 10"; } } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } container proxy { presence "enable proxy"; description "Enable proxy mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-address { description "Source IP address to use for proxy"; type ipv6addr; mandatory true; } } list interface { key name; ordered-by user; description "Interface options for MLD"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf multicast-router-interface { description "Enabling multicast-router-interface on the interface"; type empty; } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } leaf host-only-interface { description "Enable interfaces to be treated as host-side interfaces"; type empty; } leaf group-limit { description "Maximum number of (source,group) per interface"; type uint16 { range "1 .. 65535"; } } container static { description "Static group or source membership"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "IP multicast group address"; leaf name { description "IP multicast group address"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list source { key name; ordered-by user; description "IP multicast source address"; leaf name { description "Source address of IP multicast data"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } list qualified-vlan { key name; ordered-by user; description "VLAN options for qualified-learning"; leaf name { description "VLAN ID of the learning-domain"; type uint32 { range "0 .. 1023"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf query-interval { description "When to send host query messages"; units "seconds"; type uint32 { range "1 .. 1024"; } } leaf query-response-interval { description "How long to wait for a host query response"; units "seconds"; type string { } } leaf query-last-member-interval { description "When to send group query messages"; units "seconds"; type string { } } leaf robust-count { description "Expected packet loss on a subnet"; type uint32 { range "2 .. 10"; } } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } container proxy { presence "enable proxy"; description "Enable proxy mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-address { description "Source IP address to use for proxy"; type ipv6addr; mandatory true; } } list interface { key name; ordered-by user; description "Interface options for MLD"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf multicast-router-interface { description "Enabling multicast-router-interface on the interface"; type empty; } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } leaf host-only-interface { description "Enable interfaces to be treated as host-side interfaces"; type empty; } leaf group-limit { description "Maximum number of (source,group) per interface"; type uint16 { range "1 .. 65535"; } } container static { description "Static group or source membership"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "IP multicast group address"; leaf name { description "IP multicast group address"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list source { key name; ordered-by user; description "IP multicast source address"; leaf name { description "Source address of IP multicast data"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } } } } grouping juniper-bridge-forwarding-options { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container filter { description "Filtering for bridge forwarding table"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of input filter to apply for forwarded packets"; type string; } leaf output { description "Name of output filter to apply for forwarded packets"; type string; } } container flood { description "Filtering for bridge flood table"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of input filter to apply for bridge flood packets"; type string; } } container dhcp-security { description "Dynamic ARP Inspection configuration"; uses jdhcp-security-type; } } grouping jdhcp-security-type { description "DHCP access security configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-dhcp-snooping { description "Disable dhcp snooping"; type empty; } leaf arp-inspection { description "Enable dynamic ARP inspection"; type empty; } leaf ip-source-guard { description "Enable IP source guard"; type empty; } leaf no-dhcpv6-snooping { description "Disable DHCPv6 snooping"; type empty; } leaf neighbor-discovery-inspection { description "Enable neighbor discovery inspection"; type empty; } leaf ipv6-source-guard { description "Enable IPv6 source guard"; type empty; } list group { key name; ordered-by user; description "Define a DHCP security group for overriding defaults"; uses ds-group; } container option-82 { description "DHCP option-82 processing for snooped packets"; uses security-option-82-type; } container dhcpv6-options { description "DHCPv6 option processing for snooped packets"; uses security-dhcpv6-options-type; } } grouping ds-group { description "DHCP security groups"; leaf name { description "Group name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container overrides { description "DHCP override processing"; uses ds-override-type; } list interface { key name; description "One or more interfaces"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list static-ip { key name; ordered-by user; description "Static IP address configuration"; uses ip-mac-static; } list static-ipv6 { key name; ordered-by user; description "Static IPv6 address configuration"; uses ipv6-mac-static; } } } grouping ds-override-type { description "Dynamic ARP Inspection override processing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf trusted { description "Make this trusted group of interfaces"; type empty; } leaf untrusted { description "Make this untrusted group of interfaces"; type empty; } leaf no-option82 { description "Make this group of interfaces not to add option82"; type empty; } leaf no-option37 { description "Make this group of interfaces not to add option37"; type empty; } leaf no-option18 { description "Make this group of interfaces not to add option18"; type empty; } leaf no-option16 { description "Make this group of interfaces not to add option16"; type empty; } leaf no-dhcpv6-options { description "Make this group of interfaces not to add any DHCPv6 options"; type empty; } } grouping ip-mac-static { leaf name { description "IP address"; type ipaddr; } leaf mac { description "MAC address"; type mac-addr; mandatory true; } } grouping ipv6-mac-static { leaf name { description "IP address"; type ipv6addr; } leaf mac { description "MAC address"; type mac-addr; mandatory true; } } grouping juniper-class-of-service-options { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container forwarding-policy { description "Class-of-service forwarding policy"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list next-hop-map { key name; ordered-by user; description "Class-of-service next-hop map"; leaf name { description "Name to identify next-hop map"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list forwarding-class { key name; ordered-by user; description "Forwarding class from which to map"; leaf name { description "Forwarding class"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list next-hop { description "Next-hop identifier to which to map"; type ipaddr-or-interface; } leaf-list lsp-next-hop { description "Regular expression for LSP next hop"; type string; } leaf non-lsp-next-hop { description "Any non-RSVP LSP next hop"; type empty; } leaf discard { description "Discard next hop"; type empty; } } container forwarding-class-default { description "Next Hop For traffic which does not meet any FC in the next-hop-map"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list next-hop { description "Next-hop identifier to which to map"; type ipaddr-or-interface; } leaf-list lsp-next-hop { description "Regular expression for LSP next hop"; type string; } leaf non-lsp-next-hop { description "Any non-RSVP LSP next hop"; type empty; } leaf discard { description "Discard next hop"; type empty; } } } list class { key name; ordered-by user; description "Class-of-service description"; leaf name { description "Name to identify class of service"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container classification-override { description "Define classification overrides"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf forwarding-class { description "Forwarding class name"; type string { } } } } } container classifiers { description "Classify incoming packets based on code point value"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list dscp { key name; ordered-by user; description "Differentiated Services code point classifier"; leaf name { description "Classifier name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf import { description "Include this classifier in this definition"; type string { length "1 .. 64"; } } list forwarding-class { key name; ordered-by user; description "Define a classification of code point aliases"; leaf name { description "Forwarding class name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list loss-priority { key name; ordered-by user; description "Classify code points to a loss priority"; leaf name { description "(null)"; type enumeration { enum low { description "Code points to classify to loss priority low"; } enum high { description "Code points to classify to loss priority high"; } enum medium-low { description "Code points to classify to loss priority medium-low"; } enum medium-high { description "Code points to classify to loss priority medium-high"; } } } leaf-list code-points { description "List of code point aliases and/or bit strings"; type string; } } } } list dscp-ipv6 { key name; ordered-by user; description "Differentiated Services code point classifier IPv6"; leaf name { description "Classifier name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf import { description "Include this classifier in this definition"; type string { length "1 .. 64"; } } list forwarding-class { key name; ordered-by user; description "Define a classification of code point aliases"; leaf name { description "Forwarding class name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list loss-priority { key name; ordered-by user; description "Classify code points to a loss priority"; leaf name { description "(null)"; type enumeration { enum low { description "Code points to classify to loss priority low"; } enum high { description "Code points to classify to loss priority high"; } enum medium-low { description "Code points to classify to loss priority medium-low"; } enum medium-high { description "Code points to classify to loss priority medium-high"; } } } leaf-list code-points { description "List of code point aliases and/or bit strings"; type string; } } } } list exp { key name; ordered-by user; description "MPLS EXP classifier"; leaf name { description "Classifier name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf import { description "Include this classifier in this definition"; type string { length "1 .. 64"; } } list forwarding-class { key name; ordered-by user; description "Define a classification of code point aliases"; leaf name { description "Forwarding class name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list loss-priority { key name; ordered-by user; description "Classify code points to a loss priority"; leaf name { description "(null)"; type enumeration { enum low { description "Code points to classify to loss priority low"; } enum high { description "Code points to classify to loss priority high"; } enum medium-low { description "Code points to classify to loss priority medium-low"; } enum medium-high { description "Code points to classify to loss priority medium-high"; } } } leaf-list code-points { description "List of code point aliases and/or bit strings"; type string; } } } } list ieee-802.1 { key name; ordered-by user; description "IEEE-802.1 classifier"; leaf name { description "Classifier name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf import { description "Include this classifier in this definition"; type string { length "1 .. 64"; } } list forwarding-class { key name; ordered-by user; description "Define a classification of code point aliases"; leaf name { description "Forwarding class name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list loss-priority { key name; ordered-by user; description "Classify code points to a loss priority"; leaf name { description "(null)"; type enumeration { enum low { description "Code points to classify to loss priority low"; } enum high { description "Code points to classify to loss priority high"; } enum medium-low { description "Code points to classify to loss priority medium-low"; } enum medium-high { description "Code points to classify to loss priority medium-high"; } } } leaf-list code-points { description "List of code point aliases and/or bit strings"; type string; } } } } list inet-precedence { key name; ordered-by user; description "IPv4 precedence classifier"; leaf name { description "Classifier name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf import { description "Include this classifier in this definition"; type string { length "1 .. 64"; } } list forwarding-class { key name; ordered-by user; description "Define a classification of code point aliases"; leaf name { description "Forwarding class name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list loss-priority { key name; ordered-by user; description "Classify code points to a loss priority"; leaf name { description "(null)"; type enumeration { enum low { description "Code points to classify to loss priority low"; } enum high { description "Code points to classify to loss priority high"; } enum medium-low { description "Code points to classify to loss priority medium-low"; } enum medium-high { description "Code points to classify to loss priority medium-high"; } } } leaf-list code-points { description "List of code point aliases and/or bit strings"; type string; } } } } list ieee-802.1ad { key name; ordered-by user; description "IEEE-802.1ad (DEI) classifier"; leaf name { description "Classifier name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf import { description "Include this classifier in this definition"; type string { length "1 .. 64"; } } list forwarding-class { key name; ordered-by user; description "Define a classification of code point aliases"; leaf name { description "Forwarding class name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list loss-priority { key name; ordered-by user; description "Classify code points to a loss priority"; leaf name { description "(null)"; type enumeration { enum low { description "Code points to classify to loss priority low"; } enum high { description "Code points to classify to loss priority high"; } enum medium-low { description "Code points to classify to loss priority medium-low"; } enum medium-high { description "Code points to classify to loss priority medium-high"; } } } leaf-list code-points { description "List of code point aliases and/or bit strings"; type string; } } } } } container traffic-class-map { description "Packet input priority map based on incoming packets code point"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list inet-precedence { key name; ordered-by user; description "IPv4 precedence traffic-class-map"; leaf name { description "Traffic-class-map name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list traffic-class { key name; ordered-by user; description "Map code points to a input packet priority"; leaf name { description "(null)"; type enumeration { enum real-time { description "Code points map to traffic-class real-time"; } enum network-control { description "Code points map to traffic-class network-control"; } enum best-effort { description "Code points map to traffic-class best-effort"; } } mandatory true; } leaf-list code-points { description "List of code point aliases and/or bit strings"; type string; } } } list dscp { key name; ordered-by user; description "Differentiated Services code point traffic-class-map"; leaf name { description "Traffic-class-map name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list traffic-class { key name; ordered-by user; description "Map code points to a input packet priority"; leaf name { description "(null)"; type enumeration { enum real-time { description "Code points map to traffic-class real-time"; } enum network-control { description "Code points map to traffic-class network-control"; } enum best-effort { description "Code points map to traffic-class best-effort"; } } mandatory true; } leaf-list code-points { description "List of code point aliases and/or bit strings"; type string; } } } list exp { key name; ordered-by user; description "MPLS EXP traffic-class-map"; leaf name { description "Traffic-class-map name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list traffic-class { key name; ordered-by user; description "Map code points to a input packet priority"; leaf name { description "(null)"; type enumeration { enum real-time { description "Code points map to traffic-class real-time"; } enum network-control { description "Code points map to traffic-class network-control"; } enum best-effort { description "Code points map to traffic-class best-effort"; } } mandatory true; } leaf-list code-points { description "List of code point aliases and/or bit strings"; type string; } } } list ieee-802.1 { key name; ordered-by user; description "IEEE-802.1 traffic-class-map"; leaf name { description "Traffic-class-map name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list traffic-class { key name; ordered-by user; description "Map code points to a input packet priority"; leaf name { description "(null)"; type enumeration { enum real-time { description "Code points map to traffic-class real-time"; } enum network-control { description "Code points map to traffic-class network-control"; } enum best-effort { description "Code points map to traffic-class best-effort"; } } mandatory true; } leaf-list code-points { description "List of code point aliases and/or bit strings"; type string; } } } list ieee-802.1ad { key name; ordered-by user; description "IEEE-802.1ad (DEI) traffic-class-map"; leaf name { description "Traffic-class-map name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list traffic-class { key name; ordered-by user; description "Map code points to a input packet priority"; leaf name { description "(null)"; type enumeration { enum real-time { description "Code points map to traffic-class real-time"; } enum network-control { description "Code points map to traffic-class network-control"; } enum best-effort { description "Code points map to traffic-class best-effort"; } } mandatory true; } leaf-list code-points { description "List of code point aliases and/or bit strings"; type string; } } } } list policy-map { key name; ordered-by user; description "Policy-map describing the packet marking rule"; max-elements 65535; leaf name { description "Policy-map name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list inet-precedence { key name; ordered-by user; description "IPv4 INET-Precedence Policy-map code point"; leaf name { description "Optional flag to specify marking behavior"; type enumeration { enum proto-ip { description "Default marking behavior"; } enum proto-mpls { description "Enable IP header marking for IP->MPLS packet"; } } mandatory true; } leaf code-point { description "List of code point aliases and/or bit strings"; type string { } mandatory true; } } list dscp { key name; ordered-by user; description "IPv4 Differentiated Services Policy-map code point"; leaf name { description "Optional flag to specify marking behavior"; type enumeration { enum proto-ip { description "Default marking behavior"; } enum proto-mpls { description "Enable IP header marking for IP->MPLS packet"; } } mandatory true; } leaf code-point { description "List of code point aliases and/or bit strings"; type string { } mandatory true; } } list dscp-ipv6 { key name; ordered-by user; description "IPv6 Differentiated Services Policy-map code point"; leaf name { description "Optional flag to specify marking behavior"; type enumeration { enum proto-ip { description "Default marking behavior"; } enum proto-mpls { description "Enable IP header marking for IP->MPLS packet"; } } mandatory true; } leaf code-point { description "List of code point aliases and/or bit strings"; type string { } mandatory true; } } list exp { key name; ordered-by user; description "MPLS EXP Policy-map code point"; leaf name { description "Optional flag to specify marking behavior"; type enumeration { enum all-label { description "Default marking behavior"; } enum outer-label { description "Marking on only outer MPLS label"; } } mandatory true; } leaf code-point { description "List of code point aliases and/or bit strings"; type string { } mandatory true; } } list ieee-802.1 { key name; ordered-by user; description "IEEE-802.1 Policy-map code point"; leaf name { description "Optional flag to specify marking behavior"; type enumeration { enum outer { description "Marking on outer VLAN tag"; } enum outer-and-inner { description "Marking on both outer and inner VLAN tag"; } } mandatory true; } leaf code-point { description "List of code point aliases and/or bit strings"; type string { } mandatory true; } } list ieee-802.1ad { key name; ordered-by user; description "IEEE-802.1ad Policy-map code point"; leaf name { description "Optional flag to specify marking behavior"; type enumeration { enum outer { description "Marking on outer VLAN tag"; } enum outer-and-inner { description "Marking on both outer and inner VLAN tag"; } } mandatory true; } leaf code-point { description "IEEE-802.1ad (DEI) Policy-map code point"; type string { } mandatory true; } } } list forwarding-class-map { key name; ordered-by user; description "Map forwarding class to queue number for interfaces"; leaf name { description "Interface specific forwarding class name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list class { key name; ordered-by user; description "Forwarding class"; leaf name { description "Name of forwarding class"; type string { length "1 .. 64"; } } leaf queue-num { description "Queue number"; type uint32 { range "0 .. 7"; } mandatory true; } leaf restricted-queue { description "Restricted queue number"; type uint32 { range "0 .. 3"; } } } } container loss-priority-maps { description "Map loss priority of incoming packets based on code point value"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list frame-relay-de { key name; ordered-by user; description "Frame relay discard eligible bit loss priority map"; leaf name { description "Loss priority map name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list loss-priority { key name; ordered-by user; description "Map code points to a loss priority"; leaf name { description "(null)"; type enumeration { enum low { description "Code points to classify to low loss priority"; } enum high { description "Code points to classify to high loss priority"; } enum medium-low { description "Code points to classify to medium-low loss priority"; } enum medium-high { description "Code points to classify to medium-high loss priority"; } } } leaf-list code-points { description "List of bit strings"; type string; } } } } container loss-priority-rewrites { description "Rewrite code point of outgoing packet based on loss priority"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list frame-relay-de { key name; ordered-by user; description "Frame relay discard eligible bit loss priority rewrite"; leaf name { description "Loss priority rewrite name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list loss-priority { key name; ordered-by user; description "Code point marking based on loss priority"; leaf name { description "(null)"; type enumeration { enum low { description "Marking when loss priority is low"; } enum high { description "Marking when loss priority is high"; } enum medium-low { description "Marking when loss priority is medium-low"; } enum medium-high { description "Marking when loss priority is medium-high"; } } } leaf code-point { description "Code point aliases or bit string"; type string { } mandatory true; } } } } container code-point-aliases { description "Mapping of code point aliases to bit strings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list dscp { key name; ordered-by user; description "Differentiated Services code point aliases"; leaf name { description "DSCP alias name"; type string { } } leaf bits { description "DSCP 6-bit pattern"; type string { } mandatory true; } } list dscp-ipv6 { key name; ordered-by user; description "Differentiated Services code point aliases IPv6"; leaf name { description "DSCP IPv6 alias name"; type string { } } leaf bits { description "DSCP 6-bit pattern"; type string { } mandatory true; } } list exp { key name; ordered-by user; description "MPLS EXP code point aliases"; leaf name { description "EXP alias name"; type string { } } leaf bits { description "EXP 3-bit pattern"; type string { } mandatory true; } } list ieee-802.1 { key name; ordered-by user; description "IEEE-802.1 code point aliases"; leaf name { description "IEEE-802.1 alias name"; type string { } } leaf bits { description "IEEE-802.1 3-bit pattern"; type string { } mandatory true; } } list inet-precedence { key name; ordered-by user; description "IPv4 precedence code point aliases"; leaf name { description "IPv4 precedence alias name"; type string { } } leaf bits { description "IPv4 precedence 3-bit pattern"; type string { } mandatory true; } } list ieee-802.1ad { key name; ordered-by user; description "IEEE-802.1ad (DEI) code point aliases"; leaf name { description "IEEE-802.1ad (DEI) alias name"; type string { } } leaf bits { description "IEEE-802.1ad (DEI) 4-bit pattern"; type string { } mandatory true; } } } container translation-table { description "Translation table"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list to-802.1p-from-dscp { key name; ordered-by user; description "DSCP to 802.1 translation table"; leaf name { description "Translation table name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list to-code-point { key name; ordered-by user; description "IEEE 802.1 code point"; leaf name { description "IEEE 802.1 code point"; type string { } } leaf-list from-code-points { description "DSCP code point"; type string; } } } list to-inet-precedence-from-inet-precedence { key name; ordered-by user; description "INET PRECEDENCE to INET PRECEDENCE translation table"; leaf name { description "Translation table name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list to-code-point { key name; ordered-by user; description "INET PRECEDENCE code point"; leaf name { description "INET PRECEDENCE code point"; type string { } } leaf-list from-code-points { description "INET PRECEDENCE code point"; type string; } } } list to-dscp-from-dscp { key name; ordered-by user; description "DSCP to DSCP translation table"; leaf name { description "Translation table name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list to-code-point { key name; ordered-by user; description "DSCP code point"; leaf name { description "DSCP code point"; type string { } } leaf-list from-code-points { description "DSCP code point"; type string; } } } list to-dscp-ipv6-from-dscp-ipv6 { key name; ordered-by user; description "DSCP-IPV6 to DSCP-IPV6 translation table"; leaf name { description "Translation table name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list to-code-point { key name; ordered-by user; description "DSCP-IPV6 code point"; leaf name { description "DSCP-IPV6 code point"; type string { } } leaf-list from-code-points { description "DSCP-IPV6 code point"; type string; } } } list to-exp-from-exp { key name; ordered-by user; description "EXP to EXP translation table"; leaf name { description "Translation table name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list to-code-point { key name; ordered-by user; description "EXP code point"; leaf name { description "EXP code point"; type string { } } leaf-list from-code-points { description "EXP code point"; type string; } } } } container host-outbound-traffic { description "Classify and mark host traffic to forwarding engine"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf forwarding-class { description "Classification of host traffic to forwarding engine"; type string { length "1 .. 64"; } } leaf dscp-code-point { description "Static DSCP code point of egress host traffic"; type string { } } container translation-table { description "Translation table for host outbound packets"; leaf to-802.1p-from-dscp { description "DSCP to 802.1 translation table"; type string { length "1 .. 64"; } mandatory true; } presence "enable translation-table"; } container tcp { presence "enable tcp"; description "Settings for host outbound TCP packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf raise-internet-control-priority { description "Place packets with IP Precedence set to Internet control into Q3 (network-control)"; type empty; } } container ieee-802.1 { presence "enable ieee-802.1"; description "Mark IEEE 802.1p for host output traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf rewrite-rules { description "Mark IEEE 802.1p for host outbound traffic using rewrite-rules"; type empty; } leaf default { description "Mark IEEE 802.1p for host outbound traffic default value"; type string { } } } } list drop-profiles { key name; ordered-by user; description "Random Early Drop (RED) data point map"; leaf name { description "Drop profile name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list fill-level { key name; ordered-by user; description "Fill-level value of data point"; leaf name { description "Percentage the queue is full"; type uint32 { range "0 .. 100"; } } leaf drop-probability { description "Probability packet will be dropped"; type uint32 { range "0 .. 100"; } } } container interpolate { description "Data points interpolated"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list fill-level { description "Data points for queue full percentage"; type uint32 { range "0 .. 100"; } } leaf-list drop-probability { description "Data points for packet drop probability"; type uint32 { range "0 .. 100"; } } } } list adaptive-shapers { key name; ordered-by user; description "Define the list of trigger types and associated rates"; leaf name { description "Adaptive shaper name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list trigger { key name; ordered-by user; description "List of trigger types"; leaf name { description "(null)"; type enumeration { enum becn { description "Backward explicit congestion notification"; } } } container shaping-rate { description "Shaping rate for the trigger"; choice rate-choice { case case_1 { leaf absolute-rate { description "Shaping rate as an absolute rate"; units "bits per second"; type string; } } case case_2 { leaf percent { description "Shaping rate as a percentage"; type uint32 { range "1 .. 100"; } } } } } } } list virtual-channels { key name; ordered-by user; description "Define the list of virtual channels"; leaf name { description "Virtual channel name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list virtual-channel-groups { key name; ordered-by user; description "Define list of virtual channel groups"; leaf name { description "Virtual channel group name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list channel { key name; ordered-by user; description "Configure virtual channel for this group"; leaf name { description "Virtual channel group name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf scheduler-map { description "Scheduler map applied to this virtual channel"; type string { length "1 .. 64"; } mandatory true; } container shaping-rate { description "Shaping rate for the trigger"; choice rate-choice { case case_1 { leaf absolute-rate { description "Adaptive shaping rate as an absolute rate"; units "bits per second"; type string; } } case case_2 { leaf percent { description "Adaptive shaping rate as a percentage"; type uint32 { range "1 .. 100"; } } } } } leaf default { description "Default virtual channel"; type empty; } } } leaf copy-plp-all { description "Turn on loss-precedence copying including IP multicast"; type empty; } leaf tri-color { description "Enable tricolor marking"; type empty; } container shared-buffer { description "Shared buffer configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf percent { description "Percentage of shared buffer to be used"; type uint32 { range "5 .. 100"; } } container ingress { description "Shared buffer configuration at ingress"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf percent { description "Percentage of shared buffer to be used at ingress"; type uint32 { range "0 .. 100"; } } list buffer-partition { key name; ordered-by user; description "Buffer-partition"; leaf name { description "Buffer-partition name"; type string { } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf percent { description "Percentage of ingress shared buffer to be used"; type uint32 { range "0 .. 100"; } } leaf dynamic-threshold { description "Threshold for maximum buffer share for a queue at ingress buffer-partition"; type uint32 { range "0 .. 9"; } } } } container egress { description "Shared buffer configuration at egress"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf percent { description "Percentage of shared buffer to be used at egress"; type uint32 { range "0 .. 100"; } } list buffer-partition { key name; ordered-by user; description "Buffer-partition"; leaf name { description "Buffer-partition name"; type string { } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf percent { description "Percentage of egress shared buffer to be used"; type uint32 { range "0 .. 100"; } } leaf dynamic-threshold { description "Threshold for maximum buffer share for a queue at egress buffer-partition"; type uint32 { range "0 .. 9"; } } } } list node-group { key name; description "Node group to apply configuration to"; leaf name { description "Node group identifier"; type string { length "1 .. 254"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container ingress { description "Shared buffer configuration at ingress"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf percent { description "Percentage of shared buffer to be used at ingress"; type uint32 { range "0 .. 100"; } } list buffer-partition { key name; ordered-by user; description "Buffer-partition"; leaf name { description "Buffer-partition name"; type string { } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf percent { description "Percentage of ingress shared buffer to be used"; type uint32 { range "0 .. 100"; } mandatory true; } } } container egress { description "Shared buffer configuration at ingress"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf percent { description "Percentage of shared buffer to be used at egress"; type uint32 { range "0 .. 100"; } } list buffer-partition { key name; ordered-by user; description "Buffer-partition"; leaf name { description "Buffer-partition name"; type string { } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf percent { description "Percentage of egress shared buffer to be used"; type uint32 { range "0 .. 100"; } mandatory true; } } } } } container forwarding-classes { description "One or more mappings of forwarding class to queue number"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list class { key name; ordered-by user; description "Forwarding class to map to queue number"; max-elements 16; leaf name { description "Name of forwarding class"; type string { length "1 .. 64"; } } leaf queue-num { description "Queue number"; type uint32 { range "0 .. 7"; } mandatory true; } leaf priority { description "Fabric priority"; type enumeration { enum low { description "Low fabric priority"; } enum high { description "High fabric priority"; } } } leaf policing-priority { description "Policing priority for hierarchical policers"; type enumeration { enum normal { description "Normal policing priority"; } enum premium { description "Premium policing priority"; } } } leaf no-loss { description "This is no traffic loss class"; type empty; } leaf spu-priority { description "SPU priority"; type enumeration { enum low { description "Low spu priority"; } enum high { description "High spu priority"; } } } } list queue { key name; ordered-by user; description "Queue number to map to forwarding class"; leaf name { description "Queue number"; type uint32 { range "0 .. 7"; } } leaf class-name { description "Forwarding class name"; type string { length "1 .. 64"; } mandatory true; } leaf priority { description "Fabric priority"; type enumeration { enum low { description "Fabric priority low"; } enum high { description "Fabric priority high"; } } } leaf policing-priority { description "Policing priority for hierarchical policers"; type enumeration { enum normal { description "Normal policing priority"; } enum premium { description "Premium policing priority"; } } } } } container restricted-queues { description "Map forwarding classes to restricted queues"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list forwarding-class { key name; ordered-by user; description "Forwarding class to map to a restricted queue"; leaf name { description "Forwarding class name"; type string { length "1 .. 64"; } mandatory true; } leaf rqueue-num { description "Restricted queue number"; type uint32 { range "0 .. 3"; } } } } list traffic-control-profiles { key name; ordered-by user; description "Traffic shaping and scheduling profiles"; leaf name { description "Traffic control profile name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf scheduler-map { description "Mapping of forwarding classes to packet schedulers"; type string { length "1 .. 64"; } } leaf strict-priority-scheduler { description "Enable strict priority scheduler."; type empty; } leaf atm-service { description "ATM service category"; type enumeration { enum cbr { description "Constant bit rate"; } enum rtvbr { description "Real-time variable bit rate"; } enum nrtvbr { description "Non-real-time variable bit rate"; } } } leaf peak-rate { description "ATM Peak Cell Rate (PCR)"; units "cps"; type string; } leaf sustained-rate { description "ATM Sustained Cell Rate (SCR)"; units "cps"; type string; } leaf max-burst-size { description "ATM Maximum Burst Size (MBS)"; units "cells"; type uint64 { range "1 .. 4000"; } } container shaping-rate { description "Shaping rate"; choice shaping_rate_choice { case case_1 { leaf rate { description "Shaping rate as an absolute rate"; units "bits per second"; type string; } } case case_2 { leaf percent { description "Shaping rate as a percentage"; type uint32 { range "1 .. 100"; } } } } leaf burst-size { description "Shaping rate burst size"; units "bytes"; type string; } } container overhead-accounting { description "Overhead accounting"; leaf mode { description "(null)"; type string { length "1 .. 64"; } } leaf bytes { description "Byte adjust value"; type int32 { range "-120 .. 124"; } } leaf frame-mode-bytes { description "Overhead bytes when in frame-mode"; type int32 { range "-120 .. 124"; } } leaf cell-mode-bytes { description "Overhead bytes when in cell-mode"; type int32 { range "-120 .. 124"; } } } container shaping-rate-priority-high { description "Shaping rate for high priority traffic"; leaf rate { description "Shaping rate in bits per second"; units "bits per second"; type string; } leaf burst-size { description "Shaping rate burst size"; units "bytes"; type string; } } container shaping-rate-priority-medium { description "Shaping rate for medium priority traffic"; leaf rate { description "Shaping rate in bits per second"; units "bits per second"; type string; } leaf burst-size { description "Shaping rate burst size"; units "bytes"; type string; } } container shaping-rate-priority-low { description "Shaping rate for low priority traffic"; leaf rate { description "Shaping rate in bits per second"; units "bits per second"; type string; } leaf burst-size { description "Shaping rate burst size"; units "bytes"; type string; } } container shaping-rate-excess-high { description "Shaping rate for excess high traffic"; leaf rate { description "Shaping rate in bits per second"; units "bits per second"; type string; } leaf burst-size { description "Shaping rate burst size"; units "bytes"; type string; } } container shaping-rate-excess-low { description "Shaping rate for excess low traffic"; leaf rate { description "Shaping rate in bits per second"; units "bits per second"; type string; } leaf burst-size { description "Shaping rate burst size"; units "bytes"; type string; } } container guaranteed-rate { description "Guaranteed rate"; choice guaranteed_rate_choice { case case_1 { leaf rate { description "Guaranteed rate as an absolute rate"; units "bits per second"; type string; } } case case_2 { leaf percent { description "Guaranteed rate as a percentage"; type uint32 { range "1 .. 100"; } } } } leaf burst-size { description "Guaranteed rate burst size"; units "bytes"; type string; } } container excess-rate { description "Excess bandwidth sharing proportion"; choice excess_rate_choice { case case_1 { leaf proportion { description "Excess rate as a proportion"; type uint32 { range "0 .. 1000"; } } } case case_2 { leaf percent { description "Excess rate as a percentage"; type uint32 { range "1 .. 100"; } } } } } container excess-rate-high { description "Excess bandwidth sharing for excess-high priority"; choice excess_rate_choice { case case_1 { leaf proportion { description "Excess rate as a proportion"; type uint32 { range "0 .. 1000"; } } } case case_2 { leaf percent { description "Excess rate as a percentage"; type uint32 { range "1 .. 100"; } } } } } container excess-rate-low { description "Excess bandwidth sharing for excess-low priority"; choice excess_rate_choice { case case_1 { leaf proportion { description "Excess rate as a proportion"; type uint32 { range "0 .. 1000"; } } } case case_2 { leaf percent { description "Excess rate as a percentage"; type uint32 { range "1 .. 100"; } } } } } choice delay_buffer_sizing { case case_1 { container delay-buffer-rate { description "Delay buffer rate"; choice delay_buffer_rate_choice { case case_1 { leaf rate { description "Delay buffer rate as an absolute rate"; units "bits per second"; type string; } } case case_2 { leaf percent { description "Delay buffer rate as a percentage"; type uint32 { range "1 .. 100"; } } } case case_3 { leaf cps { description "Delay buffer rate as an absolute cells per second rate"; units "cells per second"; type string; } } } } } } container adjust-minimum { description "Minimum shaping-rate when adjusted"; leaf rate { description "Minimum shaping rate in bits per second"; units "bits per second"; type string; } } } list forwarding-class-sets { key name; ordered-by user; description "Forwarding class sets"; leaf name { description "Forwarding class set"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list class { key name; ordered-by user; description "Forwarding class"; leaf name { description "Class name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } list congestion-notification-profile { key name; ordered-by user; description "Congestion notification profile"; leaf name { description "Congestion notification name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container input { description "Input congestion notification components"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf cable-length { description "Length of cable in metre"; units "metre"; type string; } container ieee-802.1 { description "IEEE 802.1 code point"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list code-point { key name; ordered-by user; description "IEEE 802.1 code point"; max-elements 8; leaf name { description "IEEE 802.1 code point"; type string { } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf pfc { description "PFC"; type empty; } leaf mru { description "Max Receive Size of packet for this code point"; units "bytes"; type string; } choice qfc-control { case case_1 { leaf qfc { description "QFC"; type empty; } } case case_2 { container qcn { presence "enable qcn"; description "QCN"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container defense-mode-edge { description "Choose the defense mode edge"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container alternate-priority { description "Choose the alternate priority for defense mode edge"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bits { description "IEEE 802.1 code point"; type string { } mandatory true; } presence "enable alternate-priority"; } } } } } } } } container output { description "Output congestion notification components"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list class { key name; ordered-by user; description "Forwarding class"; max-elements 16; leaf name { description "Class name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf remove-cntag { description "Remove cntag for this forwarding class"; type empty; } leaf qcn { description "Enabling Quantized Congestion Notification for this forwarding class"; type empty; } } container ieee-802.1 { description "IEEE 802.1 code point"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list code-point { key name; ordered-by user; description "IEEE 802.1 code point"; max-elements 8; leaf name { description "IEEE 802.1 code point"; type string { } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list flow-control-queue { description "Flow control queue( set of queues)"; type uint32 { range "0 .. 7"; } } } } } } list scheduler-map-forwarding-class-sets { key name; ordered-by user; description "Mapping of forwarding class sets to packet schedulers"; leaf name { description "Scheduler map forwarding class set name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list forwarding-class-set { key name; ordered-by user; description "Forwarding class set name to map to scheduler"; leaf name { description "Forwarding class set name"; type string { length "1 .. 64"; } } leaf scheduler { description "Scheduler name"; type string { length "1 .. 64"; } mandatory true; } } } container system-defaults { description "System defaults"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container classifiers { description "System wide Classifiers applied to incoming packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container exp { description "EXP classifier"; leaf classifier-name { description "Name of classifier to be applied"; type string { length "1 .. 64"; } } } } } container dynamic-class-of-service-options { description "Dynamic class-of-service options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list vendor-specific-tags { key name; ordered-by user; description "Enable vendor specific tags"; leaf name { description "(null)"; type enumeration { enum actual-data-rate-downstream { description "Enable shaping based on actual-data-rate-downstream"; } enum access-loop-encapsulation { description "Enable overhead-accounting based on access-loop-encapsulation"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } container interfaces { description "Apply class-of-service options to interfaces"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list interface-set { key name; ordered-by user; description "Interface set traffic-control-profile attachment"; leaf name { description "Name of the interface set"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf internal-node { description "Internal node"; type empty; } container input-excess-bandwidth-share { description "Input Excess bandwidth sharing policy"; choice input_excess_bandwidth_share { case case_1 { leaf proportional { description "Maximum Queue Bandwidth"; units "bits per second"; type string; } } case case_2 { leaf equal { description "Equal sharing of excess bandwidth"; type empty; } } } } container excess-bandwidth-share { description "Output Excess bandwidth sharing policy"; choice output_excess_bandwidth_share { case case_1 { leaf proportional { description "Maximum Queue Bandwidth"; units "bits per second"; type string; } } case case_2 { leaf equal { description "Equal sharing of excess bandwidth"; type empty; } } } } container input-traffic-control-profile { description "Input traffic control profile for the interface set"; leaf profile-name { description "Name of the input traffic control profile associated with the interface set"; type string { length "1 .. 64"; } } } container input-traffic-control-profile-remaining { description "Input traffic control profile for the remaining traffic on an interface set"; leaf profile-name { description "Name of the input traffic control profile associated with the remaining traffic for the interface set"; type string { length "1 .. 64"; } } } container output-traffic-control-profile { description "Output traffic control profile for the interface set"; leaf profile-name { description "Name of the output traffic control profile associated with the interface set"; type string { length "1 .. 64"; } } } container output-traffic-control-profile-remaining { description "Output traffic control profile for the remaining traffic on an interface set"; leaf profile-name { description "Name of the output traffic control profile associated with the remaining traffic for the interface set"; type string { length "1 .. 64"; } } } } list interface { key name; description "(null)"; uses cos_interfaces_type; } } list routing-instances { key name; ordered-by user; description "Apply CoS options to routing instances with VRF table label"; leaf name { description "Routing instance name (or wildcard)"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container classifiers { description "Classifiers applied to incoming packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container exp { description "EXP classifier"; leaf classifier-name { description "Name of classifier to be applied"; type string { length "1 .. 64"; } } } container ieee-802.1 { description "IEEE-802.1 classifier"; leaf classifier-name { description "Name of classifier to be applied"; type string { length "1 .. 64"; } mandatory true; } presence "enable ieee-802.1"; leaf encapsulated { description "Inner or outer ethernet header"; type empty; mandatory true; } leaf vlan-tag { description "VLAN tag used for classification"; type enumeration { enum outer { description "Classification based on outer VLAN tag"; } enum inner { description "Classification based on inner VLAN tag"; } } } } container dscp { description "Differentiated Services code point classifier"; leaf classifier-name { description "Name of classifier to be applied"; type string { length "1 .. 64"; } } } container dscp-ipv6 { description "Differentiated Services code point classifier IPv6"; leaf classifier-name { description "Name of classifier to be applied"; type string { length "1 .. 64"; } } } } container rewrite-rules { description "Rewrite rules applied to outgoing packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice _802_rewrites { case case_1 { container ieee-802.1 { description "IEEE-802.1 rewrite rule"; leaf rewrite-rule-name { description "Name of rewrite rule to be applied"; type string { length "1 .. 64"; } mandatory true; } presence "enable ieee-802.1"; leaf encapsulated { description "Inner ethernet header"; type empty; mandatory true; } leaf vlan-tag { description "One or more VLAN tags to which rewrite rule applies"; type enumeration { enum outer { description "Rewrite rule applies to outer VLAN tag"; } enum outer-and-inner { description "Rewrite rule applies to outer and inner VLAN tag"; } } } } } case case_2 { container ieee-802.1ad { description "IEEE-802.1ad (DEI) rewrite rule"; leaf rewrite-rule-name { description "Name of rewrite rule to be applied"; type string { length "1 .. 64"; } mandatory true; } presence "enable ieee-802.1ad"; leaf encapsulated { description "Inner ethernet header"; type empty; mandatory true; } leaf vlan-tag { description "One or more VLAN tags to which rewrite rule applies"; type enumeration { enum outer { description "Rewrite rule applies to outer VLAN tag"; } enum outer-and-inner { description "Rewrite rule applies to outer and inner VLAN tag"; } } } } } } } container policy-map { description "Policy-map describing the packet marking rule"; leaf policy-map-name { description "Name of Policy-map to be applied"; type string; } } } container rewrite-rules { description "Write code point value of outgoing packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list dscp { key name; ordered-by user; description "Differentiated Services code point rewrite rule"; leaf name { description "Rewrite rule name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf import { description "Include this rewrite rule in this definition"; type string { length "1 .. 64"; } } list forwarding-class { key name; ordered-by user; description "Markings for named forwarding class"; leaf name { description "Forwarding class name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list loss-priority { key name; ordered-by user; description "Code point marking based on loss priority"; leaf name { description "(null)"; type enumeration { enum low { description "Marking when loss priority is low"; } enum high { description "Marking when loss priority is high"; } enum medium-low { description "Marking when loss priority is medium-low"; } enum medium-high { description "Marking when loss priority is medium-high"; } } } leaf code-point { description "Code point aliases or bit string"; type string { } mandatory true; } } } } list dscp-ipv6 { key name; ordered-by user; description "Differentiated Services code point rewrite rule IPv6"; leaf name { description "Rewrite rule name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf import { description "Include this rewrite rule in this definition"; type string { length "1 .. 64"; } } list forwarding-class { key name; ordered-by user; description "Markings for named forwarding class"; leaf name { description "Forwarding class name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list loss-priority { key name; ordered-by user; description "Code point marking based on loss priority"; leaf name { description "(null)"; type enumeration { enum low { description "Marking when loss priority is low"; } enum high { description "Marking when loss priority is high"; } enum medium-low { description "Marking when loss priority is medium-low"; } enum medium-high { description "Marking when loss priority is medium-high"; } } } leaf code-point { description "Code point aliases or bit string"; type string { } mandatory true; } } } } list exp { key name; ordered-by user; description "MPLS EXP rewrite rule"; leaf name { description "Rewrite rule name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf import { description "Include this rewrite rule in this definition"; type string { length "1 .. 64"; } } list forwarding-class { key name; ordered-by user; description "Markings for named forwarding class"; leaf name { description "Forwarding class name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list loss-priority { key name; ordered-by user; description "Code point marking based on loss priority"; leaf name { description "(null)"; type enumeration { enum low { description "Marking when loss priority is low"; } enum high { description "Marking when loss priority is high"; } enum medium-low { description "Marking when loss priority is medium-low"; } enum medium-high { description "Marking when loss priority is medium-high"; } } } leaf code-point { description "Code point aliases or bit string"; type string { } mandatory true; } } } } list ieee-802.1 { key name; ordered-by user; description "IEEE-802.1 rewrite rule"; leaf name { description "Rewrite rule name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf import { description "Include this rewrite rule in this definition"; type string { length "1 .. 64"; } } list forwarding-class { key name; ordered-by user; description "Markings for named forwarding class"; leaf name { description "Forwarding class name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list loss-priority { key name; ordered-by user; description "Code point marking based on loss priority"; leaf name { description "(null)"; type enumeration { enum low { description "Marking when loss priority is low"; } enum high { description "Marking when loss priority is high"; } enum medium-low { description "Marking when loss priority is medium-low"; } enum medium-high { description "Marking when loss priority is medium-high"; } } } leaf code-point { description "Code point aliases or bit string"; type string { } mandatory true; } } } } list inet-precedence { key name; ordered-by user; description "IPv4 precedence rewrite rule"; leaf name { description "Rewrite rule name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf import { description "Include this rewrite rule in this definition"; type string { length "1 .. 64"; } } list forwarding-class { key name; ordered-by user; description "Markings for named forwarding class"; leaf name { description "Forwarding class name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list loss-priority { key name; ordered-by user; description "Code point marking based on loss priority"; leaf name { description "(null)"; type enumeration { enum low { description "Marking when loss priority is low"; } enum high { description "Marking when loss priority is high"; } enum medium-low { description "Marking when loss priority is medium-low"; } enum medium-high { description "Marking when loss priority is medium-high"; } } } leaf code-point { description "Code point aliases or bit string"; type string { } mandatory true; } } } } list frame-relay-de { key name; ordered-by user; description "Frame relay discard eligible bit rewrite rule"; leaf name { description "Rewrite rule name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf import { description "Include this rewrite rule in this definition"; type string { length "1 .. 64"; } } list forwarding-class { key name; ordered-by user; description "Markings for named forwarding class"; leaf name { description "Forwarding class name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list loss-priority { key name; ordered-by user; description "Code point marking based on loss priority"; leaf name { description "(null)"; type enumeration { enum low { description "Marking when loss priority is low"; } enum high { description "Marking when loss priority is high"; } enum medium-low { description "Marking when loss priority is medium-low"; } enum medium-high { description "Marking when loss priority is medium-high"; } } } leaf code-point { description "Code point aliases or bit string"; type string { } mandatory true; } } } } list ieee-802.1ad { key name; ordered-by user; description "IEEE-802.1ad (DEI) rewrite rule"; leaf name { description "Rewrite rule name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf import { description "Include this rewrite rule in this definition"; type string { length "1 .. 64"; } } list forwarding-class { key name; ordered-by user; description "Markings for named forwarding class"; leaf name { description "Forwarding class name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list loss-priority { key name; ordered-by user; description "Code point marking based on loss priority"; leaf name { description "(null)"; type enumeration { enum low { description "Marking when loss priority is low"; } enum high { description "Marking when loss priority is high"; } enum medium-low { description "Marking when loss priority is medium-low"; } enum medium-high { description "Marking when loss priority is medium-high"; } } } leaf code-point { description "Code point aliases or bit string"; type string { } mandatory true; } } } } } container fabric { description "Define CoS parameters of switch fabric"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container scheduler-map { description "Mapping of fabric traffic to packet schedulers"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list priority { key name; ordered-by user; description "Fabric traffic priority"; leaf name { description "(null)"; type enumeration { enum low { description "Low priority fabric traffic"; } enum high { description "High priority fabric traffic"; } } } leaf scheduler { description "Scheduler name"; type string { length "1 .. 64"; } mandatory true; } } } } list scheduler-maps { key name; ordered-by user; description "Mapping of forwarding classes to packet schedulers"; leaf name { description "Scheduler map name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list forwarding-class { key name; ordered-by user; description "Forwarding class name to map to scheduler"; leaf name { description "Forwarding class name"; type string { length "1 .. 64"; } } leaf scheduler { description "Scheduler name"; type string { length "1 .. 64"; } mandatory true; } } } list fragmentation-maps { key name; ordered-by user; description "Mapping of forwarding class to fragmentation options"; leaf name { description "Fragmentation map name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list forwarding-class { key name; ordered-by user; description "Forwarding class name to map to fragmentation options"; leaf name { description "Forwarding class name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice fragmentation-control { case case_1 { leaf fragment-threshold { description "Fragmentation threshold"; units "bytes"; type uint16 { range "64 .. 9192"; } } } case case_2 { leaf no-fragmentation { description "Don't allow fragmentation"; type empty; } } } leaf multilink-class { description "Multilink-Class assigned to the forwarding class"; type uint16 { range "0 .. 7"; } } leaf drop-timeout { description "Drop timeout"; units "milliseconds"; type uint16 { range "0 .. 2000"; } } } } list schedulers { key name; ordered-by user; description "Packet schedulers"; leaf name { description "Scheduler name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container transmit-rate { description "Transmit rate"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice transmit_rate_choice { case case_1 { leaf rate { description "Transmit rate as rate"; units "bits per second"; type string; } } case case_2 { leaf percent { description "Transmit rate as percentage"; type uint32 { range "0 .. 100"; } } } case case_3 { container remainder { presence "enable remainder"; description "Remainder available"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf percent { description "(null)"; default "0"; type uint32 { range "0 .. 100"; } } } } } choice rate_limit_choice { case case_1 { leaf exact { description "Enforce exact transmit rate"; type empty; } } case case_2 { leaf rate-limit { description "Enforce rate limit that uses policer"; type empty; } } } } container excess-rate { description "Excess bandwidth sharing proportion"; choice excess_rate_choice { case case_1 { leaf proportion { description "Excess rate as a proportion"; type uint32 { range "0 .. 1000"; } } } case case_2 { leaf percent { description "Excess rate as a percentage"; type uint32 { range "1 .. 100"; } } } } } container shaping-rate { description "Shaping rate"; choice shaping_rate_choice { case case_1 { leaf rate { description "Shaping rate as an absolute rate"; units "bits per second"; type string; } } case case_2 { leaf percent { description "Shaping rate as a percentage"; type uint32 { range "1 .. 100"; } } } } leaf burst-size { description "Shaping rate burst size"; units "bytes"; type string; } } container buffer-size { description "Queue transmission buffer size"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice buffer_size_choice { case case_1 { leaf percent { description "Buffer size as a percentage"; type uint32 { range "0 .. 100"; } } } case case_2 { container remainder { presence "enable remainder"; description "Remainder of buffer size available"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf percent { description "(null)"; default "0"; type uint32 { range "0 .. 100"; } } } } case case_3 { leaf temporal { description "Buffer size as temporal value"; units "microseconds"; type string; } } } choice buffer_limit { case case_1 { leaf exact { description "Enforce exact buffer size"; type empty; } } } } leaf priority { description "Scheduling priority"; type string { length "1 .. 64"; } } leaf excess-priority { description "Priority in the excess region"; type string { length "1 .. 64"; } } list drop-profile-map { key "loss-priority protocol"; ordered-by user; description "Assign drop profile to a loss priority and protocol"; leaf loss-priority { description "Loss priority value"; type enumeration { enum low { description "Loss priority low"; } enum high { description "Loss priority high"; } enum medium-low { description "Loss priority medium-low"; } enum medium-high { description "Loss priority medium-high"; } enum any { description "Ignore loss priority when assigning drop profile"; } } } leaf protocol { description "Protocol type"; type enumeration { enum tcp { description "TCP protocol only"; } enum non-tcp { description "Non-TCP protocols only"; } enum any { description "Ignore protocol type when assigning drop profile"; } } } leaf drop-profile { description "Name of drop profile to apply"; type string { length "1 .. 64"; } mandatory true; } } leaf explicit-congestion-notification { description "Enable or Disable Explicit Congestion Notification"; type empty; } container drop-profile-map-set { presence "enable drop-profile-map-set"; description "System drop profile"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf profile-name { description "Drop Profile Name"; type string { length "1 .. 64"; } mandatory true; } leaf profile-type { description "(null)"; type enumeration { enum drop { description "Set drop type"; } enum mark { description "Set ECN marking"; } } } } leaf adjust-percent { description "Percent of a bandwidth adjustment applied to a queue"; units "percent"; type uint32 { range "0 .. 100"; } } leaf adjust-minimum { description "Minimum shaping-rate when adjusted"; units "bits per second"; type string; } } list adjustment-control-profiles { key name; description "Adjustment control profiles"; leaf name { description "Adjustment control profile name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list application { key name; ordered-by user; description "Applications that can perform adjustments"; leaf name { description "Applications that can perform adjustments"; type enumeration { enum ancp { description "Access Node Configuration Protocol"; } enum radius-coa { description "RADIUS Change of Authorization"; } enum pppoe-tags { description "Point to Point Protocol over Ethernet IA Tags"; } enum dhcp-tags { description "Dynamic Host Configuration Protocol Tags"; } } } leaf priority { description "Priority for the application; 1 is the highest"; type uint32 { range "1 .. 10"; } mandatory true; } leaf algorithm { description "Adjustment algorithm for the application"; type enumeration { enum adjust-less { description "Adjust if less than the configured value"; } enum adjust-less-or-equal { description "Adjust if <= the configured value"; } enum adjust-greater { description "Adjust if greater than the configured value"; } enum adjust-greater-or-equal { description "Adjust if >= the configured value"; } enum adjust-always { description "Adjust unconditionally"; } enum adjust-never { description "Do not perform adjustments"; } } mandatory true; } } } container traceoptions { description "Trace options for class-of-service process"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum init { description "Trace initialization events"; } enum show { description "Trace show command servicing"; } enum route-socket { description "Trace route-socket events"; } enum parse { description "Trace parser processing"; } enum process { description "Trace configuration processing"; } enum util { description "Trace utilities"; } enum restart { description "Trace restart processing"; } enum snmp { description "Trace SNMP-related processing"; } enum hardware-database { description "Trace chassis hardware database related processing"; } enum asynch { description "Trace asynchronous configuration processing"; } enum dynamic { description "Trace dynamic CoS functions"; } enum cos-adjustment { description "Trace CoS rate adjustments"; } enum performance-monitor { description "Trace performance monitor counters"; } enum chassis-scheduler { description "Trace chassis stream scheduler processing"; } enum cn-util { description "Trace utilities for congestion-notification"; } enum all { description "Trace everything"; } } } } } container multi-destination { description "Multicast class of service"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf scheduler-map { description "Scheduler map for multi destination"; type string { length "1 .. 64"; } } container family { description "Family Inet/Inet6/Ethernet"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container ethernet { description "Ethernet switching options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf broadcast { description "Forwarding class to be applied to broadcast"; type string { length "1 .. 64"; } } } container inet { description "IP Multicast"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container classifier { description "Classifier applied to ip-multicast"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container dscp { description "Differentiated Services code point classifier"; leaf classifier-name { description "Name of classifier to be applied"; type string { length "1 .. 64"; } } } container inet-precedence { description "IPv4 precedence classifier"; leaf classifier-name { description "Name of classifier to be applied"; type string { length "1 .. 64"; } } } } } container inet6 { description "IPv6 Multicast"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container classifier { description "Classifier applied to ipv6-multicast"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container dscp-ipv6 { description "Differentiated Services code point classifier"; leaf classifier-name { description "Name of classifier to be applied"; type string { length "1 .. 64"; } } } } } } container classifiers { description "Classifier applied to multicast traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container ieee-802.1 { description "Ieee-802.1 classifier"; leaf classifier-name { description "Name of classifier to be applied"; type string { length "1 .. 64"; } } } container dscp { description "Differentiated Services code point classifier"; leaf classifier-name { description "Name of classifier to be applied"; type string { length "1 .. 64"; } } } } } container application-traffic-control { presence "enable application-traffic-control"; description "Application classifier configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for application classifier"; uses appqos-traceoptions-type; } list rate-limiters { key name; ordered-by user; description "Configure application-traffic-control rate limiters"; leaf name { description "Application classifier rate-limiter name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth-limit { description "Bandwidth limit"; units "kbps"; type uint32 { range "64 .. 10485760"; } mandatory true; } leaf burst-size-limit { description "Burst size limit (default with bandwidth-limit and no larger than 6400 * bandwidth)"; units "bytes"; type uint32 { range "1 .. 1342177280"; } } } list rule-sets { key name; ordered-by user; description "Configure application-traffic-control rule-sets"; leaf name { description "Application classifier rule-set name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Rule"; uses appqos_rule_type; } } } } grouping appqos-traceoptions-type { description "Trace options for application classifier"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Events and other information to include in trace output"; leaf name { description "Flag name to include in trace output"; type enumeration { enum all { description "All events"; } } } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } } grouping appqos_rule_type { leaf name { description "Rule name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container match { description "Specify application traffic control rule match-criteria"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf application-any { description "Any applications"; type empty; } leaf application-unknown { description "Uknown applcations"; type empty; } leaf application-known { description "Identifiable applications"; type empty; } leaf-list application { description "Specify application name to match"; type string { length "1 .. 63"; } } leaf-list application-group { description "Specify application group name to match"; type string { length "1 .. 63"; } } } container then { description "Specify rule action to take when packet match criteria"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf forwarding-class { description "Forwarding class for outgoing packets"; type string { } } leaf dscp-code-point { description "DSCP code point bitmap or alias"; type string { } } leaf loss-priority { description "Packet loss priority"; type enumeration { enum low { description "Low loss priority"; } enum high { description "High loss priority"; } enum medium-low { description "Medium-low loss priority"; } enum medium-high { description "Medium-high loss priority"; } } } container rate-limit { description "Apply rate limiters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf client-to-server { description "Client-to-server rate limiter"; type string; } leaf server-to-client { description "Server-to-client rate limiter"; type string; } } leaf log { description "Log the action"; type empty; } } } grouping cos_interfaces_type { description "Physical interface"; leaf name { description "Interface name (or wildcard)"; type interface-device-wildcard; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list forwarding-class-set { key name; ordered-by user; description "Map forwarding class sets to output traffic control profile"; max-elements 4; leaf name { description "Forwarding class sets name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container output-traffic-control-profile { description "Output traffic control profile for the interface"; leaf profile-name { description "Name of the output traffic control profile associated with the interface"; type string { length "1 .. 64"; } } } } leaf congestion-notification-profile { description "Congestion notification profile for the interface"; type string { length "1 .. 64"; } } container rewrite-value { description "FC interface rewrite value"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container input { description "Input direction"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container ieee-802.1 { description "IEEE 802.1 code point"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container code-point { description "IEEE 802.1 code point"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bits { description "IEEE 802.1 code point"; type string { } mandatory true; } presence "enable code-point"; } } } } leaf scheduler-map-forwarding-class-set { description "Output scheduler map forwarding-class-set "; type string { } } leaf scheduler-map { description "Output scheduler map"; type string { length "1 .. 64"; } } leaf input-scheduler-map { description "Input scheduler map"; type string { length "1 .. 64"; } } leaf scheduler-map-chassis { description "Scheduler map applied to chassis queues (not PIC queues)"; type string { length "1 .. 64"; } } leaf output-forwarding-class-map { description "Output forwarding class map name"; type string { length "1 .. 64"; } } container shaping-rate { description "Output shaping rate"; leaf rate { description "Shaping rate as an absolute rate"; units "bits per second"; type string; } } container input-excess-bandwidth-share { description "Input Excess bandwidth sharing policy"; choice input_excess_bandwidth_share { case case_1 { leaf proportional { description "Maximum Queue Bandwidth"; units "bits per second"; type string; } } case case_2 { leaf equal { description "Equal sharing of excess bandwidth"; type empty; } } } } container excess-bandwidth-share { description "Output Excess bandwidth sharing policy"; choice output_excess_bandwidth_share { case case_1 { leaf proportional { description "Maximum Queue Bandwidth"; units "bits per second"; type string; } } case case_2 { leaf equal { description "Equal sharing of excess bandwidth"; type empty; } } } } container input-shaping-rate { description "Input shaping rate"; leaf rate { description "Input shaping rate as an absolute rate"; units "bits per second"; type string; mandatory true; } presence "enable input-shaping-rate"; } container input-traffic-control-profile { description "Input traffic control profile"; leaf profile-name { description "Name of the traffic control profile"; type string { length "1 .. 64"; } mandatory true; } presence "enable input-traffic-control-profile"; } container input-traffic-control-profile-remaining { description "Input traffic control profile for remaining traffic on the ifd"; leaf profile-name { description "Name of the traffic control profile"; type string { length "1 .. 64"; } mandatory true; } presence "enable input-traffic-control-profile-remaining"; } container output-traffic-control-profile { description "Output traffic control profile"; leaf profile-name { description "Name of the traffic control profile"; type string { length "1 .. 64"; } mandatory true; } presence "enable output-traffic-control-profile"; } container output-traffic-control-profile-remaining { description "Output traffic control profile for remaining traffic on the ifd"; leaf profile-name { description "Name of the traffic control profile"; type string { length "1 .. 64"; } mandatory true; } presence "enable output-traffic-control-profile-remaining"; } container member-link-scheduler { description "Scheduler parameter model for member link"; choice model { case case_1 { leaf scale { description "Scale scheduler parameters on aggregate interface"; type empty; } } case case_2 { leaf replicate { description "Copy scheduler parameters from aggregate interface"; type empty; } } } } container traffic-class-map { description "Packet code point to input priority mapping"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container inet-precedence { description "IPv4 precedence code point traffic-class-map"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf traffic-class-map-name { description "Name of traffic-class-map to be applied on IFD"; type string { length "1 .. 64"; } } } container dscp { description "Differentiated services code point traffic-class-map"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf traffic-class-map-name { description "Name of traffic-class-map to be applied on IFD"; type string { length "1 .. 64"; } } } container exp { description "MPLS experimental code point traffic-class-map"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf traffic-class-map-name { description "Name of traffic-class-map to be applied on IFD"; type string { length "1 .. 64"; } } } container ieee-802.1 { description "IEEE-802.1 code point traffic-class-map"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf traffic-class-map-name { description "Name of traffic-class-map to be applied on IFD"; type string { length "1 .. 64"; } mandatory true; } presence "enable ieee-802.1"; leaf vlan-tag { description "VLAN tag used for traffic-class-map"; type enumeration { enum outer { description "Traffic-class-map based on outer VLAN tag"; } enum inner { description "Traffic-class-map based on inner VLAN tag"; } } } } container ieee-802.1ad { description "IEEE-802.1ad (DEI) code point traffic-class-map"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf traffic-class-map-name { description "Name of traffic-class-map to be applied on IFD"; type string { length "1 .. 64"; } mandatory true; } presence "enable ieee-802.1ad"; leaf vlan-tag { description "VLAN tag used for traffic-class-map"; type enumeration { enum outer { description "Traffic-class-map based on outer VLAN tag"; } enum inner { description "Traffic-class-map based on inner VLAN tag"; } } } } } list unit { key name; description "Logical interface unit (or wildcard)"; leaf name { description "Logical unit number"; type uint32 { range "0 .. 1073741823"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf output-forwarding-class-map { description "Output forwarding class map name"; type string { length "1 .. 64"; } } leaf forwarding-class { description "Forwarding class assigned to incoming packets"; type string { length "1 .. 64"; } } leaf virtual-channel-group { description "Virtual channel group applied to this logical interface"; type string { length "1 .. 64"; } } leaf vc-shared-scheduler { description "Virtual channel group shared scheduler indicator"; type empty; } leaf scheduler-map { description "Output scheduler map"; type string { length "1 .. 64"; } } leaf input-scheduler-map { description "Input scheduler map"; type string { length "1 .. 64"; } } leaf fragmentation-map { description "Fragmentation map applied to this logical interface"; type string { length "1 .. 64"; } } leaf adaptive-shaper { description "Adaptive shaper applied to this logical interface"; type string { length "1 .. 64"; } } container shaping-rate { presence "enable shaping-rate"; description "Output shaping rate"; choice shaping_rate_choice { case case_1 { leaf rate { description "Shaping rate as an absolute rate"; units "bits per second"; type string; } } case case_2 { leaf percent { description "Shaping rate as a percentage"; type uint32 { range "0 .. 100"; } } } } } container input-shaping-rate { description "Input shaping rate"; choice shaping_rate_choice { case case_1 { leaf rate { description "Shaping rate as an absolute rate"; units "bits per second"; type string; } } case case_2 { leaf percent { description "Shaping rate as a percentage"; type uint32 { range "0 .. 100"; } } } } } container input-traffic-control-profile { description "Input traffic control profile"; leaf profile-name { description "Name of traffic control profile"; type string { length "1 .. 64"; } mandatory true; } presence "enable input-traffic-control-profile"; leaf shared-instance { description "Name of the shared instance"; type string { length "1 .. 64"; } } } container output-traffic-control-profile { description "Output traffic control profile"; leaf profile-name { description "Name of the traffic control profile"; type string { length "1 .. 64"; } mandatory true; } presence "enable output-traffic-control-profile"; leaf shared-instance { description "Name of the shared instance"; type string { length "1 .. 64"; } } } container output-traffic-control-profile-remaining { description "Output traffic control profile for remaining traffic on the ifl"; leaf profile-name { description "Name of the traffic control profile"; type string { } mandatory true; } presence "enable output-traffic-control-profile-remaining"; } container classifiers { description "Classifiers applied to incoming packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list dscp { key name; ordered-by user; description "Differentiated Services code point classifier"; leaf name { description "Name of classifier to be applied"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list family { description "Family for DSCP classifier"; type string; } } list dscp-ipv6 { key name; ordered-by user; description "Differentiated Services code point classifier IPv6"; leaf name { description "Name of classifier to be applied"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list family { description "Family for DSCP Ipv6 classifier"; type string; } } container exp { description "EXP classifier"; leaf classifier-name { description "Name of classifier to be applied"; type string { length "1 .. 64"; } } } container ieee-802.1 { description "IEEE-802.1 classifier"; leaf classifier-name { description "Name of classifier to be applied"; type string { length "1 .. 64"; } mandatory true; } presence "enable ieee-802.1"; leaf vlan-tag { description "VLAN tag used for classification"; type enumeration { enum outer { description "Classification based on outer VLAN tag"; } enum inner { description "Classification based on inner VLAN tag"; } enum transparent { description "Classification based on hidden VLAN tag"; } } } } container inet-precedence { description "IPv4 precedence classifier"; leaf classifier-name { description "Name of classifier to be applied"; type string { length "1 .. 64"; } } } container ieee-802.1ad { description "IEEE-802.1ad (DEI) classifier"; leaf classifier-name { description "Name of classifier to be applied"; type string { length "1 .. 64"; } mandatory true; } presence "enable ieee-802.1ad"; leaf vlan-tag { description "VLAN tag used for classification"; type enumeration { enum outer { description "Classification based on outer VLAN tag"; } enum inner { description "Classification based on inner VLAN tag"; } } } } } container ingress-rewrite-rules { description "Rewrite rules applied to outgoing packets of the ingress interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list dscp { key name; ordered-by user; description "Differentiated Services code point rewrite rule"; leaf name { description "Name of rewrite rule to be applied"; type string { length "1 .. 64"; } } } container dscp-ipv6 { description "Differentiated Services code point rewrite rule IPv6"; leaf rewrite-rule-name { description "Name of rewrite rule to be applied"; type string { length "1 .. 64"; } } } list inet-precedence { key name; ordered-by user; description "IPv4 precedence rewrite rule"; leaf name { description "Name of rewrite rule to be applied"; type string { length "1 .. 64"; } } } } container loss-priority-maps { description "Loss priority maps applied to incoming packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container frame-relay-de { description "Frame Relay discard eligible bit loss priority map"; leaf lpmap-name { description "Name of loss priority map to be applied"; type string { length "1 .. 64"; } } } } container rewrite-rules { description "Rewrite rules applied to outgoing packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list dscp { key name; ordered-by user; description "Differentiated Services code point rewrite rule"; leaf name { description "Name of rewrite rule to be applied"; type string { length "1 .. 64"; } } leaf-list protocol { description "Specify protocol matching criteria"; type enumeration { enum mpls { description "Apply to IPv4 packets entering MPLS tunnel"; } enum gtp-inet-outer { description "Apply to outer IP header"; } enum gtp-inet-both { description "Apply to both IP header"; } } } } list dscp-ipv6 { key name; ordered-by user; description "Differentiated Services code point rewrite rule IPv6"; leaf name { description "Name of rewrite rule to be applied"; type string { length "1 .. 64"; } } leaf-list protocol { description "Specify protocol matching criteria"; type enumeration { enum mpls { description "Apply to IPv6 packets entering MPLS tunnel"; } enum gtp-inet-outer { description "Apply to outer IP header"; } enum gtp-inet-both { description "Apply to both IP header"; } } } } list exp { key name; ordered-by user; description "EXP rewrite rule"; leaf name { description "Name of rewrite rule to be applied"; type string { length "1 .. 64"; } } leaf-list protocol { description "Specify protocol matching criteria"; type enumeration { enum mpls-any { description "Apply to MPLS packets, write MPLS header only"; } enum mpls-inet-both { description "Apply to IPv4 MPLS packets, write MPLS and IPv4 header"; } enum mpls-inet-both-non-vpn { description "Apply to IPv4 MPLS packets, write MPLS and IPv4 header for only non VPN traffic"; } } } } container ieee-802.1 { description "IEEE-802.1 rewrite rule"; leaf rewrite-rule-name { description "Name of rewrite rule to be applied"; type string { length "1 .. 64"; } mandatory true; } presence "enable ieee-802.1"; leaf vlan-tag { description "One or more VLAN tags to which rewrite rule applies"; type enumeration { enum outer { description "Rewrite rule applies to outer VLAN tag"; } enum outer-and-inner { description "Rewrite rule applies to both outer and inner VLAN tags"; } } } } list inet-precedence { key name; ordered-by user; description "IPv4 precedence rewrite rule"; leaf name { description "Name of rewrite rule to be applied"; type string { length "1 .. 64"; } } leaf-list protocol { description "Specify protocol matching criteria"; type enumeration { enum mpls { description "Apply to IPv4 packets entering MPLS tunnel"; } enum gtp-inet-outer { description "Apply to outer IP header"; } enum gtp-inet-both { description "Apply to both IP header"; } } } } container exp-swap-push-push { description "Copy incoming EXP into all swap-push-push labels"; leaf rewrite-rule-name { description "Name of rewrite rule to be applied"; type enumeration { enum default { description "Apply default rewrite rule"; } } } } container exp-push-push-push { description "Top-label EXP rewrite rule for push-push-push operation"; leaf rewrite-rule-name { description "Name of rewrite rule to be applied"; type enumeration { enum default { description "Apply default rewrite rule"; } } } } container frame-relay-de { description "Frame relay discard eligible bit rewrite rule"; leaf rewrite-rule-name { description "Name of rewrite rule to be applied"; type string { length "1 .. 64"; } } } container ieee-802.1ad { description "IEEE-802.1ad (DEI) rewrite rule"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf rewrite-rule-name { description "Name of rewrite rule to be applied"; type string { length "1 .. 64"; } mandatory true; } presence "enable ieee-802.1ad"; leaf vlan-tag { description "One or more VLAN tags to which rewrite rule applies"; type enumeration { enum outer { description "Rewrite rule applies to outer VLAN tag"; } enum outer-and-inner { description "Rewrite rule applies to both outer and inner VLAN tags"; } } } } } container loss-priority-rewrites { description "Loss priority rewrites applied to outgoing packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container frame-relay-de { description "Frame Relay discard eligible bit loss priority rewrite"; leaf lprewrite-name { description "Name of loss priority rewrite to be applied"; type string { length "1 .. 64"; } } } } container translation-table { description "Translation tables applied to incoming packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container to-inet-precedence-from-inet-precedence { description "IPv4 precedence translation table"; leaf translation-table-name { description "Name of translation table to be applied"; type string { length "1 .. 64"; } } } container to-dscp-from-dscp { description "Differentiated Services code point translation table"; leaf translation-table-name { description "Name of translation table to be applied"; type string { length "1 .. 64"; } } } container to-dscp-ipv6-from-dscp-ipv6 { description "Differentiated Services code point IPV6 translation table"; leaf translation-table-name { description "Name of translation table to be applied"; type string { length "1 .. 64"; } } } container to-exp-from-exp { description "EXP translation table"; leaf translation-table-name { description "Name of translation table to be applied"; type string { length "1 .. 64"; } } } } container policy-map { description "Policy-map describing the packet marking rule"; leaf policy-map-name { description "Name of Policy-map to be applied"; type string; } } } container classifiers { description "Classifiers applied to incoming packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list dscp { key name; ordered-by user; description "Differentiated Services code point classifier"; leaf name { description "Name of classifier to be applied"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list dscp-ipv6 { key name; ordered-by user; description "Differentiated Services code point classifier IPv6"; leaf name { description "Name of classifier to be applied"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container ieee-802.1 { description "IEEE-802.1 classifier"; leaf classifier-name { description "Name of classifier to be applied"; type string { length "1 .. 64"; } mandatory true; } presence "enable ieee-802.1"; leaf vlan-tag { description "VLAN tag used for classification"; type enumeration { enum outer { description "Classification based on outer VLAN tag"; } enum inner { description "Classification based on inner VLAN tag"; } } } } container ieee-802.1ad { description "IEEE-802.1ad (DEI) classifier"; leaf classifier-name { description "Name of classifier to be applied"; type string { length "1 .. 64"; } mandatory true; } presence "enable ieee-802.1ad"; leaf vlan-tag { description "VLAN tag used for classification"; type enumeration { enum outer { description "Classification based on outer VLAN tag"; } enum inner { description "Classification based on inner VLAN tag"; } } } } container inet-precedence { description "IPv4 precedence classifier"; leaf classifier-name { description "Name of classifier to be applied"; type string { length "1 .. 64"; } } } } leaf forwarding-class { description "Forwarding class assigned to incoming packets"; type string { } } container rewrite-rules { description "Rewrite rules applied to outgoing packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list dscp { key name; ordered-by user; description "Differentiated Services code point rewrite rule"; leaf name { description "Name of rewrite rule to be applied"; type string { length "1 .. 64"; } } } list dscp-ipv6 { key name; ordered-by user; description "Differentiated Services code point rewrite rule IPv6"; leaf name { description "Name of rewrite rule to be applied"; type string { length "1 .. 64"; } } } container ieee-802.1 { description "IEEE-802.1 rewrite rule"; leaf rewrite-rule-name { description "Name of rewrite rule to be applied"; type string { length "1 .. 64"; } mandatory true; } presence "enable ieee-802.1"; } container ieee-802.1ad { description "IEEE-802.1ad (DEI) rewrite rule"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf rewrite-rule-name { description "Name of rewrite rule to be applied"; type string { length "1 .. 64"; } mandatory true; } presence "enable ieee-802.1ad"; leaf vlan-tag { description "One or more VLAN tags to which rewrite rule applies"; type enumeration { enum outer { description "Rewrite rule applies to outer VLAN tag"; } } } } list inet-precedence { key name; ordered-by user; description "IPv4 precedence rewrite rule"; leaf name { description "Name of rewrite rule to be applied"; type string { length "1 .. 64"; } } } } } grouping juniper-def-rtb-switch-options { description "Bridge option configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container mac-table-size { description "Size of MAC address forwarding table"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf limit { description "Maximum number of MAC addresses"; type uint32 { range "16 .. 1048575"; } } leaf packet-action { description "Action when MAC limit is reached"; type enumeration { enum drop { description "Drop packets and do not learn. Default is forward"; } } } } container interface-mac-limit { description "Maximum MAC address learned per interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf limit { description "Maximum number of MAC addresses per interface"; type uint32 { range "1 .. 131071"; } } leaf packet-action { description "Action when MAC limit is reached"; type enumeration { enum none { description "Forward the packet"; } enum drop { description "Drop packets and do not learn. Default is forward"; } enum log { description "Do not drop the packet but generate an alarm, an SNMP trap or a system log entry"; } enum shutdown { description "Disable the interface and generate an alarm, an SNMP trap or a system log entry"; } enum drop-and-log { description "Drop the packet and generate an alarm, an SNMP trap or a system log entry"; } } } } leaf mac-table-aging-time { description "Delay for discarding MAC address if no updates are received"; units "seconds"; type uint32 { range "10 .. 1000000"; } } leaf no-mac-learning { description "Disable dynamic MAC address learning"; type empty; } leaf mac-statistics { description "Enable MAC address statistics"; type empty; } leaf service-id { description "Service ID required if multi-chassis AE is part of a bridge-domain"; type uint32 { range "1 .. 65535"; } } leaf ovsdb-managed { description "All vxlan bridge domains in routing instance are remote managed"; type empty; } leaf vtep-source-interface { description "Source layer-3 IFL for VXLAN"; type interface-unit; } container voip { description "Voice-over-IP configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list interface { key name; ordered-by user; description "Enable voice over IP on this port"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf vlan { description "VLAN for voice over IP"; type string { } mandatory true; } leaf forwarding-class { description "Forwarding class"; type string { } } } } container unknown-unicast-forwarding { description "Set interface for forwarding of unknown unicast packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list vlan { key name; description "VLAN for the unknown unicast packets"; leaf name { description "VLAN name or VLAN Tag (1..4095)"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interface { description "Interface to send unknown unicast packets for the VLAN"; type interface-name; } } } list authentication-whitelist { key name; ordered-by user; description "MAC authentication-whitelist configuration needed to bypass Authentication"; leaf name { description "MAC addresses to bypass authentication"; type mac-addr-prefix; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf vlan-assignment { description "VLAN name or 802.1q tag for the MAC address"; type string { } } leaf bridge-domain-assignment { description "Bridge-domain name or 802.1q tag for the MAC address"; type string { } } leaf interface { description "Interface on which authentication is bypassed"; type interface-name; } } list interface { key name; ordered-by user; description "Interface for configuring bridge-options"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container interface-mac-limit { description "Maximum number of MAC addresses learned on the interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf limit { description "Maximum number of MAC addresses per interface"; type uint32 { range "1 .. 131071"; } } leaf packet-action { description "Action when MAC limit is reached"; type enumeration { enum none { description "Forward the packet"; } enum drop { description "Drop packets and do not learn. Default is forward"; } enum log { description "Do not drop the packet but generate an alarm, an SNMP trap or a system log entry"; } enum shutdown { description "Disable the interface and generate an alarm, an SNMP trap or a system log entry"; } enum drop-and-log { description "Drop the packet and generate an alarm, an SNMP trap or a system log entry"; } } } } leaf no-mac-learning { description "Disable dynamic MAC address learning"; type empty; } leaf persistent-learning { description "Enable persistent MAC learning on this interface"; type empty; } } leaf-list remote-vtep-list { description "Configure static remote VXLAN tunnel endpoints"; type ipaddr; max-elements 1024; } container redundant-trunk-group { description "Redundant trunk group"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "Name of Redundant trunk group"; leaf name { description "RTG name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf preempt-cutover-timer { description "Hold timer for primary interface before preempting secondary interface"; units "seconds"; type uint16 { range "1 .. 600"; } } leaf description { description "Text description of the RTG"; type string { length "1 .. 127"; } } list interface { key name; description "Interfaces that are part of this redundant trunk group"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf primary { description "Set Primary Redundant Trunk Group interface"; type empty; } } } } } grouping juniper-dynamic-profile-object { leaf name { description "Name for dynamic profile"; type string { length "1 .. 80"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list variables { key name; ordered-by user; description "Dynamic variable configuration"; uses juniper-dynamic-variable-object; } container predefined-variable-defaults { description "Assign default values to predefined variables"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container cos-excess-rate { description "Default for junos-cos-excess-rate"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf proportion { description "Excess rate as proportion"; type uint32 { range "0 .. 1000"; } } leaf percent { description "Excess rate as percentage"; type uint32 { range "1 .. 100"; } } } container cos-excess-rate-high { description "Default for junos-cos-excess-rate-high"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf proportion { description "Excess rate as proportion"; type uint32 { range "0 .. 1000"; } } leaf percent { description "Excess rate as percentage"; type uint32 { range "1 .. 100"; } } } container cos-excess-rate-low { description "Default for junos-cos-excess-rate-low"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf proportion { description "Excess rate as proportion"; type uint32 { range "0 .. 1000"; } } leaf percent { description "Excess rate as percentage"; type uint32 { range "1 .. 100"; } } } container cos-scheduler-tx { description "Default for junos-cos-scheduler-tx"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf rate { description "Transmit rate as rate"; type string; } leaf percent { description "Transmit rate as percentage"; type uint32 { range "0 .. 100"; } } } container cos-scheduler-bs { description "Default for junos-cos-scheduler-bs"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf percent { description "Buffer size as percentage"; type uint32 { range "0 .. 100"; } } leaf temporal { description "Buffer size as temporal"; units "microseconds"; type uint32; } } container cos-scheduler-shaping-rate { description "Default for junos-cos-scheduler-shaping-rate"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf rate { description "Shaping rate as rate"; units "bits per second"; type string; } leaf percent { description "Shaping rate as percentage"; type uint32 { range "1 .. 100"; } } } list other-variables { key name; ordered-by user; description "(null)"; uses base-default-variable-object; } } container routing-instances { description "Routing instance configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list instance { key name; ordered-by user; description "(null)"; leaf name { description "(null)"; type enumeration { enum $junos-routing-instance { description "Dynamic profile routing instance name"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list interface { key name; description "Interface name for this routing instance"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice mode { case case_1 { leaf any { description "Interface used for both unicast and multicast traffic"; type empty; } } case case_2 { leaf unicast { description "Interface used for unicast traffic only"; type empty; } } case case_3 { leaf multicast { description "Interface used for multicast traffic only"; type empty; } } } leaf primary { description "Preferred multicast vt interface for the routing-instance"; type empty; } } container routing-options { description "Protocol-independent routing option configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rib { key name; ordered-by user; description "Routing table options"; leaf name { description "Routing table name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container static { description "Static routes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf rib-group { description "Routing table group"; type string; } container defaults { description "Global route options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf retain { description "Always keep route in forwarding table"; type empty; } leaf no-retain { description "Always keep route in forwarding table"; type empty; } leaf install { description "Install route into forwarding table"; type empty; } leaf no-install { description "Install route into forwarding table"; type empty; } leaf readvertise { description "Mark route as eligible to be readvertised"; type empty; } leaf no-readvertise { description "Mark route as eligible to be readvertised"; type empty; } leaf resolve { description "Allow resolution of indirectly connected next hops"; type empty; } leaf no-resolve { description "Allow resolution of indirectly connected next hops"; type empty; } leaf longest-match { description "Always use longest prefix match to resolve next hops"; type empty; } leaf no-longest-match { description "Always use longest prefix match to resolve next hops"; type empty; } choice passive_flag { case case_1 { leaf active { description "Remove inactive route from forwarding table"; type empty; } } case case_2 { leaf passive { description "Retain inactive route in forwarding table"; type empty; } } } container metric { description "Metric value"; uses rib_static_metric_type; } container metric2 { description "Metric value 2"; uses rib_static_metric_type; } container metric3 { description "Metric value 3"; uses rib_static_metric_type; } container metric4 { description "Metric value 4"; uses rib_static_metric_type; } container tag { description "Tag string"; uses rib_static_metric_type; } container tag2 { description "Tag string 2"; uses rib_static_metric_type; } container preference { description "Preference value"; uses rib_static_metric_type; } container preference2 { description "Preference value 2"; uses rib_static_metric_type; } container color { description "Color (preference) value"; uses rib_static_metric_type; } container color2 { description "Color (preference) value 2"; uses rib_static_metric_type; } leaf-list community { description "BGP community identifier"; type community; } container as-path { description "Autonomous system path"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf path { description "Autonomous system path"; type string; } leaf origin { description "(null)"; type enumeration { enum igp { description "Path originated in the local IGP"; } enum egp { description "Path originated in another AS"; } enum incomplete { description "Path was learned by some other means"; } } } leaf atomic-aggregate { description "Add ATOMIC_AGGREGATE path attribute to route"; type empty; } container aggregator { presence "enable aggregator"; description "Add AGGREGATOR path attribute to route"; } leaf as-number { description " Autonomous system number in plain number or 'higher 16bits'.'Lower 16 bits' (asdot notation) format"; type string { } } leaf address { description "Address of BGP system that formed the route"; type ipv4addr; } } } list route { key name; ordered-by user; description "Static route"; leaf name { description "(null)"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice next_hop { case case_1 { leaf-list next-hop { description "Next hop to destination"; type ipaddr-or-interface; } } case case_2 { leaf reject { description "Drop packets to destination; send ICMP unreachables"; type empty; } } case case_3 { leaf discard { description "Drop packets to destination; send no ICMP unreachables"; type empty; } } case case_4 { leaf receive { description "Install a receive route for the destination"; type empty; } } case case_5 { leaf next-table { description "Next hop to another table"; type string; } } } list qualified-next-hop { key name; ordered-by user; description "Next hop with qualifiers"; uses qualified_nh_obj; } list lsp-next-hop { key name; ordered-by user; description "LSP next hop"; uses lsp_nh_obj; } list static-lsp-next-hop { key name; ordered-by user; description "Static LSP next hop"; uses lsp_nh_obj; } list p2mp-lsp-next-hop { key name; ordered-by user; description "Point-to-multipoint LSP next hop"; max-elements 1; uses lsp_nh_obj; } leaf backup-pe-group { description "Multicast source redundancy group"; type string; } container bfd-liveness-detection { description "Bidirectional Forwarding Detection (BFD) options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } container authentication { description "Authentication options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf key-chain { description "Key chain name"; type string; } leaf algorithm { description "Algorithm name"; type enumeration { enum simple-password { description "Simple password"; } enum keyed-md5 { description "Keyed message Digest 5"; } enum meticulous-keyed-md5 { description "Meticulous keyed message Digest 5"; } enum keyed-sha-1 { description "Keyed secure hash algorithm (SHA1) "; } enum meticulous-keyed-sha-1 { description "Meticulous keyed secure hash algorithm (SHA1) "; } } } leaf loose-check { description "Verify authentication only if authentication is negotiated"; type empty; } } leaf neighbor { description "BFD neighbor address"; type ipaddr; } leaf local-address { description "BFD local address (for multihop only)"; type ipaddr; } leaf holddown-interval { description "Time to hold the session-UP notification to the client"; units "milliseconds"; type uint32 { range "0 .. 255000"; } } leaf minimum-receive-ttl { description "Minimum receive TTL below which to drop"; type uint8 { range "1 .. 255"; } } } leaf retain { description "Always keep route in forwarding table"; type empty; } leaf no-retain { description "Always keep route in forwarding table"; type empty; } leaf install { description "Install route into forwarding table"; type empty; } leaf no-install { description "Install route into forwarding table"; type empty; } leaf readvertise { description "Mark route as eligible to be readvertised"; type empty; } leaf no-readvertise { description "Mark route as eligible to be readvertised"; type empty; } leaf resolve { description "Allow resolution of indirectly connected next hops"; type empty; } leaf no-resolve { description "Allow resolution of indirectly connected next hops"; type empty; } leaf longest-match { description "Always use longest prefix match to resolve next hops"; type empty; } leaf no-longest-match { description "Always use longest prefix match to resolve next hops"; type empty; } choice passive_flag { case case_1 { leaf active { description "Remove inactive route from forwarding table"; type empty; } } case case_2 { leaf passive { description "Retain inactive route in forwarding table"; type empty; } } } container metric { description "Metric value"; uses rib_static_metric_type; } container metric2 { description "Metric value 2"; uses rib_static_metric_type; } container metric3 { description "Metric value 3"; uses rib_static_metric_type; } container metric4 { description "Metric value 4"; uses rib_static_metric_type; } container tag { description "Tag string"; uses rib_static_metric_type; } container tag2 { description "Tag string 2"; uses rib_static_metric_type; } container preference { description "Preference value"; uses rib_static_metric_type; } container preference2 { description "Preference value 2"; uses rib_static_metric_type; } container color { description "Color (preference) value"; uses rib_static_metric_type; } container color2 { description "Color (preference) value 2"; uses rib_static_metric_type; } leaf-list community { description "BGP community identifier"; type community; } container as-path { description "Autonomous system path"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf path { description "Autonomous system path"; type string; } leaf origin { description "(null)"; type enumeration { enum igp { description "Path originated in the local IGP"; } enum egp { description "Path originated in another AS"; } enum incomplete { description "Path was learned by some other means"; } } } leaf atomic-aggregate { description "Add ATOMIC_AGGREGATE path attribute to route"; type empty; } container aggregator { presence "enable aggregator"; description "Add AGGREGATOR path attribute to route"; } leaf as-number { description " Autonomous system number in plain number or 'higher 16bits'.'Lower 16 bits' (asdot notation) format"; type string { } } leaf address { description "Address of BGP system that formed the route"; type ipv4addr; } } } list iso-route { key name; ordered-by user; description "ISO family static route"; leaf name { description "(null)"; type isoprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice next_hop { case case_1 { leaf-list next-hop { description "Next hop to destination"; type ipaddr-or-interface; } } case case_2 { leaf reject { description "Drop packets to destination; send ICMP unreachables"; type empty; } } case case_3 { leaf discard { description "Drop packets to destination; send no ICMP unreachables"; type empty; } } case case_4 { leaf receive { description "Install a receive route for the destination"; type empty; } } case case_5 { leaf next-table { description "Next hop to another table"; type string; } } } list qualified-next-hop { key name; ordered-by user; description "Next hop with qualifiers"; uses qualified_nh_obj; } list lsp-next-hop { key name; ordered-by user; description "LSP next hop"; uses lsp_nh_obj; } list static-lsp-next-hop { key name; ordered-by user; description "Static LSP next hop"; uses lsp_nh_obj; } list p2mp-lsp-next-hop { key name; ordered-by user; description "Point-to-multipoint LSP next hop"; max-elements 1; uses lsp_nh_obj; } leaf backup-pe-group { description "Multicast source redundancy group"; type string; } container bfd-liveness-detection { description "Bidirectional Forwarding Detection (BFD) options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } container authentication { description "Authentication options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf key-chain { description "Key chain name"; type string; } leaf algorithm { description "Algorithm name"; type enumeration { enum simple-password { description "Simple password"; } enum keyed-md5 { description "Keyed message Digest 5"; } enum meticulous-keyed-md5 { description "Meticulous keyed message Digest 5"; } enum keyed-sha-1 { description "Keyed secure hash algorithm (SHA1) "; } enum meticulous-keyed-sha-1 { description "Meticulous keyed secure hash algorithm (SHA1) "; } } } leaf loose-check { description "Verify authentication only if authentication is negotiated"; type empty; } } leaf neighbor { description "BFD neighbor address"; type ipaddr; } leaf local-address { description "BFD local address (for multihop only)"; type ipaddr; } leaf holddown-interval { description "Time to hold the session-UP notification to the client"; units "milliseconds"; type uint32 { range "0 .. 255000"; } } leaf minimum-receive-ttl { description "Minimum receive TTL below which to drop"; type uint8 { range "1 .. 255"; } } } leaf retain { description "Always keep route in forwarding table"; type empty; } leaf no-retain { description "Always keep route in forwarding table"; type empty; } leaf install { description "Install route into forwarding table"; type empty; } leaf no-install { description "Install route into forwarding table"; type empty; } leaf readvertise { description "Mark route as eligible to be readvertised"; type empty; } leaf no-readvertise { description "Mark route as eligible to be readvertised"; type empty; } leaf resolve { description "Allow resolution of indirectly connected next hops"; type empty; } leaf no-resolve { description "Allow resolution of indirectly connected next hops"; type empty; } leaf longest-match { description "Always use longest prefix match to resolve next hops"; type empty; } leaf no-longest-match { description "Always use longest prefix match to resolve next hops"; type empty; } choice passive_flag { case case_1 { leaf active { description "Remove inactive route from forwarding table"; type empty; } } case case_2 { leaf passive { description "Retain inactive route in forwarding table"; type empty; } } } container metric { description "Metric value"; uses rib_static_metric_type; } container metric2 { description "Metric value 2"; uses rib_static_metric_type; } container metric3 { description "Metric value 3"; uses rib_static_metric_type; } container metric4 { description "Metric value 4"; uses rib_static_metric_type; } container tag { description "Tag string"; uses rib_static_metric_type; } container tag2 { description "Tag string 2"; uses rib_static_metric_type; } container preference { description "Preference value"; uses rib_static_metric_type; } container preference2 { description "Preference value 2"; uses rib_static_metric_type; } container color { description "Color (preference) value"; uses rib_static_metric_type; } container color2 { description "Color (preference) value 2"; uses rib_static_metric_type; } leaf-list community { description "BGP community identifier"; type community; } container as-path { description "Autonomous system path"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf path { description "Autonomous system path"; type string; } leaf origin { description "(null)"; type enumeration { enum igp { description "Path originated in the local IGP"; } enum egp { description "Path originated in another AS"; } enum incomplete { description "Path was learned by some other means"; } } } leaf atomic-aggregate { description "Add ATOMIC_AGGREGATE path attribute to route"; type empty; } container aggregator { presence "enable aggregator"; description "Add AGGREGATOR path attribute to route"; } leaf as-number { description " Autonomous system number in plain number or 'higher 16bits'.'Lower 16 bits' (asdot notation) format"; type string { } } leaf address { description "Address of BGP system that formed the route"; type ipv4addr; } } } list route-target-filter { key name; ordered-by user; description "Route-target-filter route"; leaf name { description "(null)"; type string { length "1 .. 47"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list neighbor { description "BGP peers for filter"; type ipaddr; } leaf-list group { description "BGP groups for filter"; type string; } leaf local { description "Locally originated filter"; type empty; } } } list martians { key address; ordered-by user; description "Invalid routes"; uses martian_type; } container aggregate { description "Coalesced routes"; uses rib_aggregate_type; } container generate { description "Route of last resort"; uses rib_aggregate_type; } choice maximum-paths-type { case case_1 { container maximum-paths { description "Maximum number of paths"; leaf limit { description "Maximum number of paths"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable maximum-paths"; choice log_type { case case_1 { leaf threshold { description "Percentage of limit at which to start generating warnings"; type uint32 { range "1 .. 100"; } } } case case_2 { leaf log-only { description "Generate warning messages only"; type empty; } } } leaf log-interval { description "Minimum interval between log messages"; units "seconds"; type uint32 { range "5 .. 86400"; } } } } } container maximum-prefixes { description "Maximum number of prefixes"; leaf limit { description "Maximum number of prefixes"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable maximum-prefixes"; choice log_type { case case_1 { leaf threshold { description "Percentage of limit at which to start generating warnings"; type uint32 { range "1 .. 100"; } } } case case_2 { leaf log-only { description "Generate warning messages only"; type empty; } } } leaf log-interval { description "Minimum interval between log messages"; units "seconds"; type uint32 { range "5 .. 86400"; } } } container multipath { presence "enable multipath"; description "Protocol-independent load balancing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container vpn-unequal-cost { presence "enable vpn-unequal-cost"; description "Include VPN routes with unequal IGP metrics"; leaf equal-external-internal { description "Include external and internal VPN routes"; type empty; } } leaf as-path-compare { description "Compare AS path sequences in addition to AS path length"; type empty; } } container protect { description "Protocol-independent protection"; leaf core { description "Protect against unreachability to service-edge router"; type empty; } } container label { presence "enable label"; description "Label processing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list allocation { description "Label allocation policy"; type policy-algebra; } leaf-list substitution { description "Label substitution policy"; type policy-algebra; } } container access { description "Access routes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list route { key name; ordered-by user; description "Access route"; leaf name { description "IP address of destination"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list next-hop { description "Next hop to destination"; type ipaddr-or-interface; } list qualified-next-hop { key name; ordered-by user; description "Next hop with qualifiers"; uses qualified_nh_obj; } leaf metric { description "Metric value"; type uint32 { range "1 .. 255"; } } leaf preference { description "Preference value"; type uint32; } leaf tag { description "Tag string"; type uint32; } } } container access-internal { description "Access-internal routes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list route { key name; ordered-by user; description "Access-internal route"; leaf name { description "IP address and optional prefix length of destination"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list next-hop { description "Next hop to destination"; type ipaddr-or-interface; } list qualified-next-hop { key name; ordered-by user; description "Next hop with qualifiers"; uses qualified_nh_obj; } } } container bgp-static { description "Routes for BGP static advertisements"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list route { key name; ordered-by user; description "BGP-static route"; leaf name { description "IP address and optional prefix length of destination"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container metric { description "Metric value"; uses rib_static_metric_type; } container metric2 { description "Metric value 2"; uses rib_static_metric_type; } container metric3 { description "Metric value 3"; uses rib_static_metric_type; } container metric4 { description "Metric value 4"; uses rib_static_metric_type; } container tag { description "Tag string"; uses rib_static_metric_type; } container tag2 { description "Tag string 2"; uses rib_static_metric_type; } container preference { description "Preference value"; uses rib_static_metric_type; } container preference2 { description "Preference value 2"; uses rib_static_metric_type; } container color { description "Color (preference) value"; uses rib_static_metric_type; } container color2 { description "Color (preference) value 2"; uses rib_static_metric_type; } leaf-list community { description "BGP community identifier"; type community; } container as-path { description "Autonomous system path"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf path { description "Autonomous system path"; type string; } leaf origin { description "(null)"; type enumeration { enum igp { description "Path originated in the local IGP"; } enum egp { description "Path originated in another AS"; } enum incomplete { description "Path was learned by some other means"; } } } leaf atomic-aggregate { description "Add ATOMIC_AGGREGATE path attribute to route"; type empty; } container aggregator { presence "enable aggregator"; description "Add AGGREGATOR path attribute to route"; } leaf as-number { description " Autonomous system number in plain number or 'higher 16bits'.'Lower 16 bits' (asdot notation) format"; type string { } } leaf address { description "Address of BGP system that formed the route"; type ipv4addr; } } } } } container access { description "Access routes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list route { key name; ordered-by user; description "Access route"; leaf name { description "IP address of destination"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list next-hop { description "Next hop to destination"; type ipaddr-or-interface; } list qualified-next-hop { key name; ordered-by user; description "Next hop with qualifiers"; uses qualified_nh_obj; } leaf metric { description "Metric value"; type uint32 { range "1 .. 255"; } } leaf preference { description "Preference value"; type uint32; } leaf tag { description "Tag string"; type uint32; } } } container access-internal { description "Access-internal routes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list route { key name; ordered-by user; description "Access-internal route"; leaf name { description "IP address and optional prefix length of destination"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list next-hop { description "Next hop to destination"; type ipaddr-or-interface; } list qualified-next-hop { key name; ordered-by user; description "Next hop with qualifiers"; uses qualified_nh_obj; } } } container multicast { description "Global multicast options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Global multicast trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum parse { description "Trace configuration parsing"; } enum config-internal { description "Trace configuration internals"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf disable { description "Disable this trace flag"; type empty; } } } list scope { key name; ordered-by user; description "Multicast address scope"; leaf name { description "Name to identify multicast address scope"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf prefix { description "Administratively scoped address"; type ipprefix; mandatory true; } leaf-list interface { description "Interface on which to configure scoping"; type interface-name; } } leaf-list scope-policy { description "Scoping policy"; type policy-algebra; } list flow-map { key name; ordered-by user; description "Multicast flow map configuration"; leaf name { description "Name of the flow map"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list policy { description "Policy for matched flows"; type policy-algebra; } container bandwidth { presence "enable bandwidth"; description "Bandwidth properties for matched flows"; leaf bandwidth-value { description "Static or default bandwidth for the matched flows"; units "bps"; type string; } leaf adaptive { description "Auto-sense bandwidth for matched flows"; type empty; } } leaf-list redundant-sources { description "Redundant source addresses"; type ipaddr; } container forwarding-cache { description "Forwarding cache properties for matched flows"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container timeout { description "Timeout properties for matched flows"; choice timeout_choice { case case_1 { leaf timeout-value { description "Timeout for forwarding cache entry"; units "minutes"; type uint32 { range "1 .. 720"; } } } case case_2 { container never { presence "enable never"; description "Forwarding cache entries never time out"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf non-discard-entry-only { description "Apply only to non-discard entries"; type empty; } } } } } } } leaf-list ssm-groups { description "Source-specific multicast group ranges"; type ipprefix; } leaf asm-override-ssm { description "Allow ASM state for SSM group ranges"; type empty; } leaf-list rpf-check-policy { description "Disable RPF check for a source group pair"; type policy-algebra; } container pim-to-igmp-proxy { description "PIM-to-IGMP proxy"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list upstream-interface { description "Upstream interface list"; type interface-name; max-elements 2; } } container pim-to-mld-proxy { description "PIM-to-MLD proxy"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list upstream-interface { description "Upstream interface list"; type interface-name; max-elements 2; } } container forwarding-cache { description "Multicast forwarding cache"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf allow-maximum { description "Allow maximum of global and family level threshold values for suppress and reuse"; type empty; } list family { key name; ordered-by user; description "Protocol family"; leaf name { description "Protocol family"; type enumeration { enum inet { description "IPv4 family"; } enum inet6 { description "IPv6 family"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container threshold { presence "enable threshold"; description "Multicast forwarding cache suppress threshold"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf suppress { description "Suppress threshold"; type uint32 { range "1 .. 200000"; } mandatory true; } leaf reuse { description "Reuse threshold"; type uint32 { range "1 .. 200000"; } } leaf log-warning { description "Percentage at which to start generating warnings"; type uint32 { range "1 .. 100"; } } } } container threshold { description "Threshold"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf suppress { description "Suppress threshold"; type uint32 { range "1 .. 200000"; } mandatory true; } presence "enable threshold"; leaf reuse { description "Reuse threshold"; type uint32 { range "1 .. 200000"; } } leaf log-warning { description "Percentage at which to start generating warnings"; type uint32 { range "1 .. 100"; } } } leaf timeout { description "Forwarding cache entry timeout in minutes"; type uint32 { range "1 .. 720"; } } } list interface { key name; ordered-by user; description "Multicast interface options"; uses multicast_interface_options_type; } list ssm-map { key name; ordered-by user; description "SSM map definitions"; leaf name { description "SSM map name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list policy { description "Policy for matching group"; type policy-algebra; } leaf-list source { description "One or more source addresses"; type ipaddr; } } container stream-protection { presence "enable stream-protection"; description "Multicast only Fast Re-Route"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf mofrr-primary-path-selection-by-routing { description "Multicast only Fast Re-Route primary path by Routing"; type empty; } leaf mofrr-disjoint-upstream-only { description "Multicast only Fast Re-Route disjoint upstream only"; type empty; } leaf mofrr-no-backup-join { description "Multicast only Fast Re-Route no backup join"; type empty; } leaf mofrr-asm-starg { description "Multicast only Fast Re-Route asm (*,G)"; type empty; } leaf-list policy { description "MoFRR Policy"; type policy-algebra; } } list backup-pe-group { key name; ordered-by user; description "Backup PE group definitions"; leaf name { description "PE group name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list backups { description "One or more IP addresses"; type ipaddr; max-elements 8; } leaf local-address { description "Address to be used as local-address for this group"; type ipaddr; mandatory true; } } leaf omit-wildcard-address { description "Omit wildcard source/group fields in SPMSI AD NLRI"; type empty; } leaf local-address { description "Local address for PIM and MVPN sessions"; type ipv4addr; } container igmp-aux-oif { presence "enable igmp-aux-oif"; description "Add an aux OIF to an IGMP host"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list request { key name; ordered-by user; description "Request to add an aux oif"; leaf name { description "Request number"; type uint8 { range "0 .. 9"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf host { description "Host address"; type ipv4addr; } leaf interface { description "Host interface name"; type interface-name; } leaf group { description "Multicast group address"; type ipv4addr; } leaf source { description "Multicast source address"; type ipv4addr; } leaf aux-oif { description "Aux OIF name"; type interface-name; } leaf enable-composite-nh { description "Enable composite NH support"; type empty; } } } container mld-aux-oif { presence "enable mld-aux-oif"; description "Add an aux OIF to an MLD host"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list request { key name; ordered-by user; description "Request to add an aux oif"; leaf name { description "Request number"; type uint8 { range "0 .. 9"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf host { description "Host address"; type ipv6addr; } leaf interface { description "Host interface name"; type interface-name; } leaf group { description "Multicast group address"; type ipv6addr; } leaf source { description "Multicast source address"; type ipv6addr; } leaf aux-oif { description "Aux OIF name"; type interface-name; } leaf enable-composite-nh { description "Enable composite NH support"; type empty; } } } container v4-xmit-streams { presence "enable v4-xmit-streams"; description "Configure IPv4 fast and slow multicast streams"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-port { description "Slow streams UDP source port"; default "2000"; type uint16 { range "2000 .. 65535"; } } leaf destination-port { description "Slow streams UDP destination port"; default "2001"; type uint16 { range "2000 .. 65535"; } } leaf ttl { description "Slow streams time-to-live"; default "10"; type uint8 { range "1 .. 32"; } } leaf packet-interval { description "Slow streams packet interval"; default "10"; units "seconds"; type uint32 { range "10 .. 120"; } } list interface { key name; ordered-by user; description "Interface options for IPv4 multicast slow streams"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "Destination address"; leaf name { description "Destination address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf group-count { description "Number of groups"; default "1"; type uint32 { range "1 .. 512"; } } list source { key name; ordered-by user; description "Sender address"; leaf name { description "Sender address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-count { description "Number of senders"; default "1"; type uint32 { range "1 .. 1024"; } } } } } list stream { key name; ordered-by user; description "Add an IPv4 multicast fast stream"; leaf name { description "Stream number"; type uint8 { range "0 .. 9"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interface { description "Interface to send on"; type interface-name; } leaf group { description "Destination address"; type ipv4addr; } leaf source { description "Sender's address"; type ipv4addr; } leaf source-port { description "UDP source port"; type uint16 { range "2000 .. 65535"; } } leaf destination-port { description "UDP destination port"; type uint16 { range "2000 .. 65535"; } } leaf ttl { description "Time-to-live"; type uint8 { range "1 .. 32"; } } leaf payload-size { description "Payload size (bytes)"; type int32 { range "1 .. 1400"; } } leaf pps { description "Packets/sec to send"; type int32 { range "1 .. 10000"; } } } } container v6-xmit-streams { presence "enable v6-xmit-streams"; description "Configure IPv6 multicast streams"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf destination-port { description "Slow streams UDP destination port"; default "2001"; type uint16 { range "2000 .. 65535"; } } leaf ttl { description "Slow streams time-to-live"; default "10"; type uint8 { range "1 .. 32"; } } leaf packet-interval { description "Slow streams packet interval"; default "10"; units "seconds"; type uint32 { range "10 .. 120"; } } list interface { key name; ordered-by user; description "Interface options for IPv6 multicast slow streams"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "Destination address"; leaf name { description "Destination address"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf group-count { description "Number of groups"; default "1"; type uint32 { range "1 .. 512"; } } list source { key name; ordered-by user; description "Sender address"; leaf name { description "Sender address"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-count { description "Number of senders"; default "1"; type uint32 { range "1 .. 1024"; } } } } } list stream { key name; ordered-by user; description "Add an IPv6 multicast fast stream"; leaf name { description "Stream number"; type uint8 { range "0 .. 9"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interface { description "Interface to send on"; type interface-name; } leaf group { description "Destination address"; type ipv6addr; } leaf source { description "Sender's address"; type ipv6addr; } leaf destination-port { description "Destination port"; type uint16 { range "2000 .. 65535"; } } leaf ttl { description "Time-to-live"; type uint8 { range "1 .. 32"; } } leaf payload-size { description "Payload size (bytes)"; type int32 { range "1 .. 1400"; } } leaf pps { description "Packets/sec to send"; type int32 { range "1 .. 10000"; } } } } } } } } container interfaces { description "Interface configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list pic-set { key name; ordered-by user; description "NP bundling configuration"; leaf name { description "Pic set name"; type string { length "1 .. 127"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list interface { key name; ordered-by user; description "One or more interfaces that use this picset"; leaf name { description "Interface name"; type string { length "1 .. 127"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list fpc { key name; ordered-by user; description "(null)"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list pic { key name; ordered-by user; description "Physical Interface Card number"; leaf name { description "PIC slot number"; type uint32 { range "0 .. 3"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } list interface-set { key name; ordered-by user; description "Logical interface set configuration"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list interface { key name; ordered-by user; description "One or more interfaces that belong to interface set"; leaf name { description "Interface name"; type interface-device; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list unit { key name; description "One or more logical interface unit numbers"; leaf name { description "Unit number"; type uint32 { range "0 .. 1073741823"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list vlan-tags-outer { key name; description "One or more outer VLAN tags"; leaf name { description "VLAN tag ID"; type uint32 { range "0 .. 4094"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } container pppoe-underlying-options { description "PPP over Ethernet underlying interface-specific options"; uses pppoe_underlying_options_type; } } container traceoptions { description "Interface trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum all { description "Enable all configuration logging"; } enum kernel { description "Log configuration IPC messages to kernel"; } enum change-events { description "Log changes that produce configuration events"; } enum kernel-detail { description "Log details of configuration messages to kernel"; } enum config-states { description "Log the configuration state machine changes"; } enum resource-usage { description "Log the resource usage for different states"; } enum gres-events { description "Log the events related to GRES "; } enum select-events { description "Log the events on select state machine "; } enum bfd-events { description "Log BFD related events"; } } } leaf disable { description "Disable this trace flag"; type empty; } } } list interface-range { key name; ordered-by user; description "Interface ranges configuration"; leaf name { description "Interface-range name"; type string { length "1 .. 128"; } } list member { key name; ordered-by user; description "Interfaces belonging to the interface range"; leaf name { description "Member interface name"; type interface-range-wild; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list member-range { key name; ordered-by user; description "Interfaces range in to format"; leaf name { description "(null)"; type interface-device; } leaf end-range { description "(null)"; type interface-device; mandatory true; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf description { description "Text description of interface"; type string; } leaf metadata { description "Text metadata attached to interface"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable this interface"; type empty; } } } leaf promiscuous-mode { description "Enable promiscuous mode for L3 interface"; type empty; } leaf port-mirror-instance { description "Port-mirror the packet to specified instance"; type string { length "1 .. 64"; } } leaf multicast-statistics { description "Enable multicast statistics"; type empty; } leaf oam-on-svlan { description "Propagate SVLAN OAM state to CVLANs"; type empty; } container fabric-options { description "Fabric interface specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list member-interfaces { key name; description "Member interface for the fabric interface"; leaf name { description "Interface name of member"; type interface-device; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } container traceoptions { presence "enable traceoptions"; description "Interface trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum ipc { description "Trace interface IPC messages"; } enum event { description "Trace interface events"; } enum media { description "Trace interface media changes"; } enum all { description "Enable all interface trace flags"; } } } } } leaf passive-monitor-mode { description "Use interface to tap packets from another router"; type empty; } choice keepalive_choices { case case_1 { container keepalives { description "Send or demand keepalive messages"; uses keepalives_type; } } case case_2 { leaf no-keepalives { description "Do not send keepalive messages"; type empty; } } } leaf traps { description "Enable SNMP notifications on state changes"; type empty; } leaf no-traps { description "Enable SNMP notifications on state changes"; type empty; } leaf accounting-profile { description "Accounting profile name"; type string; } container anchor-point { presence "enable anchor-point"; description "Anchor point"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interface-name { description "Interface name"; type interface-device; mandatory true; } } leaf bypass-queueing-chip { description "Enable to bypass queueing chip"; type empty; } leaf no-bypass-queueing-chip { description "Enable to bypass queueing chip"; type empty; } choice scheduler_type { case case_1 { leaf per-unit-scheduler { description "Enable subunit queuing on Frame Relay or VLAN IQ interface"; type empty; } leaf no-per-unit-scheduler { description "Enable subunit queuing on Frame Relay or VLAN IQ interface"; type empty; } } case case_2 { leaf shared-scheduler { description "Enabled shared queuing on an IQ2 interface"; type empty; } } case case_3 { container hierarchical-scheduler { presence "enable hierarchical-scheduler"; description "Enable hierarchical scheduling"; leaf maximum-hierarchy-levels { description "Maximum hierarchy levels"; type uint32 { range 2; } } leaf implicit-hierarchy { description "Implicit hierarchy (follows interface hierarchy)"; type empty; } } } } leaf schedulers { description "Number of schedulers to allocate for interface"; type uint32; } leaf interface-transmit-statistics { description "Interface statistics based on the transmitted packets"; type empty; } leaf cascade-port { description "Cascade port"; type empty; } leaf dce { description "Respond to Frame Relay status enquiry messages"; type empty; } choice vlan_tag_mode { case case_1 { leaf vlan-tagging { description "802.1q VLAN tagging support"; type empty; } } case case_2 { leaf stacked-vlan-tagging { description "Stacked 802.1q VLAN tagging support"; type empty; } } case case_3 { leaf flexible-vlan-tagging { description "Support for no tagging, or single and double 802.1q VLAN tagging"; type empty; } } case case_4 { leaf vlan-vci-tagging { description "CCC for VLAN Q-in-Q and ATM VPI/VCI interworking"; type empty; } } } leaf native-vlan-id { description "Virtual LAN identifier for untagged frames"; type uint32 { range "0 .. 4094"; } } leaf speed { description "Link speed"; type enumeration { enum auto { description "Enable auto negotiation of interface speed"; } enum auto-10m-100m { description "Enable auto negotiation of limiting interface speed to 10m/100m"; } enum 10m { description "(null)"; } enum 100m { description "(null)"; } enum 1g { description "(null)"; } enum 10g { description "(null)"; } enum 40g { description "(null)"; } enum oc3 { description "(null)"; } enum oc12 { description "(null)"; } enum oc48 { description "(null)"; } } } container forwarding-class-accounting { presence "enable forwarding-class-accounting"; description "Configure Forwarding-class-accounting parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf direction { description "Direction of the traffic to be accounted for IFD"; type enumeration { enum ingress { description "Enable forwarding-class-accounting for ingress traffic"; } enum egress { description "Enable forwarding-class-accounting for egress traffic"; } enum both { description "Enable forwarding-class-accounting for both directions"; } } } container enhanced { presence "enable enhanced"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf traffic-type { description "Traffic-type to be accounted for forwarding-class-accounting"; type enumeration { enum unicast-statistics { description "Count only unicast traffic for forwarding-class-accounting"; } enum multicast-statistics { description "Count only multicast traffic for forwarding-class-accounting"; } } } leaf family { description "Protocol traffic to be accounted for forwarding-class-accounting"; type enumeration { enum inet { description "Enable forwarding-class-accounting for IPv4 family only"; } enum inet6 { description "Enable forwarding-class-accounting for IPv6 family only"; } enum both { description "Enable forwarding-class-accounting for both IPv4 and IPv6 family only"; } } } leaf direction { description "Direction of the traffic to be accounted for forwarding-class-accounting"; type enumeration { enum ingress { description "Enable forwarding-class-accounting for ingress traffic"; } enum egress { description "Enable forwarding-class-accounting for egress traffic"; } enum both { description "Enable forwarding-class-accounting for both ingress and egress traffic"; } } } leaf overhead-bytes { description "Per octet overhead bytes to be accounted for forwarding-class-accounting"; default "0"; type uint32 { range "0 .. 255"; } } } } container auto-configure { description "Auto configuration"; uses auto_configure_vlan_type; } leaf mtu { description "Maximum transmit packet size"; type uint32 { range "256 .. 9216"; } } container hold-time { description "Hold time for link up and link down"; leaf up { description "Link up hold time"; units "milliseconds"; type uint32; mandatory true; } presence "enable hold-time"; leaf down { description "Link down hold time"; units "milliseconds"; type uint32; mandatory true; } } container damping { description "Interface damping parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf half-life { description "Damping half life time"; default "5"; units "seconds"; type uint32 { range "1 .. 30"; } } leaf max-suppress { description "Maximum suppress time"; default "20"; units "seconds"; type uint32 { range "1 .. 20000"; } } leaf reuse { description "Reuse threshold"; default "1000"; type uint32 { range "1 .. 20000"; } } leaf suppress { description "Suppress threshold"; default "2000"; type uint32 { range "1 .. 20000"; } } leaf enable { description "Enable interface damping"; type empty; } } container satop-options { description "Structure-Agnostic TDM over Packet protocol options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf idle-pattern { description "An 8-bit hexadecimal pattern to replace TDM data in a lost packet"; type uint32 { range "0 .. 255"; } } leaf payload-size { description "Number of payload bytes per packet"; type uint32 { range "64 .. 1024"; } } container excessive-packet-loss-rate { description "Packet loss options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "Percentile designating the threshold of excessive packet loss rate"; type uint8 { range "1 .. 100"; } } leaf sample-period { description "Number of milliseconds over which excessive packet loss rate is calculated"; type uint32 { range "1000 .. 65535"; } } } choice jitter-buffer-size { case case_1 { leaf jitter-buffer-packets { description "Number of packets in jitter buffer before packet data is played out in the line"; type uint32 { range "1 .. 64"; } } } case case_2 { leaf jitter-buffer-latency { description "Number of milliseconds delay in jitter buffer before packet data is played out in the line"; units "milliseconds"; type uint32 { range "1 .. 1000"; } } } case case_3 { leaf jitter-buffer-auto-adjust { description "Automatically adjust jitter buffer"; type empty; } } } leaf bit-rate { description "In multiples of DS0"; type uint32 { range "1 .. 10240"; } } } container cesopsn-options { description "Structure-Aware TDM over Packet protocol options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf idle-pattern { description "An 8-bit hexadecimal pattern to replace TDM data in a lost packet"; type uint32 { range "0 .. 255"; } } leaf packetization-latency { description "Number of microseconds to create packets"; units "microseconds"; type uint32 { range "1000 .. 8000"; } } leaf payload-size { description "Number of payload bytes per packet"; type uint32 { range "64 .. 1024"; } } container excessive-packet-loss-rate { description "Packet loss options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "Percentile designating the threshold of excessive packet loss rate"; type uint8 { range "1 .. 100"; } } leaf sample-period { description "Number of milliseconds over which excessive packet loss rate is calculated"; type uint32 { range "1000 .. 65535"; } } } choice jitter-buffer-size { case case_1 { leaf jitter-buffer-packets { description "Number of packets in jitter buffer before packet data is played out in the line"; type uint32 { range "1 .. 64"; } } } case case_2 { leaf jitter-buffer-latency { description "Number of milliseconds delay in jitter buffer before packet data is played out in the line"; units "milliseconds"; type uint32 { range "1 .. 1000"; } } } case case_3 { leaf jitter-buffer-auto-adjust { description "Automatically adjust jitter buffer"; type empty; } } } leaf bit-rate { description "In multiples of DS0"; type uint32 { range "1 .. 10240"; } } } container ima-group-options { description "IMA group options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf frame-length { description "Frame length (cells)"; type enumeration { enum 32 { description "(null)"; } enum 64 { description "(null)"; } enum 128 { description "(null)"; } enum 256 { description "(null)"; } } } leaf symmetry { description "Symmetry of IMA group"; default "symmetrical-config-and-operation"; type enumeration { enum symmetrical-config-and-operation { description "(null)"; } enum symmetrical-config-asymmetrical-operation { description "(null)"; } } } leaf transmit-clock { description "Transmit clock"; type enumeration { enum common { description "Common transmit clock"; } enum independent { description "Independent transmit clock"; } } } leaf version { description "IMA specification version"; type enumeration { enum 1.0 { description "Version 1.0"; } enum 1.1 { description "Version 1.1"; } } } container minimum-links { description "IMA group minimum active links"; choice minimum_links_type { case case_1 { leaf symmetrical { description "Minimum active receive and transmit links"; type uint32 { range "1 .. 32"; } } } } } container frame-synchronization { description "IMA group frame synchronization state parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf alpha { description "Consecutive invalid ICP cells"; type uint32 { range "1 .. 2"; } } leaf beta { description "Consecutive errored ICP cells"; type uint32 { range "1 .. 5"; } } leaf gamma { description "Consecutive valid ICP cells"; type uint32 { range "1 .. 5"; } } } container test-procedure { description "IMA group test pattern procedure"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf period { description "Length of IMA pattern test"; units "seconds"; type uint32 { range "1 .. 4294967294"; } } leaf interface { description "Interface name of the IMA link to test"; type interface-device; } leaf pattern { description "IMA test pattern"; type uint32 { range "1 .. 254"; } } } leaf differential-delay { description "Maximum differential delay among links in the IMA group"; units "milliseconds"; type uint32 { range "1 .. 56"; } } } container ima-link-options { description "IMA link options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf group-id { description "IMA group ID this IMA link belongs to"; type uint32 { range "12 .. 57"; } } } list multi-chassis-protection { key name; description "Inter-Chassis protection configuration"; uses multi-chassis-protection-group; } container clocking { presence "enable clocking"; description "Interface clock source"; choice clocking_choices { case case_1 { leaf internal { description "Clocking provided by local system"; type empty; } } case case_2 { container external { presence "enable external"; description "Clocking provided by DCE (loop timing)"; } } } } leaf link-mode { description "Link operational mode"; type enumeration { enum automatic { description "Automatically negotiate duplex"; } enum half-duplex { description "Half-duplex operation"; } enum full-duplex { description "Full-duplex operation"; } } } leaf media-type { description "Interface media type (copper or fiber)"; type enumeration { enum copper { description "Copper as media"; } enum fiber { description "Fiber as media"; } } } leaf encapsulation { description "Physical link-layer encapsulation"; type enumeration { enum ppp { description "Serial PPP device"; } enum ppp-ccc { description "Serial PPP device for a cross-connect"; } enum ppp-tcc { description "Serial PPP device for a translational cross-connect"; } enum ether-vpls-ppp { description "Ethernet VPLS over PPP (bridging) device"; } enum frame-relay { description "Frame Relay encapsulation"; } enum frame-relay-ccc { description "Frame Relay for cross-connect"; } enum frame-relay-tcc { description "Frame Relay for translational cross-connect"; } enum extended-frame-relay-ccc { description "Any Frame Relay DLCI for cross-connect"; } enum extended-frame-relay-tcc { description "Any Frame Relay DLCI for translational cross-connect"; } enum flexible-frame-relay { description "Multiple Frame Relay encapsulations"; } enum frame-relay-port-ccc { description "Frame Relay port encapsulation for a cross-connect"; } enum frame-relay-ether-type { description "Cisco-compatible Frame Relay encapsulation"; } enum frame-relay-ether-type-tcc { description "Cisco-compatible Frame Relay encapsulation for translational cross-connect"; } enum extended-frame-relay-ether-type-tcc { description "Cisco-compatible Frame Relay encapsulation any DLCI for translational cross-connect"; } enum cisco-hdlc { description "Cisco-compatible HDLC framing"; } enum cisco-hdlc-ccc { description "Cisco-compatible HDLC framing for a cross-connect"; } enum cisco-hdlc-tcc { description "Cisco-compatible HDLC framing for a translational cross-connect"; } enum vlan-ccc { description "802.1q tagging for a cross-connect"; } enum extended-vlan-ccc { description "Nonstandard TPID tagging for a cross-connect"; } enum ethernet-ccc { description "Ethernet cross-connect"; } enum flexible-ethernet-services { description "Allows per-unit Ethernet encapsulation configuration"; } enum atm-pvc { description "ATM permanent virtual circuits"; } enum atm-ccc-cell-relay { description "ATM cell relay encapsulation for cross-connect"; } enum ethernet-over-atm { description "Ethernet over ATM encapsulation"; } enum ethernet-tcc { description "Ethernet translational cross-connect"; } enum extended-vlan-tcc { description "802.1q tagging for a translational cross-connect"; } enum multilink-frame-relay-uni-nni { description "Multilink Frame Relay UNI NNI (FRF.16) encapsulation"; } enum satop { description "Structure-Agnostic TDM over Packet encapsulation"; } enum cesopsn { description "Structure-Agnostic TDM over Packet encapsulation"; } enum ima { description "Inverse Multiplexing for ATM"; } enum ethernet-vpls { description "Ethernet virtual private LAN service"; } enum ethernet-bridge { description "Ethernet layer-2 bridging"; } enum vlan-vpls { description "VLAN virtual private LAN service"; } enum vlan-vci-ccc { description "CCC for VLAN Q-in-Q and ATM VPI/VCI interworking"; } enum extended-vlan-vpls { description "Extended VLAN virtual private LAN service"; } enum extended-vlan-bridge { description "VLAN layer-2 bridging"; } enum multilink-ppp { description "Multilink PPP"; } enum generic-services { description "Generic services"; } } } container esi { description "ESI configuration of multi-homed interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf identifier { description "ESI value for the interface"; type esi; mandatory true; } presence "enable esi"; choice mode { case case_1 { leaf single-active { description "Single-active mode"; type empty; } } case case_2 { leaf all-active { description "All-active mode"; type empty; } } } } container framing { description "Frame type"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice frame { case case_1 { leaf lan-phy { description "802.3ae 10-Gbps LAN-mode interface"; type empty; } } case case_2 { leaf wan-phy { description "802.3ae 10-Gbps WAN-mode interface"; type empty; } } case case_3 { leaf sonet { description "SONET framing"; type empty; } } case case_4 { leaf sdh { description "SDH framing"; type empty; } } } } leaf unidirectional { description "Unidirectional Mode"; type empty; } container lmi { description "Local Management Interface settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf n391dte { description "DTE full status polling interval"; type uint16 { range "1 .. 255"; } } leaf n392dce { description "DCE error threshold"; type uint16 { range "1 .. 10"; } } leaf n392dte { description "DTE error threshold"; type uint16 { range "1 .. 10"; } } leaf n393dce { description "DCE monitored event count"; type uint16 { range "1 .. 10"; } } leaf n393dte { description "DTE monitored event count"; type uint16 { range "1 .. 10"; } } leaf t391dte { description "DTE polling timer"; units "seconds"; type uint16 { range "5 .. 30"; } } leaf t392dce { description "DCE polling verification timer"; units "seconds"; type uint16 { range "5 .. 30"; } } leaf lmi-type { description "Specify the Frame Relay LMI type"; type enumeration { enum ansi { description "Use ANSI Annex D LMI"; } enum itu { description "Use ITU Q933a Annex A LMI"; } enum c-lmi { description "Use Consortium LMI"; } } } } container mlfr-uni-nni-bundle-options { description "Multilink Frame Relay UNI NNI (FRF.16) management settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container cisco-interoperability { description "FRF.16 Cisco interoperability settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf send-lip-remove-link-for-link-reject { description "Send Link Integrity Protocol remove link on receiving add-link rejection"; type empty; } } leaf mrru { description "Maximum received reconstructed unit"; units "bytes"; type uint16 { range "1500 .. 4500"; } } leaf yellow-differential-delay { description "Yellow differential delay among bundle links to give warning"; units "milliseconds"; type uint16 { range "3 .. 2000"; } } leaf red-differential-delay { description "Red differential delay among bundle links to take action"; units "milliseconds"; type uint16 { range "5 .. 2000"; } } leaf action-red-differential-delay { description "Type of actions when differential delay exceeds red limit"; type enumeration { enum remove-link { description "Remove bundle link from service when exceeding red limit"; } enum disable-tx { description "Disable transfer of bundle link when exceeding red limit"; } } } leaf fragment-threshold { description "Fragmentation threshold"; units "bytes"; type uint32 { range "64 .. 16320"; } } leaf drop-timeout { description "Drop timeout"; units "milliseconds"; type uint16 { range "0 .. 2000"; } } leaf link-layer-overhead { description "Link layer bit stuffing overhead (0.0 .. 50.0 percent)"; type unsigned-float; } leaf lmi-type { description "Specify the multilink Frame Relay UNI NNI LMI type"; type enumeration { enum ansi { description "Use ANSI Annex D LMI"; } enum itu { description "Use ITU Q933a Annex A LMI"; } enum c-lmi { description "Use Consortium LMI"; } } } leaf minimum-links { description "Minimum number of links to sustain the bundle"; type uint16 { range "1 .. 8"; } } leaf hello-timer { description "LIP hello timer"; type uint16 { range "5 .. 180"; } } leaf acknowledge-timer { description "LIP ack timer"; type uint16 { range "1 .. 10"; } } leaf acknowledge-retries { description "LIP ack retry times"; type uint16 { range "1 .. 5"; } } leaf n391 { description "Multilink Frame Relay UNI NNI full status polling counter"; type uint16 { range "1 .. 255"; } } leaf n392 { description "Multilink Frame Relay UNI NNI LMI error threshold"; type uint16 { range "1 .. 10"; } } leaf n393 { description "Multilink Frame Relay UNI NNI LMI monitored event count"; type uint16 { range "1 .. 10"; } } leaf t391 { description "Multilink Frame Relay UNI NNI link integrity verify polling timer"; type uint16 { range "5 .. 30"; } } leaf t392 { description "Multilink Frame Relay UNI NNI polling verification timer"; type uint16 { range "5 .. 30"; } } } leaf mac { description "Hardware MAC address"; type mac-unicaset; } container receive-bucket { description "Set receive bucket parameters"; uses dcd_rx_bucket_config; } container transmit-bucket { description "Set transmit bucket parameters"; uses dcd_tx_bucket_config; } leaf shared-interface { description "Enable shared interface on the interface"; type empty; } container sonet-options { description "SONET interface-specific options"; uses sonet_options_type; } container logical-tunnel-options { description "Logical Tunnel interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf per-unit-mac-disable { description "Disable the creation of per unit mac address on LT IFLs for VPLS/CCC encaps"; type empty; } } container aggregated-sonet-options { description "Aggregated SONET interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-links { description "Minimum number of aggregated links"; type uint16 { range "1 .. 32"; } } leaf link-speed { description "Aggregated links speed"; type enumeration { enum oc3 { description "Links are OC-3c or STM-1c"; } enum oc12 { description "Links are OC-12c or STM-4c"; } enum oc48 { description "Links are OC-48c or STM-16c"; } enum oc192 { description "Links are OC-192c or STM-64c"; } enum oc768 { description "Links are OC-768c or STM-256c"; } enum mixed { description "Links are various speeds"; } } } leaf minimum-bandwidth { description "Minimum bandwidth necessary to sustain bundle"; units "bps"; type uint64 { range "0 .. 159232000000"; } } } container atm-options { description "ATM interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf pic-type { description "Type of ATM PIC (ATM I, ATM II or ATM CE)"; type enumeration { enum atm-ce { description "CE PIC"; } enum atm2 { description "ATM II IQ PIC"; } enum atm1 { description "ATM I PIC"; } } } leaf cell-bundle-size { description "L2 circuit cell bundle size"; units "cells"; type uint32 { range "1 .. 176"; } } leaf cell-bundle-timeout { description "L2 circuit cell bundle timeout"; units "microseconds"; type uint32 { range "1 .. 512"; } } leaf plp-to-clp { description "Enable ATM2 PLP to CLP copy"; type empty; } leaf use-null-cw { description "Always insert/strip null control words with cell-relay"; type empty; } container promiscuous-mode { presence "enable promiscuous-mode"; description "Set ATM interface to promiscuous mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list vpi { key name; ordered-by user; description "Open this VPI in promiscuous mode"; leaf name { description "Virtual path index"; type uint32 { range "0 .. 255"; } } } } list vpi { key name; ordered-by user; description "Define a virtual path"; leaf name { description "Virtual path index"; type uint32 { range "0 .. 255"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum-vcs { description "Maximum number of virtual circuits on this VP"; type uint32; } container shaping { description "Virtual path traffic-shaping options"; uses dcd_shaping_config; } container oam-period { description "F4 OAM cell period"; choice oam_period_choices { case case_1 { leaf oam-period { description "F4 OAM cell period"; units "seconds"; type uint32 { range "1 .. 900"; } } } case case_2 { container disable { presence "enable disable"; description "Disable F4 OAM loopback"; } } } } container oam-liveness { description "F4 OAM virtual path liveness parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf up-count { description "Number of F4 OAM cells to consider VP up"; type uint32 { range "1 .. 255"; } } leaf down-count { description "Number of F4 OAM cells to consider VP down"; type uint32 { range "1 .. 255"; } } } } container ilmi { presence "enable ilmi"; description "Enable Interim Local Management Interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list linear-red-profiles { key name; ordered-by user; description "ATM2 CoS virtual circuit drop profiles"; leaf name { description "Linear RED profile name"; type string { } } leaf queue-depth { description "Maximum queue depth"; units "cells"; type string; mandatory true; } leaf high-plp-threshold { description "Fill level percentage when linear RED is applied for high PLP"; type uint32 { range "0 .. 100"; } mandatory true; } leaf low-plp-threshold { description "Fill level percentage when linear RED is applied for low PLP"; type uint32 { range "0 .. 100"; } mandatory true; } leaf high-plp-max-threshold { description "Fill level percentage with 100 percent packet drop for high PLP"; type uint32 { range "0 .. 100"; } } leaf low-plp-max-threshold { description "Fill level percentage with 100 percent packet drop for low PLP"; type uint32 { range "0 .. 100"; } } } list scheduler-maps { key name; ordered-by user; description "ATM2 CoS parameters assigned to forwarding classes"; leaf name { description "ATM2 CoS scheduler map name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf vc-cos-mode { description "ATM2 virtual circuit CoS mode"; type enumeration { enum strict { description "Always schedule high priority queue first"; } enum alternate { description "Every other packet from high priority queue (default)"; } } } list forwarding-class { key name; ordered-by user; description "Scheduling parameters associated with forwarding class"; leaf name { description "Forwarding class name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf priority { description "Queuing priority assigned to forwarding class"; type enumeration { enum low { description "Low priority queuing"; } enum high { description "High priority queuing"; } } } container transmit-weight { description "Transmit weight"; choice weight-method { case case_1 { leaf percent { description "Transmit weight as percentage"; type uint32 { range "5 .. 100"; } } } case case_2 { leaf cells { description "Transmit weight by cells count"; type string; } } } } choice drop-profile-method { case case_1 { container epd-threshold { description "Early packet discard threshold for ATM2"; uses epd_threshold_config; } } case case_2 { leaf linear-red-profile { description "Linear RED profile profile name"; type string; } } } } } container mpls { description "MPLS options"; uses mpls_ifd_options; } leaf payload-scrambler { description "Enable payload scrambling"; type empty; } leaf no-payload-scrambler { description "Enable payload scrambling"; type empty; } } container multiservice-options { description "Multiservice interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf syslog { description "Enable system logging on this interface"; type empty; } leaf no-syslog { description "Enable system logging on this interface"; type empty; } leaf core-dump { description "Enable core dumping on this interface"; type empty; } leaf no-core-dump { description "Enable core dumping on this interface"; type empty; } container flow-control-options { description "Flow control configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf dump-on-flow-control { description "Cause core dump during prolonged flow-control"; type empty; } leaf reset-on-flow-control { description "Reset interface during prolonged flow-control"; type empty; } leaf down-on-flow-control { description "Bring interface down during prolonged flow-control"; type empty; } } } container ggsn-options { description "GGSN interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf syslog { description "Enable system logging on this interface"; type empty; } leaf no-syslog { description "Enable system logging on this interface"; type empty; } leaf core-dump { description "Enable core dumping on this interface"; type empty; } leaf no-core-dump { description "Enable core dumping on this interface"; type empty; } } container ppp-options { description "Point-to-Point Protocol (PPP) interface-specific options"; uses ppp_options_type; } container redundancy-options { description "Redundancy options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf primary { description "Specify the primary interface"; type interface-device; } leaf secondary { description "Specify the secondary interface"; type interface-device; } container redundancy-local { description "Specify information for the local peer"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf data-address { description "Specify the HA local data IP address"; type ipv4addr; } } leaf routing-instance { description "Specify routing-instance for the HA traffic"; type string; } container replicate-services { description "Replicate services state from active to backup"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf pgcp { description "Replicate the PGCP service state"; type empty; } } } container load-balancing-options { description "Load-balancing on services pics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list member-interface { key name; description "(null)"; max-elements 24; leaf name { description "Interface name"; type interface-device; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container member-failure-options { description "Load balancing member failure handling options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice member-failure { case case_1 { container redistribute-all-traffic { presence "enable redistribute-all-traffic"; description "On a member failure, redistribute traffic to ams"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf enable-rejoin { description "Failed member can rejoin after recovery"; type empty; } } } case case_2 { container drop-member-traffic { presence "enable drop-member-traffic"; description "On a member failure, drop its traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf rejoin-timeout { description "Wait time(in seconds) for failed member to rejoin"; default "120"; type uint32 { range "0 .. 1000"; } } leaf enable-rejoin { description "Failed member can join after recovery"; type empty; } } } } } container high-availability-options { description "High Availability options for Load-balancing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice ha-type { case case_1 { container many-to-one { description "N:1 High Availability model"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf preferred-backup { description "Preferred backup Interface name"; type interface-device; } } } } } } container anchoring-options { description "Groups anchoring PFEs or FPCs together."; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf apfe-group-set { description "Ties up different anchoring groups to share similar fate"; type string { length "1 .. 32"; } } list primary-list { key name; description "Primary anchoring PFE name."; leaf name { description "Anchoring PFE name."; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container secondary { presence "enable secondary"; description "Secondary anchoring PFE name."; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf anchoring-device-name { description "Anchoring PFE name."; type string { } } } choice mode { case case_1 { leaf warm-standby { description "Delayed failover to secondary when primary fails"; type empty; } } } } container lsq-failure-options { description "Link services queuing failure options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list trigger-link-failure { key name; ordered-by user; description "Link on which to trigger failure"; leaf name { description "Interface name"; type interface-device; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf no-termination-request { description "Do not send PPP termination requests"; type empty; } leaf no-no-termination-request { description "Do not send PPP termination requests"; type empty; } } container redundancy-group { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list member-interface { key name; description "Member interface for the redundancy group"; leaf name { description "Interface name of member"; type interface-device; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice redundancy { case case_1 { leaf active { description "Active interface"; type empty; } } case case_2 { leaf backup { description "Backup interface"; type empty; } } } } leaf maximum-links { description "(null)"; type uint32 { range "2 .. 32"; } } } container services-options { description "Services interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container syslog { description "Define system log parameters"; uses service_set_syslog_object; } container jflow-log { description "Define Jflow-log parameters."; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf message-rate-limit { description "Maximum jflow-log NAT error events allowed per second from this interface"; units "messages per second"; type uint32 { range "1 .. 2147483647"; } } } leaf open-timeout { description "Timeout period for TCP session establishment"; units "seconds"; type uint32 { range "4 .. 300"; } } leaf close-timeout { description "Timeout period for TCP session tear-down"; units "seconds"; type uint32 { range "2 .. 300"; } } leaf inactivity-timeout { description "Inactivity timeout period for established sessions (4..86400)"; units "seconds"; type uint32; } leaf inactivity-tcp-timeout { description "Inactivity timeout period for TCP established sessions"; units "seconds"; type uint32 { range "4 .. 86400"; } } leaf inactivity-asymm-tcp-timeout { description "Inactivity timeout period for asymmetric TCP established sessions"; units "seconds"; type uint32 { range "4 .. 86400"; } } leaf inactivity-non-tcp-timeout { description "Inactivity timeout period for non-TCP established sessions"; units "seconds"; type uint32 { range "4 .. 86400"; } } leaf session-timeout { description "Session timeout period for established sessions"; units "seconds"; type uint32 { range "4 .. 86400"; } } leaf disable-global-timeout-override { description "Disallow overriding global inactivity or session timeout"; type empty; } leaf tcp-tickles { description "Number of TCP keep-alive packets to be sent for bi-directional TCP flows"; default "4"; type uint8 { range "0 .. 30"; } } container trio-flow-offload { presence "enable trio-flow-offload"; description "Allow PIC to offload flows to Trio-based PFE"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-bytes { description "Attempt flow offload after minimum bytes are seen on the flow"; type uint32; } } leaf fragment-limit { description "Maximum number of fragments allowed for a packet"; default "250"; type uint8 { range "1 .. 250"; } } leaf reassembly-timeout { description "Re-assembly timeout (seconds) for fragments of a packet"; default "4"; units "seconds"; type uint8 { range "1 .. 60"; } } leaf cgn-pic { description "PIC will be used for Carrier Grade NAT configuration only"; type empty; } leaf pba-interim-logging-interval { description "Interim logging interval in seconds"; default "0"; units "seconds"; type uint32 { range "0 .. 86400"; } } container session-limit { presence "enable session-limit"; description "Session limit"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum { description "Maximum number of sessions allowed simultaneously"; type string; } leaf rate { description "Maximum number of new sessions allowed per second"; type string; } leaf cpu-load-threshold { description "CPU limit in percentage for auto-tuning of session rate"; units "percent"; type uint8 { range "1 .. 100"; } } } container ignore-errors { presence "enable ignore-errors"; description "Ignore anomalies or errors"; leaf tcp { description "TCP anomalies or errors"; type empty; } leaf alg { description "ALG anomalies or errors"; type empty; } } } container t3-options { description "T3 interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf loopback { description "Loopback mode"; type enumeration { enum local { description "Local loopback"; } enum remote { description "Remote loopback"; } enum payload { description "Payload loopback"; } } } leaf long-buildout { description "Set hardware to drive line longer than 255 feet"; type empty; } leaf no-long-buildout { description "Set hardware to drive line longer than 255 feet"; type empty; } leaf loop-timing { description "Set loop timing for T3"; type empty; } leaf no-loop-timing { description "Set loop timing for T3"; type empty; } leaf unframed { description "Enable unframed mode"; type empty; } leaf no-unframed { description "Enable unframed mode"; type empty; } container compatibility-mode { description "Set CSU compatibility mode"; choice vendor { case case_1 { container larscom { presence "enable larscom"; description "Compatible with Larscom CSU"; leaf subrate { description "Set subrate value"; type uint32 { range "1 .. 14"; } } } } case case_2 { container verilink { presence "enable verilink"; description "Compatible with Verilink CSU (not on 2/4-port T3 PIC)"; leaf subrate { description "Set subrate value"; type uint32 { range "1 .. 28"; } } } } case case_3 { container adtran { presence "enable adtran"; description "Compatible with Adtran CSU (not on 2/4-port T3 PIC)"; leaf subrate { description "Set subrate value"; type uint32 { range "1 .. 588"; } } } } case case_4 { container kentrox { presence "enable kentrox"; description "Compatible with Kentrox CSU"; leaf subrate { description "Set subrate value (not on 2/4-port T3 PIC)"; type uint32 { range "1 .. 69"; } } } } case case_5 { container digital-link { presence "enable digital-link"; description "Compatible with Digital Link CSU"; leaf subrate { description "Set subrate value"; type enumeration { enum 301Kb { description "301 Kbps"; } enum 601Kb { description "601 Kbps"; } enum 902Kb { description "902 Kbps"; } enum 1.2Mb { description "1.2 Mbps"; } enum 1.5Mb { description "1.5 Mbps"; } enum 1.8Mb { description "1.8 Mbps"; } enum 2.1Mb { description "2.1 Mbps"; } enum 2.4Mb { description "2.4 Mbps"; } enum 2.7Mb { description "2.7 Mbps"; } enum 3.0Mb { description "3.0 Mbps"; } enum 3.3Mb { description "3.3 Mbps"; } enum 3.6Mb { description "3.6 Mbps"; } enum 3.9Mb { description "3.9 Mbps"; } enum 4.2Mb { description "4.2 Mbps"; } enum 4.5Mb { description "4.5 Mbps"; } enum 4.8Mb { description "4.8 Mbps"; } enum 5.1Mb { description "5.1 Mbps"; } enum 5.4Mb { description "5.4 Mbps"; } enum 5.7Mb { description "5.7 Mbps"; } enum 6.0Mb { description "6.0 Mbps"; } enum 6.3Mb { description "6.3 Mbps"; } enum 6.6Mb { description "6.6 Mbps"; } enum 6.9Mb { description "6.9 Mbps"; } enum 7.2Mb { description "7.2 Mbps"; } enum 7.5Mb { description "7.5 Mbps"; } enum 7.8Mb { description "7.8 Mbps"; } enum 8.1Mb { description "8.1 Mbps"; } enum 8.4Mb { description "8.4 Mbps"; } enum 8.7Mb { description "8.7 Mbps"; } enum 9.0Mb { description "9.0 Mbps"; } enum 9.3Mb { description "9.3 Mbps"; } enum 9.6Mb { description "9.6 Mbps"; } enum 9.9Mb { description "9.9 Mbps"; } enum 10.2Mb { description "10.2 Mbps"; } enum 10.5Mb { description "10.5 Mbps"; } enum 10.8Mb { description "10.8 Mbps"; } enum 11.1Mb { description "11.1 Mbps"; } enum 11.4Mb { description "11.4 Mbps"; } enum 11.7Mb { description "11.7 Mbps"; } enum 12.0Mb { description "12.0 Mbps"; } enum 12.3Mb { description "12.3 Mbps"; } enum 12.6Mb { description "12.6 Mbps"; } enum 12.9Mb { description "12.9 Mbps"; } enum 13.2Mb { description "13.2 Mbps"; } enum 13.5Mb { description "13.5 Mbps"; } enum 13.8Mb { description "13.8 Mbps"; } enum 14.1Mb { description "14.1 Mbps"; } enum 14.4Mb { description "14.4 Mbps"; } enum 14.7Mb { description "14.7 Mbps"; } enum 15.0Mb { description "15.0 Mbps"; } enum 15.3Mb { description "15.3 Mbps"; } enum 15.6Mb { description "15.6 Mbps"; } enum 15.9Mb { description "15.9 Mbps"; } enum 16.2Mb { description "16.2 Mbps"; } enum 16.5Mb { description "16.5 Mbps"; } enum 16.8Mb { description "16.8 Mbps"; } enum 17.1Mb { description "17.1 Mbps"; } enum 17.4Mb { description "17.4 Mbps"; } enum 17.7Mb { description "17.7 Mbps"; } enum 18.0Mb { description "18.0 Mbps"; } enum 18.3Mb { description "18.3 Mbps"; } enum 18.6Mb { description "18.6 Mbps"; } enum 18.9Mb { description "18.9 Mbps"; } enum 19.2Mb { description "19.2 Mbps"; } enum 19.5Mb { description "19.5 Mbps"; } enum 19.8Mb { description "19.8 Mbps"; } enum 20.1Mb { description "20.1 Mbps"; } enum 20.5Mb { description "20.5 Mbps"; } enum 20.8Mb { description "20.8 Mbps"; } enum 21.1Mb { description "21.1 Mbps"; } enum 21.4Mb { description "21.4 Mbps"; } enum 21.7Mb { description "21.7 Mbps"; } enum 22.0Mb { description "22.0 Mbps"; } enum 22.3Mb { description "22.3 Mbps"; } enum 22.6Mb { description "22.6 Mbps"; } enum 22.9Mb { description "22.9 Mbps"; } enum 23.2Mb { description "23.2 Mbps"; } enum 23.5Mb { description "23.5 Mbps"; } enum 23.8Mb { description "23.8 Mbps"; } enum 24.1Mb { description "24.1 Mbps"; } enum 24.4Mb { description "24.4 Mbps"; } enum 24.7Mb { description "24.7 Mbps"; } enum 25.0Mb { description "25.0 Mbps"; } enum 25.3Mb { description "25.3 Mbps"; } enum 25.6Mb { description "25.6 Mbps"; } enum 25.9Mb { description "25.9 Mbps"; } enum 26.2Mb { description "26.2 Mbps"; } enum 26.5Mb { description "26.5 Mbps"; } enum 26.8Mb { description "26.8 Mbps"; } enum 27.1Mb { description "27.1 Mbps"; } enum 27.4Mb { description "27.4 Mbps"; } enum 27.7Mb { description "27.7 Mbps"; } enum 28.0Mb { description "28.0 Mbps"; } enum 28.3Mb { description "28.3 Mbps"; } enum 28.6Mb { description "28.6 Mbps"; } enum 28.9Mb { description "28.9 Mbps"; } enum 29.2Mb { description "29.2 Mbps"; } enum 29.5Mb { description "29.5 Mbps"; } enum 29.8Mb { description "29.8 Mbps"; } enum 30.1Mb { description "30.1 Mbps"; } enum 30.4Mb { description "30.4 Mbps"; } enum 30.7Mb { description "30.7 Mbps"; } enum 31.0Mb { description "31.0 Mbps"; } enum 31.3Mb { description "31.3 Mbps"; } enum 31.6Mb { description "31.6 Mbps"; } enum 31.9Mb { description "31.9 Mbps"; } enum 32.2Mb { description "32.2 Mbps"; } enum 32.5Mb { description "32.5 Mbps"; } enum 32.8Mb { description "32.8 Mbps"; } enum 33.1Mb { description "33.1 Mbps"; } enum 33.4Mb { description "33.4 Mbps"; } enum 33.7Mb { description "33.7 Mbps"; } enum 34.0Mb { description "34.0 Mbps"; } enum 34.3Mb { description "34.3 Mbps"; } enum 34.6Mb { description "34.6 Mbps"; } enum 34.9Mb { description "34.9 Mbps"; } enum 35.2Mb { description "35.2 Mbps"; } enum 35.5Mb { description "35.5 Mbps"; } enum 35.8Mb { description "35.8 Mbps"; } enum 36.1Mb { description "36.1 Mbps"; } enum 36.4Mb { description "36.4 Mbps"; } enum 36.7Mb { description "36.7 Mbps"; } enum 37.0Mb { description "37.0 Mbps"; } enum 37.3Mb { description "37.3 Mbps"; } enum 37.6Mb { description "37.6 Mbps"; } enum 37.9Mb { description "37.9 Mbps"; } enum 38.2Mb { description "38.2 Mbps"; } enum 38.5Mb { description "38.5 Mbps"; } enum 38.8Mb { description "38.8 Mbps"; } enum 39.1Mb { description "39.1 Mbps"; } enum 39.4Mb { description "39.4 Mbps"; } enum 39.7Mb { description "39.7 Mbps"; } enum 40.0Mb { description "40.0 Mbps"; } enum 40.3Mb { description "40.3 Mbps"; } enum 40.6Mb { description "40.6 Mbps"; } enum 40.9Mb { description "40.9 Mbps"; } enum 41.2Mb { description "41.2 Mbps"; } enum 41.5Mb { description "41.5 Mbps"; } enum 41.8Mb { description "41.8 Mbps"; } enum 42.1Mb { description "42.1 Mbps"; } enum 42.4Mb { description "42.4 Mbps"; } enum 42.7Mb { description "42.7 Mbps"; } enum 43.0Mb { description "43.0 Mbps"; } enum 43.3Mb { description "43.3 Mbps"; } enum 43.6Mb { description "43.6 Mbps"; } enum 43.9Mb { description "43.9 Mbps"; } enum 44.2Mb { description "44.2 Mbps"; } } } } } } } leaf payload-scrambler { description "Enable payload scrambling"; type empty; } leaf no-payload-scrambler { description "Enable payload scrambling"; type empty; } leaf cbit-parity { description "Enable C-bit parity mode"; type empty; } leaf no-cbit-parity { description "Enable C-bit parity mode"; type empty; } leaf fcs { description "Frame checksum"; type enumeration { enum 32 { description "32-bit mode"; } enum 16 { description "16-bit mode"; } } } leaf idle-cycle-flag { description "Value to transmit in idle cycles"; type enumeration { enum flags { description "Transmit 0x7E in idle cycles"; } enum ones { description "Transmit 0xFF (all ones) in idle cycles"; } } } leaf start-end-flag { description "Set start/end flags on transmission"; type enumeration { enum shared { description "Share start/end flags on transmit"; } enum filler { description "Send two idle cycles between start/end flags"; } } } leaf feac-loop-respond { description "Respond to FEAC loop requests"; type empty; } leaf no-feac-loop-respond { description "Respond to FEAC loop requests"; type empty; } leaf bert-algorithm { description "Set BERT algorithm"; type enumeration { enum pseudo-2e3 { description "Pattern is 2^3 - 1"; } enum pseudo-2e4 { description "Pattern is 2^4 - 1"; } enum pseudo-2e5 { description "Pattern is 2^5 - 1"; } enum pseudo-2e6 { description "Pattern is 2^6 - 1"; } enum pseudo-2e7 { description "Pattern is 2^7 - 1"; } enum pseudo-2e9-o153 { description "Pattern is 2^9 - 1 (per O.153 standard)"; } enum pseudo-2e10 { description "Pattern is 2^10 - 1"; } enum pseudo-2e11-o152 { description "Pattern is 2^11 -1 (per O.152 standard)"; } enum pseudo-2e15-o151 { description "Pattern is 2^15 - 1 (per O.151 standard)"; } enum pseudo-2e17 { description "Pattern is 2^17 - 1"; } enum pseudo-2e18 { description "Pattern is 2^18 - 1"; } enum pseudo-2e20-o153 { description "Pattern is 2^20 - 1 (per O.153 standard)"; } enum pseudo-2e20-o151 { description "Pattern is 2^20 - 1 (per O.151 standard)"; } enum pseudo-2e21 { description "Pattern is 2^21 - 1"; } enum pseudo-2e22 { description "Pattern is 2^22 - 1"; } enum pseudo-2e23-o151 { description "Pattern is 2^23 (per O.151 standard)"; } enum pseudo-2e25 { description "Pattern is 2^25 - 1"; } enum pseudo-2e28 { description "Pattern is 2^28 - 1"; } enum pseudo-2e29 { description "Pattern is 2^29 - 1"; } enum pseudo-2e31 { description "Pattern is 2^31 - 1"; } enum pseudo-2e32 { description "Pattern is 2^32 - 1"; } enum all-ones-repeating { description "Repeating one bits"; } enum all-zeros-repeating { description "Repeating zero bits"; } enum alternating-ones-zeros { description "Alternating ones and zeros"; } enum alternating-double-ones-zeros { description "Alternating pairs of ones and zeros"; } enum repeating-3-in-24 { description "3 bits in 24 are set"; } enum repeating-1-in-8 { description "1 bit in 8 is set"; } enum repeating-1-in-4 { description "1 bit in 4 is set"; } } } leaf bert-error-rate { description "Bit error rate (10^-n for n > 0, and zero for n = 0)"; type uint32 { range "0 .. 7"; } } leaf bert-period { description "Length of BERT test"; units "seconds"; type uint32 { range "1 .. 240"; } } leaf buildout { description "Line buildout"; units "feet"; type uint32 { range "0 .. 450"; } } leaf atm-encapsulation { description "DS-3 interface encapsulation"; type enumeration { enum plcp { description "PLCP encapsulation"; } enum direct { description "ATM direct mapping"; } } } } container e3-options { description "E3 interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf loopback { description "Loopback mode"; type enumeration { enum local { description "Local loopback"; } enum remote { description "Remote loopback"; } } } leaf unframed { description "Enable unframed mode"; type empty; } leaf no-unframed { description "Enable unframed mode"; type empty; } container compatibility-mode { description "Set CSU compatibility mode"; choice vendor { case case_1 { leaf larscom { description "Compatible with Larscom CSU (only non IQ E3 interfaces)"; type empty; } } case case_2 { container digital-link { presence "enable digital-link"; description "Compatible with Digital Link CSU"; leaf subrate { description "Set subrate value"; type enumeration { enum 358Kb { description "358 Kbps"; } enum 716Kb { description "716 Kbps"; } enum 1.1Mb { description "1.1 Mbps"; } enum 1.4Mb { description "1.4 Mbps"; } enum 1.8Mb { description "1.8 Mbps"; } enum 2.1Mb { description "2.1 Mbps"; } enum 2.5Mb { description "2.5 Mbps"; } enum 2.9Mb { description "2.9 Mbps"; } enum 3.2Mb { description "3.2 Mbps"; } enum 3.6Mb { description "3.6 Mbps"; } enum 3.9Mb { description "3.9 Mbps"; } enum 4.3Mb { description "4.3 Mbps"; } enum 4.7Mb { description "4.7 Mbps"; } enum 5.0Mb { description "5.0 Mbps"; } enum 5.4Mb { description "5.4 Mbps"; } enum 5.7Mb { description "5.7 Mbps"; } enum 6.1Mb { description "6.1 Mbps"; } enum 6.4Mb { description "6.4 Mbps"; } enum 6.8Mb { description "6.8 Mbps"; } enum 7.2Mb { description "7.2 Mbps"; } enum 7.5Mb { description "7.5 Mbps"; } enum 7.9Mb { description "7.9 Mbps"; } enum 8.2Mb { description "8.2 Mbps"; } enum 8.6Mb { description "8.6 Mbps"; } enum 9.0Mb { description "9.0 Mbps"; } enum 9.3Mb { description "9.3 Mbps"; } enum 9.7Mb { description "9.7 Mbps"; } enum 10.0Mb { description "10.0 Mbps"; } enum 10.4Mb { description "10.4 Mbps"; } enum 10.7Mb { description "10.7 Mbps"; } enum 11.1Mb { description "11.1 Mbps"; } enum 11.5Mb { description "11.5 Mbps"; } enum 11.8Mb { description "11.8 Mbps"; } enum 12.2Mb { description "12.2 Mbps"; } enum 12.5Mb { description "12.5 Mbps"; } enum 12.9Mb { description "12.9 Mbps"; } enum 13.2Mb { description "13.2 Mbps"; } enum 13.6Mb { description "13.6 Mbps"; } enum 14.0Mb { description "14.0 Mbps"; } enum 14.3Mb { description "14.3 Mbps"; } enum 14.7Mb { description "14.7 Mbps"; } enum 15.0Mb { description "15.0 Mbps"; } enum 15.4Mb { description "15.4 Mbps"; } enum 15.8Mb { description "15.8 Mbps"; } enum 16.1Mb { description "16.1 Mbps"; } enum 16.5Mb { description "16.5 Mbps"; } enum 16.8Mb { description "16.8 Mbps"; } enum 17.2Mb { description "17.2 Mbps"; } enum 17.5Mb { description "17.5 Mbps"; } enum 17.9Mb { description "17.9 Mbps"; } enum 18.3Mb { description "18.3 Mbps"; } enum 18.6Mb { description "18.6 Mbps"; } enum 19.0Mb { description "19.0 Mbps"; } enum 19.3Mb { description "19.3 Mbps"; } enum 19.7Mb { description "19.7 Mbps"; } enum 20.0Mb { description "20.0 Mbps"; } enum 20.4Mb { description "20.4 Mbps"; } enum 20.8Mb { description "20.8 Mbps"; } enum 21.1Mb { description "21.1 Mbps"; } enum 21.5Mb { description "21.5 Mbps"; } enum 21.8Mb { description "21.8 Mbps"; } enum 22.2Mb { description "22.2 Mbps"; } enum 22.6Mb { description "22.6 Mbps"; } enum 22.9Mb { description "22.9 Mbps"; } enum 23.3Mb { description "23.3 Mbps"; } enum 23.6Mb { description "23.6 Mbps"; } enum 24.0Mb { description "24.0 Mbps"; } enum 24.3Mb { description "24.3 Mbps"; } enum 24.7Mb { description "24.7 Mbps"; } enum 25.1Mb { description "25.1 Mbps"; } enum 25.4Mb { description "25.4 Mbps"; } enum 25.8Mb { description "25.8 Mbps"; } enum 26.1Mb { description "26.1 Mbps"; } enum 26.5Mb { description "26.5 Mbps"; } enum 26.9Mb { description "26.9 Mbps"; } enum 27.2Mb { description "27.2 Mbps"; } enum 27.6Mb { description "27.6 Mbps"; } enum 27.9Mb { description "27.9 Mbps"; } enum 28.3Mb { description "28.3 Mbps"; } enum 28.6Mb { description "28.6 Mbps"; } enum 29.0Mb { description "29.0 Mbps"; } enum 29.4Mb { description "29.4 Mbps"; } enum 29.7Mb { description "29.7 Mbps"; } enum 30.1Mb { description "30.1 Mbps"; } enum 30.4Mb { description "30.4 Mbps"; } enum 30.8Mb { description "30.8 Mbps"; } enum 31.1Mb { description "31.1 Mbps"; } enum 31.5Mb { description "31.5 Mbps"; } enum 31.9Mb { description "31.9 Mbps"; } enum 32.2Mb { description "32.2 Mbps"; } enum 32.6Mb { description "32.6 Mbps"; } enum 32.9Mb { description "32.9 Mbps"; } enum 33.3Mb { description "33.3 Mbps"; } enum 33.7Mb { description "33.7 Mbps"; } enum 34.0Mb { description "34.0 Mbps"; } } } } } case case_3 { container kentrox { presence "enable kentrox"; description "Compatible with Kentrox CSU"; leaf subrate { description "Set subrate value (only for E3 IQ interfaces)"; type uint32 { range "1 .. 48"; } } } } } } leaf payload-scrambler { description "Enable payload scrambling"; type empty; } leaf no-payload-scrambler { description "Enable payload scrambling"; type empty; } leaf fcs { description "Frame checksum"; type enumeration { enum 32 { description "32-bit mode"; } enum 16 { description "16-bit mode"; } } } leaf idle-cycle-flag { description "Value to transmit in idle cycles"; type enumeration { enum flags { description "Transmit 0x7E in idle cycles"; } enum ones { description "Transmit 0xFF (all ones) in idle cycles"; } } } leaf invert-data { description "Invert data"; type empty; } leaf start-end-flag { description "Set start/end flags on transmission"; type enumeration { enum shared { description "Share start/end flags on transmit"; } enum filler { description "Send two idle cycles between start/end flags"; } } } leaf bert-algorithm { description "Set BERT algorithm"; type enumeration { enum pseudo-2e3 { description "Pattern is 2^3 - 1"; } enum pseudo-2e4 { description "Pattern is 2^4 - 1"; } enum pseudo-2e5 { description "Pattern is 2^5 - 1"; } enum pseudo-2e6 { description "Pattern is 2^6 - 1"; } enum pseudo-2e7 { description "Pattern is 2^7 - 1"; } enum pseudo-2e9-o153 { description "Pattern is 2^9 - 1 (per O.153 standard)"; } enum pseudo-2e10 { description "Pattern is 2^10 - 1"; } enum pseudo-2e11-o152 { description "Pattern is 2^11 -1 (per O.152 standard)"; } enum pseudo-2e15-o151 { description "Pattern is 2^15 - 1 (per O.151 standard)"; } enum pseudo-2e17 { description "Pattern is 2^17 - 1"; } enum pseudo-2e18 { description "Pattern is 2^18 - 1"; } enum pseudo-2e20-o153 { description "Pattern is 2^20 - 1 (per O.153 standard)"; } enum pseudo-2e20-o151 { description "Pattern is 2^20 - 1 (per O.151 standard)"; } enum pseudo-2e21 { description "Pattern is 2^21 - 1"; } enum pseudo-2e22 { description "Pattern is 2^22 - 1"; } enum pseudo-2e23-o151 { description "Pattern is 2^23 (per O.151 standard)"; } enum pseudo-2e25 { description "Pattern is 2^25 - 1"; } enum pseudo-2e28 { description "Pattern is 2^28 - 1"; } enum pseudo-2e29 { description "Pattern is 2^29 - 1"; } enum pseudo-2e31 { description "Pattern is 2^31 - 1"; } enum pseudo-2e32 { description "Pattern is 2^32 - 1"; } enum all-ones-repeating { description "Repeating one bits"; } enum all-zeros-repeating { description "Repeating zero bits"; } enum alternating-ones-zeros { description "Alternating ones and zeros"; } enum alternating-double-ones-zeros { description "Alternating pairs of ones and zeros"; } enum repeating-3-in-24 { description "3 bits in 24 are set"; } enum repeating-1-in-8 { description "1 bit in 8 is set"; } enum repeating-1-in-4 { description "1 bit in 4 is set"; } } } leaf bert-error-rate { description "Bit error rate (10^-n for n > 0, and zero for n = 0)"; type uint32 { range "0 .. 7"; } } leaf bert-period { description "Length of BERT test"; units "seconds"; type uint32 { range "1 .. 240"; } } leaf buildout { description "Line buildout"; units "feet"; type uint32 { range "0 .. 450"; } } leaf atm-encapsulation { description "E3 interface encapsulation"; type enumeration { enum plcp { description "PLCP encapsulation"; } enum direct { description "ATM direct mapping"; } } } leaf framing { description "E3 line format"; type enumeration { enum g.751 { description "G.751 format"; } enum g.832 { description "G.832 format"; } } } } container e1-options { description "E1 interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf timeslots { description "Timeslots (1..32); for example, 1-4,6,9-11,32 (no space)"; type string; } leaf loopback { description "Loopback mode"; type enumeration { enum local { description "Local loopback"; } enum remote { description "Remote loopback"; } } } leaf framing { description "Framing mode"; type enumeration { enum g704 { description "G704 mode with CRC4"; } enum unframed { description "Unframed mode"; } enum g704-no-crc4 { description "G704 mode without CRC4"; } } } leaf fcs { description "Frame checksum"; type enumeration { enum 32 { description "32-bit mode"; } enum 16 { description "16-bit mode"; } } } leaf invert-data { description "Invert data"; type empty; } leaf idle-cycle-flag { description "Value to transmit in idle cycles"; type enumeration { enum flags { description "Transmit 0x7E in idle cycles"; } enum ones { description "Transmit 0xFF (all ones) in idle cycles"; } } } leaf start-end-flag { description "Set start/end flags on transmission"; type enumeration { enum shared { description "Share start/end flags on transmit"; } enum filler { description "Send two idle cycles between start/end flags"; } } } leaf bert-algorithm { description "Set BERT algorithm"; type enumeration { enum pseudo-2e3 { description "Pattern is 2^3 - 1"; } enum pseudo-2e4 { description "Pattern is 2^4 - 1"; } enum pseudo-2e5 { description "Pattern is 2^5 - 1"; } enum pseudo-2e6 { description "Pattern is 2^6 - 1"; } enum pseudo-2e7 { description "Pattern is 2^7 - 1"; } enum pseudo-2e9-o153 { description "Pattern is 2^9 - 1 (per O.153 standard)"; } enum pseudo-2e10 { description "Pattern is 2^10 - 1"; } enum pseudo-2e11-o152 { description "Pattern is 2^11 -1 (per O.152 standard)"; } enum pseudo-2e15-o151 { description "Pattern is 2^15 - 1 (per O.151 standard)"; } enum pseudo-2e17 { description "Pattern is 2^17 - 1"; } enum pseudo-2e18 { description "Pattern is 2^18 - 1"; } enum pseudo-2e20-o153 { description "Pattern is 2^20 - 1 (per O.153 standard)"; } enum pseudo-2e20-o151 { description "Pattern is 2^20 - 1 (per O.151 standard)"; } enum pseudo-2e21 { description "Pattern is 2^21 - 1"; } enum pseudo-2e22 { description "Pattern is 2^22 - 1"; } enum pseudo-2e23-o151 { description "Pattern is 2^23 (per O.151 standard)"; } enum pseudo-2e25 { description "Pattern is 2^25 - 1"; } enum pseudo-2e28 { description "Pattern is 2^28 - 1"; } enum pseudo-2e29 { description "Pattern is 2^29 - 1"; } enum pseudo-2e31 { description "Pattern is 2^31 - 1"; } enum pseudo-2e32 { description "Pattern is 2^32 - 1"; } enum all-ones-repeating { description "Repeating one bits"; } enum all-zeros-repeating { description "Repeating zero bits"; } enum alternating-ones-zeros { description "Alternating ones and zeros"; } enum alternating-double-ones-zeros { description "Alternating pairs of ones and zeros"; } enum repeating-3-in-24 { description "3 bits in 24 are set"; } enum repeating-1-in-8 { description "1 bit in 8 is set"; } enum repeating-1-in-4 { description "1 bit in 4 is set"; } } } leaf bert-error-rate { description "Bit error rate (10^-n for n > 0, and zero for n = 0)"; type uint32 { range "0 .. 7"; } } leaf bert-period { description "Length of BERT test"; units "seconds"; type uint32 { range "1 .. 86400"; } } } container t1-options { description "T1 interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf timeslots { description "Timeslots (1..24; for example, 1-3,4,9,22-24 (no space)"; type string; } leaf voice-timeslots { description "Voice timeslots (1..24),for example, 1-3,4,9,22-24 (no space)"; type string; } leaf loopback { description "Loopback mode"; type enumeration { enum local { description "Local loopback"; } enum remote { description "Remote loopback"; } enum payload { description "Payload loopback"; } } } leaf buildout { description "Line buildout"; type enumeration { enum 0-132 { description "Line buildout is between 0-132 feet"; } enum 133-265 { description "Line buildout is between 133-265 feet"; } enum 266-398 { description "Line buildout is between 266-398 feet"; } enum 399-531 { description "Line buildout is between 399-531 feet"; } enum 532-655 { description "Line buildout is between 532-655 feet"; } enum long-0db { description "Long buildout with 0 dB transmit attenuation"; } enum long-7.5db { description "Long buildout with 7.5 dB transmit attenuation"; } enum long-15db { description "Long buildout with 15 dB transmit attenuation"; } enum long-22.5db { description "Long buildout with 22.5 dB transmit attenuation"; } } } leaf byte-encoding { description "Byte encoding"; type enumeration { enum nx64 { description "8 bits per byte"; } enum nx56 { description "7 bits per byte"; } } } leaf line-encoding { description "Line encoding"; type enumeration { enum ami { description "Automatic mark inversion"; } enum b8zs { description "8-bit zero suppression"; } } } leaf invert-data { description "Invert data"; type empty; } leaf framing { description "Framing mode"; type enumeration { enum sf { description "Super frame"; } enum esf { description "Extended super frame"; } } } leaf fcs { description "Frame checksum"; type enumeration { enum 32 { description "32-bit mode"; } enum 16 { description "16-bit mode"; } } } leaf idle-cycle-flag { description "Value to transmit in idle cycles"; type enumeration { enum flags { description "Transmit 0x7E in idle cycles"; } enum ones { description "Transmit 0xFF (all ones) in idle cycles"; } } } leaf start-end-flag { description "Set start/end flags on transmission"; type enumeration { enum shared { description "Share start/end flags on transmit"; } enum filler { description "Send two idle cycles between start/end flags"; } } } leaf bert-algorithm { description "Set BERT algorithm"; type enumeration { enum pseudo-2e3 { description "Pattern is 2^3 - 1"; } enum pseudo-2e4 { description "Pattern is 2^4 - 1"; } enum pseudo-2e5 { description "Pattern is 2^5 - 1"; } enum pseudo-2e6 { description "Pattern is 2^6 - 1"; } enum pseudo-2e7 { description "Pattern is 2^7 - 1"; } enum pseudo-2e9-o153 { description "Pattern is 2^9 - 1 (per O.153 standard)"; } enum pseudo-2e10 { description "Pattern is 2^10 - 1"; } enum pseudo-2e11-o152 { description "Pattern is 2^11 -1 (per O.152 standard)"; } enum pseudo-2e15-o151 { description "Pattern is 2^15 - 1 (per O.151 standard)"; } enum pseudo-2e17 { description "Pattern is 2^17 - 1"; } enum pseudo-2e18 { description "Pattern is 2^18 - 1"; } enum pseudo-2e20-o153 { description "Pattern is 2^20 - 1 (per O.153 standard)"; } enum pseudo-2e20-o151 { description "Pattern is 2^20 - 1 (per O.151 standard)"; } enum pseudo-2e21 { description "Pattern is 2^21 - 1"; } enum pseudo-2e22 { description "Pattern is 2^22 - 1"; } enum pseudo-2e23-o151 { description "Pattern is 2^23 (per O.151 standard)"; } enum pseudo-2e25 { description "Pattern is 2^25 - 1"; } enum pseudo-2e28 { description "Pattern is 2^28 - 1"; } enum pseudo-2e29 { description "Pattern is 2^29 - 1"; } enum pseudo-2e31 { description "Pattern is 2^31 - 1"; } enum pseudo-2e32 { description "Pattern is 2^32 - 1"; } enum all-ones-repeating { description "Repeating one bits"; } enum all-zeros-repeating { description "Repeating zero bits"; } enum alternating-ones-zeros { description "Alternating ones and zeros"; } enum alternating-double-ones-zeros { description "Alternating pairs of ones and zeros"; } enum repeating-3-in-24 { description "3 bits in 24 are set"; } enum repeating-1-in-8 { description "1 bit in 8 is set"; } enum repeating-1-in-4 { description "1 bit in 4 is set"; } } } leaf bert-error-rate { description "Bit error rate (10^-n for n > 0, and zero for n = 0)"; type uint32 { range "0 .. 7"; } } leaf bert-period { description "Length of BERT test"; units "seconds"; type uint32 { range "1 .. 86400"; } } leaf remote-loopback-respond { description "Respond to loop requests from remote end"; type empty; } leaf crc-major-alarm-threshold { description "CRC Major alarm threshold value"; default "5e-5"; type enumeration { enum 1e-3 { description "1 crc error in 10^3 bits"; } enum 5e-4 { description "5 crc errors in 10^4 bits"; } enum 1e-4 { description "1 crc error in 10^4 bits"; } enum 5e-5 { description "5 crc errors in 10^5 bits"; } enum 1e-5 { description "1 crc error in 10^5 bits"; } } } leaf crc-minor-alarm-threshold { description "CRC Minor alarm threshold value"; default "5e-6"; type enumeration { enum 1e-3 { description "1 crc error in 10^3 bits"; } enum 5e-4 { description "5 crc errors in 10^4 bits"; } enum 1e-4 { description "1 crc error in 10^4 bits"; } enum 5e-5 { description "5 crc errors in 10^5 bits"; } enum 1e-5 { description "1 crc error in 10^5 bits"; } enum 5e-6 { description "5 crc errors in 10^6 bits"; } enum 1e-6 { description "1 crc error in 10^6 bits"; } } } } container ds0-options { description "DS-0 interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf loopback { description "Loopback mode"; type enumeration { enum payload { description "Payload loopback"; } } } leaf byte-encoding { description "Byte encoding"; type enumeration { enum nx64 { description "8 bits per byte"; } enum nx56 { description "7 bits per byte"; } } } leaf invert-data { description "Invert data"; type empty; } leaf fcs { description "Frame checksum"; type enumeration { enum 32 { description "32-bit mode"; } enum 16 { description "16-bit mode"; } } } leaf idle-cycle-flag { description "Value to transmit in idle cycles"; type enumeration { enum flags { description "Transmit 0x7E in idle cycles"; } enum ones { description "Transmit 0xFF (all ones) in idle cycles"; } } } leaf start-end-flag { description "Set start/end flags on transmission"; type enumeration { enum shared { description "Share start/end flags on transmit"; } enum filler { description "Send two idle cycles between start/end flags"; } } } leaf bert-algorithm { description "Set BERT algorithm"; type enumeration { enum pseudo-2e11-o152 { description "Pattern is 2^11 -1 (per O.152 standard)"; } enum pseudo-2e15-o151 { description "Pattern is 2^15 - 1 (per O.151 standard)"; } enum pseudo-2e20-o153 { description "Pattern is 2^20 - 1 (per O.153 standard)"; } enum pseudo-2e20-o151 { description "Pattern is 2^20 - 1 (per O.151 standard)"; } enum all-ones-repeating { description "Repeating one bits"; } enum all-zeros-repeating { description "Repeating zero bits"; } enum alternating-ones-zeros { description "Alternating ones and zeros"; } enum alternating-double-ones-zeros { description "Alternating pairs of ones and zeros"; } enum repeating-3-in-24 { description "3 bits in 24 are set"; } enum repeating-1-in-8 { description "1 bit in 8 is set"; } enum repeating-1-in-4 { description "1 bit in 4 is set"; } enum repeating-1-in-16 { description "1 bit in 16 is set"; } } } leaf bert-error-rate { description "Bit error rate (10^-n for n > 0, and zero for n = 0)"; type uint32 { range "0 .. 7"; } } leaf bert-period { description "Length of BERT test"; units "seconds"; type uint32 { range "1 .. 240"; } } } container serial-options { description "Serial interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf line-protocol { description "Line protocol to be used"; default "eia530"; type enumeration { enum eia530 { description "Line protocol EIA530"; } enum v.35 { description "Line protocol V.35"; } enum x.21 { description "Line protocol X.21"; } } } choice control_leads_choice { case case_1 { container dte-options { description "DTE options/control leads"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ignore-all { description "Ignore all control leads"; type empty; } container dtr { description "Data Transmit Ready signal handling"; choice dtr_choices { case case_1 { leaf assert { description "Assert DTR signal"; type empty; } } case case_2 { leaf de-assert { description "Deassert DTR signal"; type empty; } } case case_3 { leaf normal { description "Normal DTR signal"; type empty; } } case case_4 { container auto-synchronize { presence "enable auto-synchronize"; description "Normal DTR signal, with autoresynchronization"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf duration { description "Duration of autoresynchronization"; units "milliseconds"; type uint16 { range "1 .. 1000"; } } leaf interval { description "Interval for autoresynchronization"; units "seconds"; type uint16 { range "1 .. 31"; } } } } } } leaf control-signal { description "X.21 control signal handling"; type enumeration { enum assert { description "Assert control signal"; } enum de-assert { description "Deassert control signal"; } enum normal { description "Normal control signal"; } } } leaf rts { description "Request To Send signal handling"; type enumeration { enum assert { description "Assert RTS signal"; } enum de-assert { description "Deassert RTS signal"; } enum normal { description "Normal RTS signal"; } } } leaf dcd { description "Data Carrier Detect signal handling"; type enumeration { enum require { description "Require DCD signal"; } enum ignore { description "Ignore DCD signal"; } enum normal { description "Normal DCD signal"; } } } leaf dsr { description "Data Set Ready signal handling"; type enumeration { enum require { description "Require DSR signal"; } enum ignore { description "Ignore DSR signal"; } enum normal { description "Normal DSR signal"; } } } leaf cts { description "Clear To Send signal handling"; type enumeration { enum require { description "Require CTS signal"; } enum ignore { description "Ignore CTS signal"; } enum normal { description "Normal CTS signal"; } } } leaf indication { description "X.21 Indication signal handling"; type enumeration { enum require { description "Require Indication signal"; } enum ignore { description "Ignore Indication signal"; } enum normal { description "Normal Indication signal"; } } } leaf tm { description "Test Mode signal handling"; type enumeration { enum require { description "Require TM signal"; } enum ignore { description "Ignore TM signal"; } enum normal { description "Normal TM signal"; } } } } } case case_2 { container dce-options { description "DCE options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ignore-all { description "Ignore all control leads"; type empty; } leaf dtr { description "Data Transmit Ready signal handling"; type enumeration { enum require { description "Require Data Carrier Detect (DCD) signal"; } enum ignore { description "Ignore Data Carrier Detect (DCD) signal"; } enum normal { description "Normal Data Carrier Detect (DCD) signal"; } } } leaf rts { description "Request To Send signal handling"; type enumeration { enum require { description "Require Data Carrier Detect (DCD) signal"; } enum ignore { description "Ignore Data Carrier Detect (DCD) signal"; } enum normal { description "Normal Data Carrier Detect (DCD) signal"; } } } leaf dcd { description "Data Carrier Detect signal handling"; type enumeration { enum assert { description "Assert Request To Send (RTS) signal"; } enum de-assert { description "Deassert Request To Send (RTS) signal"; } enum normal { description "Normal Request To Send (RTS) signal"; } } } leaf dsr { description "Data Set Ready signal handling"; type enumeration { enum assert { description "Assert Request To Send (RTS) signal"; } enum de-assert { description "Deassert Request To Send (RTS) signal"; } enum normal { description "Normal Request To Send (RTS) signal"; } } } leaf cts { description "Clear To Send signal handling"; type enumeration { enum assert { description "Assert Request To Send (RTS) signal"; } enum de-assert { description "Deassert Request To Send (RTS) signal"; } enum normal { description "Normal Request To Send (RTS) signal"; } } } leaf tm { description "Test Mode signal handling"; type enumeration { enum require { description "Require TM signal"; } enum ignore { description "Ignore TM signal"; } enum normal { description "Normal TM signal"; } } } leaf dce-loopback-override { description "DCE loopback override"; type empty; } } } } leaf dtr-circuit { description "Data Transmit Ready circuit mode"; type enumeration { enum balanced { description "Balanced signal"; } enum unbalanced { description "Unbalanced signal"; } } } leaf dtr-polarity { description "Data Transmit Ready signal polarity"; type enumeration { enum positive { description "Positive polarity"; } enum negative { description "Negative polarity"; } } } leaf rts-polarity { description "Request To Send signal polarity"; type enumeration { enum positive { description "Positive polarity"; } enum negative { description "Negative polarity"; } } } leaf control-polarity { description "X.21 Control signal polarity"; type enumeration { enum positive { description "Positive polarity"; } enum negative { description "Negative polarity"; } } } leaf dcd-polarity { description "Data Carrier Detect signal polarity"; type enumeration { enum positive { description "Positive polarity"; } enum negative { description "Negative polarity"; } } } leaf dsr-polarity { description "Data Set Ready signal polarity"; type enumeration { enum positive { description "Positive polarity"; } enum negative { description "Negative polarity"; } } } leaf cts-polarity { description "Clear To Send signal polarity"; type enumeration { enum positive { description "Positive polarity"; } enum negative { description "Negative polarity"; } } } leaf indication-polarity { description "X.21 Indication signal polarity"; type enumeration { enum positive { description "Positive polarity"; } enum negative { description "Negative polarity"; } } } leaf tm-polarity { description "Test Mode signal polarity"; type enumeration { enum positive { description "Positive polarity"; } enum negative { description "Negative polarity"; } } } leaf clocking-mode { description "Clock mode"; type enumeration { enum dce { description "DCE timing (DTE mode only, not valid for X.21)"; } enum internal { description "Internal baud timing"; } enum loop { description "Loop timing"; } } } leaf transmit-clock { description "Transmit clock phase"; type enumeration { enum invert { description "Shift clock phase 180 degrees"; } } } leaf clock-rate { description "Interface clock rate"; type enumeration { enum 2.048mhz { description "2.048 MHz"; } enum 2.341mhz { description "2.341 MHz"; } enum 2.731mhz { description "2.731 MHz"; } enum 3.277mhz { description "3.277 MHz"; } enum 4.096mhz { description "4.096 MHz"; } enum 5.461mhz { description "5.461 MHz"; } enum 8.192mhz { description "8.192 MHz"; } enum 16.384mhz { description "16.384 MHz"; } enum 1.2khz { description "1.2 KHz"; } enum 2.4khz { description "2.4 KHz"; } enum 9.6khz { description "9.6 KHz"; } enum 19.2khz { description "19.2 KHz"; } enum 38.4khz { description "38.4 KHz"; } enum 56.0khz { description "56.0 KHz"; } enum 64.0khz { description "64.0 KHz"; } enum 72.0khz { description "72.0 KHz"; } enum 125.0khz { description "125.0 KHz"; } enum 148.0khz { description "148.0 KHz"; } enum 250.0khz { description "250.0 KHz"; } enum 500.0khz { description "500.0 KHz"; } enum 800.0khz { description "800.0 KHz"; } enum 1.0mhz { description "1.0 MHz"; } enum 1.3mhz { description "1.3 MHz"; } enum 2.0mhz { description "2.0 MHz"; } enum 4.0mhz { description "4.0 MHz"; } enum 8.0mhz { description "8.0 MHz"; } } } leaf loopback { description "Loopback mode"; type enumeration { enum local { description "Local loopback"; } enum remote { description "Remote/LIU loopback"; } enum dce-local { description "DCE local loopback (DTE mode only)"; } enum dce-remote { description "DCE remote loopback"; } } } leaf encoding { description "Line encoding"; type enumeration { enum nrz { description "Non-Return-To-Zero"; } enum nrzi { description "Non-Return-To-Zero-Invertible"; } } } leaf idle-cycle-flag { description "Value to transmit in idle cycles"; type enumeration { enum flags { description "Transmit 0x7E in idle cycles"; } enum ones { description "Transmit 0xFF (all ones) in idle cycles"; } } } } leaf gratuitous-arp-reply { description "Enable gratuitous ARP reply"; type empty; } leaf no-gratuitous-arp-reply { description "Enable gratuitous ARP reply"; type empty; } leaf no-gratuitous-arp-request { description "Ignore gratuitous ARP request"; type empty; } leaf no-no-gratuitous-arp-request { description "Ignore gratuitous ARP request"; type empty; } leaf arp-l2-validate { description "Validate ARP against L2"; type empty; } container ether-options { description "Ethernet interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf loopback { description "Enable loopback"; type empty; } leaf no-loopback { description "Enable loopback"; type empty; } leaf source-filtering { description "Enable source address filtering"; type empty; } leaf no-source-filtering { description "Enable source address filtering"; type empty; } container ethernet-switch-profile { description "Ethernet virtual LAN/media access control-level options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list tag-protocol-id { description "IEEE 802.1q Tag Protocol Identifier values for VLAN-tagged frames"; type string; } container ethernet-policer-profile { description "Ethernet level CoS-based policer configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container input-priority-map { description "Input policer priority map"; uses cos_policer_input_priority_map; } container output-priority-map { description "Output policer priority map"; uses cos_policer_output_priority_map; } list policer { key name; ordered-by user; description "Policer template definition"; uses cos_policer; } } container storm-control { description "Storm control profile name to bind"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf profile-name { description "Profile name"; type string; mandatory true; } presence "enable storm-control"; } container recovery-timeout { description "Recovery timeout for this interface"; leaf time-in-seconds { description "(null)"; units "seconds"; type uint32 { range "10 .. 3600"; } } } leaf mac-learn-enable { description "Learn MAC addresses dynamically"; type empty; } leaf no-mac-learn-enable { description "Learn MAC addresses dynamically"; type empty; } } leaf asynchronous-notification { description "Enable sending asynchronous notification to peer on CCC-down"; type empty; } list source-address-filter { key name; description "Source address filters"; leaf name { description "Remote MAC address"; type mac-addr; } } leaf auto-negotiation { description "Enable auto-negotiation"; type empty; } leaf no-auto-negotiation { description "Enable auto-negotiation"; type empty; } leaf flow-control { description "Enable flow control"; type empty; } leaf no-flow-control { description "Enable flow control"; type empty; } container configured-flow-control { presence "enable configured-flow-control"; description "Enable flow control"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf rx-buffers { description "Enable/Disable Rx buffers"; type enumeration { enum on { description "Enable Rx buffers"; } enum off { description "Disable Rx buffers"; } } mandatory true; } leaf tx-buffers { description "Enable/Disable Tx buffers"; type enumeration { enum on { description "Enable Tx buffers"; } enum off { description "Disable Tx buffers"; } } mandatory true; } } leaf link-mode { description "Link duplex"; type enumeration { enum automatic { description "Automatic negotiate duplex "; } enum half-duplex { description "Half-duplex operation"; } enum full-duplex { description "Full-duplex operation"; } } } container mpls { description "MPLS options"; uses mpls_ifd_options; } leaf ignore-l3-incompletes { description "Ignore L3 incomplete errors"; type empty; } leaf no-auto-mdix { description "Disable auto MDI/MDIX"; type empty; } container speed { description "Specify speed"; choice automatic { case case_1 { container auto-negotiation { presence "enable auto-negotiation"; description "Enable auto-negotiation"; leaf auto-negotiate-10-100 { description "Limits the auto-negotiation to 10m/100m only"; type empty; } } } case case_2 { leaf ethernet-10m { description "10Mbps"; type empty; } } case case_3 { leaf ethernet-100m { description "100Mbps"; type empty; } } case case_4 { leaf ethernet-1g { description "1Gbps"; type empty; } } case case_5 { leaf ethernet-10g { description "10Gbps"; type empty; } } } } container ieee-802.3ad { description "IEEE 802.3ad"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container lacp { description "Link Aggregation Control Protocol configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf force-up { description "Keep the port up in absence of received LACPDU"; type empty; } leaf port-priority { description "Priority of the port (0 ... 65535)"; type uint16; } } leaf bundle { description "Join an aggregated Ethernet interface"; type interface-device; } choice type { case case_1 { leaf primary { description "Primary interface for link-protection mode"; type empty; } } case case_2 { leaf backup { description "Backup interface for link-protection mode"; type empty; } } } } leaf ieee-802-3az-eee { description "IEEE 802.3az Energy Efficient Ethernet(EEE)"; type empty; } leaf mdi-mode { description "Cable cross-over mode"; type enumeration { enum auto { description "Automatic mdi/mdi-x mode"; } enum mdi { description "MDI(straight through) mode"; } enum mdix { description "MDI Cross-over mode"; } } } } container fibrechannel-options { description "Fibre Channel interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf loopback { description "Enable loopback"; type empty; } leaf no-loopback { description "Enable loopback"; type empty; } leaf bb-sc-n { description "B2B state change number"; type uint16 { range "0 .. 15"; } } leaf speed { description "Specify speed"; type enumeration { enum auto-negotiation { description "Enable auto-negotiation"; } enum 1g { description "1Gbps"; } enum 2g { description "2Gbps"; } enum 4g { description "4Gbps"; } enum 8g { description "8Gbps"; } } } } container gigether-options { description "Gigabit Ethernet interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf loopback { description "Enable loopback"; type empty; } leaf no-loopback { description "Enable loopback"; type empty; } leaf flow-control { description "Enable flow control"; type empty; } leaf no-flow-control { description "Enable flow control"; type empty; } leaf source-filtering { description "Enable source address filtering"; type empty; } leaf no-source-filtering { description "Enable source address filtering"; type empty; } choice auto_negotiation_option { case case_1 { leaf no-auto-negotiation { description "Disable auto-negotiation"; type empty; } } case case_2 { container auto-negotiation { presence "enable auto-negotiation"; description "Enable auto-negotiation"; leaf remote-fault { description "(null)"; type enumeration { enum local-interface-offline { description "Disable local interface"; } enum local-interface-online { description "Enable local interface"; } } } } } } leaf mac-mode { description "Physical layer protocol of MAC's SERDES interface"; type enumeration { enum sgmii { description "Serial Gigabit Media Independent Interface (10/100/1000 Mbps)"; } enum mac-mode-1000base-x { description "1000Base-X (1000 Mbps)"; } } } leaf asynchronous-notification { description "Enable sending asynchronous notification to peer on CCC-down"; type empty; } list source-address-filter { key name; description "Source address filters"; leaf name { description "Remote MAC address"; type mac-addr; } } leaf pad-to-minimum-frame-size { description "Pad Tx vlan tagged frame to minimum of 68 bytes"; type empty; } container redundant-parent { description "Parent of this interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf parent { description "Join a redundant-ethernet interface"; type interface-device; mandatory true; } presence "enable redundant-parent"; } container ieee-802.3ad { description "IEEE 802.3ad"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container lacp { description "Link Aggregation Control Protocol configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port-priority { description "Priority of the port (0 ... 65535)"; type uint16; } } leaf bundle { description "Join an aggregated Ethernet interface"; type interface-device; } leaf link-index { description "Desired child link index within the Aggregated Interface"; type uint16 { range "0 .. 63"; } } choice type { case case_1 { leaf primary { description "Primary interface for link-protection mode"; type empty; } } case case_2 { leaf backup { description "Backup interface for link-protection mode"; type empty; } } } } container ethernet-switch-profile { description "Ethernet virtual LAN/media access control-level options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list tag-protocol-id { description "IEEE 802.1q Tag Protocol Identifier values for VLAN-tagged frames"; type string; } container ethernet-policer-profile { description "Ethernet level CoS-based policer configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container input-priority-map { description "Input policer priority map"; uses cos_policer_input_priority_map; } container output-priority-map { description "Output policer priority map"; uses cos_policer_output_priority_map; } list policer { key name; ordered-by user; description "Policer template definition"; uses cos_policer; } } leaf mac-learn-enable { description "Learn MAC addresses dynamically"; type empty; } leaf no-mac-learn-enable { description "Learn MAC addresses dynamically"; type empty; } } container mpls { description "MPLS options"; uses mpls_ifd_options; } leaf ignore-l3-incompletes { description "Ignore L3 incomplete errors"; type empty; } leaf no-auto-mdix { description "Disable auto MDI/MDIX"; type empty; } leaf ieee-802-3az-eee { description "IEEE 802.3az Energy Efficient Ethernet(EEE)"; type empty; } leaf mru { description "Maximum receive packet size"; type uint32 { range "256 .. 9200"; } } } container optics-options { description "Optics options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf wavelength { description "Wavelength of the optics (nanometers) for 50Ghz/100Ghz spacing"; type enumeration { enum 1528.38 { description "1528.38 nm 50Ghz spacing"; } enum 1528.77 { description "1528.77 nm 50/100Ghz spacing"; } enum 1529.16 { description "1529.16 nm 50Ghz spacing"; } enum 1529.55 { description "1529.55 nm 50/100Ghz spacing"; } enum 1529.94 { description "1529.94 nm 50Ghz spacing"; } enum 1530.33 { description "1530.33 nm 50/100Ghz spacing"; } enum 1530.72 { description "1530.72 nm 50Ghz spacing"; } enum 1531.12 { description "1531.12 nm 50/100Ghz spacing"; } enum 1531.51 { description "1531.51 nm 50Ghz spacing"; } enum 1531.90 { description "1531.90 nm 50/100Ghz spacing"; } enum 1532.29 { description "1532.29 nm 50Ghz spacing"; } enum 1532.68 { description "1532.68 nm 50/100Ghz spacing"; } enum 1533.07 { description "1533.07 nm 50Ghz spacing"; } enum 1533.47 { description "1533.47 nm 50/100Ghz spacing"; } enum 1533.86 { description "1533.86 nm 50Ghz spacing"; } enum 1534.25 { description "1534.25 nm 50/100Ghz spacing"; } enum 1534.64 { description "1534.64 nm 50Ghz spacing"; } enum 1535.04 { description "1535.04 nm 50/100Ghz spacing"; } enum 1535.43 { description "1535.43 nm 50Ghz spacing"; } enum 1535.82 { description "1535.82 nm 50/100Ghz spacing"; } enum 1536.22 { description "1536.22 nm 50Ghz spacing"; } enum 1536.61 { description "1536.61 nm 50/100Ghz spacing"; } enum 1537.00 { description "1537.00 nm 50Ghz spacing"; } enum 1537.40 { description "1537.40 nm 50/100Ghz spacing"; } enum 1537.79 { description "1537.79 nm 50Ghz spacing"; } enum 1538.19 { description "1538.19 nm 50/100Ghz spacing"; } enum 1538.58 { description "1538.58 nm 50Ghz spacing"; } enum 1538.98 { description "1538.98 nm 50/100Ghz spacing"; } enum 1539.37 { description "1539.37 nm 50Ghz spacing"; } enum 1539.77 { description "1539.77 nm 50/100Ghz spacing"; } enum 1540.16 { description "1540.16 nm 50Ghz spacing"; } enum 1540.56 { description "1540.56 nm 50/100Ghz spacing"; } enum 1540.95 { description "1540.95 nm 50Ghz spacing"; } enum 1541.35 { description "1541.35 nm 50/100Ghz spacing"; } enum 1541.75 { description "1541.75 nm 50Ghz spacing"; } enum 1542.14 { description "1542.14 nm 50/100Ghz spacing"; } enum 1542.54 { description "1542.54 nm 50Ghz spacing"; } enum 1542.94 { description "1542.94 nm 50/100Ghz spacing"; } enum 1543.33 { description "1543.33 nm 50Ghz spacing"; } enum 1543.73 { description "1543.73 nm 50/100Ghz spacing"; } enum 1544.13 { description "1544.13 nm 50Ghz spacing"; } enum 1544.53 { description "1544.53 nm 50/100Ghz spacing"; } enum 1544.92 { description "1544.92 nm 50Ghz spacing"; } enum 1545.32 { description "1545.32 nm 50/100Ghz spacing"; } enum 1545.72 { description "1545.72 nm 50Ghz spacing"; } enum 1546.12 { description "1546.12 nm 50/100Ghz spacing"; } enum 1546.52 { description "1546.52 nm 50Ghz spacing"; } enum 1546.92 { description "1546.92 nm 50/100Ghz spacing"; } enum 1547.32 { description "1547.32 nm 50Ghz spacing"; } enum 1547.72 { description "1547.72 nm 50/100Ghz spacing"; } enum 1548.11 { description "1548.11 nm 50Ghz spacing"; } enum 1548.51 { description "1548.51 nm 50/100Ghz spacing"; } enum 1548.91 { description "1548.91 nm 50Ghz spacing"; } enum 1549.32 { description "1549.32 nm 50/100Ghz spacing"; } enum 1549.72 { description "1549.72 nm 50Ghz spacing"; } enum 1550.12 { description "1550.12 nm 50/100Ghz spacing"; } enum 1550.52 { description "1550.52 nm 50Ghz spacing"; } enum 1550.92 { description "1550.92 nm 50/100Ghz spacing"; } enum 1551.32 { description "1551.32 nm 50Ghz spacing"; } enum 1551.72 { description "1551.72 nm 50/100Ghz spacing"; } enum 1552.12 { description "1552.12 nm 50Ghz spacing"; } enum 1552.52 { description "1552.52 nm 50/100Ghz spacing"; } enum 1552.93 { description "1552.93 nm 50Ghz spacing"; } enum 1553.33 { description "1553.33 nm 50/100Ghz spacing"; } enum 1553.73 { description "1553.73 nm 50Ghz spacing"; } enum 1554.13 { description "1554.13 nm 50/100Ghz spacing"; } enum 1554.54 { description "1554.54 nm 50Ghz spacing"; } enum 1554.94 { description "1554.94 nm 50/100Ghz spacing"; } enum 1555.34 { description "1555.34 nm 50Ghz spacing"; } enum 1555.75 { description "1555.75 nm 50/100Ghz spacing"; } enum 1556.15 { description "1556.15 nm 50Ghz spacing"; } enum 1556.55 { description "1556.55 nm 50/100Ghz spacing"; } enum 1556.96 { description "1556.96 nm 50Ghz spacing"; } enum 1557.36 { description "1557.36 nm 50/100Ghz spacing"; } enum 1557.77 { description "1557.77 nm 50Ghz spacing"; } enum 1558.17 { description "1558.17 nm 50/100Ghz spacing"; } enum 1558.58 { description "1558.58 nm 50Ghz spacing"; } enum 1558.98 { description "1558.98 nm 50/100Ghz spacing"; } enum 1559.39 { description "1559.39 nm 50Ghz spacing"; } enum 1559.79 { description "1559.79 nm 50/100Ghz spacing"; } enum 1560.20 { description "1560.20 nm 50Ghz spacing"; } enum 1560.61 { description "1560.61 nm 50/100Ghz spacing"; } enum 1561.01 { description "1561.01 nm 50Ghz spacing"; } enum 1561.42 { description "1561.42 nm 50/100Ghz spacing"; } enum 1561.83 { description "1561.83 nm 50Ghz spacing"; } enum 1562.23 { description "1562.23 nm 50/100Ghz spacing"; } enum 1562.64 { description "1562.64 nm 50Ghz spacing"; } enum 1563.05 { description "1563.05 nm 50/100Ghz spacing"; } enum 1563.45 { description "1563.45 nm 50Ghz spacing"; } enum 1563.86 { description "1563.86 nm 50/100Ghz spacing"; } enum 1564.27 { description "1564.27 nm 50Ghz spacing"; } enum 1564.68 { description "1564.68 nm 50/100Ghz spacing"; } enum 1565.09 { description "1565.09 nm 50Ghz spacing"; } enum 1565.50 { description "1565.50 nm 50/100Ghz spacing"; } enum 1565.90 { description "1565.90 nm 50Ghz spacing"; } enum 1566.31 { description "1566.31 nm 50/100Ghz spacing"; } enum 1566.72 { description "1566.72 nm 50Ghz spacing"; } enum 1567.13 { description "1567.13 nm 50/100Ghz spacing"; } enum 1567.54 { description "1567.54 nm 50Ghz spacing"; } enum 1567.95 { description "1567.95 nm 50/100Ghz spacing"; } enum 1568.36 { description "1568.36 nm 50Ghz spacing"; } enum 1568.77 { description "1568.77 nm 50/100Ghz spacing"; } } } leaf tx-power { description "Transmit laser output power"; units "dBm"; type string; } leaf los-warning-threshold { description "LOS warning threshold"; units "dBm"; type string; } leaf los-alarm-threshold { description "LOS alarm threshold"; units "dBm"; type string; } list alarm { key name; ordered-by user; description "Set optic alarms"; leaf name { description "(null)"; type enumeration { enum low-light-alarm { description "Enable low light alarm"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice actiontype { case case_1 { leaf syslog { description "(null)"; type empty; } } case case_2 { leaf link-down { description "(null)"; type empty; } } } } container tca { description "Set tca for optic alarms"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container tx-power-high-tca { description "Tx power high TCA"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf enable-tca { description "Enable tca"; type empty; } leaf no-enable-tca { description "Enable tca"; type empty; } leaf threshold { description "Threshold for 15 minute tx power high TCA in dBm"; type string; } leaf threshold-24hrs { description "Threshold for 24 hour tx power high TCA in dBm"; type string; } } container tx-power-low-tca { description "Tx power low TCA"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf enable-tca { description "Enable tca"; type empty; } leaf no-enable-tca { description "Enable tca"; type empty; } leaf threshold { description "Threshold for 15 minute tx power low TCA in dBm"; type string; } leaf threshold-24hrs { description "Threshold for 24 hour tx power low TCA in dBm"; type string; } } container rx-power-high-tca { description "Rx power high TCA"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf enable-tca { description "Enable tca"; type empty; } leaf no-enable-tca { description "Enable tca"; type empty; } leaf threshold { description "Threshold for 15 minute rx power high TCA in dBm"; type string; } leaf threshold-24hrs { description "Threshold for 24 hour rx power high TCA in dBm"; type string; } } container rx-power-low-tca { description "Rx power low TCA"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf enable-tca { description "Enable tca"; type empty; } leaf no-enable-tca { description "Enable tca"; type empty; } leaf threshold { description "Threshold for 15 minute rx power low TCA in dBm"; type string; } leaf threshold-24hrs { description "Threshold for 24 hour rx power low TCA in dBm"; type string; } } container temperature-high-tca { description "Temperature high TCA"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf enable-tca { description "Enable tca"; type empty; } leaf no-enable-tca { description "Enable tca"; type empty; } leaf threshold { description "Threshold for 15 minute high temperature TCA in celsius"; type string; } leaf threshold-24hrs { description "Threshold for 24 hour high temperature TCA in celsius"; type string; } } container temperature-low-tca { description "Temperature low TCA"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf enable-tca { description "Enable tca"; type empty; } leaf no-enable-tca { description "Enable tca"; type empty; } leaf threshold { description "Threshold for 15 minute low temperature TCA in celsius"; type string; } leaf threshold-24hrs { description "Threshold for 24 hour low temperature TCA in celsius"; type string; } } container carrier-frequency-offset-high-tca { description "Carrier frequency offset high TCA"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf enable-tca { description "Enable tca"; type empty; } leaf no-enable-tca { description "Enable tca"; type empty; } leaf threshold { description "Threshold for 15 minute frequency requency offset high TCA in MHz"; type string; } leaf threshold-24hrs { description "Threshold for 24 hour frequency requency offset high TCA in MHz"; type string; } } container carrier-frequency-offset-low-tca { description "Carrier frequency offset low TCA"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf enable-tca { description "Enable tca"; type empty; } leaf no-enable-tca { description "Enable tca"; type empty; } leaf threshold { description "Threshold for 15 minute frequency requency offset low TCA in MHz"; type string; } leaf threshold-24hrs { description "Threshold for 24 hour frequency requency offset low TCA in MHz"; type string; } } } list warning { key name; ordered-by user; description "Set optic warnings"; leaf name { description "(null)"; type enumeration { enum low-light-warning { description "Enable low light warning"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice actiontype { case case_1 { leaf syslog { description "Set action as syslog"; type empty; } } case case_2 { leaf link-down { description "Set action as link-down"; type empty; } } } } } container otn-options { description "Optical Transmission Network interface-specific options"; uses otn_options_type; } container fastether-options { description "Fast Ethernet interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf loopback { description "Enable loopback"; type empty; } leaf no-loopback { description "Enable loopback"; type empty; } leaf flow-control { description "Enable flow control"; type empty; } leaf no-flow-control { description "Enable flow control"; type empty; } leaf source-filtering { description "Enable source address filtering"; type empty; } leaf no-source-filtering { description "Enable source address filtering"; type empty; } leaf auto-negotiation { description "Enable auto-negotiation"; type empty; } leaf no-auto-negotiation { description "Enable auto-negotiation"; type empty; } leaf ingress-rate-limit { description "Ingress rate at port"; units "megabits per second"; type uint32 { range "1 .. 100"; } } list source-address-filter { key name; ordered-by user; description "Source address filters"; leaf name { description "Remote MAC address"; type mac-addr; } } container redundant-parent { description " Parent of this interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf parent { description "Join a redundant ethernet interface"; type interface-device; mandatory true; } presence "enable redundant-parent"; } container ieee-802.3ad { description "IEEE 802.3ad"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container lacp { description "Link Aggregation Control Protocol configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port-priority { description "Priority of the port (0 ... 65535)"; type uint16; } } leaf bundle { description "Join an aggregated Ethernet interface"; type interface-device; } choice type { case case_1 { leaf primary { description "Primary interface for link-protection mode"; type empty; } } case case_2 { leaf backup { description "Backup interface for link-protection mode"; type empty; } } } } container mpls { description "MPLS options"; uses mpls_ifd_options; } leaf ignore-l3-incompletes { description "Ignore L3 incomplete errors"; type empty; } } container redundant-ether-options { description "Ethernet redundancy options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf redundancy-group { description "Redundancy group of this interface"; type uint16 { range "1 .. 255"; } mandatory true; } presence "enable redundant-ether-options"; leaf loopback { description "Enable loopback"; type empty; } leaf no-loopback { description "Enable loopback"; type empty; } leaf flow-control { description "Enable flow control"; type empty; } leaf no-flow-control { description "Enable flow control"; type empty; } leaf source-filtering { description "Enable source address filtering"; type empty; } leaf no-source-filtering { description "Enable source address filtering"; type empty; } list source-address-filter { key name; ordered-by user; description "Source address filters"; leaf name { description "Remote MAC address"; type mac-addr; } } leaf link-speed { description "Link speed of individual interface that joins the RETH"; type enumeration { enum 10m { description "Links are 10M"; } enum 100m { description "Links are 100M"; } enum 1g { description "Links are 1G"; } enum 10g { description "Links are 10G"; } } } leaf minimum-links { description "Minimum number of active links"; default "1"; type uint16 { range "1 .. 8"; } } container lacp { description "Link Aggregation Control Protocol configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice mode { case case_1 { leaf active { description "Initiate transmission of LACP packets"; type empty; } } case case_2 { leaf passive { description "Respond to LACP packets"; type empty; } } } leaf periodic { description "Timer interval for periodic transmission of LACP packets"; type enumeration { enum fast { description "Receive packets every second"; } enum slow { description "Receive packets every 30 seconds"; } } } } } container aggregated-ether-options { description "Aggregated Ethernet interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf loopback { description "Enable loopback"; type empty; } leaf no-loopback { description "Enable loopback"; type empty; } leaf flow-control { description "Enable flow control"; type empty; } leaf no-flow-control { description "Enable flow control"; type empty; } leaf source-filtering { description "Enable source address filtering"; type empty; } leaf no-source-filtering { description "Enable source address filtering"; type empty; } container link-protection { presence "enable link-protection"; description "Enable link protection mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf backup-state { description "Link protection backup link state"; default "accept-data"; type enumeration { enum accept-data { description "Accept data on receive channel of backup link"; } enum discard-data { description "Discard data on receive channel of backup link"; } enum down { description "Backup link is marked down"; } } } } list source-address-filter { key name; ordered-by user; description "Source address filters"; leaf name { description "Remote MAC address"; type mac-addr; } } container configured-flow-control { presence "enable configured-flow-control"; description "Enable flow control"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf rx-buffers { description "Enable/Disable Rx buffers"; type enumeration { enum on { description "Enable Rx buffers"; } enum off { description "Disable Rx buffers"; } } mandatory true; } leaf tx-buffers { description "Enable/Disable Tx buffers"; type enumeration { enum on { description "Enable Tx buffers"; } enum off { description "Disable Tx buffers"; } } mandatory true; } } container load-balance { uses aggregate-load-balance; } container bfd-liveness-detection { presence "enable bfd-liveness-detection"; description "Bidirectional Forwarding Detection (BFD) options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } container authentication { description "Authentication options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf key-chain { description "Key chain name"; type string; } leaf algorithm { description "Algorithm name"; type enumeration { enum simple-password { description "Simple password"; } enum keyed-md5 { description "Keyed message Digest 5"; } enum meticulous-keyed-md5 { description "Meticulous keyed message Digest 5"; } enum keyed-sha-1 { description "Keyed secure hash algorithm (SHA1) "; } enum meticulous-keyed-sha-1 { description "Meticulous keyed secure hash algorithm (SHA1) "; } } } leaf loose-check { description "Verify authentication only if authentication is negotiated"; type empty; } } leaf neighbor { description "BFD neighbor address"; type ipaddr; mandatory true; } leaf local-address { description "BFD local address"; type ipaddr; mandatory true; } leaf holddown-interval { description "Time to hold the session-UP notification to the client"; units "milliseconds"; type uint32 { range "0 .. 255000"; } } } leaf minimum-links { description "Minimum number of aggregated links"; type uint16 { range "1 .. 64"; } } container minimum-bandwidth { presence "enable minimum-bandwidth"; description "Minimum bandwidth configured for aggregated bundle"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bw-value { description "Bandwidth value"; default "1"; type uint64; } leaf bw-unit { description "Bandwidth unit"; type enumeration { enum bps { description "Links are in bytes per sec"; } enum kbps { description "Links are in kilo bytes per sec"; } enum mbps { description "Links are in mega bytes per sec"; } enum gbps { description "Links are in giga bytes per sec "; } } } } choice redundancy_choice { case case_1 { leaf logical-interface-fpc-redundancy { description "Enable FPC redundancy for logical interfaces"; type empty; } } case case_2 { leaf logical-interface-chassis-redundancy { description "Enable CHASSIS redundancy for logical interfaces"; type empty; } } } container rebalance-periodic { presence "enable rebalance-periodic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf start-time { description "Start time of the rebalance operation ( Wall clock time )"; type time; mandatory true; } leaf interval { description "Interval of the rebalance operation in hrs"; type uint32 { range "1 .. 24"; } mandatory true; } } leaf pad-to-minimum-frame-size { description "Pad Tx vlan tagged frame to minimum of 68 bytes"; type empty; } leaf link-speed { description "Link speed of individual interface that joins the AE"; type enumeration { enum 10m { description "Links are 10M"; } enum 100m { description "Links are 100M"; } enum 1g { description "Links are 1G"; } enum 8g { description "Links are 8G"; } enum 10g { description "Links are 10G"; } enum 40g { description "Links are 40G"; } enum 50g { description "Links are 50G"; } enum 80g { description "Links are 80G"; } enum 100g { description "Links are 100G"; } enum oc192 { description "Links are OC-192"; } enum mixed { description "Links are various speeds"; } } } leaf local-bias { description "Turn on local bias functionality"; type empty; } container lacp { description "Link Aggregation Control Protocol configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice mode { case case_1 { leaf active { description "Initiate transmission of LACP packets"; type empty; } } case case_2 { leaf passive { description "Respond to LACP packets"; type empty; } } } leaf periodic { description "Timer interval for periodic transmission of LACP packets"; type enumeration { enum fast { description "Receive packets every second"; } enum slow { description "Receive packets every 30 seconds"; } } } leaf fast-failover { description "To turn off LACP fast-failover"; type empty; } container link-protection { presence "enable link-protection"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "To turn off LACP link-protection"; type empty; } choice mode { case case_1 { leaf revertive { description "Switch links when better priority link comes up"; type empty; } } case case_2 { leaf non-revertive { description "Do not switch links when better priority link comes up"; type empty; } } } } leaf accept-data { description "Keep receiving traffic even when LACP goes down"; type empty; } leaf system-priority { description "Priority of the system (0 ... 65535)"; type string; } leaf system-id { description "Node's System ID, encoded as a MAC address"; type mac-addr; } leaf admin-key { description "Node's administrative key"; type uint16; } container hold-time { description "Hold time for link up and link down for AE link members"; leaf up { description "Link up hold time for the AE link members"; units "seconds"; type uint16 { range "1 .. 6000"; } mandatory true; } presence "enable hold-time"; } leaf aggregate-wait-time { description "Aggregate wait time for the AE"; units "seconds"; type uint16 { range "2 .. 600"; } } leaf force-up { description "Forceup AE interface with LACP"; type empty; } } container ethernet-switch-profile { description "Ethernet virtual LAN/media access control-level options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list tag-protocol-id { description "IEEE 802.1q Tag Protocol Identifier values for VLAN-tagged frames"; type string; } } container mc-ae { description "Multi-chassis aggregation (MC-AE) network device configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf mc-ae-id { description "MC-AE group id"; type uint16 { range "1 .. 65535"; } mandatory true; } presence "enable mc-ae"; leaf redundancy-group { description "Redundancy group id"; type uint32 { range "1 .. 4294967294"; } } leaf chassis-id { description "Chassis id of MC-AE network device"; type uint16 { range "0 .. 1"; } mandatory true; } leaf mode { description "Mode of the MC-AE"; type enumeration { enum active-standby { description "MC-AE in active-standby mode"; } enum active-active { description "MC-AE in active-active mode"; } } mandatory true; } leaf status-control { description "Status of the MC-AE chassis"; type enumeration { enum active { description "Chassis is Active"; } enum standby { description "Chassis is Standby"; } } mandatory true; } leaf switchover-mode { description "Switchover mode"; type enumeration { enum revertive { description "Switch mcae node when preferred link comes up"; } enum non-revertive { description "Do not switch mcae node when preferred link comes up"; } } } leaf revert-time { description "Wait interval before performing switchover"; default "3"; units "minute"; type uint32 { range "1 .. 10"; } } leaf init-delay-time { description "Init delay timer for mcae sm for min traffic loss"; units "seconds"; type uint16 { range "1 .. 6000"; } } leaf recovery-delay-time { description "Delay timer for bringing up ICL, ICCP"; units "seconds"; type uint16 { range "1 .. 6000"; } } container events { presence "enable events"; description "MCAE related events"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container iccp-peer-down { presence "enable iccp-peer-down"; description "Define behavior in the event of ICCP peer down"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf force-icl-down { description "Bring down ICL logical interface"; type empty; } leaf prefer-status-control-active { description "Keep this node up (recommended only on status-control active)"; type empty; } } } } } container es-options { description "ES PIC interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf backup-interface { description "Name of backup interface"; type interface-device; } } container dsl-options { description "DSL interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf operating-mode { description "DSL operating mode"; type enumeration { enum auto { description "Autonegotiate mode"; } enum ansi-dmt { description "ANSI T1.413 Issue II mode"; } enum itu-dmt { description "ITU G.992.1 mode"; } enum etsi { description "ETSI TS 101 388 V1.3.1 mode"; } enum itu-annexb-ur2 { description "ITU G.992.1 UR-2 mode"; } enum itu-annexb-non-ur2 { description "ITU G.992.1 Non UR-2 mode"; } enum itu-dmt-bis { description "ITU G.992.3 mode"; } enum adsl2plus { description "ITU G.992.5 mode"; } enum annexm-itu-dmt-bis { description "AnnexM ITU G.992.3 mode"; } enum annexm-adsl2plus { description "AnnexM ITU G.992.5 mode"; } } } } container vdsl-options { description "VDSL interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf vdsl-profile { description "VDSL profile"; type enumeration { enum auto { description "Auto"; } enum 8a { description "Profile 8a"; } enum 8b { description "Profile 8b"; } enum 8c { description "Profile 8c"; } enum 8d { description "Profile 8d"; } enum 12a { description "Profile 12a"; } enum 12b { description "Profile 12b"; } enum 17a { description "Profile 17a"; } } } } container shdsl-options { description "SHDSL interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf annex { description "Type of SHDSL annex"; default "annex-b"; type enumeration { enum annex-a { description "Annex-a PIC"; } enum annex-b { description "Annex-b PIC"; } enum annex-f { description "Annex-f PIC"; } enum annex-g { description "Annex-g PIC"; } enum annex-auto { description "Annex-auto PIC"; } } } leaf line-rate { description "SHDSL line rate"; type string; } leaf loopback { description "Loopback mode"; type enumeration { enum local { description "Local loopback"; } enum remote { description "Remote loopback"; } } } container snr-margin { presence "enable snr-margin"; description "Signal to noise ratio margin"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf current { description "Current signal to noise ratio margin"; units "dB"; type string; } leaf snext { description "SNEXT signal to noise ratio margin"; units "dB"; type string; } } } container data-input { description "Configuration for drop-insert data input"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice input-choice { case case_1 { leaf system { description "Data sourced from system"; type empty; } } case case_2 { leaf interface { description "Interface that acts as data source"; type interface-device; } } } } container switch-options { description "Front end ports configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list switch-port { key name; description "(null)"; leaf name { description "Front end port number"; type uint32 { range "0 .. 15"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf auto-negotiation { description "Enable auto-negotiation"; type empty; } leaf no-auto-negotiation { description "Enable auto-negotiation"; type empty; } leaf link-mode { description "Link operational mode"; type enumeration { enum half-duplex { description "Half-duplex operation"; } enum full-duplex { description "Full-duplex operation"; } } } leaf speed { description "Link speed"; type enumeration { enum 10m { description "(null)"; } enum 100m { description "(null)"; } enum 1g { description "(null)"; } } } leaf vlan-id { description "VLAN ID for this port"; type uint32 { range "0 .. 4094"; } } leaf cascade-port { description "Port externally connected to another cascade port"; type empty; } } } container container-options { description "Container interface specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container container-type { presence "enable container-type"; description "Protocol type of the container interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice container-type-choice { case case_1 { container aps { description "APS options on the container"; uses aps_type; } } } } container member-interface-type { description "Link type of members of container"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice member_interface_type_choice { case case_1 { container sonet { presence "enable sonet"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf member-interface-speed { description "Link speed of members of container"; type enumeration { enum oc3 { description "Links are OC-3"; } enum oc12 { description "Links are OC-12"; } enum oc48 { description "Links are OC-48"; } enum oc192 { description "Links are OC-192"; } enum oc768 { description "Links are OC-768"; } enum mixed { description "Links are of different speeds"; } } mandatory true; } } } case case_2 { container atm { presence "enable atm"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf member-interface-speed { description "Link speed of members of container"; type enumeration { enum oc3 { description "Links are OC-3"; } enum oc12 { description "Links are OC-12"; } enum oc48 { description "Links are OC-48"; } } mandatory true; } } } } } container redundancy { description "Container interface redundancy options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container hold-time { description "Hold time for link up and link down"; leaf up { description "Link up hold time"; units "milliseconds"; type uint32 { range "0 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Link down hold time"; units "milliseconds"; type uint32 { range "0 .. 65534"; } mandatory true; } } } leaf-list container-list { description "List of container interfaces this member link is associated to"; type interface-device; } choice redundancy-type { case case_1 { choice aps-redundancy { case case_1 { leaf primary { description "This member link is primary interface of the container"; type empty; } } case case_2 { leaf standby { description "This member link is standby interface of the container"; type empty; } } } } } leaf allow-configuration-override { description "Allow physical configuration of member link to override container configuration"; type empty; } } container layer2-policer { description "Layer2 policing for interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input-hierarchical-policer { description "Hierarchical policer for received packets"; type string; } } list unit { key name; description "Logical interface"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf alias { description "Interface alias"; type string; } container peer-psd { presence "enable peer-psd"; description "Peer psd"; leaf psd-name { description "Peer psd name"; type string; mandatory true; } } container peer-interface { presence "enable peer-interface"; description "Peer interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interface-name { description "Peer interface name"; type interface-unit; } } container interface-shared-with { presence "enable interface-shared-with"; description "Specify which PSD owns this logical interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf psd-name { description "Name of protected system domain (psd[1-31], ex. psd2)"; type string { } mandatory true; } } choice enable-disable { case case_1 { leaf disable { description "Disable this logical interface"; type empty; } } } leaf passive-monitor-mode { description "Use interface to tap packets from another router"; type empty; } leaf per-session-scheduler { description "Enable per-session queuing on an IQ2 interface"; type empty; } container account-layer2-overhead { presence "enable account-layer2-overhead"; description "Account layer2 overhead in IFL byte statistics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf overhead-value { description "Layer2 overhead bytes to be accounted in ingress and egress"; units "bytes"; type int8 { range "-128 .. 127"; } } leaf ingress { description "Layer2 overhead bytes to be accounted in ingress"; units "bytes"; type int8 { range "-128 .. 127"; } } leaf egress { description "Layer2 overhead bytes to be accounted in egress"; units "bytes"; type int8 { range "-128 .. 127"; } } } container forwarding-class-accounting { presence "enable forwarding-class-accounting"; description "Configure Forwarding-class-accounting parameters for IFL "; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf direction { description "Direction of the traffic to be accounted for IFL"; type enumeration { enum ingress { description "Enable forwarding-class-accounting for ingress traffic"; } enum egress { description "Enable forwarding-class-accounting for egress traffic"; } enum both { description "Enable forwarding-class-accounting for both directions"; } } } container enhanced { presence "enable enhanced"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf traffic-type { description "Traffic-type to be accounted for forwarding-class-accounting for IFL"; type enumeration { enum unicast-statistics { description "Count only unicast traffic for forwarding-class-accounting for IFL "; } enum multicast-statistics { description "Count only multicast traffic for forwarding-class-accounting for IFL"; } } } leaf family { description "Protocol traffic to be accounted for forwarding-class-accounting for IFL"; type enumeration { enum inet { description "Enable forwarding-class-accounting for IPv4 family only for IFL"; } enum inet6 { description "Enable forwarding-class-accounting for IPv6 family only for IFL"; } enum both { description "Enable forwarding-class-accounting for both IPv4 and IPv6 family for IFL"; } } } leaf direction { description "Direction of the traffic to be accounted for forwarding-class-accounting for IFL"; type enumeration { enum ingress { description "Enable forwarding-class-accounting for ingress traffic for IFL"; } enum egress { description "Enable forwarding-class-accounting for egress traffic for IFL"; } enum both { description "Enable forwarding-class-accounting for both ingress and egress traffic for IFL"; } } } leaf overhead-bytes { description "Per octet overhead bytes to be accounted for forwarding-class-accounting for IFL "; default "0"; type uint32 { range "0 .. 255"; } } } } leaf clear-dont-fragment-bit { description "Clear DF bit in packet (AS PIC and J-series only as well as MIF)"; type empty; } leaf reassemble-packets { description "Do reassembly of fragmented tunnel packets"; type empty; } container services-options { description "Services interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container rpm { description "Enable RPM service on this interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice rpm_or_twamp { case case_1 { choice rpm-type { case case_1 { leaf client { description "Client mode"; type empty; } } case case_2 { leaf server { description "Server mode"; type empty; } } } } case case_2 { leaf twamp-server { description "Set TWAMP server mode on this interface"; type empty; } } case case_3 { leaf twamp-client { description "Set TWAMP server mode on this interface"; type empty; } } } } leaf description { description "Text description of interface"; type string; } leaf metadata { description "Text metadata attached to interface"; type string; } container dial-options { description "Dial options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice interface_id_choice { case case_1 { leaf l2tp-interface-id { description "Identifier for group of PPP sessions"; type string { length "1 .. 63"; } } } case case_2 { leaf ipsec-interface-id { description "Identifier for group of dynamic peers"; type string { length "1 .. 63"; } } } } choice ifl_type { case case_1 { leaf dedicated { description "Use this unit for only one PPP/IPSec session"; type empty; } } case case_2 { leaf shared { description "Share this unit for multiple PPP/IPSec sessions"; type empty; } } } } list demux-source { key name; ordered-by user; description "Demux based on source address"; uses demux_options_table; } list demux-destination { key name; ordered-by user; description "Demux based on destination address"; uses demux_options_table; } leaf encapsulation { description "Logical link-layer encapsulation"; type enumeration { enum atm-nlpid { description "ATM NLPID encapsulation"; } enum atm-cisco-nlpid { description "Cisco-compatible ATM NLPID encapsulation"; } enum atm-snap { description "ATM LLC/SNAP encapsulation"; } enum atm-vc-mux { description "ATM VC multiplexing"; } enum atm-ccc-vc-mux { description "ATM VC for CCC"; } enum atm-tcc-vc-mux { description "ATM VC for translational cross-connect"; } enum atm-tcc-snap { description "ATM LLC/SNAP for translational cross-connect"; } enum atm-ccc-cell-relay { description "ATM cell relay for CCC"; } enum vlan-vci-ccc { description "CCC for VLAN Q-in-Q and ATM VPI/VCI interworking"; } enum ether-over-atm-llc { description "Ethernet over ATM (LLC/SNAP) encapsulation"; } enum ether-vpls-over-atm-llc { description "Ethernet VPLS over ATM (bridging) encapsulation"; } enum ppp-over-ether-over-atm-llc { description "PPPoE over ATM (LLC/SNAP) encapsulation"; } enum ppp-over-ether { description "PPPoE encapsulation"; } enum atm-ppp-vc-mux { description "ATM PPP over raw AAL5"; } enum atm-ppp-llc { description "ATM PPP over AAL5/LLC"; } enum atm-mlppp-llc { description "ATM MLPPP over AAL5/LLC"; } enum frame-relay-ppp { description "PPP over Frame Relay"; } enum frame-relay-ccc { description "Frame Relay DLCI for CCC"; } enum frame-relay { description "Frame Relay DLCI"; } enum frame-relay-tcc { description "Frame Relay DLCI for translational cross-connect"; } enum frame-relay-ether-type { description "Cisco-compatible Frame Relay Encapsulation DLCI"; } enum frame-relay-ether-type-tcc { description "Cisco-compatible Frame Relay Encapsulation DLCI for TCC"; } enum ether-vpls-fr { description "Ethernet VPLS over Frame Relay (bridging) encapsulation"; } enum vlan-ccc { description "802.1q tagging for a cross-connect"; } enum ethernet-ccc { description "Ethernet for a cross-connect"; } enum vlan-vpls { description "VLAN virtual private LAN service"; } enum vlan-bridge { description "VLAN layer-2 bridging"; } enum dix { description "Ethernet DIXv2 (RFC 894)"; } enum ethernet { description "Ethernet II (RFC 894)"; } enum ethernet-vpls { description "Ethernet II virtual private LAN service"; } enum ethernet-bridge { description "Ethernet II bridging"; } enum vlan { description "802.1q-tagged Ethernet"; } enum vlan-tcc { description "802.1q tagging for a translational cross-connect"; } enum multilink-ppp { description "Multilink PPP"; } enum multilink-frame-relay-end-to-end { description "Multilink Frame Relay end-to-end (FRF.15)"; } enum ppp-ccc { description "Serial PPP device for a cross-connect"; } } } leaf mtu { description "Maximum transmission unit packet size"; type uint32 { range "256 .. 9216"; } } choice pointedness { case case_1 { leaf point-to-point { description "Point-to-point connection"; type empty; } } case case_2 { leaf multipoint { description "Multipoint connection"; type empty; } } } leaf bandwidth { description "Logical unit bandwidth (informational only)"; type string; } leaf global-layer2-domainid { description "Global Layer-2 Identifier for this interface"; type uint32 { range "5 .. 4094"; } } container radio-router { description "Parameters for dynamic link cost management"; uses dynamic_ifbw_parms_type; } leaf traps { description "Enable SNMP notifications on state changes"; type empty; } leaf no-traps { description "Enable SNMP notifications on state changes"; type empty; } container arp-resp { presence "enable arp-resp"; description "Knob to control ARP response on the interface, default is restricted"; choice arp-response-options { case case_1 { leaf unrestricted { description "Enable unrestricted ARP respone on the interface"; type empty; } } case case_2 { leaf restricted { description "Enable restricted proxy ARP response on the interface"; type empty; } } } } container proxy-arp { presence "enable proxy-arp"; description "Enable proxy ARP on the interface, default is unrestricted"; choice proxyarp-options { case case_1 { leaf unrestricted { description "Enable unrestricted proxy ARP on the interface"; type empty; } } case case_2 { leaf restricted { description "Enable restricted proxy ARP on the interface"; type empty; } } } } choice vlan_choice { case case_1 { leaf vlan-id { description "Virtual LAN identifier value for 802.1q VLAN tags"; type string; } } case case_2 { leaf vlan-id-range { description "Virtual LAN identifier range of form vid1-vid2"; type string { } } } case case_3 { leaf-list vlan-id-list { description "List of VLAN identifiers"; type vlan-range; } } case case_4 { container vlan-tags { presence "enable vlan-tags"; description "IEEE 802.1q tags"; leaf outer { description "[tpid.]vlan-id, tpid format is 0xNNNN and is optional"; type string; mandatory true; } choice inner_choice { case case_1 { leaf inner { description "[tpid.]vlan-id, tpid format is 0xNNNN and is optional"; type string; } } case case_2 { leaf inner-range { description "[tpid.]vid1-vid2, tpid format is 0xNNNN and is optional"; type string { } } } case case_3 { leaf-list inner-list { description "List of VLAN identifiers"; type vlan-range; } } } } } } leaf native-inner-vlan-id { description "Native virtual LAN identifier for singly tagged frames"; type uint32 { range "0 .. 4094"; } } container inner-vlan-id-range { description "Inner vlan-id range start end "; leaf start { description "Inner vlan-id range's start value"; type uint32 { range "32 .. 4094"; } mandatory true; } presence "enable inner-vlan-id-range"; leaf end { description "Inner vlan-id range's end value"; type uint32 { range "32 .. 4094"; } mandatory true; } } container accept-source-mac { description "Remote media access control address to/from which to accept traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list mac-address { key name; description "Remote MAC address"; uses mac_list; } } container input-vlan-map { description "VLAN map operation on input"; uses vlan_map; } container output-vlan-map { description "VLAN map operation on output"; uses vlan_map; } leaf swap-by-poppush { description "Pop original vlan tag and then push a new vlan tag"; type empty; } leaf receive-lsp { description "Name of incoming label-switched path"; type string; } leaf transmit-lsp { description "Name of outgoing label-switched path"; type string; } leaf dlci { description "Frame Relay data-link control identifier"; type uint32 { range "1 .. 1022"; } } leaf multicast-dlci { description "Frame Relay data-link control identifier for multicast packets"; type uint32 { range "1 .. 1022"; } } choice vci_type { case case_1 { leaf vci { description "ATM point-to-point virtual circuit identifier ([vpi.]vci)"; type atm-vci; } } case case_2 { leaf allow-any-vci { description "Allow all VCIs to open in atm-ccc-cell-relay mode"; type empty; } } case case_3 { leaf vpi { description "ATM point-to-point virtual path identifier (vpi)"; type uint32 { range "0 .. 255"; } } } case case_4 { leaf trunk-id { description "ATM trunk identifier"; type uint32 { range "0 .. 31"; } } } } leaf no-vpivci-swapping { description "Do not swap VPI/VCI for Cell Relay"; type empty; } choice psn_vci_type { case case_1 { leaf psn-vci { description "PSN VCI"; type atm-vci; } } case case_2 { leaf psn-vpi { description "PSN VPI"; type uint32 { range "0 .. 255"; } } } } container atm-l2circuit-mode { description "Select ATM Layer 2 circuit transport mode"; choice mode_choice { case case_1 { leaf cell { description "ATM Layer 2 circuit cell mode"; type empty; } } case case_2 { leaf aal5 { description "ATM Layer 2 circuit AAL5 mode"; type empty; } } } } container vci-range { presence "enable vci-range"; description "ATM VCI range start end "; leaf start { description "ATM VCI range's start value"; type uint16 { range "32 .. 4094"; } mandatory true; } leaf end { description "ATM VCI range's end value"; type uint16 { range "32 .. 4094"; } mandatory true; } } leaf trunk-bandwidth { description "ATM trunk bandwidth"; units "bits per second"; type string; } leaf multicast-vci { description "ATM virtual circuit identifier for multicast packets"; type atm-vci; } container shaping { description "Virtual circuit traffic-shaping options"; uses dcd_shaping_config; } container oam-period { description "OAM cell period"; choice oam_period_choices { case case_1 { leaf oam-period { description "OAM cell period"; units "seconds"; type uint32 { range "1 .. 900"; } } } case case_2 { container disable { presence "enable disable"; description "Disable F5 OAM loopback"; } } } } container oam-liveness { description "OAM virtual circuit liveness parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf up-count { description "Number of OAM cells to consider VC up"; type uint32 { range "1 .. 255"; } } leaf down-count { description "Number of OAM cells to consider VC down"; type uint32 { range "1 .. 255"; } } } container ppp-options { description "Point-to-Point Protocol interface-specific options"; uses ppp_options_type; } container pppoe-options { description "PPP over Ethernet interface-specific options"; uses pppoe_options_type; } container pppoe-underlying-options { description "PPP over Ethernet underlying interface-specific options"; uses pppoe_underlying_options_type; } container advisory-options { description "Interface-specific recommendations"; uses advisory_options_type; } container auto-configure { description "Auto configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container agent-circuit-identifier { description "ACI configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf dynamic-profile { description "Dynamic profile name"; type string { length "1 .. 64"; } mandatory true; } presence "enable agent-circuit-identifier"; } } container demux-options { description "IP demux interface-specific options"; uses demux_options_type; } leaf targeted-distribution { description "Interface participates in targeted-distribution"; type empty; } choice keepalive_choices { case case_1 { container keepalives { description "Send or demand keepalive messages"; uses keepalives_type; } } case case_2 { leaf no-keepalives { description "Do not send or demand keepalive messages"; type empty; } } } leaf inverse-arp { description "Enable inverse ARP"; type empty; } leaf transmit-weight { description "ATM2 transmit weight for VC under VP tunnel"; type uint16 { range "1 .. 32767"; } } container epd-threshold { description "Early packet discard threshold for ATM2"; uses epd_threshold_config; } leaf cell-bundle-size { description "L2 circuit cell bundle size"; units "cells"; type uint32 { range "1 .. 176"; } } leaf cell-bundle-timeout { description "L2 circuit cell bundle timeout"; units "microseconds"; type uint32 { range "1 .. 512"; } } leaf plp-to-clp { description "Enable ATM2 PLP to CLP copy"; type empty; } leaf atm-scheduler-map { description "Assign ATM2 CoS scheduling map"; type string; } leaf mrru { description "Maximum received reconstructed unit"; units "bytes"; type uint16 { range "1500 .. 9180"; } } leaf short-sequence { description "Short sequence number header format (MLPPP only)"; type empty; } leaf fragment-threshold { description "Fragmentation threshold"; units "bytes"; type uint32 { range "64 .. 16320"; } } leaf drop-timeout { description "Drop timeout"; units "milliseconds"; type uint16 { range "0 .. 2000"; } } leaf disable-mlppp-inner-ppp-pfc { description "Disable compression for inner PPP header in MLPPP payload"; type empty; } leaf minimum-links { description "Minimum number of links to sustain the bundle"; type uint16 { range "1 .. 8"; } } leaf multilink-max-classes { description "Number of multilink classes"; type uint16 { range "1 .. 8"; } } container compression { presence "enable compression"; description "Various packet header compressions"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container rtp { presence "enable rtp"; description "Compress and decompress RTP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf f-max-period { description "Maximum number of compressed packets between transmission of full headers"; type uint32 { range "1 .. 65535"; } } leaf-list queues { description "Queue holding RTP packets. Default is queue 1"; type enumeration { enum q0 { description "RTP packets assigned to queue 0"; } enum q1 { description "RTP packets assigned to queue 1"; } enum q2 { description "RTP packets assigned to queue 2"; } enum q3 { description "RTP packets assigned to queue 3"; } } } container port { presence "enable port"; description "UDP destination ports reserved for RTP packets"; leaf minimum { description "(null)"; type uint32 { range "0 .. 65535"; } mandatory true; } leaf maximum { description "(null)"; type uint32 { range "0 .. 65535"; } mandatory true; } } container maximum-contexts { description "Maximum number of simultaneous RTP contexts"; leaf number { description "Maximum number of simultaneous RTP contexts"; type uint32 { range "16 .. 2048"; } } } } } leaf interleave-fragments { description "Interleave long packets with high priority ones"; type empty; } leaf link-layer-overhead { description "Link layer bit stuffing overhead (0.0 .. 50.0 percent)"; type unsigned-float; } leaf accounting-profile { description "Accounting profile name"; type string; } leaf peer-unit { description "Peer unit number"; type uint32 { range "0 .. 16385"; } } container tunnel { description "Tunnel parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source { description "Tunnel source"; type ipaddr; mandatory true; } presence "enable tunnel"; leaf destination { description "Tunnel destination"; type ipaddr; mandatory true; } leaf key { description "Tunnel key"; type uint32 { range "0 .. 4294967295"; } } leaf backup-destination { description "Backup tunnel destination"; type ipaddr; } choice fragmentation { case case_1 { leaf allow-fragmentation { description "Do not set DF bit on packets"; type empty; } } case case_2 { leaf do-not-fragment { description "Set DF bit on packets"; type empty; } } } leaf ttl { description "Time to live"; type uint32 { range "0 .. 255"; } } leaf traffic-class { description "TOS/Traffic class field of IP-header"; type uint32 { range "0 .. 255"; } } leaf flow-label { description "Flow label field of IP6-header"; type uint32 { range "0 .. 1048575"; } } leaf path-mtu-discovery { description "Enable path MTU discovery for tunnels"; type empty; } leaf no-path-mtu-discovery { description "Enable path MTU discovery for tunnels"; type empty; } container routing-instance { description "Routing instance to which tunnel ends belong"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf destination { description "Routing instance of tunnel destination"; type string; } } } leaf compression-device { description "Logical interface used for compression"; type interface-unit; } container atm-policer { description "ATM policing for logical interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input-atm-policer { description "Input atm policer"; type string; } } container layer2-policer { description "Layer2 policing for logical interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice layer2-input-policer-choice { case case_1 { leaf input-policer { description "Two-color policer for received packets"; type string; } } case case_2 { leaf input-hierarchical-policer { description "Hierarchical policer for received packets"; type string; } } case case_3 { leaf input-three-color { description "Color-blind three-color policer for received packets"; type string; } } } choice layer2-output-policer-choice { case case_1 { leaf output-policer { description "Two-color policer for transmitted packets"; type string; } } case case_2 { leaf output-three-color { description "Three-color policer for transmitted packets"; type string; } } } } container filter { description "Filters to apply to all families configured under this logical interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of filter applied to received packets"; type string; } leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf output { description "Name of filter applied to transmitted packets"; type string; } } list multi-chassis-protection { key name; description "Inter-Chassis protection configuration"; uses multi-chassis-protection-group; } leaf statistics { description "Enable statistics collection in PFE"; type empty; } container esi { description "ESI configuration of local loopback interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf identifier { description "ESI value for the interface"; type esi; mandatory true; } presence "enable esi"; choice mode { case case_1 { leaf single-active { description "Single-active mode"; type empty; } } case case_2 { leaf all-active { description "All-active mode"; type empty; } } } } container family { description "Protocol family"; container inet { presence "enable inet"; description "IPv4 parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container dhcp-client { description "Dynamic Host Configuration Protocol client configuration"; uses dhcp-client-type; } container targeted-broadcast { presence "enable targeted-broadcast"; description "Directed broadcast"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice targeted-bcast-choice { case case_1 { leaf forward-and-send-to-re { description "Allow packets to be forwarded and sent to re"; type empty; } } case case_2 { leaf forward-only { description "Allow packets only to be forwarded"; type empty; } } } } leaf receive-options-packets { description "Receive IP options packets (don't send to Routing Engine)"; type empty; } leaf receive-ttl-exceeded { description "Receive IP TTL-exceeded packets (don't send to Routing Engine)"; type empty; } container accounting { description "Configure interface-based accounting options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container source-class-usage { description "Enable source class usage on this interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Specify this interface for source-class-usage input"; type empty; } leaf output { description "Specify this interface for source-class-usage output"; type empty; } } leaf destination-class-usage { description "Enable destination class usage on this interface"; type empty; } } leaf mac-validate { description "Validate source MAC address"; type enumeration { enum strict { description "Strict mac-validation"; } enum loose { description "Loose mac-validation"; } } } container rpf-check { presence "enable rpf-check"; description "Enable reverse-path-forwarding checks on this interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf fail-filter { description "Name of filter applied to packets failing RPF check"; type string; } container mode { description "Mode for reverse path forwarding"; leaf loose { description "Reverse-path-forwarding loose mode"; type empty; } } } leaf mtu { description "Protocol family maximum transmission unit"; type uint32; } leaf tcp-mss { description "Protocol family tcp maximum segment size"; type uint32 { range "1 .. 65535"; } } leaf no-redirects { description "Do not redirect traffic"; type empty; } leaf no-neighbor-learn { description "Disable neighbor address learning on interface"; type empty; } leaf unconditional-src-learn { description "Glean from arp packets even when source cannot be validated"; type empty; } leaf multicast-only { description "Allow only multicast traffic (tunnels only)"; type empty; } leaf primary { description "Candidate for primary interface in system"; type empty; } leaf ipsec-sa { description "Name of security association"; type string { length "1 .. 32"; } } list demux-source { key name; ordered-by user; description "Demux based on source prefix"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list demux-destination { key name; ordered-by user; description "Demux based on destination prefix"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container filter { description "Packet filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice input_choice { case case_1 { container input { description "Filter to be applied to received packets"; leaf filter-name { description "Name of the filter"; type string; mandatory true; } presence "enable input"; leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf precedence { description "Precedence of the filter"; type uint32 { range "0 .. 255"; } } } } case case_2 { leaf-list input-list { description "List of filter modules applied to received packets "; type string; } } } choice output_choice { case case_1 { container output { description "Filter to be applied to transmitted packets"; leaf filter-name { description "Name of the filter"; type string; mandatory true; } presence "enable output"; leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf precedence { description "Precedence of the filter"; type uint32 { range "0 .. 255"; } } } } case case_2 { leaf-list output-list { description "List of filter modules applied to transmitted packets "; type string; } } } container adf { description "Ascend Data Filter definition"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Set of ADF rules"; leaf name { description "Value for a single rule"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf counter { description "Add a counter to each rule"; type empty; } leaf input-precedence { description "Precedence of the input rules"; type uint32 { range "0 .. 255"; } } leaf not-mandatory { description "No errors will be reported if no rules are present"; type empty; } leaf output-precedence { description "Precedence of the output rules"; type uint32 { range "0 .. 255"; } } } leaf group { description "Group to which interface belongs"; type uint32 { range "1 .. 255"; } } } container simple-filter { description "Filter for doing multifield classification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of simple filter applied to received packets"; type string; } } leaf input-hierarchical-policer { description "Hierarchical policer for received packets"; type string; } container policer { description "Interface policing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf arp { description "Name of policer applied to received ARP packets"; type string; } leaf input { description "Name of policer applied to received packets"; type string; } leaf output { description "Name of policer applied to transmitted packets"; type string; } } container sampling { description "Interface sampling"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Sample all packets input on this interface"; type empty; } leaf output { description "Sample all packets output on this interface"; type empty; } } container service { description "Service operations"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container input { description "Service sets to consider for received packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list service-set { key name; ordered-by user; description "Service set to consider for received packets"; leaf name { description "Name of service set"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf service-filter { description "Name of service filter"; type string; } } leaf post-service-filter { description "Post-service filter to apply to received packets"; type string; } } container output { description "Service sets to consider for transmitted packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list service-set { key name; ordered-by user; description "Service set to consider for transmitted packets"; leaf name { description "Name of service set"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf service-filter { description "Name of service filter"; type string; } } } } list next-hop-tunnel { key name; ordered-by user; description "One or more next-hop tunnel tables"; leaf name { description "Next-hop tunnel gateway address"; type string; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ipsec-vpn { description "Name of IPSec VPN"; type string; mandatory true; } } list address { key name; ordered-by user; description "Interface address/destination prefix"; leaf name { description "Interface address/destination prefix"; type ipv4prefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf destination { description "Destination address"; type ipv4addr; } leaf destination-profile { description "Profile to use for destination address"; type string; } leaf broadcast { description "Broadcast address"; type ipv4addr; } leaf primary { description "Candidate for primary address in system"; type empty; } leaf preferred { description "Preferred address on interface"; type empty; } leaf master-only { description "Master management IP address for router"; type empty; } list multipoint-destination { key name; ordered-by user; description "Multipoint NBMA destination"; leaf name { description "Destination address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice link-address { case case_1 { leaf dlci { description "Frame Relay data-link control identifier"; type uint32 { range "1 .. 1022"; } } } case case_2 { leaf vci { description "ATM virtual circuit identifier ([vpi.]vci)"; type atm-vci; } } } container shaping { description "Virtual circuit traffic-shaping options"; uses dcd_shaping_config; } container oam-period { description "OAM cell period"; choice oam_period_choices { case case_1 { leaf oam_period { description "OAM cell period"; units "seconds"; type uint32 { range "1 .. 900"; } } } case case_2 { container disable { presence "enable disable"; description "Disable OAM loopback"; } } } } container oam-liveness { description "OAM virtual circuit liveness parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf up-count { description "Number of OAM cells to consider VC up"; type uint32 { range "1 .. 255"; } } leaf down-count { description "Number of OAM cells to consider VC down"; type uint32 { range "1 .. 255"; } } } leaf inverse-arp { description "Enable inverse ARP reply messages"; type empty; } leaf transmit-weight { description "ATM2 transmit weight for VC under VP tunnel"; type uint16 { range "1 .. 32767"; } } container epd-threshold { description "Early packet discard threshold for ATM2"; uses epd_threshold_config; } } list arp { key name; ordered-by user; description "Static Address Resolution Protocol entries"; leaf name { description "Destination IP address"; type ipv4addr; mandatory true; } leaf l2-interface { description "Layer 2 interface name for ARP entry"; type interface-name; } choice mac_address_type { case case_1 { leaf mac { description "MAC address"; type mac-unicaset; } } case case_2 { leaf multicast-mac { description "Multicast MAC address"; type mac-multicast; } } } leaf publish { description "Reply to ARP requests for this entry"; type empty; } } container web-authentication { description "Parameters for web-based firewall-user authentication"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf http { description "Enable authentication via HTTP"; type empty; } } list vrrp-group { key name; ordered-by user; description "VRRP group"; uses vrrp-group; } leaf virtual-gateway-address { description "Virtual Gateway IP address"; type ipv4addr; } } container unnumbered-address { presence "enable unnumbered-address"; description "Unnumbered interface address/destination prefix"; leaf source { description "Interface from which to take local address"; type interface-unit; mandatory true; } leaf preferred-source-address { description "Preferred address on the donor interface"; type string; } leaf destination { description "Destination address"; type ipv4addr; } leaf destination-profile { description "Profile to use for destination address"; type string; } } container location-pool-address { presence "enable location-pool-address"; description "Location-based IP address pool"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf pool-name { description "Pool name"; type string { length "1 .. 64"; } } } leaf negotiate-address { description "Negotiate address with remote"; type empty; } } container iso { presence "enable iso"; description "OSI ISO protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list address { key name; ordered-by user; description "Interface address"; leaf name { description "Interface address"; type isoaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf mtu { description "Protocol family maximum transmission unit"; type uint32; } } container inet6 { presence "enable inet6"; description "IPv6 protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container rpf-check { presence "enable rpf-check"; description "Enable reverse-path-forwarding checks on this interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf fail-filter { description "Name of filter applied to packets failing RPF check"; type string; } container mode { description "Mode for reverse path forwarding"; leaf loose { description "Reverse-path-forwarding loose mode"; type empty; } } } container accounting { description "Interface-based accounting options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container source-class-usage { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Interface for source-class-usage input"; type empty; } leaf output { description "Interface for source-class-usage output"; type empty; } } leaf destination-class-usage { description "Enable destination class usage on this interface"; type empty; } } leaf mtu { description "Protocol family maximum transmission unit"; type uint32; } leaf tcp-mss { description "Protocol family tcp maximum segment size"; type uint32; } leaf nd6-stale-time { description "Stale time to reconfirm reachability with inet6 neighbour"; units "seconds"; type uint32 { range "1 .. 1200"; } } leaf no-neighbor-learn { description "Disable neighbor address learning on interface"; type empty; } leaf no-redirects { description "Do not redirect traffic"; type empty; } container filter { description "Packet filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice input_choice { case case_1 { container input { description "Filter to be applied to received packets"; leaf filter-name { description "Name of the filter"; type string; mandatory true; } presence "enable input"; leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf precedence { description "Precedence of the filter"; type uint32 { range "0 .. 255"; } } } } case case_2 { leaf-list input-list { description "List of filter modules applied to received packets "; type string; } } } choice output_choice { case case_1 { container output { description "Filter to be applied to transmitted packets"; leaf filter-name { description "Name of the filter"; type string; mandatory true; } presence "enable output"; leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf precedence { description "Precedence of the filter"; type uint32 { range "0 .. 255"; } } } } case case_2 { leaf-list output-list { description "List of filter modules applied to transmitted packets "; type string; } } } container adf { description "Ascend Data Filter definition"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Set of ADF rules"; leaf name { description "Value for a single rule"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf counter { description "Add a counter to each rule"; type empty; } leaf input-precedence { description "Precedence of the input rules"; type uint32 { range "0 .. 255"; } } leaf not-mandatory { description "No errors will be reported if no rules are present"; type empty; } leaf output-precedence { description "Precedence of the output rules"; type uint32 { range "0 .. 255"; } } } leaf group { description "Group to which interface belongs"; type uint32 { range "1 .. 255"; } } } leaf input-hierarchical-policer { description "Hierarchical policer for received packets"; type string; } container policer { description "Interface policing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of policer applied to received packets"; type string; } leaf output { description "Name of policer applied to transmitted packets"; type string; } } container sampling { description "Interface sampling"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Sample all packets input on this interface"; type empty; } leaf output { description "Sample all packets output on this interface"; type empty; } } container service { description "Service operations"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container input { description "Service sets to consider for received packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list service-set { key name; ordered-by user; description "Service set to consider for received packets"; leaf name { description "Name of service set"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf service-filter { description "Name of service filter"; type string; } } leaf post-service-filter { description "Post-service filter to apply to received packets"; type string; } } container output { description "Service sets to consider for transmitted packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list service-set { key name; ordered-by user; description "Service set to consider for transmitted packets"; leaf name { description "Name of service set"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf service-filter { description "Name of service filter"; type string; } } } } list address { key name; ordered-by user; description "Interface address or destination prefix"; leaf name { description "Interface address or destination prefix"; type ipv6prefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf destination { description "Destination address"; type ipv6addr; } leaf eui-64 { description "Generate EUI-64 interface ID"; type empty; } leaf primary { description "Candidate for primary address in system"; type empty; } leaf preferred { description "Preferred address on interface"; type empty; } leaf master-only { description "Master management IP address for router"; type empty; } list ndp { key name; ordered-by user; description "Static Neighbor Discovery Protocol entries"; leaf name { description "Destination IP address"; type ipv6addr; } leaf l2-interface { description "Layer 2 interface name for NDP entry"; type interface-name; } choice mac_address_type { case case_1 { leaf mac { description "MAC address"; type mac-unicaset; } } case case_2 { leaf multicast-mac { description "Multicast MAC address"; type mac-multicast; } } } leaf publish { description "Reply to NDP requests for this entry"; type empty; } } list vrrp-inet6-group { key name; ordered-by user; description "VRRP group"; uses vrrp-group; } container web-authentication { description "Parameters for web-based firewall-user authentication"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf http { description "Enable authentication via HTTP"; type empty; } } leaf virtual-gateway-address { description "Virtual Gateway IP address"; type ipv6addr; } } list demux-source { key name; ordered-by user; description "Demux based on source prefix"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list demux-destination { key name; ordered-by user; description "Demux based on destination prefix"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container unnumbered-address { presence "enable unnumbered-address"; description "Unnumbered interface address/destination prefix"; leaf source { description "Interface from which to take local address"; type interface-unit; mandatory true; } leaf preferred-source-address { description "Preferred address on the donor interface"; type string; } } leaf dad-disable { description "Disable duplicate-address-detection"; type empty; } leaf no-dad-disable { description "Disable duplicate-address-detection"; type empty; } } container mpls { presence "enable mpls"; description "MPLS protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf mtu { description "Protocol family maximum transmission unit"; type uint32; } leaf maximum-labels { description "Protocol family maximum number of labels"; default "3"; type uint32 { range "3 .. 5"; } } container filter { description "Packet filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice input_choice { case case_1 { leaf input { description "Name of filter applied to received packets"; type string; } } case case_2 { leaf-list input-list { description "List of filter modules applied to received packets "; type string; } } } choice output_choice { case case_1 { leaf output { description "Name of filter applied to transmitted packets"; type string; } } case case_2 { leaf-list output-list { description "List of filter modules applied to transmitted packets "; type string; } } } leaf group { description "Interface group to which interface belongs"; type uint32 { range "1 .. 255"; } } } leaf input-hierarchical-policer { description "Hierarchical policer for received packets"; type string; } container policer { description "Interface policing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of policer applied to received packets"; type string; } leaf output { description "Name of policer applied to transmitted packets"; type string; } } } container mlppp { presence "enable mlppp"; description "Multilink PPP protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bundle { description "Logical interface name this link will join"; type string; mandatory true; } choice anchor-points { case case_1 { leaf service-interface { description "Services interface to use"; type interface-device; } } case case_2 { leaf service-device-pool { description "Service interface pool name to use"; type string { length "1 .. 63"; } } } } leaf dynamic-profile { description " dynamic profile for interface to use"; type string { length "1 .. 80"; } } } container mlfr-end-to-end { presence "enable mlfr-end-to-end"; description "Multilink Frame Relay end-to-end protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bundle { description "Logical interface name this link will join"; type interface-unit; mandatory true; } } container mlfr-uni-nni { presence "enable mlfr-uni-nni"; description "Multilink Frame Relay UNI NNI protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bundle { description "Logical interface name this link will join"; type interface-unit; mandatory true; } } container ccc { presence "enable ccc"; description "Circuit cross-connect parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf mtu { description "Protocol family maximum transmission unit"; type uint32; } container filter { description "Packet filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice input_choice { case case_1 { leaf input { description "Name of filter applied to received packets"; type string; } } case case_2 { leaf-list input-list { description "List of filter modules applied to received packets "; type string; } } } choice output_choice { case case_1 { leaf output { description "Name of filter applied to transmitted packets"; type string; } } case case_2 { leaf-list output-list { description "List of filter modules applied to transmitted packets "; type string; } } } leaf group { description "Interface group to which interface belongs"; type uint32 { range "1 .. 255"; } } } container policer { description "Interface policing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of policer applied to received packets"; type string; } leaf output { description "Name of policer applied to transmitted packets"; type string; } } leaf translate-fecn-and-becn { description "Translate FECN and BECN bits"; type empty; } choice de-or-plp { case case_1 { leaf translate-discard-eligible { description "Translate DE bit"; type empty; } } case case_2 { leaf translate-plp-control-word-de { description "Translate PLP to/from Martini Control DE bit"; type empty; } } } leaf keep-address-and-control { description "Don't strip PPP address and control bytes"; type empty; } } container tcc { presence "enable tcc"; description "Translational cross-connect parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container policer { description "Interface policing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of policer applied to received packets"; type string; } leaf output { description "Name of policer applied to transmitted packets"; type string; } } container proxy { presence "enable proxy"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf inet-address { description "Remote host address on non-Ethernet side of Ethernet TCC"; type ipv4addr; } } container remote { presence "enable remote"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf inet-address { description "Remote host address on Ethernet side of Ethernet TCC"; type ipv4addr; } leaf mac-address { description "Remote host MAC address on Ethernet side of Ethernet TCC"; type mac-addr; } } leaf-list protocols { description "Protocols supported on TCC interface"; type enumeration { enum mpls { description "Multiprotocol Label Switching"; } enum inet { description "IP version 4"; } enum iso { description "International Organization for Standardization"; } } } } container vpls { presence "enable vpls"; description "Virtual private LAN service parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf core-facing { description "Interface is core facing"; type empty; } container filter { description "Packet filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice input_choice { case case_1 { container input { description "Filter to be applied to received packets"; leaf filter-name { description "Name of the filter"; type string; mandatory true; } presence "enable input"; leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf precedence { description "Precedence of the filter"; type uint32 { range "0 .. 255"; } } } } case case_2 { leaf-list input-list { description "List of filter modules applied to received packets "; type string; } } } choice output_choice { case case_1 { container output { description "Filter to be applied to transmitted packets"; leaf filter-name { description "Name of the filter"; type string; mandatory true; } presence "enable output"; leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf precedence { description "Precedence of the filter"; type uint32 { range "0 .. 255"; } } } } case case_2 { leaf-list output-list { description "List of filter modules applied to transmitted packets "; type string; } } } container adf { description "Ascend Data Filter definition"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Set of ADF rules"; leaf name { description "Value for a single rule"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf counter { description "Add a counter to each rule"; type empty; } leaf input-precedence { description "Precedence of the input rules"; type uint32 { range "0 .. 255"; } } leaf not-mandatory { description "No errors will be reported if no rules are present"; type empty; } leaf output-precedence { description "Precedence of the output rules"; type uint32 { range "0 .. 255"; } } } leaf group { description "Group to which interface belongs"; type uint32 { range "1 .. 255"; } } } container policer { description "Interface policing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of policer applied to received packets"; type string; } leaf output { description "Name of policer applied to transmitted packets"; type string; } } } container bridge { presence "enable bridge"; description "Layer-2 bridging parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf core-facing { description "Interface is core facing"; type empty; } container filter { description "Packet filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice input_choice { case case_1 { container input { description "Filter to be applied to received packets"; leaf filter-name { description "Name of the filter"; type string; mandatory true; } presence "enable input"; leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf precedence { description "Precedence of the filter"; type uint32 { range "0 .. 255"; } } } } case case_2 { leaf-list input-list { description "List of filter modules applied to received packets "; type string; } } } choice output_choice { case case_1 { container output { description "Filter to be applied to transmitted packets"; leaf filter-name { description "Name of the filter"; type string; mandatory true; } presence "enable output"; leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf precedence { description "Precedence of the filter"; type uint32 { range "0 .. 255"; } } } } case case_2 { leaf-list output-list { description "List of filter modules applied to transmitted packets "; type string; } } } container adf { description "Ascend Data Filter definition"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Set of ADF rules"; leaf name { description "Value for a single rule"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf counter { description "Add a counter to each rule"; type empty; } leaf input-precedence { description "Precedence of the input rules"; type uint32 { range "0 .. 255"; } } leaf not-mandatory { description "No errors will be reported if no rules are present"; type empty; } leaf output-precedence { description "Precedence of the output rules"; type uint32 { range "0 .. 255"; } } } leaf group { description "Group to which interface belongs"; type uint32 { range "1 .. 255"; } } } container policer { description "Interface policing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of policer applied to received packets"; type string; } leaf output { description "Name of policer applied to transmitted packets"; type string; } } leaf interface-mode { description "Interface mode (access or trunk)"; type enumeration { enum access { description "Interface mode is access"; } enum trunk { description "Interface mode is trunk"; } } } leaf bridge-domain-type { description "Bridge domain type (svlan or bvlan)"; type enumeration { enum svlan { description "Bridge domain type svlan"; } enum bvlan { description "Bridge domain type bvlan"; } } } leaf inter-switch-link { description "PVLAN inter switch link"; type empty; } choice vlan_list { case case_1 { leaf vlan-id { description "Access mode and trunk mode VLAN membership"; type uint32 { range "1 .. 4094"; } } } case case_2 { leaf-list vlan-id-list { description "Trunk mode VLAN membership for this interface"; type string; } } case case_3 { leaf-list inner-vlan-id-list { description "Trunk mode VLAN membership for this interface based on inner VLAN tag"; type string; } } } container vlan-rewrite { description "Specify vlan translation"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list translate { key name; ordered-by user; description "Translate incoming VLAN tag"; leaf name { description "Specify the incoming VLAN tag"; type uint32 { range "1 .. 4094"; } mandatory true; } leaf to-vlan-id { description "Specify the bridge-domain VLAN-ID"; type uint32 { range "1 .. 4094"; } mandatory true; } } } choice isid_list { case case_1 { leaf isid-list { description "Specify the ISID list"; type enumeration { enum all-service-groups { description "Map all ISIDs specified under the service-groups"; } enum all { description "Map all ISIDs"; } } } } } container storm-control { description "Storm control profile name to bind"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf profile-name { description "Profile name"; type string; mandatory true; } presence "enable storm-control"; } container recovery-timeout { description "Recovery timeout for this interface"; leaf time-in-seconds { description "(null)"; units "seconds"; type uint32 { range "10 .. 3600"; } } } } container ethernet-switching { description "Ethernet switching parameters"; uses ethernet-switching-type; } container fibre-channel { description "Fibre channel switching parameters"; uses fibre-channel-type; } container pppoe { description "PPP over Ethernet underlying interface-specific options"; uses pppoe_underlying_options_type; } container any { presence "enable any"; description "Parameters for 'any' family"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container filter { description "Layer 2 packet filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of filter applied to received packets"; type string { } } leaf group { description "Group to which interface belongs"; type uint32 { range "1 .. 255"; } } } } } leaf service-domain { description "Service domain to which interface belongs"; type enumeration { enum inside { description "Inside network"; } enum outside { description "Outside network"; } } } leaf copy-tos-to-outer-ip-header { description "Copy IP payload header's ToS field to GRE delivery header"; type empty; } container load-balancing-options { description "AMS subunit load balancing options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf preferred-active { description "Preferred active Interface name"; type interface-device; } container hash-keys { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list ingress-key { description "Hash Key for the ingress direction"; type enumeration { enum source-ip { description "Source Ip Address"; } enum destination-ip { description "Destination Ip Address"; } enum protocol { description "Protocol"; } enum iif { description "Incoming Interface"; } } } } } leaf mac { description "Configure logical interface MAC address"; type mac-unicaset; } leaf virtual-gateway-v4-mac { description "Configure virtual gateway IPV4 virtual MAC address"; type mac-unicaset; } leaf virtual-gateway-v6-mac { description "Configure virtual gateway IPV6 virtual MAC address"; type mac-unicaset; } container forwarding-options { description "Aggregated Ethernet interface forwarding-options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container load-balance-stateful { description "Stateful load balancing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf per-flow { description "Enable feature"; type empty; mandatory true; } presence "enable load-balance-stateful"; leaf rebalance { description "Rebalancing interval"; units "per minute"; type uint32 { range "1 .. 1000"; } } leaf load-type { description "Load - defines the flows"; type enumeration { enum high { description "If the no of flows on this aggregate is large(1000-10000 flows) "; } enum medium { description "If the no of flows on this aggregate is moderate(100-1000 flows)"; } enum low { description "If the no of flows on this aggregate is less(1-100)"; } } } } } } container no-partition { description "Use channelizable interface as clear channel"; leaf interface-type { description "Interface type"; type enumeration { enum e1 { description "E1 interface"; } enum t1 { description "T1 interface"; } enum at { description "ATM interface"; } enum t3 { description "T3 interface"; } enum e3 { description "E3 interface"; } enum ct3 { description "Channelized T3 interface"; } enum so { description "SONET interface"; } enum cau4 { description "CAU4 interface"; } } } } list partition { key name; ordered-by user; description "Channelized interface partition"; leaf name { description "Sublevel interface partition index (for example, 1, 3-4)"; type string; } leaf oc-slice { description "Range of SONET/SDH slices (for example, 1, 7-9)"; type string; } leaf timeslots { description "Timeslots [(1..24) for T1, (1..31) for E1]; for example, 1-3,4,9,22-24 (no spaces)"; type string; } leaf interface-type { description "Sublevel interface type"; type enumeration { enum ds { description "DS0 interface"; } enum e1 { description "E1 interface"; } enum t1 { description "T1 interface"; } enum at { description "ATM interface"; } enum ct1 { description "Channelized T1 interface"; } enum ce1 { description "Channelized E1 interface"; } enum t3 { description "T3 interface"; } enum ct3 { description "Channelized T3 interface"; } enum e3 { description "E3 interface"; } enum so { description "SONET interface"; } enum coc1 { description "Channelized OC1 interface"; } enum cau4 { description "Channelized AU4 interface"; } enum dc { description "D channel interface"; } enum bc { description "B channel interface"; } } mandatory true; } } container test-clocking { presence "enable test-clocking"; description "DDL-Test Interface clock source"; } leaf eaid-test-attr { description "(null)"; type string; } leaf eaid-default-test-attr { description "(null)"; default "defs"; type string; } leaf ia-test-so-only { description "(null)"; type string; } leaf ia-test-not-so-only { description "(null)"; type string; } leaf ia-test-ge-fe-only { description "(null)"; type string; } leaf ia-test-t3-channelized-only { description "(null)"; type string; } leaf ia-test-sonnet-options { description "(null)"; type string; } leaf ia-test-not-fe-ge { description "(null)"; type string; } } list interface { key name; description "(null)"; uses interfaces_type; } } container protocols { description "Routing protocol configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container igmp { presence "enable igmp"; description "IGMP options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for IGMP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum packets { description "Trace all IGMP packets"; } enum query { description "Trace IGMP membership query messages"; } enum report { description "Trace membership report messages"; } enum leave { description "Trace leave group messages (IGMPv2 only)"; } enum mtrace { description "Trace mtrace packets"; } enum group { description "Trace group operations"; } enum client-notification { description "Trace notifications"; } enum host-notification { description "Trace host notifications"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } leaf query-interval { description "When to send host query messages"; units "seconds"; type uint32 { range "1 .. 1024"; } } leaf query-response-interval { description "How long to wait for a host query response"; units "seconds"; type string { } } leaf query-last-member-interval { description "When to send group query messages"; units "seconds"; type string { } } leaf robust-count { description "Expected packet loss on a subnet"; type uint32 { range "2 .. 10"; } } leaf maximum-transmit-rate { description "Maximum transmission rate (packets per second)"; type uint32 { range "1 .. 10000"; } } leaf accounting { description "Enable join and leave event notification"; type empty; } list interface { key name; ordered-by user; description "Interface options for IGMP"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable IGMP on this interface"; type empty; } } } leaf version { description "Set IGMP version number on this interface"; type uint8 { range "1 .. 3"; } } container static { description "Static group or source membership"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "IP multicast group address"; leaf name { description "IP multicast group address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf group-increment { description "Mask for the incrementing group IP address"; type ipv4addr; } leaf group-count { description "Number of groups"; type uint32 { range "1 .. 512"; } } leaf exclude { description "Exclude sources"; type empty; } list source { key name; ordered-by user; description "IP multicast source address"; leaf name { description "Source address of IP multicast data"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-increment { description "Mask for the incrementing source IP address"; type ipv4addr; } leaf source-count { description "Number of sources"; type uint32 { range "1 .. 1024"; } } } } } leaf ssm-map { description "Map for SSM translation of IGMPv1 or IGMPv2 messages"; type string; } leaf-list ssm-map-policy { description "SSM map policy name"; type policy-algebra; } leaf immediate-leave { description "Group is removed immediately without sending query for last membership"; type empty; } leaf promiscuous-mode { description "Accept IGMP messages coming from different subnet"; type empty; } leaf accounting { description "Enable join and leave event notification"; type empty; } leaf no-accounting { description "Enable join and leave event notification"; type empty; } leaf-list group-policy { description "Group filter applied to incoming IGMP report messages"; type policy-algebra; } leaf group-limit { description "Maximum number of (source,group) per interface"; type uint16 { range "1 .. 32767"; } } leaf group-threshold { description "Percentage of limit at which to generate warnings"; type uint32 { range "1 .. 100"; } } leaf log-interval { description "Time between consecutive log messages"; type uint32 { range "6 .. 32767"; } } container passive { presence "enable passive"; description "Suppress sending and receiving IGMP messages"; leaf allow-receive { description "Allow receiving IGMP messages"; type empty; } leaf send-general-query { description "Send IGMP general query messages"; type empty; } leaf send-group-query { description "Send IGMP group query messages"; type empty; } } leaf-list oif-map { description "Output interface map"; type policy-algebra; } } container amt { description "Automatic Multicast Tunnel options for IGMP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container relay { description "AMT relay options for IGMP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container defaults { presence "enable defaults"; description "Default AMT relay options for IGMP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "Set IGMP version number on AMT interfaces"; type uint8 { range "1 .. 3"; } } leaf ssm-map { description "Map for SSM translation of IGMPv1 or IGMPv2 messages"; type string; } leaf-list ssm-map-policy { description "SSM map policy name"; type policy-algebra; } leaf accounting { description "Enable join and leave event notification"; type empty; } leaf no-accounting { description "Enable join and leave event notification"; type empty; } leaf-list group-policy { description "Group filter applied to incoming IGMP report messages"; type policy-algebra; } leaf group-limit { description "Maximum number of (source,group) per interface"; type uint16 { range "1 .. 32767"; } } leaf group-threshold { description "Percentage of limit at which to generate warnings"; type uint32 { range "1 .. 100"; } } leaf log-interval { description "Time between consecutive log messages"; type uint32 { range "6 .. 32767"; } } leaf robust-count { description "Expected packet loss on a subnet"; type uint32 { range "2 .. 10"; } } leaf query-interval { description "When to send host query messages"; units "seconds"; type uint32 { range "1 .. 1024"; } } leaf query-response-interval { description "How long to wait for a host query response"; units "seconds"; type string { } } } } } } container oam { description "Operation, Administration, and Management configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container ethernet { description "OAM configuration for Ethernet"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container link-fault-management { description "802.3ah Ethernet OAM configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for link-fault management"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum configuration { description "Trace configuration events"; } enum routing-socket { description "Trace routing socket events"; } enum protocol { description "Trace protocol processing events"; } enum action-profile { description "Trace action profile invocation events"; } enum all { description "Trace everything"; } } } } } list action-profile { key name; ordered-by user; description "Define an action profile"; leaf name { description "Name of action profile"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container event { description "Events this action profile will check"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf link-adjacency-loss { description "Loss of adjacency with OAM peer"; type empty; } leaf protocol-down { description "Upper layer indication on protocol down"; type empty; } container link-event-rate { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf symbol-period { description "Rate of receiving symbol period events"; units "error(s) per 100 symbol"; type int32 { range "1 .. 100"; } } leaf frame-error { description "Rate of receiving frame error events"; units "error(s) per 100 milli-second"; type int32 { range "1 .. 1000"; } } leaf frame-period { description "Rate of receiving frame period events"; units "error(s) per 100 frames"; type int32 { range "1 .. 100"; } } leaf frame-period-summary { description "Rate of receiving frame period summary events"; units "error(s) per second"; type int32 { range "1 .. 1000"; } } } } container action { description "Action to take on specified events"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf syslog { description "Generate syslog message"; type empty; } leaf link-down { description "Mark the interface down for transit traffic"; type empty; } leaf send-critical-event { description "Start sending OAM PDUs with critical event bit set"; type empty; } } } list interface { key name; ordered-by user; description "Interface on which to set Ethernet OAM parameters"; leaf name { description "Interface name"; type interface-device; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list apply-action-profile { description "Apply the specified action profile on the interface"; type string; } leaf pdu-interval { description "Periodic OAM protocol data unit interval"; default "1000"; units "milliseconds"; type int32 { range "100 .. 1000"; } } leaf loopback-tracking { description "Enable link down on loopback detection"; type empty; } leaf link-discovery { description "Mode of discovery"; default "active"; type enumeration { enum active { description "(null)"; } enum passive { description "(null)"; } } } leaf pdu-threshold { description "Number of PDUs missed before declaring peer lost"; default "3"; type int32 { range "3 .. 10"; } } leaf remote-loopback { description "Put remote DTE into remote-loopback mode"; type empty; } container negotiation-options { description "802.3ah features supported on the interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-allow-link-events { description "Do not emit periodic PDUs detailing framing and symbol errors"; type empty; } leaf allow-remote-loopback { description "Allow local port to be put into loopback mode"; type empty; } } container event-thresholds { description "Thresholds for sending 802.3ah events"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf symbol-period { description "Threshold for sending symbol period events"; default "1"; type int32 { range "1 .. 100"; } } leaf frame-error { description "Threshold for sending frame error events"; default "1"; type int32 { range "1 .. 100"; } } leaf frame-period { description "Threshold for sending frame period error events"; default "1"; type int32 { range "1 .. 100"; } } leaf frame-period-summary { description "Threshold for sending frame period summary error events"; default "1"; type int32 { range "1 .. 100"; } } } } } container connectivity-fault-management { description "Configurations related to 802.1ag ethernet oam"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container performance-monitoring { description "Configurations related to ethernet performance monitoring"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf hardware-assisted-timestamping { description "Enable timestamping feature in hardware"; type empty; } leaf delegate-server-processing { description "Delegate performance measurement request handling to PFE"; type empty; } leaf hardware-assisted-keepalives { description "Enable/Disable delegating keepalives to hardware"; type enumeration { enum enable { description "Enable delegate keepalives handling to Hardware"; } enum disable { description "Disable delegate keepalives handling to Hardware (default)"; } } } leaf enhanced-sla-iterator { description "Enable Enhanced SLA Iterator Cycle-time"; type empty; } leaf measurement-interval { description "Enables measurement-interval based PM (MEF 36 mode)"; units "minutes"; type enumeration { enum 2 { description "2 minutes measurement interval"; } enum 5 { description "5 minutes measurement interval"; } enum 15 { description "15 minutes measurement interval"; } enum 30 { description "30 minutes measurement interval"; } enum 60 { description "1 hour measurement interval"; } } } list sla-iterator-profiles { key name; ordered-by user; description "Configuration related to an sla monitoring iterator"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable the iterator profile"; type empty; } leaf measurement-type { description "Choice of the type of Y.1731(SLA measurement) frame to be sent"; type enumeration { enum two-way-delay { description "Y.1731 2-way DM frames are sent for this profile"; } enum loss { description "Y.1731 LM frames are sent for this profile"; } enum slm { description "Y.1731 SLM frames are sent for this profile"; } enum statistical-frame-loss { description "Y.1731 2-way DM frames for statistical frame loss are sent for this profile"; } } mandatory true; } leaf cycle-time { description "Time period of an iterator profile"; default "1000"; units "milliseconds"; type enumeration { enum 100 { description "Cycle Time 100ms"; } enum 1000 { description "Cycle Time 1s"; } enum 10000 { description "Cycle Time 10s"; } } } leaf iteration-period { description "Maximum services under this iterator profile"; default "2000"; units "connections"; type uint32 { range "1 .. 2000"; } } container calculation-weight { presence "enable calculation-weight"; description "Configure delay and delay variation calculation weight"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf delay { description "Weight used in delay calculation"; default "1"; type uint32 { range "1 .. 65535"; } } leaf delay-variation { description "Weight used in delay-variation calculation"; default "1"; type uint32 { range "1 .. 65535"; } } } leaf avg-flr-forward-threshold { description "Avg forward flr threshold value in mili-percent"; type uint32 { range "1 .. 100000"; } } leaf avg-flr-backward-threshold { description "Avg backward flr threshold value in mili-percent"; type uint32 { range "1 .. 100000"; } } leaf avg-fd-twoway-threshold { description "Avg frame delay threshold value"; units "microseconds"; type uint32 { range "1 .. 4294967295"; } } leaf avg-fdv-twoway-threshold { description "Avg frame delay variance threshold value"; units "microseconds"; type uint32 { range "1 .. 4294967295"; } } leaf measurement-interval { description "Measurement-interval to be used for this PM session (MEF 36 mode)"; units "minutes"; type enumeration { enum 2 { description "2 minutes measurement interval"; } enum 5 { description "5 minutes measurement interval"; } enum 15 { description "15 minutes measurement interval"; } enum 30 { description "30 minutes measurement interval"; } enum 60 { description "1 hour measurement interval"; } } } container frame-delay { description "Bin configuration for frame delay"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf num-bins { description "Max number of bins"; type uint32 { range "2 .. 5"; } mandatory true; } presence "enable frame-delay"; container two-way { presence "enable two-way"; description "Bin configuration for 2way frame delay"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list lower-threshold-bin { description "Lower threshold bin configuration in ascending order"; type uint32 { range "1 .. 4294967294"; } } } container forward { presence "enable forward"; description "Bin configuration for forward frame delay"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list lower-threshold-bin { description "Lower threshold bin configuration in ascending order"; type uint32 { range "1 .. 4294967294"; } } } container backward { presence "enable backward"; description "Bin configuration for backward frame delay"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list lower-threshold-bin { description "Lower threshold bin configuration in ascending order"; type uint32 { range "1 .. 4294967294"; } } } } container frame-delay-range { description "Bin configuration for frame delay range"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf num-bins { description "Max number of bins"; type uint32 { range "2 .. 5"; } mandatory true; } presence "enable frame-delay-range"; container two-way { presence "enable two-way"; description "Bin configuration for 2way frame delay range"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list lower-threshold-bin { description "Lower threshold bin configuration in ascending order"; type uint32 { range "1 .. 4294967294"; } } } container forward { presence "enable forward"; description "Bin configuration for forward frame delay range"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list lower-threshold-bin { description "Lower threshold bin configuration in ascending order"; type uint32 { range "1 .. 4294967294"; } } } container backward { presence "enable backward"; description "Bin configuration for backward frame delay range"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list lower-threshold-bin { description "Lower threshold bin configuration in ascending order"; type uint32 { range "1 .. 4294967294"; } } } } container ifdv { description "Bin configuration for IFDV"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf num-bins { description "Max number of bins"; type uint32 { range "2 .. 5"; } mandatory true; } presence "enable ifdv"; container two-way { presence "enable two-way"; description "Bin configuration for 2way IFDV"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list lower-threshold-bin { description "Lower threshold bin configuration in ascending order"; type uint32 { range "1 .. 4294967294"; } } } container forward { presence "enable forward"; description "Bin configuration for forward IFDV"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list lower-threshold-bin { description "Lower threshold bin configuration in ascending order"; type uint32 { range "1 .. 4294967294"; } } } container backward { presence "enable backward"; description "Bin configuration for backward IFDV"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list lower-threshold-bin { description "Lower threshold bin configuration in ascending order"; type uint32 { range "1 .. 4294967294"; } } } } container availability { description "Configuration of availabilty related parameters (MEF 36 mode)"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf num-consecutive-pdus { description "Number of consecutive LM/SLM PDUs to be used in availability measurement"; type uint32 { range "1 .. 100"; } } leaf flr-threshold { description "FLR threshold in milli-percent to be used for evaluating availability"; type uint32 { range "0 .. 100000"; } } leaf num-consecutive-intervals { description "Number of consecutive availability indicators to detect change in availability"; type uint32 { range "1 .. 10"; } } leaf num-consecutive-highflr { description "Number of consecutive availability indicators to access CHLI"; type uint32 { range "1 .. 9"; } } } } list interface { key name; ordered-by user; description "Name of interface for the performance monitoring"; leaf name { description "Interface name"; type interface-unit; } leaf enable-multiclass-loss-measurement { description "Disable multiclass loss measurement in hardware"; type empty; } leaf code-point-based-lm-accounting { description "Enable code point based loss measurement in hardware"; type empty; } leaf priority-based-lm-accounting { description "Enable priority based loss measurement in hardware"; type empty; } } leaf enable-multiclass-loss-measurement { description "Disable multiclass loss measurement in hardware"; type empty; } leaf code-point-based-lm-accounting { description "Enable code point based loss measurement in hardware"; type empty; } leaf priority-based-lm-accounting { description "Enable priority based loss measurement in hardware"; type empty; } leaf colorless-loss-measurement { description "Enable colorless loss measurement in hardware"; type empty; } } container connection-protection { description "Configurations related to Carrier Ethernet Transport Mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf mark-connection-protection-tlv { description "Enable marking of Connection Protection TLV"; type empty; } leaf uhp-label-lookup { description "Enable lookup for special UHP labels"; type empty; } } leaf no-aggregate-delegate-processing { description "Do not distribute aggregate session to pfe"; type empty; } container traceoptions { description "Trace options for connectivity fault management"; uses cfm-traceoptions; } list action-profile { key name; ordered-by user; description "Action profiles to use when one or more remote maintenance association endpoints are down"; leaf name { description "Name of action profile"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container event { description "Events that need to be monitored"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list interface-status-tlv { description "Values that need to be monitored in interface status TLV"; type enumeration { enum down { description "Interface is administratively down"; } enum lower-layer-down { description "Interface is physically down"; } } } leaf-list port-status-tlv { description "Values that need to be monitored in port status TLV"; type enumeration { enum blocked { description "Port is blocked"; } } } leaf adjacency-loss { description "Connectivity is lost"; type empty; } leaf rdi { description "RDI received from some MEP"; type empty; } leaf connection-protection-tlv { description "Values that need to be monitored in connection protection TLV"; type enumeration { enum using-working-path { description "Service traffic is using working path"; } enum using-protection-path { description "Service traffic is using protection path"; } } } leaf server-mep-defects { description "Defects which are monitored by Server MEP"; type enumeration { enum link-loss-defect { description "Detect link loss defects for the ethernet interface"; } enum l2circuit-defect { description "Detect l2circuit down defects"; } enum l2vpn-defect { description "Detect l2vpn down defects"; } } } leaf-list ais-trigger-condition { description "Defect condition that generates alarm indication signal"; type enumeration { enum all-defects { description "All defects"; } enum adjacency-loss { description "Loss of connectivity defects"; } enum cross-connect-ccm { description "Cross connect CCMs"; } enum erroneous-ccm { description "Erroneous CCMs"; } enum receive-ais { description "AIS message received"; } } } } container action { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interface-down { description "Mark the interface as down"; type empty; } leaf revertive-interface-down { description "Wait for CC loss-threshold to bring back the interface up"; type empty; } leaf non-revertive-interface-down { description "Interface will not be brought up when CC is received"; type empty; } leaf propagate-remote-mac-flush { description "Remote mac-flush"; type empty; } container log-and-generate-ais { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list level { description "Server maintenance domain levels range"; type uint32 { range "1 .. 7"; } } leaf interval { description "Interval between AIS messages"; default "1s"; type enumeration { enum 1s { description "(null)"; } enum 1m { description "(null)"; } } } leaf priority { description "802.1p priority of AIS packet"; default "0"; type uint32 { range "0 .. 7"; } } } } container clear-action { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container interface-down { description "Mark the interface as down"; leaf peer-interface { description "Mark the interface as down"; type empty; } } leaf propagate-remote-mac-flush { description "Remote mac flush"; type empty; } } container default-actions { description "Action that needs to be taken"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interface-down { description "Bring the interface down"; type empty; } } } list server-mep { key name; ordered-by user; description "Server MEP to use when generation of AIS is required to monitor different services"; leaf name { description "Identifier for Server MEP"; type uint16 { range "1 .. 8191"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container protocol { presence "enable protocol"; description "Protocol that needs to be monitored by Server MEP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice protocol { case case_1 { container l2circuit { presence "enable l2circuit"; description "Protocol that need to be monitored is l2circuit protocol"; container interface { presence "enable interface"; description "Interface which is participating in l2circuit service"; leaf interface-name { description "Interface name"; type interface-name; mandatory true; } } } } case case_2 { container l2vpn { presence "enable l2vpn"; description "Protocol that need to be monitored is l2vpn protocol"; container interface { presence "enable interface"; description "Interface which is participating in l2vpn service"; leaf interface-name { description "Interface name"; type interface-name; mandatory true; } } } } case case_3 { container ethernet { presence "enable ethernet"; description "Protocol that need to be monitored is physical ethernet service"; container interface { presence "enable interface"; description "Interface which is going to be monitored"; leaf interface-name { description "Interface name"; type interface-device; mandatory true; } } } } } } container action-profile { presence "enable action-profile"; description "Attached action profile for this Server MEP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf action-profile-name { description "Name of the action profile"; type string; mandatory true; } } } container policer { description "Rate limit Ethernet OAM packets for all sessions"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf continuity-check { description "Policer to rate limit Continuity Check Ethernet OAM messages"; type string; } leaf other { description "Policer to rate limit non Continuity Check Ethernet OAM messages"; type string; } leaf all { description "Policer to rate limit all Ethernet OAM messages"; type string; } } container linktrace { presence "enable linktrace"; description "Linktrace protocol global options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf path-database-size { description "Number of linktrace reply entries to be stored per linktrace request"; default "100"; type uint32 { range "1 .. 255"; } } leaf age { description "Time after which a stale request-response entry is deleted"; default "10m"; type enumeration { enum 10s { description "(null)"; } enum 30s { description "(null)"; } enum 1m { description "(null)"; } enum 10m { description "(null)"; } enum 30m { description "(null)"; } } } } list maintenance-domain { key name; ordered-by user; description "Maintenance domain configuration"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list bridge-domain { key name; ordered-by user; description "Bridge-domain information for the default maintenance domain"; leaf name { description "Bridge domain name"; type string; } leaf-list vlan-id { description "VLAN id"; type string; } } list vlan { key name; ordered-by user; description "VLAN information for the default maintenance domain"; leaf name { description "VLAN name"; type string; } } list virtual-switch { key name; ordered-by user; description "Virtual switch Bridge-domain information for the default maintenance domain"; leaf name { description "Routing instance of type virtual switch"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list bridge-domain { key name; ordered-by user; description "(null)"; leaf name { description "Bridge domain name"; type string; } leaf-list vlan-id { description "VLAN id"; type string; } } } list instance { key name; ordered-by user; description "VPLS instance name for the default maintenance domain"; leaf name { description "VPLS routing instance name"; type string; } } list interface { key name; ordered-by user; description "Name of interface for the default maintenance domain"; leaf name { description "Interface name"; type interface-unit; } } leaf level { description "Level value for maintenance domain"; type uint8 { range "0 .. 7"; } } leaf name-format { description "Format of maintenance domain name"; type enumeration { enum none { description "No format specified"; } enum dns { description "Character string similar to Domain Name System name"; } enum mac+2oct { description "MAC address with 2 octet integer (xx:xx:xx:xx:xx:xx.Y format)"; } enum character-string { description "Character string"; } } } leaf mip-half-function { description "Half function to be implemented by MIP"; default "none"; type enumeration { enum none { description "No MHFs should be created"; } enum default { description "Create MHF as per IEEE 802.1ag specifications for defMHFDefault"; } enum explicit { description "Create MHF as per IEEE 802.1ag specifications for defMHFExplicit"; } } } list maintenance-association { key name; ordered-by user; description "Maintenance association configuration"; leaf name { description "Name of maintenance association in IEEE compliant format"; type string { length "1 .. 45"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf debug-session { description "Debug the CFM session"; type empty; } leaf short-name-format { description "Format of Maintenance Association Name"; type enumeration { enum 2octet { description "An integer in the range 0..65535"; } enum rfc-2685-vpn-id { description "VPN identifier that complies with RFC 2685"; } enum vlan { description "Primary VLAN identifier"; } enum character-string { description "Character string"; } enum icc { description "ITU Carrier Code"; } } } container protect-maintenance-association { description "Maintenance association used for connection protection"; leaf ma-name { description "Name of the protect maintenance association"; type string { length "1 .. 45"; } mandatory true; } presence "enable protect-maintenance-association"; leaf aps-profile { description "Name of the automatic-protection-switching profile"; type string; } leaf detect-path-type { description "Enable detection of working and protect paths"; type empty; } } leaf primary-vid { description "VLAN id"; type string; } container continuity-check { presence "enable continuity-check"; description "Continuity check configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interval { description "Interval between continuity-check messages"; default "1m"; type enumeration { enum 10ms { description "(null)"; } enum 100ms { description "(null)"; } enum 1s { description "(null)"; } enum 10s { description "(null)"; } enum 1m { description "(null)"; } enum 10m { description "(null)"; } } } leaf loss-threshold { description "Number of continuity-check messages lost before marking endpoint as down"; default "3"; type uint32 { range "3 .. 256"; } } leaf hold-interval { description "Time before flushing MEP database if no updates occur"; default "10"; units "minutes"; type uint32 { range "1 .. 256"; } } leaf port-status-tlv { description "Include port status TLV in CCM"; type empty; } leaf interface-status-tlv { description "Include interface status TLV in CCM"; type empty; } leaf connection-protection-tlv { description "Include connection protection OUI TLV in CCM"; type empty; } leaf convey-loss-threshold { description "Include Loss Threshold OUI TLV in CCM"; type empty; } } leaf mip-half-function { description "Half function to be implemented by MIP"; default "defer"; type enumeration { enum none { description "No MHFs should be created"; } enum default { description "Create MHF as per IEEE 802.1ag specifications for defMHFDefault"; } enum explicit { description "Create MHF as per IEEE 802.1ag specifications for defMHFExplicit"; } enum defer { description "Create MHF as per IEEE 802.1ag specifications for defMHFDefer"; } } } list mep { key name; ordered-by user; description "Maintenance association endpoint configuration"; max-elements 1; leaf name { description "Identifier for maintenance association endpoint"; type uint16 { range "1 .. 8191"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container interface { presence "enable interface"; description "Name of interface"; leaf interface-name { description "(null)"; type interface-unit; mandatory true; } leaf vlan { description "Trunk port interface VLAN identifier"; type uint32 { range "1 .. 4094"; } } choice connection-type { case case_1 { leaf working { description "Monitory the primary path"; type empty; } } case case_2 { leaf protect { description "Monitory the protect path"; type empty; } } } } leaf direction { description "Direction of maintenance endpoint"; default "down"; type enumeration { enum up { description "(null)"; } enum down { description "(null)"; } } } leaf priority { description "802.1p priority of continuity-check and link-trace packet"; default "0"; type uint32 { range "0 .. 7"; } } leaf auto-discovery { description "Accept continuity-check messages from all remote MEPs"; type empty; } leaf action-profile { description "Name of the action profile"; type string; } list remote-mep { key name; ordered-by user; description "Remote maintenance association endpoint configuration"; leaf name { description "Identifier for remote maintenance association endpoint"; type uint16 { range "1 .. 8191"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf action-profile { description "Name of the action profile"; type string; } list sla-iterator-profile { key name; ordered-by user; description "Name of the iterator profile"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf iteration-count { description "Iterations to partake for acquiring SLA measurements"; units "frames"; type uint32 { range "1 .. 65535"; } } leaf priority { description "The vlan pcp value to be sent in the Y.1731 frame"; type uint32 { range "0 .. 7"; } } leaf data-tlv-size { description "Size of the data-tlv portion of Y.1731 frame"; units "bytes"; type uint32 { range "1 .. 1400"; } } } leaf detect-loc { description "Detects initial loss of connectivity with remote mep"; type empty; } } leaf lowest-priority-defect { description "Lowest priority defect that is allowed to generate a fault alarm"; type enumeration { enum all-defects { description "Allows all defects"; } enum mac-rem-err-xcon { description "Allows only MAC, not receiving CCM, erroneous CCM and cross connect defects"; } enum rem-err-xcon { description "Allows only not receiving CCM, erroneous CCM and cross connect CCM defects"; } enum err-xcon { description "Allows only erroneous CCM and cross connect CCM defects"; } enum xcon { description "Allows only cross connect CCM defect"; } enum no-defect { description "Allows no defect"; } } } } container policer { description "Rate limit Ethernet OAM packets for this session"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf continuity-check { description "Policer to rate limit Continuity Check Ethernet OAM messages"; type string; } leaf other { description "Policer to rate limit non Continuity Check Ethernet OAM messages"; type string; } leaf all { description "Policer to rate limit all Ethernet OAM messages"; type string; } } } } } list evcs { key name; description "Ethernet virtual circuits configuration"; leaf name { description "EVC id"; type string { length "1 .. 100"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container evc-protocol { description "Signaling protocol to monitor EVC status"; choice protocol { case case_1 { container cfm { presence "enable cfm"; description "Connectivity fault management"; leaf maintenance-domain { description "Maintenance domain name"; type string; mandatory true; } leaf maintenance-association { description "Maintenance association name"; type string; mandatory true; } container faults { description "CFM faults to trigger ELMI"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf rdi { description "RDI received from some MEP"; type empty; } } } } case case_2 { container vpls { presence "enable vpls"; description "Virtual private LAN service (BGP/LDP)"; leaf routing-instance { description "Routing instance name"; type string; mandatory true; } } } case case_3 { container l2circuit { description "L2circuit"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container interface { description "Name of interface forming the Layer 2 circuit"; leaf interface-name { description "(null)"; type interface-name; mandatory true; } presence "enable interface"; } } } case case_4 { container l2vpn { description "L2vpn"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container interface { description "Name of interface forming the Layer 2 VPN"; leaf interface-name { description "(null)"; type interface-name; mandatory true; } presence "enable interface"; } } } } } leaf remote-uni-count { description "Number of remote UNIs in the EVC"; default "1"; type uint8 { range "1 .. 255"; } } leaf async-status-msg-transmit-interval { description "Time interval between E-LMI async status messages per EVC"; default "10"; units "milliseconds"; type int32 { range "1 .. 10000"; } } leaf multipoint-to-multipoint { description "Multipoint to Multipoint EVC"; type empty; } } container lmi { presence "enable lmi"; description "Ethernet local management interface configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for ethernet local management interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum configuration { description "Trace configuration events"; } enum routing-socket { description "Trace routing socket events"; } enum protocol { description "Trace protocol processing events"; } enum init { description "Trace events related to protocol daemon start-up"; } enum error { description "Trace events related to catestrophic errors in daemon"; } enum packet { description "Trace events related to packet flow"; } enum all { description "Trace everything"; } } } } } leaf status-counter { description "E-LMI status counter (N393)"; default "4"; type uint8 { range "2 .. 10"; } } leaf polling-verification-timer { description "Polling verification timer (T392)"; default "15"; units "seconds"; type uint8 { range "5 .. 30"; } } list interface { key name; description "Interface options"; leaf name { description "(null)"; type interface-device; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf uni-id { description "UNI identifier"; type string { length "1 .. 64"; } } leaf status-counter { description "E-LMI status counter (N393)"; default "4"; type uint8 { range "2 .. 10"; } } leaf polling-verification-timer { description "Polling verification timer (T392)"; default "15"; units "seconds"; type uint8 { range "5 .. 30"; } } leaf evc-map-type { description "CE-VLAN ID/EVC map type"; default "bundling"; type enumeration { enum all-to-one-bundling { description "All to one bundling"; } enum service-multiplexing { description "Service multiplexing with no bundling"; } enum bundling { description "Bundling with service multiplexing"; } } } list evc { key name; description "EVC configuration"; leaf name { description "EVC identifier"; type string { length "1 .. 100"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default-evc { description "Default EVC"; type empty; } leaf-list vlan-list { description "Vlans mapped to this EVC"; type vlan-range; } } } } container fnp { presence "enable fnp"; description "Failure notification protocol configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Tracing options for FNP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum events { description "Trace protocol events"; } enum pdu { description "Trace PDU reception and transmission"; } enum timers { description "Trace protocol timers"; } enum error { description "Trace all failure conditions"; } enum all { description "Trace all"; } } } } } leaf interval { description "Interval between FNP messages"; default "1s"; type enumeration { enum 100ms { description "(null)"; } enum 1s { description "(null)"; } enum 10s { description "(null)"; } enum 1m { description "(null)"; } enum 10m { description "(null)"; } } } leaf loss-threshold { description "Number of FNP messages lost before clearing FNP state"; default "4"; type uint8 { range "3 .. 255"; } } list interface { key name; ordered-by user; description "Interface configuration"; leaf name { description "(null)"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf domain-id { description "Ethernet domain identifier"; default "0"; type uint32; } } } } container gre-tunnel { presence "enable gre-tunnel"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for GRE keepalives"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum configuration { description "Trace configuration events"; } enum routing-socket { description "Trace routing socket events"; } enum protocol { description "Trace protocol processing events"; } enum all { description "Trace everything"; } } } } } list interface { key name; ordered-by user; description "(null)"; leaf name { description "Interface name"; type interface-unit; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf keepalive-time { description "Keepalive time"; default "1"; units "seconds"; type int32 { range "1 .. 50"; } } leaf hold-time { description "Hold time"; default "5"; units "seconds"; type int32 { range "5 .. 250"; } } } } } container mld { presence "enable mld"; description "MLD options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for MLD"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum packets { description "Trace all MLD packets"; } enum query { description "Trace MLD membership query messages"; } enum report { description "Trace membership report messages"; } enum leave { description "Trace leave group messages (MLDv2 only)"; } enum mtrace { description "Trace mtrace packets"; } enum group { description "Trace group operations"; } enum client-notification { description "Trace notifications"; } enum host-notification { description "Trace host notifications"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } leaf query-interval { description "When to send host query messages"; units "seconds"; type uint32 { range "1 .. 1024"; } } leaf query-response-interval { description "How long to wait for a host query response"; units "seconds"; type string { } } leaf query-last-member-interval { description "When to send group query messages"; units "seconds"; type string { } } leaf robust-count { description "Expected packet loss on a subnet"; type uint32 { range "2 .. 10"; } } leaf maximum-transmit-rate { description "Maximum transmission rate (packets per second)"; type uint32 { range "1 .. 10000"; } } leaf accounting { description "Enable join and leave event notification"; type empty; } list interface { key name; ordered-by user; description "Interface options for MLD"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable MLD on this interface"; type empty; } } } leaf version { description "Set MLD version number on this interface"; type uint8 { range "1 .. 2"; } } container static { description "Static group or source membership"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "IP multicast group address"; leaf name { description "IP multicast group address"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf group-increment { description "Mask for the incrementing group IP address"; type ipv6addr; } leaf group-count { description "Number of groups"; type uint32 { range "1 .. 512"; } } leaf exclude { description "Exclude sources"; type empty; } list source { key name; ordered-by user; description "IP multicast source address"; leaf name { description "Source address of IP multicast data"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-increment { description "Mask for the incrementing source IP address"; type ipv6addr; } leaf source-count { description "Number of sources"; type uint32 { range "1 .. 1024"; } } } } } leaf ssm-map { description "Map for SSM translation of MLDv1 messages"; type string; } leaf-list ssm-map-policy { description "SSM map policy name"; type policy-algebra; } leaf immediate-leave { description "Group is removed immediately without sending query for last membership"; type empty; } leaf-list group-policy { description "Group filter applied to incoming MLD report messages"; type policy-algebra; } leaf group-limit { description "Maximum number of (source,group) per interface"; type uint16 { range "1 .. 32767"; } } leaf group-threshold { description "Percentage of group-limit at which to start generating warnings"; type uint16 { range "1 .. 100"; } } leaf log-interval { description "Time between consecutive log messages"; type uint32 { range "6 .. 32767"; } } leaf accounting { description "Enable join and leave event notification"; type empty; } leaf no-accounting { description "Enable join and leave event notification"; type empty; } container passive { presence "enable passive"; description "Suppress sending and receiving MLD messages"; leaf allow-receive { description "Allow receiving MLD messages"; type empty; } leaf send-general-query { description "Send MLD general query messages"; type empty; } leaf send-group-query { description "Send MLD group query messages"; type empty; } } leaf-list oif-map { description "Output interface map"; type policy-algebra; } } } container router-advertisement { description "IPv6 router advertisement options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for router advertisement"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } } } list interface { key name; ordered-by user; description "Interfaces on which to configure router advertisement"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf max-advertisement-interval { description "Maximum advertisement interval"; units "seconds"; type uint32 { range "4 .. 1800"; } } leaf min-advertisement-interval { description "Minimum advertisement interval"; units "seconds"; type uint32 { range "3 .. 1350"; } } leaf managed-configuration { description "Set managed address configuration"; type empty; } leaf no-managed-configuration { description "Set managed address configuration"; type empty; } leaf other-stateful-configuration { description "Set other stateful configuration"; type empty; } leaf no-other-stateful-configuration { description "Set other stateful configuration"; type empty; } leaf link-mtu { description "Link MTU"; type empty; } leaf no-link-mtu { description "Link MTU"; type empty; } leaf solicit-router-advertisement-unicast { description "Enbale solicited router advertisement as unicast"; type empty; } leaf reachable-time { description "Reachable time"; units "milliseconds"; type uint32 { range "0 .. 3600000"; } } leaf retransmit-timer { description "Retransmit timer"; units "milliseconds"; type uint32 { range "0 .. 4294967295"; } } leaf virtual-router-only { description "Send advertisemnets only for vrrp-inet6-group"; type empty; } leaf current-hop-limit { description "Current hop limit"; type uint32 { range "0 .. 255"; } } leaf default-lifetime { description "Router lifetime"; units "seconds"; type uint32 { range "0 .. 9000"; } } list dns-server-address { key name; ordered-by user; description "Recursive DNS address configuration"; max-elements 3; leaf name { description "DNS address to be advertised"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf lifetime { description "DNS address lifetime"; default "1800"; units "seconds"; type uint32 { range "0 .. 4294967295"; } } } list prefix { key name; ordered-by user; description "Prefix configuration"; leaf name { description "Prefix to be advertised"; type ipv6prefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf valid-lifetime { description "Valid lifetime (fixed)"; units "seconds"; type uint32 { range "0 .. 4294967295"; } } leaf on-link { description "Set on-link flag"; type empty; } leaf no-on-link { description "Set on-link flag"; type empty; } leaf preferred-lifetime { description "Preferred lifetime (fixed)"; units "seconds"; type uint32 { range "0 .. 4294967295"; } } leaf autonomous { description "Set autonomous flag"; type empty; } leaf no-autonomous { description "Set autonomous flag"; type empty; } } } } } container class-of-service { description "Class-of-service configuration"; uses juniper-class-of-service-options; } container routing-options { description "Protocol-independent routing option configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rib { key name; ordered-by user; description "Routing table options"; leaf name { description "Routing table name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container static { description "Static routes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf rib-group { description "Routing table group"; type string; } container defaults { description "Global route options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf retain { description "Always keep route in forwarding table"; type empty; } leaf no-retain { description "Always keep route in forwarding table"; type empty; } leaf install { description "Install route into forwarding table"; type empty; } leaf no-install { description "Install route into forwarding table"; type empty; } leaf readvertise { description "Mark route as eligible to be readvertised"; type empty; } leaf no-readvertise { description "Mark route as eligible to be readvertised"; type empty; } leaf resolve { description "Allow resolution of indirectly connected next hops"; type empty; } leaf no-resolve { description "Allow resolution of indirectly connected next hops"; type empty; } leaf longest-match { description "Always use longest prefix match to resolve next hops"; type empty; } leaf no-longest-match { description "Always use longest prefix match to resolve next hops"; type empty; } choice passive_flag { case case_1 { leaf active { description "Remove inactive route from forwarding table"; type empty; } } case case_2 { leaf passive { description "Retain inactive route in forwarding table"; type empty; } } } container metric { description "Metric value"; uses rib_static_metric_type; } container metric2 { description "Metric value 2"; uses rib_static_metric_type; } container metric3 { description "Metric value 3"; uses rib_static_metric_type; } container metric4 { description "Metric value 4"; uses rib_static_metric_type; } container tag { description "Tag string"; uses rib_static_metric_type; } container tag2 { description "Tag string 2"; uses rib_static_metric_type; } container preference { description "Preference value"; uses rib_static_metric_type; } container preference2 { description "Preference value 2"; uses rib_static_metric_type; } container color { description "Color (preference) value"; uses rib_static_metric_type; } container color2 { description "Color (preference) value 2"; uses rib_static_metric_type; } leaf-list community { description "BGP community identifier"; type community; } container as-path { description "Autonomous system path"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf path { description "Autonomous system path"; type string; } leaf origin { description "(null)"; type enumeration { enum igp { description "Path originated in the local IGP"; } enum egp { description "Path originated in another AS"; } enum incomplete { description "Path was learned by some other means"; } } } leaf atomic-aggregate { description "Add ATOMIC_AGGREGATE path attribute to route"; type empty; } container aggregator { presence "enable aggregator"; description "Add AGGREGATOR path attribute to route"; } leaf as-number { description " Autonomous system number in plain number or 'higher 16bits'.'Lower 16 bits' (asdot notation) format"; type string { } } leaf address { description "Address of BGP system that formed the route"; type ipv4addr; } } } list route { key name; ordered-by user; description "Static route"; leaf name { description "(null)"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice next_hop { case case_1 { leaf-list next-hop { description "Next hop to destination"; type ipaddr-or-interface; } } case case_2 { leaf reject { description "Drop packets to destination; send ICMP unreachables"; type empty; } } case case_3 { leaf discard { description "Drop packets to destination; send no ICMP unreachables"; type empty; } } case case_4 { leaf receive { description "Install a receive route for the destination"; type empty; } } case case_5 { leaf next-table { description "Next hop to another table"; type string; } } } list qualified-next-hop { key name; ordered-by user; description "Next hop with qualifiers"; uses qualified_nh_obj; } list lsp-next-hop { key name; ordered-by user; description "LSP next hop"; uses lsp_nh_obj; } list static-lsp-next-hop { key name; ordered-by user; description "Static LSP next hop"; uses lsp_nh_obj; } list p2mp-lsp-next-hop { key name; ordered-by user; description "Point-to-multipoint LSP next hop"; max-elements 1; uses lsp_nh_obj; } leaf backup-pe-group { description "Multicast source redundancy group"; type string; } container bfd-liveness-detection { description "Bidirectional Forwarding Detection (BFD) options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } container authentication { description "Authentication options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf key-chain { description "Key chain name"; type string; } leaf algorithm { description "Algorithm name"; type enumeration { enum simple-password { description "Simple password"; } enum keyed-md5 { description "Keyed message Digest 5"; } enum meticulous-keyed-md5 { description "Meticulous keyed message Digest 5"; } enum keyed-sha-1 { description "Keyed secure hash algorithm (SHA1) "; } enum meticulous-keyed-sha-1 { description "Meticulous keyed secure hash algorithm (SHA1) "; } } } leaf loose-check { description "Verify authentication only if authentication is negotiated"; type empty; } } leaf neighbor { description "BFD neighbor address"; type ipaddr; } leaf local-address { description "BFD local address (for multihop only)"; type ipaddr; } leaf holddown-interval { description "Time to hold the session-UP notification to the client"; units "milliseconds"; type uint32 { range "0 .. 255000"; } } leaf minimum-receive-ttl { description "Minimum receive TTL below which to drop"; type uint8 { range "1 .. 255"; } } } leaf retain { description "Always keep route in forwarding table"; type empty; } leaf no-retain { description "Always keep route in forwarding table"; type empty; } leaf install { description "Install route into forwarding table"; type empty; } leaf no-install { description "Install route into forwarding table"; type empty; } leaf readvertise { description "Mark route as eligible to be readvertised"; type empty; } leaf no-readvertise { description "Mark route as eligible to be readvertised"; type empty; } leaf resolve { description "Allow resolution of indirectly connected next hops"; type empty; } leaf no-resolve { description "Allow resolution of indirectly connected next hops"; type empty; } leaf longest-match { description "Always use longest prefix match to resolve next hops"; type empty; } leaf no-longest-match { description "Always use longest prefix match to resolve next hops"; type empty; } choice passive_flag { case case_1 { leaf active { description "Remove inactive route from forwarding table"; type empty; } } case case_2 { leaf passive { description "Retain inactive route in forwarding table"; type empty; } } } container metric { description "Metric value"; uses rib_static_metric_type; } container metric2 { description "Metric value 2"; uses rib_static_metric_type; } container metric3 { description "Metric value 3"; uses rib_static_metric_type; } container metric4 { description "Metric value 4"; uses rib_static_metric_type; } container tag { description "Tag string"; uses rib_static_metric_type; } container tag2 { description "Tag string 2"; uses rib_static_metric_type; } container preference { description "Preference value"; uses rib_static_metric_type; } container preference2 { description "Preference value 2"; uses rib_static_metric_type; } container color { description "Color (preference) value"; uses rib_static_metric_type; } container color2 { description "Color (preference) value 2"; uses rib_static_metric_type; } leaf-list community { description "BGP community identifier"; type community; } container as-path { description "Autonomous system path"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf path { description "Autonomous system path"; type string; } leaf origin { description "(null)"; type enumeration { enum igp { description "Path originated in the local IGP"; } enum egp { description "Path originated in another AS"; } enum incomplete { description "Path was learned by some other means"; } } } leaf atomic-aggregate { description "Add ATOMIC_AGGREGATE path attribute to route"; type empty; } container aggregator { presence "enable aggregator"; description "Add AGGREGATOR path attribute to route"; } leaf as-number { description " Autonomous system number in plain number or 'higher 16bits'.'Lower 16 bits' (asdot notation) format"; type string { } } leaf address { description "Address of BGP system that formed the route"; type ipv4addr; } } } list iso-route { key name; ordered-by user; description "ISO family static route"; leaf name { description "(null)"; type isoprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice next_hop { case case_1 { leaf-list next-hop { description "Next hop to destination"; type ipaddr-or-interface; } } case case_2 { leaf reject { description "Drop packets to destination; send ICMP unreachables"; type empty; } } case case_3 { leaf discard { description "Drop packets to destination; send no ICMP unreachables"; type empty; } } case case_4 { leaf receive { description "Install a receive route for the destination"; type empty; } } case case_5 { leaf next-table { description "Next hop to another table"; type string; } } } list qualified-next-hop { key name; ordered-by user; description "Next hop with qualifiers"; uses qualified_nh_obj; } list lsp-next-hop { key name; ordered-by user; description "LSP next hop"; uses lsp_nh_obj; } list static-lsp-next-hop { key name; ordered-by user; description "Static LSP next hop"; uses lsp_nh_obj; } list p2mp-lsp-next-hop { key name; ordered-by user; description "Point-to-multipoint LSP next hop"; max-elements 1; uses lsp_nh_obj; } leaf backup-pe-group { description "Multicast source redundancy group"; type string; } container bfd-liveness-detection { description "Bidirectional Forwarding Detection (BFD) options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } container authentication { description "Authentication options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf key-chain { description "Key chain name"; type string; } leaf algorithm { description "Algorithm name"; type enumeration { enum simple-password { description "Simple password"; } enum keyed-md5 { description "Keyed message Digest 5"; } enum meticulous-keyed-md5 { description "Meticulous keyed message Digest 5"; } enum keyed-sha-1 { description "Keyed secure hash algorithm (SHA1) "; } enum meticulous-keyed-sha-1 { description "Meticulous keyed secure hash algorithm (SHA1) "; } } } leaf loose-check { description "Verify authentication only if authentication is negotiated"; type empty; } } leaf neighbor { description "BFD neighbor address"; type ipaddr; } leaf local-address { description "BFD local address (for multihop only)"; type ipaddr; } leaf holddown-interval { description "Time to hold the session-UP notification to the client"; units "milliseconds"; type uint32 { range "0 .. 255000"; } } leaf minimum-receive-ttl { description "Minimum receive TTL below which to drop"; type uint8 { range "1 .. 255"; } } } leaf retain { description "Always keep route in forwarding table"; type empty; } leaf no-retain { description "Always keep route in forwarding table"; type empty; } leaf install { description "Install route into forwarding table"; type empty; } leaf no-install { description "Install route into forwarding table"; type empty; } leaf readvertise { description "Mark route as eligible to be readvertised"; type empty; } leaf no-readvertise { description "Mark route as eligible to be readvertised"; type empty; } leaf resolve { description "Allow resolution of indirectly connected next hops"; type empty; } leaf no-resolve { description "Allow resolution of indirectly connected next hops"; type empty; } leaf longest-match { description "Always use longest prefix match to resolve next hops"; type empty; } leaf no-longest-match { description "Always use longest prefix match to resolve next hops"; type empty; } choice passive_flag { case case_1 { leaf active { description "Remove inactive route from forwarding table"; type empty; } } case case_2 { leaf passive { description "Retain inactive route in forwarding table"; type empty; } } } container metric { description "Metric value"; uses rib_static_metric_type; } container metric2 { description "Metric value 2"; uses rib_static_metric_type; } container metric3 { description "Metric value 3"; uses rib_static_metric_type; } container metric4 { description "Metric value 4"; uses rib_static_metric_type; } container tag { description "Tag string"; uses rib_static_metric_type; } container tag2 { description "Tag string 2"; uses rib_static_metric_type; } container preference { description "Preference value"; uses rib_static_metric_type; } container preference2 { description "Preference value 2"; uses rib_static_metric_type; } container color { description "Color (preference) value"; uses rib_static_metric_type; } container color2 { description "Color (preference) value 2"; uses rib_static_metric_type; } leaf-list community { description "BGP community identifier"; type community; } container as-path { description "Autonomous system path"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf path { description "Autonomous system path"; type string; } leaf origin { description "(null)"; type enumeration { enum igp { description "Path originated in the local IGP"; } enum egp { description "Path originated in another AS"; } enum incomplete { description "Path was learned by some other means"; } } } leaf atomic-aggregate { description "Add ATOMIC_AGGREGATE path attribute to route"; type empty; } container aggregator { presence "enable aggregator"; description "Add AGGREGATOR path attribute to route"; } leaf as-number { description " Autonomous system number in plain number or 'higher 16bits'.'Lower 16 bits' (asdot notation) format"; type string { } } leaf address { description "Address of BGP system that formed the route"; type ipv4addr; } } } list route-target-filter { key name; ordered-by user; description "Route-target-filter route"; leaf name { description "(null)"; type string { length "1 .. 47"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list neighbor { description "BGP peers for filter"; type ipaddr; } leaf-list group { description "BGP groups for filter"; type string; } leaf local { description "Locally originated filter"; type empty; } } } list martians { key address; ordered-by user; description "Invalid routes"; uses martian_type; } container aggregate { description "Coalesced routes"; uses rib_aggregate_type; } container generate { description "Route of last resort"; uses rib_aggregate_type; } choice maximum-paths-type { case case_1 { container maximum-paths { description "Maximum number of paths"; leaf limit { description "Maximum number of paths"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable maximum-paths"; choice log_type { case case_1 { leaf threshold { description "Percentage of limit at which to start generating warnings"; type uint32 { range "1 .. 100"; } } } case case_2 { leaf log-only { description "Generate warning messages only"; type empty; } } } leaf log-interval { description "Minimum interval between log messages"; units "seconds"; type uint32 { range "5 .. 86400"; } } } } } container maximum-prefixes { description "Maximum number of prefixes"; leaf limit { description "Maximum number of prefixes"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable maximum-prefixes"; choice log_type { case case_1 { leaf threshold { description "Percentage of limit at which to start generating warnings"; type uint32 { range "1 .. 100"; } } } case case_2 { leaf log-only { description "Generate warning messages only"; type empty; } } } leaf log-interval { description "Minimum interval between log messages"; units "seconds"; type uint32 { range "5 .. 86400"; } } } container multipath { presence "enable multipath"; description "Protocol-independent load balancing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container vpn-unequal-cost { presence "enable vpn-unequal-cost"; description "Include VPN routes with unequal IGP metrics"; leaf equal-external-internal { description "Include external and internal VPN routes"; type empty; } } leaf as-path-compare { description "Compare AS path sequences in addition to AS path length"; type empty; } } container protect { description "Protocol-independent protection"; leaf core { description "Protect against unreachability to service-edge router"; type empty; } } container label { presence "enable label"; description "Label processing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list allocation { description "Label allocation policy"; type policy-algebra; } leaf-list substitution { description "Label substitution policy"; type policy-algebra; } } container access { description "Access routes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list route { key name; ordered-by user; description "Access route"; leaf name { description "IP address of destination"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list next-hop { description "Next hop to destination"; type ipaddr-or-interface; } list qualified-next-hop { key name; ordered-by user; description "Next hop with qualifiers"; uses qualified_nh_obj; } leaf metric { description "Metric value"; type uint32 { range "1 .. 255"; } } leaf preference { description "Preference value"; type uint32; } leaf tag { description "Tag string"; type uint32; } } } container access-internal { description "Access-internal routes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list route { key name; ordered-by user; description "Access-internal route"; leaf name { description "IP address and optional prefix length of destination"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list next-hop { description "Next hop to destination"; type ipaddr-or-interface; } list qualified-next-hop { key name; ordered-by user; description "Next hop with qualifiers"; uses qualified_nh_obj; } } } container bgp-static { description "Routes for BGP static advertisements"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list route { key name; ordered-by user; description "BGP-static route"; leaf name { description "IP address and optional prefix length of destination"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container metric { description "Metric value"; uses rib_static_metric_type; } container metric2 { description "Metric value 2"; uses rib_static_metric_type; } container metric3 { description "Metric value 3"; uses rib_static_metric_type; } container metric4 { description "Metric value 4"; uses rib_static_metric_type; } container tag { description "Tag string"; uses rib_static_metric_type; } container tag2 { description "Tag string 2"; uses rib_static_metric_type; } container preference { description "Preference value"; uses rib_static_metric_type; } container preference2 { description "Preference value 2"; uses rib_static_metric_type; } container color { description "Color (preference) value"; uses rib_static_metric_type; } container color2 { description "Color (preference) value 2"; uses rib_static_metric_type; } leaf-list community { description "BGP community identifier"; type community; } container as-path { description "Autonomous system path"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf path { description "Autonomous system path"; type string; } leaf origin { description "(null)"; type enumeration { enum igp { description "Path originated in the local IGP"; } enum egp { description "Path originated in another AS"; } enum incomplete { description "Path was learned by some other means"; } } } leaf atomic-aggregate { description "Add ATOMIC_AGGREGATE path attribute to route"; type empty; } container aggregator { presence "enable aggregator"; description "Add AGGREGATOR path attribute to route"; } leaf as-number { description " Autonomous system number in plain number or 'higher 16bits'.'Lower 16 bits' (asdot notation) format"; type string { } } leaf address { description "Address of BGP system that formed the route"; type ipv4addr; } } } } } container access { description "Access routes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list route { key name; ordered-by user; description "Access route"; leaf name { description "IP address of destination"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list next-hop { description "Next hop to destination"; type ipaddr-or-interface; } list qualified-next-hop { key name; ordered-by user; description "Next hop with qualifiers"; uses qualified_nh_obj; } leaf metric { description "Metric value"; type uint32 { range "1 .. 255"; } } leaf preference { description "Preference value"; type uint32; } leaf tag { description "Tag string"; type uint32; } } } container access-internal { description "Access-internal routes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list route { key name; ordered-by user; description "Access-internal route"; leaf name { description "IP address and optional prefix length of destination"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list next-hop { description "Next hop to destination"; type ipaddr-or-interface; } list qualified-next-hop { key name; ordered-by user; description "Next hop with qualifiers"; uses qualified_nh_obj; } } } container multicast { description "Global multicast options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Global multicast trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum parse { description "Trace configuration parsing"; } enum config-internal { description "Trace configuration internals"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf disable { description "Disable this trace flag"; type empty; } } } list scope { key name; ordered-by user; description "Multicast address scope"; leaf name { description "Name to identify multicast address scope"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf prefix { description "Administratively scoped address"; type ipprefix; mandatory true; } leaf-list interface { description "Interface on which to configure scoping"; type interface-name; } } leaf-list scope-policy { description "Scoping policy"; type policy-algebra; } list flow-map { key name; ordered-by user; description "Multicast flow map configuration"; leaf name { description "Name of the flow map"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list policy { description "Policy for matched flows"; type policy-algebra; } container bandwidth { presence "enable bandwidth"; description "Bandwidth properties for matched flows"; leaf bandwidth-value { description "Static or default bandwidth for the matched flows"; units "bps"; type string; } leaf adaptive { description "Auto-sense bandwidth for matched flows"; type empty; } } leaf-list redundant-sources { description "Redundant source addresses"; type ipaddr; } container forwarding-cache { description "Forwarding cache properties for matched flows"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container timeout { description "Timeout properties for matched flows"; choice timeout_choice { case case_1 { leaf timeout-value { description "Timeout for forwarding cache entry"; units "minutes"; type uint32 { range "1 .. 720"; } } } case case_2 { container never { presence "enable never"; description "Forwarding cache entries never time out"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf non-discard-entry-only { description "Apply only to non-discard entries"; type empty; } } } } } } } leaf-list ssm-groups { description "Source-specific multicast group ranges"; type ipprefix; } leaf asm-override-ssm { description "Allow ASM state for SSM group ranges"; type empty; } leaf-list rpf-check-policy { description "Disable RPF check for a source group pair"; type policy-algebra; } container pim-to-igmp-proxy { description "PIM-to-IGMP proxy"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list upstream-interface { description "Upstream interface list"; type interface-name; max-elements 2; } } container pim-to-mld-proxy { description "PIM-to-MLD proxy"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list upstream-interface { description "Upstream interface list"; type interface-name; max-elements 2; } } container forwarding-cache { description "Multicast forwarding cache"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf allow-maximum { description "Allow maximum of global and family level threshold values for suppress and reuse"; type empty; } list family { key name; ordered-by user; description "Protocol family"; leaf name { description "Protocol family"; type enumeration { enum inet { description "IPv4 family"; } enum inet6 { description "IPv6 family"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container threshold { presence "enable threshold"; description "Multicast forwarding cache suppress threshold"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf suppress { description "Suppress threshold"; type uint32 { range "1 .. 200000"; } mandatory true; } leaf reuse { description "Reuse threshold"; type uint32 { range "1 .. 200000"; } } leaf log-warning { description "Percentage at which to start generating warnings"; type uint32 { range "1 .. 100"; } } } } container threshold { description "Threshold"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf suppress { description "Suppress threshold"; type uint32 { range "1 .. 200000"; } mandatory true; } presence "enable threshold"; leaf reuse { description "Reuse threshold"; type uint32 { range "1 .. 200000"; } } leaf log-warning { description "Percentage at which to start generating warnings"; type uint32 { range "1 .. 100"; } } } leaf timeout { description "Forwarding cache entry timeout in minutes"; type uint32 { range "1 .. 720"; } } } list interface { key name; ordered-by user; description "Multicast interface options"; uses multicast_interface_options_type; } list ssm-map { key name; ordered-by user; description "SSM map definitions"; leaf name { description "SSM map name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list policy { description "Policy for matching group"; type policy-algebra; } leaf-list source { description "One or more source addresses"; type ipaddr; } } container stream-protection { presence "enable stream-protection"; description "Multicast only Fast Re-Route"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf mofrr-primary-path-selection-by-routing { description "Multicast only Fast Re-Route primary path by Routing"; type empty; } leaf mofrr-disjoint-upstream-only { description "Multicast only Fast Re-Route disjoint upstream only"; type empty; } leaf mofrr-no-backup-join { description "Multicast only Fast Re-Route no backup join"; type empty; } leaf mofrr-asm-starg { description "Multicast only Fast Re-Route asm (*,G)"; type empty; } leaf-list policy { description "MoFRR Policy"; type policy-algebra; } } list backup-pe-group { key name; ordered-by user; description "Backup PE group definitions"; leaf name { description "PE group name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list backups { description "One or more IP addresses"; type ipaddr; max-elements 8; } leaf local-address { description "Address to be used as local-address for this group"; type ipaddr; mandatory true; } } leaf omit-wildcard-address { description "Omit wildcard source/group fields in SPMSI AD NLRI"; type empty; } leaf local-address { description "Local address for PIM and MVPN sessions"; type ipv4addr; } container igmp-aux-oif { presence "enable igmp-aux-oif"; description "Add an aux OIF to an IGMP host"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list request { key name; ordered-by user; description "Request to add an aux oif"; leaf name { description "Request number"; type uint8 { range "0 .. 9"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf host { description "Host address"; type ipv4addr; } leaf interface { description "Host interface name"; type interface-name; } leaf group { description "Multicast group address"; type ipv4addr; } leaf source { description "Multicast source address"; type ipv4addr; } leaf aux-oif { description "Aux OIF name"; type interface-name; } leaf enable-composite-nh { description "Enable composite NH support"; type empty; } } } container mld-aux-oif { presence "enable mld-aux-oif"; description "Add an aux OIF to an MLD host"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list request { key name; ordered-by user; description "Request to add an aux oif"; leaf name { description "Request number"; type uint8 { range "0 .. 9"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf host { description "Host address"; type ipv6addr; } leaf interface { description "Host interface name"; type interface-name; } leaf group { description "Multicast group address"; type ipv6addr; } leaf source { description "Multicast source address"; type ipv6addr; } leaf aux-oif { description "Aux OIF name"; type interface-name; } leaf enable-composite-nh { description "Enable composite NH support"; type empty; } } } container v4-xmit-streams { presence "enable v4-xmit-streams"; description "Configure IPv4 fast and slow multicast streams"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-port { description "Slow streams UDP source port"; default "2000"; type uint16 { range "2000 .. 65535"; } } leaf destination-port { description "Slow streams UDP destination port"; default "2001"; type uint16 { range "2000 .. 65535"; } } leaf ttl { description "Slow streams time-to-live"; default "10"; type uint8 { range "1 .. 32"; } } leaf packet-interval { description "Slow streams packet interval"; default "10"; units "seconds"; type uint32 { range "10 .. 120"; } } list interface { key name; ordered-by user; description "Interface options for IPv4 multicast slow streams"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "Destination address"; leaf name { description "Destination address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf group-count { description "Number of groups"; default "1"; type uint32 { range "1 .. 512"; } } list source { key name; ordered-by user; description "Sender address"; leaf name { description "Sender address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-count { description "Number of senders"; default "1"; type uint32 { range "1 .. 1024"; } } } } } list stream { key name; ordered-by user; description "Add an IPv4 multicast fast stream"; leaf name { description "Stream number"; type uint8 { range "0 .. 9"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interface { description "Interface to send on"; type interface-name; } leaf group { description "Destination address"; type ipv4addr; } leaf source { description "Sender's address"; type ipv4addr; } leaf source-port { description "UDP source port"; type uint16 { range "2000 .. 65535"; } } leaf destination-port { description "UDP destination port"; type uint16 { range "2000 .. 65535"; } } leaf ttl { description "Time-to-live"; type uint8 { range "1 .. 32"; } } leaf payload-size { description "Payload size (bytes)"; type int32 { range "1 .. 1400"; } } leaf pps { description "Packets/sec to send"; type int32 { range "1 .. 10000"; } } } } container v6-xmit-streams { presence "enable v6-xmit-streams"; description "Configure IPv6 multicast streams"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf destination-port { description "Slow streams UDP destination port"; default "2001"; type uint16 { range "2000 .. 65535"; } } leaf ttl { description "Slow streams time-to-live"; default "10"; type uint8 { range "1 .. 32"; } } leaf packet-interval { description "Slow streams packet interval"; default "10"; units "seconds"; type uint32 { range "10 .. 120"; } } list interface { key name; ordered-by user; description "Interface options for IPv6 multicast slow streams"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "Destination address"; leaf name { description "Destination address"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf group-count { description "Number of groups"; default "1"; type uint32 { range "1 .. 512"; } } list source { key name; ordered-by user; description "Sender address"; leaf name { description "Sender address"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-count { description "Number of senders"; default "1"; type uint32 { range "1 .. 1024"; } } } } } list stream { key name; ordered-by user; description "Add an IPv6 multicast fast stream"; leaf name { description "Stream number"; type uint8 { range "0 .. 9"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interface { description "Interface to send on"; type interface-name; } leaf group { description "Destination address"; type ipv6addr; } leaf source { description "Sender's address"; type ipv6addr; } leaf destination-port { description "Destination port"; type uint16 { range "2000 .. 65535"; } } leaf ttl { description "Time-to-live"; type uint8 { range "1 .. 32"; } } leaf payload-size { description "Payload size (bytes)"; type int32 { range "1 .. 1400"; } } leaf pps { description "Packets/sec to send"; type int32 { range "1 .. 10000"; } } } } } } container firewall { description "Define a firewall configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container family { description "Protocol family"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container inet { description "Protocol family IPv4 for firewall filter"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list dialer-filter { key name; ordered-by user; description "Define an IPv4 dialer filter"; uses inet_dialer_filter; } list prefix-action { key name; ordered-by user; description "Define a prefix action"; uses prefix_action; } list filter { key name; ordered-by user; description "Define an IPv4 firewall filter"; uses inet_filter; } list simple-filter { key name; ordered-by user; description "Define an IPv4 firewall simple filter"; uses inet_simple_filter; } list service-filter { key name; ordered-by user; description "One or more IPv4 service filters"; uses inet_service_filter; } list fast-update-filter { key name; ordered-by user; description "One or more fast update filters"; uses inet_fuf; } } container inet6 { description "Protocol family IPv6 for firewall filter"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list dialer-filter { key name; ordered-by user; description "Define an IPv6 dialer filter"; uses inet6_dialer_filter; } list filter { key name; ordered-by user; description "Define an IPv6 firewall filter"; uses inet6_filter; } list service-filter { key name; ordered-by user; description "One or more IPv6 service filters"; uses inet6_service_filter; } list fast-update-filter { key name; ordered-by user; description "One or more fast update filters"; uses inet6_fuf; } } container mpls { description "Protocol family MPLS for firewall filter"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list dialer-filter { key name; ordered-by user; description "Define an mpls dialer filter"; uses mpls_dialer_filter; } list filter { key name; ordered-by user; description "(null)"; uses mpls_filter; } } container vpls { description "Protocol family VPLS for firewall filter"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list filter { key name; ordered-by user; description "(null)"; uses vpls_filter; } } container bridge { description "Protocol family BRIDGE for firewall filter"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list filter { key name; ordered-by user; description "(null)"; uses bridge_filter; } } container ccc { description "Protocol family CCC for firewall filter"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list filter { key name; ordered-by user; description "(null)"; uses ccc_filter; } } container any { description "Protocol-independent filter"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list filter { key name; ordered-by user; description "Define a protocol-independent filter"; uses any_filter; } } container ethernet-switching { description "Protocol family Ethernet Switching for firewall filter"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list filter { key name; ordered-by user; description "Define an Ethernet Switching firewall filter"; uses es_filter; } } } list policer { key name; ordered-by user; description "Policer template definition"; uses firewall_policer; } list flexible-match { key name; ordered-by user; description "Flexible packet match template definition"; uses firewall_flexible_match; } list tunnel-end-point { key name; ordered-by user; description "Tunnel end-point template definition"; uses tunnel_end_point; } list hierarchical-policer { key name; ordered-by user; description "Hierarchical policer template definition"; uses firewall_hierpolicer; } list interface-set { key name; ordered-by user; description "Interface set definition"; uses interface_set_type; } list load-balance-group { key name; ordered-by user; description "Load-balance group definition"; uses firewall_load_balance_group; } list atm-policer { key name; ordered-by user; description "Atm policer"; uses atm-policer-type; } list three-color-policer { key name; ordered-by user; description "Three-color policer"; uses three-color-policer-type; } list filter { key name; ordered-by user; description "Define an IPv4 firewall filter"; uses inet_filter; } } container services { description "Service PIC applications settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aacl { description "Application Aware Access List services configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "One or more AACL rules"; uses aacl_rule_object; } list rule-set { key name; ordered-by user; description "Define a Set of AACL rules"; max-elements 16960; leaf name { description "Name of the rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Rule to be included in this rule set"; max-elements 16960; leaf name { description "Rule name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } list aacl-dyn-rule-set { key name; ordered-by user; description "Define a set of AACL dynamic rules"; max-elements 16960; leaf name { description "Name of the rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Rule to be included in this rule set"; max-elements 16960; leaf name { description "Rule name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } container captive-portal-content-delivery { description "Configuration for captive portal and content delivery service"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Define a captive portal content delivery rule"; uses cpcd-rule-object-type; } list rule-set { key name; ordered-by user; description "Define a set of captive portal content delivery rules"; max-elements 16960; leaf name { description "Name of the rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Rule to be included in this rule set"; max-elements 16960; leaf name { description "Rule name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } list profile { key name; ordered-by user; description "One or more rule/rule set in the profile"; leaf name { description "Profile name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice cpcd_rules_choice { case case_1 { leaf dynamic { description "Dynamic profile flag"; type empty; } } case case_2 { list cpcd-rules { key name; ordered-by user; description "List of captive portal content delivery rules"; leaf name { description "(null)"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } case case_3 { list cpcd-rule-sets { key name; ordered-by user; description "List of captive portal content delivery rule sets"; leaf name { description "(null)"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } container ipda-rewrite-options { description "Ipda rewrite options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf destination-address { description "Default ipda rewrite IP address"; type ipaddr; } leaf destination-port { description "Default ipda rewrite port"; type uint16 { range "1 .. 65535"; } } } container http-redirect-options { description "Http redirect options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf url { description "URL of the captive portal file"; type string { } mandatory true; } presence "enable http-redirect-options"; } } container traceoptions { description "Captive portal and content delivery trace options"; uses cpcd-trace-options-type; } } } list profile-variable-set { key name; ordered-by user; description "Dynamic profiles variable configuration"; uses juniper-dynamic-profile-varset-object; } container policy-options { description "Routing policy option configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list prefix-list { key name; ordered-by user; description "Define a named set of address prefixes"; leaf name { description "Prefix list name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list prefix-list-item { key name; description "(null)"; uses prefix_list_items; } leaf apply-path { description "Apply IP prefixes from a configuration statement"; type string; } } } container extensible-subscriber-services { presence "enable extensible-subscriber-services"; description "Extensible subscriber services"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list vsas { description "Service VSAs"; type string; } } container test { presence "enable test"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf uint { description "(null)"; type uint32 { range "0 .. 48"; } } leaf ushort { description "(null)"; type uint16 { range "0 .. 2000"; } } leaf toggle { description "(null)"; type empty; } leaf ipaddr { description "(null)"; type ipaddr; } leaf ipv6 { description "(null)"; type ipv6addr; } leaf str { description "(null)"; type string; } leaf intf { description "(null)"; type interface-name; } choice one-or-two { case case_1 { leaf one { description "(null)"; type empty; } } case case_2 { leaf two { description "(null)"; type empty; } } } container semantic-check { presence "enable semantic-check"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf mandatory-int { description "(null)"; type int32; mandatory true; } leaf match-string { description "(null)"; type string { } } leaf range-int { description "(null)"; type uint32 { range "0 .. 48"; } } leaf range-string { description "(null)"; type string { length "1 .. 10"; } } leaf interface { description "(null)"; type interface-unit; } leaf ipaddr { description "(null)"; type ipaddr; } leaf ipprefix { description "(null)"; type ipv4prefix; } } } container dyn-constraints-test { presence "enable dyn-constraints-test"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf foo { description "(null)"; type empty; } leaf bar { description "(null)"; type empty; } leaf path-widget { description "(null)"; type string; } list logical-widgets { key name; ordered-by user; description "(null)"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } grouping base-default-variable-object { leaf name { description "Name of predefined variable"; type enumeration { enum igmp-enable { description "Default for junos-igmp-enable"; } enum igmp-access-group-name { description "Default for junos-igmp-access-group-name"; } enum igmp-access-source-group-name { description "Default for junos-igmp-access-group-name"; } enum igmp-version { description "Default for junos-igmp-version"; } enum igmp-immediate-leave { description "Default for junos-igmp-immediate-leave"; } enum mld-access-group-name { description "Default for junos-mld-access-group-name"; } enum mld-access-source-group-name { description "Default for junos-mld-access-source-group-name"; } enum mld-immediate-leave { description "Default for junos-mld-immediate-leave"; } enum input-filter { description "Default for junos-input-filter"; } enum output-filter { description "Default for junos-output-filter"; } enum input-ipv6-filter { description "Default for junos-input-ipv6-filter"; } enum output-ipv6-filter { description "Default for junos-output-ipv6-filter"; } enum adf-rule-v4 { description "Default for junos-adf-rule-v4"; } enum adf-rule-v6 { description "Default for junos-adf-rule-v6"; } enum cos-scheduler-map { description "Default for junos-cos-scheduler-map"; } enum cos-shaping-rate { description "Default for junos-cos-shaping-rate"; } enum cos-guaranteed-rate { description "Default for junos-cos-guaranteed-rate"; } enum cos-delay-buffer-rate { description "Default for junos-cos-delay-buffer-rate"; } enum cos-traffic-control-profile { description "Default for junos-cos-traffic-control-profile"; } enum cos-shaping-mode { description "Default for junos-cos-shaping-mode"; } enum cos-byte-adjust { description "Default for junos-cos-byte-adjust"; } enum cos-scheduler { description "Default for junos-cos-scheduler"; } enum cos-scheduler-pri { description "Default for junos-cos-scheduler-pri"; } enum cos-scheduler-dropfile-low { description "Default for junos-cos-scheduler-dropfile-low"; } enum cos-scheduler-dropfile-medium-low { description "Default for junos-cos-scheduler-dropfile-medium-low"; } enum cos-scheduler-dropfile-medium-high { description "Default for junos-cos-scheduler-dropfile-medium-high"; } enum cos-scheduler-dropfile-high { description "Default for junos-cos-scheduler-dropfile-high"; } enum cos-scheduler-dropfile-any { description "Default for junos-cos-scheduler-dropfile-any"; } enum cos-scheduler-excess-rate { description "Default for junos-cos-scheduler-excess-rate"; } enum cos-scheduler-explicit-congestion-notification { description "Default for junos-cos-scheduler-explicit-congestion-notification"; } enum cos-scheduler-excess-priority { description "Default for junos-cos-scheduler-excess-priority"; } enum interface-set-name { description "Default for junos-interface-set-name"; } enum cos-adjust-minimum { description "Default for junos-cos-adjust-minimum"; } enum cos-excess-rate-high { description "Default for junos-cos-excess-rate-high"; } enum cos-excess-rate-low { description "Default for junos-cos-excess-rate-low"; } enum cos-shaping-rate-burst { description "Default for junos-cos-shaping-rate-burst"; } enum cos-byte-adjust-frame { description "Default for junos-cos-byte-adjust-frame"; } enum cos-byte-adjust-cell { description "Default for junos-cos-byte-adjust-cell"; } enum cos-shaping-rate-priority-high { description "Default for junos-cos-shaping-rate-priority-high"; } enum cos-shaping-rate-priority-high-burst { description "Default for junos-cos-shaping-rate-priority-high-burst"; } enum cos-shaping-rate-priority-medium { description "Default for junos-cos-shaping-rate-priority-medium"; } enum cos-shaping-rate-priority-medium-burst { description "Default for junos-cos-shaping-rate-priority-medium-burst"; } enum cos-shaping-rate-priority-low { description "Default for junos-cos-shaping-rate-priority-low"; } enum cos-shaping-rate-priority-low-burst { description "Default for junos-cos-shaping-rate-priority-low-burst"; } enum cos-shaping-rate-excess-high { description "Default for junos-cos-shaping-rate-excess-high"; } enum cos-shaping-rate-excess-high-burst { description "Default for junos-cos-shaping-rate-excess-high-burst"; } enum cos-shaping-rate-excess-low { description "Default for junos-cos-shaping-rate-excess-low"; } enum cos-shaping-rate-excess-low-burst { description "Default for junos-cos-shaping-rate-excess-low-burst"; } enum cos-guaranteed-rate-burst { description "Default for junos-cos-guaranteed-rate-burst"; } enum cos-traffic-control-profile-remaining { description "Default for junos-cos-traffic-control-profile-remaining"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default-value { description "Default value for predefined variable"; type string; } } grouping cfm-traceoptions { description "Trace options for connectivity fault management"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum configuration { description "Trace configuration events"; } enum routing-socket { description "Trace routing socket events"; } enum protocol { description "Trace protocol processing events"; } enum init { description "Trace events related to protocol daemon start-up"; } enum error { description "Trace events related to catestrophic errors in daemon"; } enum issu { description "Trace ISSU related events"; } enum all { description "Trace everything"; } } } } } grouping juniper-dynamic-profile-varset-object { leaf name { description "Profile varset associated with the profile"; type string { length "1 .. 80"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf junos-mep-id { description "Dynamic variable to substitute 'mep' value in the profile"; type uint32 { range "1 .. 8191"; } } leaf junos-md-level { description "Dynamic variable to substitute 'level' value in the profile"; type uint32 { range "0 .. 7"; } } leaf junos-remote-mep-id { description "Dynamic variable to substitute 'remote-mep' value in the profile"; type uint32 { range "1 .. 8191"; } } leaf junos-md-name { description "Dynamic variable to substitute 'maintenance-domain' in profile"; type string; } leaf junos-ma-name { description "Dynamic variable to substitute 'maintenance-association' in profile"; type string { length "1 .. 32"; } } leaf junos-loss-threshold { description "Dynamic variable to substitute 'loss-threshold' in profile"; type uint32 { range "3 .. 256"; } } leaf junos-md-name-format { description "Dynamic variable to substitute 'name-format' in profile"; type enumeration { enum none { description "No format specified"; } enum dns { description "Character string similar to Domain Name System name"; } enum mac+2oct { description "MAC address with 2 octet integer (xx:xx:xx:xx:xx:xx.Y format)"; } enum character-string { description "Character string"; } } } leaf junos-ma-name-format { description "Dynamic variable to substitute 'short-name-format' in profile"; type enumeration { enum 2octet { description "An integer in the range 0..65535"; } enum rfc-2685-vpn-id { description "VPN identifier that complies with RFC 2685"; } enum vlan { description "Primary VLAN identifier"; } enum character-string { description "Character string"; } enum icc { description "ITU Carrier Code"; } } } leaf junos-ccm-interval { description "Dynamic variable to substitute 'interval' in profile"; type enumeration { enum 10ms { description "(null)"; } enum 100ms { description "(null)"; } enum 1s { description "(null)"; } enum 10s { description "(null)"; } enum 1m { description "(null)"; } enum 10m { description "(null)"; } } } leaf junos-action-profile { description "Dynamic variable to substitute 'action-profile' in profile"; type string; } leaf junos-layer2-output-policer { description "Dynamic variable to substitute 'layer2 output-policer'"; type string; } } grouping juniper-dynamic-variable-object { leaf name { description "Name of variable"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf equals { description "Computable expression of dynamic profile variables"; type string; } leaf default-value { description "Default value for variable"; type string; } leaf mandatory { description "Variable must be supplied by external server"; type empty; } leaf uid-reference { description "Variable that refers to the uid variable"; type empty; } leaf uid { description "Compute unique Id value for the variable"; type empty; } } grouping juniper-fabric-routing-instance { description "Routing instance"; leaf name { description "Routing instance name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf description { description "Text description of routing instance"; type string { } } leaf instance-type { description "Type of routing instance"; type enumeration { enum vrf { description "Virtual routing forwarding instance"; } } } container route-distinguisher { description "Route distinguisher for this instance"; leaf rd-type { description "Number in (16 bit:32 bit) or (32 bit 'L':16 bit) or (IP address:16 bit) format"; type string { } } } container routing-options { description "Fabric routing option configuration"; uses juniper-fabric-routing-options; } } grouping juniper-fabric-routing-options { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Global routing protocol trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum parse { description "Trace configuration parsing"; } enum regex-parse { description "Trace regular-expression parsing"; } enum config-internal { description "Trace configuration internals"; } enum nsr-synchronization { description "Trace nonstop routing synchronization events"; } enum condition-manager { description "Trace condition manager events"; } enum graceful-restart { description "Trace Graceful Restart events"; } enum session { description "Trace Session ID allocations/deallocations"; } enum hfrr-fsm { description "Host FRR FSM events tracing"; } enum hfrr-route { description "Host FRR route events tracing"; } enum statistics-id-group { description "Trace Statistics ID Group operations"; } enum route-record { description "Trace route-record server-side events"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } enum eswd { description "Trace ESWD notifications"; } enum arp { description "Trace ARP route processing"; } enum prefix { description "Trace prefix route processing"; } enum ne-port { description "Trace ne-port route processing"; } enum route-selection { description "Trace route-selection"; } enum bridge { description "Trace Bridge route notifications"; } enum grat-arp { description "Trace Gratuitous ARP notifications"; } enum l2l3-map { description "Trace L2L3 map events"; } } } leaf disable { description "Disable this trace flag"; type empty; } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } } } container graceful-restart { presence "enable graceful-restart"; description "Graceful or hitless routing restart options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable graceful restart"; type empty; } } } leaf restart-duration { description "Maximum time for which router is in graceful restart"; type uint32 { range "120 .. 900"; } } } container forwarding-table { uses forwarding-table-type; } container resolution { presence "enable resolution"; description "Route next-hop resolution options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum event { description "Event processing"; } enum flash { description "Flash processing"; } enum kernel { description "Kernel communication"; } enum indirect { description "Indirect next-hop addition, change, or deletion"; } enum task { description "Task or job processing"; } enum igp-frr { description "IGP triggered FRR events"; } enum igp-frr-extensive { description "IGP triggered FRR Extensive events"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } } container auto-export { presence "enable auto-export"; description "Export routes between routing instances"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum export { description "Export processing"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } } container multicast { description "Global multicast options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf l2-root { description "Set this switch as L2 multicast root"; type empty; } leaf replication { description "Enable multicast replication on this switch"; type empty; } container traceoptions { description "Trace options for DCF multicast"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum vccpdf { description "Trace VCCPDF notifications"; } enum root { description "Trace L2-root processing"; } enum core { description "Trace core tree processing"; } enum edge { description "Trace edge tree processing"; } enum cspf { description "Trace CSPF computation"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } leaf no-make-before-break { description "Disable multicast make-before-break"; type empty; } leaf make-before-break-timeout { description "Configure make-before-break timeout in seconds"; default "30"; units "seconds"; type uint32 { range "1 .. 80"; } } leaf fabric-optimized-distribution { description "Enable fabric-optimized-distribution mode - Reboot required"; type empty; } } } grouping forwarding-table-type { description "Forwarding table management options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf krt-nexthop-ack-timeout { description "Kernel nexthop ack timeout interval"; type uint32 { range "1 .. 100"; } } leaf-list export { description "Export policy"; type policy-algebra; } leaf ecmp-fast-reroute { description "Enable fast reroute for ECMP next hops"; type empty; } leaf no-ecmp-fast-reroute { description "Enable fast reroute for ECMP next hops"; type empty; } leaf indirect-next-hop { description "Install indirect next hops in Packet Forwarding Engine"; type empty; } leaf no-indirect-next-hop { description "Install indirect next hops in Packet Forwarding Engine"; type empty; } leaf indirect-next-hop-change-acknowledgements { description "Request acknowledgements for Indirect next hop changes"; type empty; } leaf no-indirect-next-hop-change-acknowledgements { description "Request acknowledgements for Indirect next hop changes"; type empty; } leaf unicast-reverse-path { description "Unicast reverse path (RP) verification"; type enumeration { enum active-paths { description "Consider active paths when performing RP verification"; } enum feasible-paths { description "Consider all feasible paths for RP verification"; } } } leaf transit-lsp-statistics-from-route { description "Enable LSP statistics collection from the route"; type empty; } container chained-composite-next-hop { description "Next-hop chaining mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container ingress { description "Ingress LSP nexthop settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf l2vpn { description "Create composite-chained nexthops for ingress l2vpn LSPs"; type empty; } leaf no-l2vpn { description "Create composite-chained nexthops for ingress l2vpn LSPs"; type empty; } leaf l2ckt { description "Create composite-chained nexthops for ingress l2ckt LSPs"; type empty; } leaf no-l2ckt { description "Create composite-chained nexthops for ingress l2ckt LSPs"; type empty; } leaf fec129-vpws { description "Create composite-chained nexthops for ingress fec129-vpws LSPs"; type empty; } leaf no-fec129-vpws { description "Create composite-chained nexthops for ingress fec129-vpws LSPs"; type empty; } leaf evpn { description "Create composite-chained nexthops for ingress EVPN LSPs"; type empty; } leaf no-evpn { description "Create composite-chained nexthops for ingress EVPN LSPs"; type empty; } container labeled-bgp { description "Create composite-chained nexthops for ingress labeled-bgp LSPs"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf inet6 { description "Enable inet6 labeled-bgp composite nexthop creation"; type empty; } } container l3vpn { presence "enable l3vpn"; description "Create composite-chained nexthops for ingress l3vpn LSPs"; leaf extended-space { description "Allocate in extended-space for scalability"; type empty; } } } container transit { description "Transit LSP nexthops settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf l2vpn { description "Create composite-chained nexthops for transit l2vpn LSPs"; type empty; } leaf no-l2vpn { description "Create composite-chained nexthops for transit l2vpn LSPs"; type empty; } leaf l3vpn { description "Create composite-chained nexthops for transit l3vpn LSPs"; type empty; } leaf no-l3vpn { description "Create composite-chained nexthops for transit l3vpn LSPs"; type empty; } leaf labeled-bgp { description "Create composite-chained nexthops for transit labeled BGP routes"; type empty; } leaf no-labeled-bgp { description "Create composite-chained nexthops for transit labeled BGP routes"; type empty; } leaf static { description "Create composite-chained nexthops for static LSPs"; type empty; } leaf no-static { description "Create composite-chained nexthops for static LSPs"; type empty; } leaf rsvp { description "Create composite-chained nexthops for RSVP LSPs"; type empty; } leaf no-rsvp { description "Create composite-chained nexthops for RSVP LSPs"; type empty; } leaf rsvp-p2mp { description "Create composite-chained nexthops for RSVP p2mp LSPs"; type empty; } leaf no-rsvp-p2mp { description "Create composite-chained nexthops for RSVP p2mp LSPs"; type empty; } leaf ldp { description "Create composite-chained nexthops for LDP LSPs"; type empty; } leaf no-ldp { description "Create composite-chained nexthops for LDP LSPs"; type empty; } leaf ldp-p2mp { description "Create composite-chained nexthops for LDP P2MP LSPs"; type empty; } leaf no-ldp-p2mp { description "Create composite-chained nexthops for LDP P2MP LSPs"; type empty; } } } } grouping juniper-forwarding-options { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list storm-control-profiles { key name; description "Storm control profile for this instance"; leaf name { description "Storm control profile name"; type string { length "1 .. 127"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container all { presence "enable all"; description "For all BUM traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice bandwidth { case case_1 { leaf bandwidth-percentage { description "Percentage of link bandwidth"; type uint32 { range "1 .. 100"; } } } case case_2 { leaf bandwidth-level { description "Link bandwidth"; units "kbps"; type uint32 { range "100 .. 10000000"; } } } } leaf no-broadcast { description "Disable broadcast storm control"; type empty; } leaf no-unknown-unicast { description "Disable unknown unicast storm control"; type empty; } choice no-multicast-choices { case case_1 { leaf no-multicast { description "Disable multicast storm control"; type empty; } } case case_2 { leaf no-registered-multicast { description "Disable registered multicast storm control"; type empty; } } case case_3 { leaf no-unregistered-multicast { description "Disable unregistered multicast storm control"; type empty; } } } } leaf action-shutdown { description "Disable port for excessive storm control errors"; type empty; } } choice sampling-or-packet-capture { case case_1 { container sampling { description "Statistical traffic sampling options"; uses juniper-sampling-options; } } case case_2 { container packet-capture { description "Packet capture options"; uses juniper-packet-capture-options; } } } list monitoring { key name; description "Configure lawful interception of traffic"; uses juniper-monitoring-options; } list accounting { key name; description "Configure accounting of traffic"; uses juniper-packet-accounting-options; } list analyzer { key name; description "Analyzer options"; max-elements 64; uses smpl-analyzer-type; } container port-mirroring { description "Configure port mirroring of traffic"; uses juniper-port-mirror-options; } container load-balance { description "Configure load-balancing attributes on the forwarding path"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container indexed-load-balance { presence "enable indexed-load-balance"; description "Use indexed permuted next hop lists for unilist and aggregate next hops"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container per-flow { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf hash-seed { description "Enable per flow seed value on packet forwarding engine"; type empty; mandatory true; } presence "enable per-flow"; } container per-prefix { presence "enable per-prefix"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf hash-seed { description "Specifies per-router input value for per-prefix load-balancing hash function"; default "0"; type uint16 { range "0 .. 65534"; } } } } container hash-key { description "Select data used in the hash key"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container family { description "Protocol family"; container inet { description "IPv4 protocol family"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container layer-3 { presence "enable layer-3"; description "Include Layer 3 (IP) data in the hash key"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf destination-address { description "Include IP destination address in the hash key"; type empty; } } container layer-4 { presence "enable layer-4"; description "Include Layer 4 (TCP or UDP) data in the hash key"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container symmetric-hash { presence "enable symmetric-hash"; description "Create symmetric hash-key with source & destination ports"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf complement { description "Create complement of symmetric hash-key"; type empty; } } } container mpls { description "MPLS protocol family"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice label { case case_1 { leaf label-1 { description "Include the first MPLS label in the hash key"; type empty; } } case case_2 { leaf all-labels { description "Include all MPLS labels in hash key"; type empty; } } case case_3 { leaf no-labels { description "Exclude all MPLS labels from hash key"; type empty; } } } leaf label-2 { description "Include the second MPLS label in the hash key"; type empty; } leaf label-3 { description "Include the third MPLS label in the hash key"; type empty; } leaf no-label-1-exp { description "Omit EXP bits of first MPLS label from the hash key"; type empty; } container payload { description "Include payload data in the hash key"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ether-pseudowire { description "Load-balance IP over ethernet PW"; type empty; } container ip { presence "enable ip"; description "Include IPv4 or IPv6 payload data in the hash key"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice layer-4-select { case case_1 { choice ip-payload { case case_1 { leaf layer-3-only { description "Include only layer-3 IP information"; type empty; } } case case_2 { leaf enable { description "Include layer3/4 IP payload in the hash key"; type empty; } } case case_3 { leaf disable { description "Exclude layer3/4 IP payload in the hash key"; type empty; } } } } case case_2 { container port-data { presence "enable port-data"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-msb { description "Include the most significant byte of the source port"; type empty; } leaf source-lsb { description "Include the least significant byte of the source port"; type empty; } leaf destination-msb { description "Include the most significant byte of the destination port"; type empty; } leaf destination-lsb { description "Include the least significant byte of the destination port"; type empty; } } } } } } } container multiservice { description "Multiservice protocol family"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-mac { description "Include source MAC address in hash key"; type empty; } leaf destination-mac { description "Include destination MAC address in hash key"; type empty; } leaf label-1 { description "Include the first MPLS label in the hash key"; type empty; } leaf label-2 { description "Include the second MPLS label in the hash key"; type empty; } container payload { description "Include payload data in the hash key"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container ip { description "Include IPv4 payload data in the hash key"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container layer-3 { presence "enable layer-3"; description "Include layer-3 ip info for VPLS/Bridge"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice layer-3-options { case case_1 { leaf source-ip-only { description "Include source IP only in hash-key"; type empty; } } case case_2 { leaf destination-ip-only { description "Include desintation IP only in hash-key"; type empty; } } } } leaf layer-4 { description "Include layer-4 IP information for VPLS/Bridge"; type empty; } leaf layer-3-only { description "Include only layer-3 IP information"; type empty; } } } container symmetric-hash { presence "enable symmetric-hash"; description "Create a/symmetric hash-key with any attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf complement { description "Create complement of symmetric hash-key"; type empty; } } } } } container enhanced-hash-key { description "Select data used in the hash key for Enhanced IP Forwarding Engines"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf use-trunk-max-links { description "Use 8 links in trunk programming instead of actual links"; type empty; } container hash-mode { description "Hashing mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice instance { case case_1 { leaf layer2-header { description "Only layer2 header fields are considered for hashing"; type empty; } } case case_2 { leaf layer2-payload { description "Only layer2 payload fields are considered for hashing"; type empty; } } } } container layer2 { description "Configure layer2 fields"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-incoming-port { description "Exclude incoming port from the hash key"; type empty; } leaf no-incoming-device { description "Exclude incoming device from the hash key"; type empty; } leaf no-source-mac-address { description "Exclude source MAC address from the hash key"; type empty; } leaf no-destination-mac-address { description "Exclude destination MAC address from the hash key"; type empty; } leaf no-ether-type { description "Exclude ether type from the hash key"; type empty; } leaf vlan-id { description "Include incoming vlan-id in hash key"; type empty; } } container inet { description "Configure inet4 fields"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-incoming-port { description "Exclude incoming port from the hash key"; type empty; } leaf no-incoming-device { description "Exclude incoming device from the hash key"; type empty; } leaf no-l4-source-port { description "Exclude l4 source port from the hash key"; type empty; } leaf no-l4-destination-port { description "Exclude l4 dest port from the hash key"; type empty; } leaf no-protocol { description "Exclude protocol from the hash key"; type empty; } leaf no-ipv4-source-address { description "Exclude IPv4 source address"; type empty; } leaf no-ipv4-destination-address { description "Exclude IPv4 destination address"; type empty; } leaf vlan-id { description "Include incoming vlan-id in hash key"; type empty; } } container inet6 { description "Configure inet6 fields"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-incoming-port { description "Exclude incoming port from the hash key"; type empty; } leaf no-incoming-device { description "Exclude incoming device from the hash key"; type empty; } leaf no-l4-source-port { description "Exclude l4 source port from the hash key"; type empty; } leaf no-l4-destination-port { description "Exclude l4 dest port from the hash key"; type empty; } leaf no-next-header { description "Exclude next header from the hash key"; type empty; } leaf no-ipv6-source-address { description "Exclude IPv6 source address"; type empty; } leaf no-ipv6-destination-address { description "Exclude IPv6 destination address"; type empty; } leaf vlan-id { description "Include vlan-id in hash key"; type empty; } } container services-loadbalancing { description "Select key to load balance across service PICs"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container family { description "Protocol family"; container inet { description "IPv4 protocol family"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container layer-3-services { description "Include Layer 3 (IP) data in the hash key"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-address { description "Include IP source address in the hash key"; type empty; } leaf destination-address { description "Include IP destination address in the hash key"; type empty; } leaf incoming-interface-index { description "Include incoming interface index in the hash key"; type empty; } } } container inet6 { description "IPv6 protocol family"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container layer-3-services { description "Include Layer 3 (IP) data in the hash key"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-address { description "Include IP source address in the hash key"; type empty; } leaf destination-address { description "Include IP destination address in the hash key"; type empty; } leaf incoming-interface-index { description "Include incoming interface index in the hash key"; type empty; } leaf src-prefix-len { description "Enhanced hash key inet6 source prefix length"; default "127"; units "bits"; type uint32 { range "56 .. 127"; } } } } } } container family { description "Protocol family"; container inet { description "IPv4 protocol family"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf incoming-interface-index { description "Include incoming interface index in the hash key"; type empty; } leaf no-destination-port { description "Omit IP destination port in the hash key"; type empty; } leaf no-source-port { description "Omit IP source port in the hash key"; type empty; } leaf type-of-service { description "Include TOS byte in the hash key"; type empty; } leaf gtp-tunnel-endpoint-identifier { description "Include TEID in the hash key for GTP-U packets"; type empty; } } container inet6 { description "IPv6 protocol family"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf incoming-interface-index { description "Include incoming interface index in the hash key"; type empty; } leaf traffic-class { description "Include Traffic Class byte in the hash key"; type empty; } leaf no-destination-port { description "Omit IP destination port in the hash key"; type empty; } leaf no-source-port { description "Omit IP source port in the hash key"; type empty; } leaf gtp-tunnel-endpoint-identifier { description "Include TEID in the hash key for GTP-U packets"; type empty; } } container mpls { description "MPLS protocol family"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf label-1-exp { description "Include EXP of first MPLS label from the hash key"; type empty; } leaf incoming-interface-index { description "Include incoming interface index in the hash key"; type empty; } choice pseudowire_option { case case_1 { leaf no-ether-pseudowire { description "Omit IP payload over ethernet PW from the hash-key"; type empty; } } } leaf no-payload { description "Omit MPLS payload data from the hash key"; type empty; } } container multiservice { description "Multiservice protocol (bridged/CCC/VPLS) family"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf incoming-interface-index { description "Include incoming interface index in hash key"; type empty; } leaf outer-priority { description "Include Outer 802.1 Priority bits in the hash key"; type empty; } leaf no-payload { description "Omit payload data from the hash key"; type empty; } leaf no-mac-addresses { description "Omit source and destination MAC addresses from the hash key"; type empty; } } } container hash-function { description "Configure hash functions"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice instance { case case_1 { leaf CRC16-CCITT { description "16-bit CRC16 using CCITT polynomial"; type empty; } } case case_2 { leaf CRC16 { description "16-bit CRC16 calculated using the BISYNC polynomial"; type empty; } } case case_3 { leaf CRC16XOR1 { description "Upper 8 bits BISYNC CRC16 and 8 bit XOR1"; type empty; } } case case_4 { leaf CRC16XOR2 { description "Upper 8 bit BISYNC CRC16 and 8 bit XOR2"; type empty; } } case case_5 { leaf CRC16XOR4 { description "Upper 8 bit BISYNC CRC16 and 8 bit XOR4"; type empty; } } case case_6 { leaf CRC16XOR8 { description "Upper 8 bit BISYNC CRC16 and 8 bit XOR8"; type empty; } } case case_7 { leaf CRC32HI { description "16 LSBs of computed CRC32"; type empty; } } case case_8 { leaf CRC32LO { description "16 MSBs of computed CRC32"; type empty; } } } } leaf symmetric { description "Enable symmetric load-balancing"; type empty; } } container rpf-loose-mode-discard { description "Configure rpf loose mode behavior"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container family { description "Protocol family"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf inet { description "Configure rpf loose mode behavior for IPv4"; type empty; } leaf inet6 { description "Configure rpf loose mode behavior for IPv6"; type empty; } } } container helpers { description "Port forwarding configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for helper"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Area of UDP forwarding helper process on which to enable debugging output"; leaf name { description "(null)"; type enumeration { enum trace { description "Trace tracing code"; } enum address { description "Trace address management code"; } enum main { description "Trace main loop code"; } enum config { description "Trace configuration code"; } enum ifdb { description "Trace interface database code"; } enum io { description "Trace I/O code"; } enum rtsock { description "Trace routing socket code"; } enum ui { description "Trace user interface code"; } enum util { description "Trace miscellaneous utility code"; } enum domain { description "Trace DNS service-specific code"; } enum tftp { description "Trace TFTP service-specific code"; } enum bootp { description "Trace BOOTP/DHCP service-specific code"; } enum port { description "Trace arbitrary protocol code"; } enum if-rtsdb { description "Trace interface hierarchy rtsdb"; } enum all { description "Trace all areas of code"; } } } } } container rtsdb-client-traceoptions { presence "enable rtsdb-client-traceoptions"; description "SHM rtsock database client library trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container if-rtsdb { presence "enable if-rtsdb"; description "Trace interface hierarchy rtsdb"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum init { description "Trace initialization"; } enum routing-socket { description "Trace routing socket messages"; } enum map { description "Trace shared memory mapping"; } enum all { description "Trace all"; } } } leaf disable { description "Disable this trace flag"; type empty; } } } } container domain { description "Incoming DNS request forwarding configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf description { description "Text description of server"; type string; } container server { description "Server information"; leaf address { description "Name or address of server to which to forward"; type ipv4addr; } choice instance { case case_1 { container logical-system { description "Logical system of server to which to forward"; leaf logical-system-name { description "Name of logical system"; type string { } mandatory true; } presence "enable logical-system"; leaf routing-instance { description "Routing instance of server to which to forward"; type string { } } } } case case_2 { leaf routing-instance { description "Routing instance of server to which to forward"; type string { } } } } } list interface { key name; ordered-by user; description "Incoming DNS request forwarding interface configuration"; leaf name { description "Name of interface or group of interfaces"; type interface-wildcard; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-listen { description "Do not listen on this interface"; type empty; } leaf broadcast { description "If the layer 2 interface is unknown then broadcast"; type empty; } leaf description { description "Text description of server"; type string; } container server { description "Server information"; leaf address { description "Name or address of server to which to forward"; type ipv4addr; } choice instance { case case_1 { container logical-system { description "Logical system of server to which to forward"; leaf logical-system-name { description "Name of logical system"; type string { } mandatory true; } presence "enable logical-system"; leaf routing-instance { description "Routing instance of server to which to forward"; type string { } } } } case case_2 { leaf routing-instance { description "Routing instance of server to which to forward"; type string { } } } } } } } container tftp { description "Incoming TFTP request forwarding configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf description { description "Text description of server"; type string; } container server { description "Server information"; leaf address { description "Name or address of server to which to forward"; type ipv4addr; } choice instance { case case_1 { container logical-system { description "Logical system of server to which to forward"; leaf logical-system-name { description "Name of logical system"; type string { } mandatory true; } presence "enable logical-system"; leaf routing-instance { description "Routing instance of server to which to forward"; type string { } } } } case case_2 { leaf routing-instance { description "Routing instance of server to which to forward"; type string { } } } } } list interface { key name; ordered-by user; description "Incoming TFTP request forwarding interface configuration"; leaf name { description "Name of interface or group of interfaces"; type interface-wildcard; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-listen { description "Do not listen on this interface"; type empty; } leaf broadcast { description "If the layer 2 interface is unknown then broadcast"; type empty; } leaf description { description "Text description of server"; type string; } container server { description "Server information"; leaf address { description "Name or address of server to which to forward"; type ipv4addr; } choice instance { case case_1 { container logical-system { description "Logical system of server to which to forward"; leaf logical-system-name { description "Name of logical system"; type string { } mandatory true; } presence "enable logical-system"; leaf routing-instance { description "Routing instance of server to which to forward"; type string { } } } } case case_2 { leaf routing-instance { description "Routing instance of server to which to forward"; type string { } } } } } } } container bootp { description "Incoming BOOTP/DHCP request forwarding configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf relay-agent-option { description "Use DHCP Relay Agent option in relayed BOOTP/DHCP messages"; type empty; } container dhcp-option82 { description "Configure DHCP option 82"; uses dhcp-option82-type; } leaf description { description "Text description of servers"; type string; } list server { key name; ordered-by user; description "Server information"; leaf name { description "Name or address of servers to which to forward"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list logical-system { key name; ordered-by user; description "Logical system of server to which to forward"; leaf name { description "Name of logical system"; type string { } mandatory true; } leaf-list routing-instance { description "Routing instance of server to which to forward"; type string; } } leaf-list routing-instance { description "Routing instance of server to which to forward"; type string; } } leaf maximum-hop-count { description "Maximum number of hops per packet"; default "4"; type uint32 { range "1 .. 16"; } } leaf minimum-wait-time { description "Minimum number of seconds before requests are forwarded"; default "0"; type uint32 { range "0 .. 30000"; } } leaf client-response-ttl { description "IP time-to-live value to set in responses to client"; type uint32 { range "1 .. 255"; } } leaf source-address-giaddr { description "Use GIADDR as the source IP address for relayed packets"; type empty; } leaf vpn { description "Enable vpn encryption "; type empty; } leaf apply-secondary-as-giaddr { description "Enable DHCP relay to use secondary gateway ip on all interfaces"; type empty; } list interface { key name; ordered-by user; description "Incoming BOOTP/DHCP request forwarding interface configuration"; leaf name { description "Name of interface or group of interfaces"; type interface-wildcard; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-listen { description "Do not listen on this interface"; type empty; } leaf broadcast { description "If the layer 2 interface is unknown then broadcast"; type empty; } leaf description { description "Text description of servers"; type string; } list server { key name; ordered-by user; description "Server information"; leaf name { description "Name or address of servers to which to forward"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list logical-system { key name; ordered-by user; description "Logical system of server to which to forward"; leaf name { description "Name of logical system"; type string { } mandatory true; } leaf-list routing-instance { description "Routing instance of server to which to forward"; type string; } } leaf-list routing-instance { description "Routing instance of server to which to forward"; type string; } } leaf maximum-hop-count { description "Maximum number of hops per packet"; default "4"; type uint32 { range "1 .. 16"; } } leaf minimum-wait-time { description "Minimum number of seconds before requests are forwarded"; default "0"; type uint32 { range "0 .. 30000"; } } leaf client-response-ttl { description "IP time-to-live value to set in responses to client"; type uint32 { range "1 .. 255"; } } leaf source-address-giaddr { description "Use GIADDR as the source IP address for relayed packets"; type empty; } leaf vpn { description "Enable vpn encryption "; type empty; } container dhcp-option82 { description "Configure DHCP option 82"; uses dhcp-option82-type; } leaf apply-secondary-as-giaddr { description "Enable DHCP relay to use secondary gateway ip on this interface"; type empty; } } } list port { key name; ordered-by user; description "Incoming arbitrary protocol request forwarding configuration"; leaf name { description "Port number of the protocol to listen"; type uint32 { range "1 .. 65535"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf description { description "Text description of server"; type string; } container server { description "Server information"; leaf address { description "Name or address of server to which to forward"; type ipv4addr; } choice instance { case case_1 { container logical-system { description "Logical system of server to which to forward"; leaf logical-system-name { description "Name of logical system"; type string { } mandatory true; } presence "enable logical-system"; leaf routing-instance { description "Routing instance of server to which to forward"; type string { } } } } case case_2 { leaf routing-instance { description "Routing instance of server to which to forward"; type string { } } } } } list interface { key name; ordered-by user; description "Incoming request forwarding interface configuration"; leaf name { description "Name of interface or group of interfaces"; type interface-wildcard; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-listen { description "Do not listen on this interface"; type empty; } leaf broadcast { description "If the layer 2 interface is unknown then broadcast"; type empty; } leaf description { description "Text description of server"; type string; } container server { description "Server information"; leaf address { description "Name or address of server to which to forward"; type ipv4addr; } choice instance { case case_1 { container logical-system { description "Logical system of server to which to forward"; leaf logical-system-name { description "Name of logical system"; type string { } mandatory true; } presence "enable logical-system"; leaf routing-instance { description "Routing instance of server to which to forward"; type string { } } } } case case_2 { leaf routing-instance { description "Routing instance of server to which to forward"; type string { } } } } } } } } container family { description "Protocol family"; container inet { description "IPv4 parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container filter { description "Filtering for forwarding table"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of input filter to apply for forwarded packets"; type string; } leaf output { description "Name of output filter to apply for forwarded packets"; type string; } } } container inet6 { description "IPv6 parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container filter { description "Filtering for forwarding table"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of input filter to apply for forwarded packets"; type string; } leaf output { description "Name of output filter to apply for forwarded packets"; type string; } } leaf route-accounting { description "Enable IPv6 route accounting"; type empty; } leaf source-checking { description "Discard IPv6 packet when source address type is unspecified, loopback, multicast or link-local "; type empty; } } container mpls { description "MPLS parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container filter { description "Filtering for forwarding table"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of input filter to apply for forwarded packets"; type string; } leaf output { description "Name of output filter to apply for forwarded packets"; type string; } } } container vpls { description "VPLS parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container filter { description "Filtering for VPLS DMAC forwarding table"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of input filter to apply for forwarded packets"; type string; } } container flood { description "Filtering for VPLS flood table"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of input filter to apply for VPLS flood packets"; type string; } } } } list next-hop-group { key name; description "Next hop group forwarding option"; uses juniper-next-hop-group-options; } container dhcp-relay { description "Dynamic Host Configuration Protocol relay configuration"; uses jdhcp-relay-type; } leaf load-balance-label-capability { description "Load balance label capability"; type empty; } leaf no-load-balance-label-capability { description "Disable load balance label capability"; type empty; } leaf fast-reroute-priority { description "Fast-reroute repair priority"; type enumeration { enum low { description "Set priority to low"; } enum medium { description "Set priority to medium"; } enum high { description "Set priority to high"; } } } leaf link-layer-broadcast-inet-check { description "Enable destination mac and destination ip address check"; type empty; } leaf cut-through { description "Enable cut-through forwarding"; type empty; } leaf vrf-fallback { description "Enable vrf-fallback forwarding. This will restart PFE"; type empty; } leaf ipmc-miss-do-l2mc { description "Do L2MC forwarding when IPMC miss"; type empty; } leaf hyper-mode { description "Enable hyper mode"; type empty; } } grouping dhcp-option82-type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable DHCP option 82 on this VLAN"; type empty; } container circuit-id { presence "enable circuit-id"; description "Configure DHCP option 82 circuit id"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf prefix { description "Configure DHCP option 82 circuit id prefix"; type enumeration { enum hostname { description "Set hostname as the prefix"; } } } leaf use-interface-description { description "Use interface description instead of name"; type empty; } leaf use-vlan-id { description "Use VLAN id instead of name"; type empty; } } container remote-id { presence "enable remote-id"; description "Configure DHCP option 82 remote id"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf prefix { description "Configure DHCP option 82 remote id prefix"; type enumeration { enum none { description "Set no prefix"; } enum hostname { description "Set hostname as the prefix"; } enum mac { description "Set chassis MAC as the prefix"; } } } leaf use-interface-description { description "Use interface description instead of name"; type empty; } leaf use-string { description "Use raw string instead of the default remote id"; type string; } } container vendor-id { presence "enable vendor-id"; description "Configure DHCP option 82 vendor id"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf use-string { description "Use raw string instead of the default vendor id"; type string; } } } grouping jdhcp-relay-type { description "Dynamic Host Configuration Protocol relay configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container duplicate-clients-in-subnet { description "Allow duplicate clients in a subnet"; uses jdhcp-duplicate-clients-in-subnet-type; } container dhcpv6 { description "DHCPv6 configuration"; uses dhcpv6-relay-type; } leaf arp-inspection { description "Enable Dynamic ARP Inspection"; type empty; } container forward-snooped-clients { description "Forward snooped (unicast) packets"; choice interface-type { case case_1 { leaf configured-interfaces { description "Forward snooped (unicast) packets on configured interfaces"; type empty; } } case case_2 { leaf non-configured-interfaces { description "Forward snooped (unicast) packets on non-configured interfaces"; type empty; } } case case_3 { leaf all-interfaces { description "Forward snooped (unicast) packets on configured and non-configured interfaces"; type empty; } } } } container authentication { description "DHCP authentication"; uses authentication-type; } container liveness-detection { description "DHCP client liveness detection processing"; uses dhcp-liveness-detection-type; } container dynamic-profile { description "Dynamic profile to use"; uses dynamic-profile-type; } leaf service-profile { description "Dynamic profile to use for default service activation"; type string { length "1 .. 128"; } } leaf access-profile { description "Access profile to use for AAA services"; type string { length "1 .. 128"; } } container overrides { description "DHCP override processing"; uses override-type; } container relay-option { description "DHCP option processing"; uses dhcp-generic-v4-option; } container relay-option-82 { description "DHCP option-82 processing"; uses relay-option-82-type; } container forward-only { description "Forward DHCP packets without creating binding"; uses forward-only-to-rc-type; } leaf forward-only-replies { description "Forward-only replies from server to appropriate logical-system:routing-instance based on options"; type empty; } container server-group { description "Define a DHCP server group"; uses server-group-type; } leaf active-server-group { description "Name of DHCP server group"; type string { length "1 .. 64"; } } container route-suppression { description "Suppress access-internal and/or destination route addition"; uses dhcp-route-suppression-type; } list group { key name; ordered-by user; description "Define a DHCP group"; uses dhcp-group; } leaf server-response-time { description "Number of seconds in a period of activity between the last server response and an unaswered request"; default "0"; type uint32; } container lease-time-validation { presence "enable lease-time-validation"; description "Configure lease time violation validation"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf lease-time-threshold { description "Threshold for lease time violation in seconds"; units "seconds"; type uint32 { range "60 .. 2147483647"; } } container violation-action { description "Lease time validation violation action"; leaf drop { description "Drop dhcpv4 offer and ack packets"; type empty; } } } } grouping authentication-type { description "DHCP authentication"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf password { description "Username password to use"; type string { length "1 .. 64"; } } container username-include { description "Add username options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf delimiter { description "Change delimiter/separator character"; type string { length 1; } } leaf domain-name { description "Add domain name"; type string { length "1 .. 64"; } } leaf user-prefix { description "Add user defined prefix"; type string { length "1 .. 64"; } } leaf mac-address { description "Include MAC address"; type empty; } container option-82 { presence "enable option-82"; description "Include option 82"; leaf circuit-id { description "Include option 82 circuit-id (sub option 1)"; type empty; } leaf remote-id { description "Include option 82 remote-id (sub option 2)"; type empty; } } leaf logical-system-name { description "Include logical system name"; type empty; } leaf routing-instance-name { description "Include routing instance name"; type empty; } leaf option-60 { description "Include option 60"; type empty; } leaf circuit-type { description "Include circuit type"; type empty; } leaf interface-name { description "Include interface name"; type empty; } } } grouping dhcp-generic-v4-option { description "Generic DHCP options processing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf option-number { description "Option number"; type enumeration { enum 60 { description "Option 60"; } enum 77 { description "Option 77"; } } } container equals { description "Generic option equals"; uses relay-v4-option-ascii-hex; } container default-action { description "Generic option default action"; uses dhcp-v4-option-default-action; } container starts-with { description "Generic option starts with"; uses relay-v4-option-ascii-hex; } } grouping dhcp-group { description "DHCP groups"; leaf name { description "Group name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf active-server-group { description "Name of DHCP server group"; type string { length "1 .. 64"; } } container authentication { description "DHCP authentication"; uses authentication-type; } container liveness-detection { description "DHCP client liveness detection processing"; uses dhcp-liveness-detection-type; } container dynamic-profile { description "Dynamic profile to use"; uses dynamic-profile-type; } leaf service-profile { description "Dynamic profile to use for default service activation"; type string { length "1 .. 128"; } } leaf access-profile { description "Access profile to use for AAA services"; type string { length "1 .. 128"; } } container overrides { description "DHCP override processing"; uses override-type; } container relay-option { description "DHCP option processing"; uses dhcp-generic-v4-option; } container relay-option-82 { description "DHCP option-82 processing"; uses relay-option-82-type; } container forward-only { description "Forward DHCP packets without creating binding"; uses forward-only-to-rc-type; } container route-suppression { description "Suppress access-internal and/or destination route addition"; uses dhcp-route-suppression-type; } list interface { key name; description "One or more interfaces"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf upto { description "Interface up to"; type interface-name; } leaf exclude { description "Exclude this interface range"; type empty; } leaf trace { description "Enable tracing for this interface"; type empty; } container overrides { description "DHCP override processing"; uses override-type; } container dynamic-profile { description "Dynamic profile to use"; uses dynamic-profile-type; } leaf service-profile { description "Dynamic profile to use for default service activation"; type string { length "1 .. 128"; } } leaf access-profile { description "Access profile to use for AAA services"; type string { length "1 .. 128"; } } } container lease-time-validation { presence "enable lease-time-validation"; description "Configure lease time violation validation"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf lease-time-threshold { description "Threshold for lease time violation in seconds"; units "seconds"; type uint32 { range "60 .. 2147483647"; } } container violation-action { description "Lease time validation violation action"; leaf drop { description "Drop dhcpv4 offer and ack packets"; type empty; } } } } grouping dhcp-liveness-detection-type { description "DHCP client liveness detection processing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container failure-action { description "Liveness detection failure action options"; uses dhcp-liveness-detection-failure-action-type; } container method { description "Liveness detection method options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice method-choice { case case_1 { container bfd { description "Bidirectional Forwarding Detection (BFD) options"; uses dhcp-bfd-liveness-detection-type; } } } } } grouping dhcp-bfd-liveness-detection-type { description "Bidirectional Forwarding Detection (BFD) options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "30000 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "30000 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "30000 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } leaf session-mode { description "BFD single-hop or multihop session-mode"; default "automatic"; type enumeration { enum automatic { description "Choose session-mode automatically"; } enum single-hop { description "Use single-hop"; } enum multihop { description "Use multihop"; } } } leaf holddown-interval { description "Time to hold the session-UP notification to the client"; default "0"; units "milliseconds"; type uint32 { range "0 .. 255000"; } } } grouping dhcp-liveness-detection-failure-action-type { description "Liveness detection failure action options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice failure-action-type { case case_1 { leaf clear-binding { description "Clear the client binding"; type empty; } } case case_2 { leaf clear-binding-if-interface-up { description "Clear the client binding only if the incoming interface is up"; type empty; } } case case_3 { leaf log-only { description "Maintain the client binding and log the failure event"; type empty; } } } } grouping dhcp-route-suppression-type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice dhcp-route-suppression-choice { case case_1 { leaf access-internal { description "Suppress access-internal and destination route addition"; type empty; } } case case_2 { leaf destination { description "Suppress destination route addition"; type empty; } } } } grouping dhcp-v4-option-default-action { description "Default action"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice server-group-choice { case case_1 { leaf relay-server-group { description "Name of DHCP relay server group when match is made"; type string { length "1 .. 64"; } } } case case_2 { leaf local-server-group { description "Name of DHCP local server group when match is made"; type string { length "1 .. 64"; } } } case case_3 { leaf drop { description "Discard when a match is made"; type empty; } } case case_4 { leaf forward-only { description "Forward without subscriber services when a match is made"; type empty; } } case case_5 { container relay-config { presence "enable relay-config"; description "Config changes relevant to a relay"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf relay-server-group { description "Name of DHCP relay server group when match is made"; type string { length "1 .. 64"; } } container dynamic-profile { description "Dynamic profile to use"; uses dynamic-profile-type; } leaf giaddr { description "Set the client's giaddr"; type ipaddr; } } } } } grouping dhcpv6-relay-type { description "DHCPv6 relay configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container authentication { description "DHCPv6 authentication"; uses dhcpv6-authentication-type; } container liveness-detection { description "DHCPv6 client liveness detection processing"; uses dhcpv6-liveness-detection-type; } container dynamic-profile { description "Dynamic profile to use"; uses dynamic-profile-type; } leaf service-profile { description "Dynamic profile to use for default service activation"; type string { length "1 .. 128"; } } leaf access-profile { description "Access profile to use for AAA services"; type string { length "1 .. 128"; } } container overrides { description "DHCPv6 override processing"; uses dhcpv6-override-relay-type; } container relay-option { description "DHCPv6 option processing"; uses dhcp-generic-v6-option; } container forward-only { description "Forward DHCPv6 packets without creating binding"; uses forward-only-to-rc-type; } leaf forward-only-replies { description "Forward-only replies from server to appropriate logical-system:routing-instance based on options"; type empty; } container route-suppression { description "Suppress access-internal and/or access route addition"; uses dhcpv6-route-suppression-type; } list group { key name; ordered-by user; description "Define a DHCPv6 relay group"; uses dhcpv6-relay-group; } container relay-agent-interface-id { description "DHCPv6 interface-id option processing"; uses v6-relay-option-interface-id-type; } container relay-agent-remote-id { description "DHCPv6 remote-id option processing"; uses v6-relay-option-remote-id-type; } container server-group { description "Define a DHCPv6 server group"; uses v6-server-group-type; } leaf active-server-group { description "Name of DHCPv6 server group"; type string { length "1 .. 64"; } } leaf server-response-time { description "Number of seconds in a period of activity between the last server response and an unaswered request"; default "0"; type uint32; } container lease-time-validation { presence "enable lease-time-validation"; description "Configure lease time violation validation"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf lease-time-threshold { description "Threshold for lease time violation in seconds"; units "seconds"; type uint32 { range "60 .. 2147483647"; } } container violation-action { description "Lease time validation violation action"; leaf drop { description "Drop dhcpv6 advertise and reply packets"; type empty; } } } } grouping dhcp-generic-v6-option { description "Generic DHCPv6 options processing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf option-number { description "Option number"; type enumeration { enum 15 { description "Option 15"; } enum 16 { description "Option 16"; } } } container equals { description "Generic option equals"; uses relay-v6-option-ascii-hex; } container default-action { description "Generic option default action"; uses dhcp-v6-option-default-action; } container starts-with { description "Generic option starts with"; uses relay-v6-option-ascii-hex; } } grouping dhcp-v6-option-default-action { description "Default action"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice server-group-choice { case case_1 { leaf relay-server-group { description "Name of DHCP relay server group when match is made"; type string { length "1 .. 64"; } } } case case_2 { leaf drop { description "Discard when a match is made"; type empty; } } case case_3 { leaf forward-only { description "Forward without subscriber services when a match is made"; type empty; } } } } grouping dhcpv6-authentication-type { description "DHCPv6 authentication"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf password { description "Username password to use"; type string { length "1 .. 64"; } } container username-include { description "Add username options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf delimiter { description "Change delimiter/separator character"; type string { length 1; } } leaf domain-name { description "Add domain name"; type string { length "1 .. 64"; } } leaf user-prefix { description "Add user defined prefix"; type string { length "1 .. 64"; } } leaf client-id { description "Include client ID"; type empty; } container relay-agent-remote-id { presence "enable relay-agent-remote-id"; description "Include the relay agent remote ID"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice relay-agent-remote-id-choice { } } leaf logical-system-name { description "Include logical system name"; type empty; } leaf routing-instance-name { description "Include routing instance name"; type empty; } leaf relay-agent-subscriber-id { description "Include the relay agent subscriber ID"; type empty; } leaf relay-agent-interface-id { description "Include the relay agent interface ID"; type empty; } leaf circuit-type { description "Include circuit type"; type empty; } leaf interface-name { description "Include interface name"; type empty; } } } grouping dhcpv6-liveness-detection-type { description "DHCPv6 client liveness detection processing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container failure-action { description "Liveness detection failure action options"; uses dhcp-liveness-detection-failure-action-type; } container method { description "Liveness detection method options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice method-choice { case case_1 { container bfd { description "Bidirectional Forwarding Detection (BFD) options"; uses dhcp-bfd-liveness-detection-type; } } } } } grouping dhcpv6-override-relay-type { description "DHCPv6 relay override processing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf allow-snooped-clients { description "Allow client creation from snooped PDUs"; type empty; } leaf no-allow-snooped-clients { description "Allow client creation from snooped PDUs"; type empty; } leaf delay-authentication { description "Delay subscriber authentication in DHCP protocol processing until request packet"; type empty; } leaf interface-client-limit { description "Limit the number of clients allowed on an interface"; type uint32 { range "1 .. 500000"; } } leaf no-bind-on-request { description "Do not bind if stray DHCPv6 RENEW, REBIND is received"; type empty; } leaf send-release-on-delete { description "Always send RELEASE to the server when a binding is deleted"; type empty; } leaf always-process-option-request-option { description "Always process option even after address allocation failure"; type empty; } } grouping dhcpv6-relay-group { description "DHCPv6 groups"; leaf name { description "Group name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf active-server-group { description "Name of DHCPv6 server group"; type string { length "1 .. 64"; } } container authentication { description "DHCPv6 authentication"; uses dhcpv6-authentication-type; } container liveness-detection { description "DHCPv6 client liveness detection processing"; uses dhcpv6-liveness-detection-type; } container dynamic-profile { description "Dynamic profile to use"; uses dynamic-profile-type; } leaf service-profile { description "Dynamic profile to use for default service activation"; type string { length "1 .. 128"; } } leaf access-profile { description "Access profile to use for AAA services"; type string { length "1 .. 128"; } } container overrides { description "DHCPv6 override processing"; uses dhcpv6-override-relay-type; } container relay-option { description "DHCPv6 option processing"; uses dhcp-generic-v6-option; } container forward-only { description "Forward DHCPv6 packets without creating binding"; uses forward-only-to-rc-type; } container relay-agent-interface-id { description "DHCPv6 interface-id option processing"; uses v6-relay-option-interface-id-type; } container relay-agent-remote-id { description "DHCPv6 remote-id option processing"; uses v6-relay-option-remote-id-type; } container route-suppression { description "Suppress access-internal and/or access route addition"; uses dhcpv6-route-suppression-type; } list interface { key name; description "One or more interfaces"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf upto { description "Interface up to"; type interface-name; } leaf exclude { description "Exclude this interface range"; type empty; } leaf trace { description "Enable tracing for this interface"; type empty; } container overrides { description "DHCPv6 override processing"; uses dhcpv6-override-relay-type; } container dynamic-profile { description "Dynamic profile to use"; uses dynamic-profile-type; } leaf service-profile { description "Dynamic profile to use for default service activation"; type string { length "1 .. 128"; } } leaf access-profile { description "Access profile to use for AAA services"; type string { length "1 .. 128"; } } } container lease-time-validation { presence "enable lease-time-validation"; description "Configure lease time violation validation"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf lease-time-threshold { description "Threshold for lease time violation in seconds"; units "seconds"; type uint32 { range "60 .. 2147483647"; } } container violation-action { description "Lease time validation violation action"; leaf drop { description "Drop dhcpv6 advertise and reply packets"; type empty; } } } } grouping dhcpv6-route-suppression-type { description "Suppress access-internal and/or access route addition"; leaf access { description "Suppress access route addition"; type empty; } leaf access-internal { description "Suppress access-internal route addition"; type empty; } } grouping dynamic-profile-type { description "Dynamic profile to use"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf dynamic-profile { description "Dynamic profile to use"; type string { length "1 .. 80"; } mandatory true; } choice dynamic-profile-type-choice { case case_1 { leaf use-primary { description "Dynamic profile to use on the primary interface"; type string { length "1 .. 80"; } } } case case_2 { container aggregate-clients { presence "enable aggregate-clients"; description "Aggregate client profiles"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice aggregate-type { case case_1 { leaf merge { description "Merge the client dynamic profiles"; type empty; } } case case_2 { leaf replace { description "Replace client dynamic profiles"; type empty; } } } } } } } grouping forward-only-to-rc-type { description "Forward DHCP packets without creating binding"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf logical-system { description "(null)"; default "current"; type string; } leaf routing-instance { description "(null)"; default "current"; type string; } } grouping jdhcp-duplicate-clients-in-subnet-type { description "Allow duplicate clients in a subnet"; choice distinguish-with { case case_1 { leaf incoming-interface { description "Allow duplicate clients on different interfaces in a subnet"; type empty; } } case case_2 { leaf option-82 { description "Allow duplicate clients using different option-82 options in a subnet"; type empty; } } } } grouping juniper-group { description "Configuration groups"; uses juniper-config; leaf name { description "Group name"; type string { length "1 .. 254"; } } container when { description "Specify additional conditions for groups"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container time { description "Time at which group should be effective"; leaf start-time { description "Start time([yyyy-mm-dd.]hh:mm)"; type string; } container to { description "End time"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf end-time { description "End time([yyyy-mm-dd.]hh:mm)"; type string; } } } leaf chassis { description "Chassis id"; type enumeration { enum lcc0 { description "Chassis lcc0"; } enum lcc1 { description "Chassis lcc1"; } enum lcc2 { description "Chassis lcc2"; } enum lcc3 { description "Chassis lcc3"; } enum lcc4 { description "Chassis lcc4"; } enum lcc5 { description "Chassis lcc5"; } enum lcc6 { description "Chassis lcc6"; } enum lcc7 { description "Chassis lcc7"; } enum scc { description "Chassis scc"; } enum sfc0 { description "Chassis sfc0"; } } } leaf model { description "Model name"; type string; } leaf routing-engine { description "Routing Engine"; type enumeration { enum re0 { description "RE0"; } enum re1 { description "RE1"; } } } leaf member { description "Member of virtual chassis"; type string; } leaf node { description "Node of cluster"; type enumeration { enum node0 { description "Node0"; } enum node1 { description "Node1"; } } } } } grouping juniper-logical-system { description "Logical system configuration"; leaf name { description "Logical system name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container interfaces { description "Interface configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list interface { key name; description "(null)"; uses lr_interfaces_type; } } container protocols { description "Routing protocol configuration"; uses juniper-protocols; } container policy-options { description "Policy option configuration"; uses juniper-policy-options; } container routing-instances { description "Routing instance configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list instance { key name; description "(null)"; uses juniper-routing-instance; } } container routing-options { description "Protocol-independent routing option configuration"; uses juniper-routing-options; } container forwarding-options { description "Configure options to control packet forwarding"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container dhcp-relay { description "Dynamic Host Configuration Protocol relay configuration"; uses jdhcp-relay-type; } container sampling { presence "enable sampling"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container family { description "Address family of packets to sample"; container inet { description "Sample IPv4 packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container output { description "Configure output options for packet sampling"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list flow-server { key name; description "Configure sending traffic aggregates in cflowd format"; max-elements 8; uses cflowd_sampling_inet_lr_type; } } } container mpls { description "Sample MPLS packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container output { description "Configure output options for packet sampling"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list flow-server { key name; description "Configure sending traffic aggregates in cflowd format"; max-elements 8; uses cflowd_sampling_mpls_lr_type; } } } } list instance { key name; ordered-by user; description "Instance of sampling parameters"; leaf name { description "Name for sampling instance"; type string; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable sampling instance"; type empty; } } } container family { description "Address family of packets to sample"; container inet { description "Sample IPv4 packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container output { description "Configure output options for packet sampling"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list flow-server { key name; description "Configure sending traffic aggregates in cflowd format"; max-elements 8; uses cflowd_sampling_inet_lr_inst_type; } } } container mpls { description "Sample MPLS packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container output { description "Configure output options for packet sampling"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list flow-server { key name; description "Configure sending traffic aggregates in cflowd format"; max-elements 8; uses cflowd_sampling_mpls_lr_inst_type; } } } } } } } container system { description "System parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container arp { presence "enable arp"; description "ARP settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf aging-timer { description "Change the ARP aging time value"; units "minutes"; type int32 { range "1 .. 240"; } } container interfaces { description "Logical interface on which to specify ARP aging timer"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list arp-interface { key name; description "(null)"; uses arp-interface-type; } } leaf passive-learning { description "ARP passive learning"; type empty; } leaf purging { description "ARP purging when link goes down"; type empty; } leaf gratuitous-arp-on-ifup { description "Gratuitous ARP announcement on interface up"; type empty; } leaf gratuitous-arp-delay { description "Delay gratuitous ARP request"; type int32; } } container services { description "System services"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container dhcp-local-server { description "Dynamic Host Configuration Protocol server configuration"; uses jdhcp-local-server-type; } container dhcp-proxy-client { description "Dynamic Host Configuration Protocol Proxy client configuration"; uses jdhcp-proxy-client-type; } container static-subscribers { description "Static Subscriber Client configuration"; uses jsscd-static-subscribers-type; } } container syslog { description "System logging facility"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container archive { description "Archive file information"; uses archive-object; } list user { key name; ordered-by user; description "Notify a user of the event"; leaf name { description "Name of user to notify"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list contents { key name; description "(null)"; uses syslog-object; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } leaf allow-duplicates { description "Do not suppress the repeated message"; type empty; } } list host { key name; ordered-by user; description "Host to be notified"; leaf name { description "Name of host to notify"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list contents { key name; description "(null)"; uses syslog-object; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } leaf allow-duplicates { description "Do not suppress the repeated message"; type empty; } leaf port { description "Port number"; type uint16; } leaf facility-override { description "Alternate facility for logging to remote host"; type enumeration { enum authorization { description "Authorization system"; } enum daemon { description "Various system processes"; } enum ftp { description "FTP process"; } enum kernel { description "Kernel"; } enum user { description "User processes"; } enum local0 { description "Local logging option number 0"; } enum local1 { description "Local logging option number 1"; } enum local2 { description "Local logging option number 2"; } enum local3 { description "Local logging option number 3"; } enum local4 { description "Local logging option number 4"; } enum local5 { description "Local logging option number 5"; } enum local6 { description "Local logging option number 6"; } enum local7 { description "Local logging option number 7"; } } } leaf log-prefix { description "Prefix for all logging to this host"; type string { } } leaf source-address { description "Use specified address as source address"; type ipaddr; } leaf explicit-priority { description "Include priority and facility in messages"; type empty; } leaf exclude-hostname { description "Exclude hostname field in messages"; type empty; } container structured-data { presence "enable structured-data"; description "Log system message in structured format"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice format { case case_1 { leaf brief { description "Omit English-language text from end of logged message"; type empty; } } } } } leaf allow-duplicates { description "Do not suppress the repeated message for all targets"; type empty; } list file { key name; ordered-by user; description "File in which to log data"; leaf name { description "Name of file in which to log data"; type string { length "1 .. 1024"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list contents { key name; description "(null)"; uses syslog-object; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } leaf allow-duplicates { description "Do not suppress the repeated message"; type empty; } container archive { description "Archive file information"; uses archive-object; } leaf explicit-priority { description "Include priority and facility in messages"; type empty; } container structured-data { presence "enable structured-data"; description "Log system message in structured format"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice format { case case_1 { leaf brief { description "Omit English-language text from end of logged message"; type empty; } } } } } list console { key name; description "Console logging"; leaf name { description "Facility type"; type enumeration { enum any { description "All facilities"; } enum authorization { description "Authorization system"; } enum daemon { description "Various system processes"; } enum ftp { description "FTP process"; } enum ntp { description "NTP process"; } enum security { description "Security related"; } enum kernel { description "Kernel"; } enum user { description "User processes"; } enum dfc { description "Dynamic flow capture"; } enum external { description "Local external applications"; } enum firewall { description "Firewall filtering system"; } enum pfe { description "Packet Forwarding Engine"; } enum conflict-log { description "Configuration conflict log"; } enum change-log { description "Configuration change log"; } enum interactive-commands { description "Commands executed by the UI"; } } } choice level { case case_1 { leaf any { description "All levels"; type empty; } } case case_2 { leaf emergency { description "Panic conditions"; type empty; } } case case_3 { leaf alert { description "Conditions that should be corrected immediately"; type empty; } } case case_4 { leaf critical { description "Critical conditions"; type empty; } } case case_5 { leaf error { description "Error conditions"; type empty; } } case case_6 { leaf warning { description "Warning messages"; type empty; } } case case_7 { leaf notice { description "Conditions that should be handled specially"; type empty; } } case case_8 { leaf info { description "Informational messages"; type empty; } } case case_9 { leaf none { description "No messages"; type empty; } } } } container time-format { presence "enable time-format"; description "Additional information to include in system log timestamp"; leaf year { description "Include year in timestamp"; type empty; } leaf millisecond { description "Include milliseconds in timestamp"; type empty; } } leaf source-address { description "Use specified address as source address"; type ipaddr; } leaf log-rotate-frequency { description "Rotate log frequency"; default "15"; units "minutes"; type uint32 { range "1 .. 59"; } } container server { presence "enable server"; description "Enable syslog server"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list routing-instances { key name; ordered-by user; description "Enable/disable syslog server in routing-instances"; leaf name { description "Routing instance name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container disable { presence "enable disable"; description "Disable syslog server in this routing instance"; } } } } container processes { description "Process control"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container routing { presence "enable routing"; description "Routing process"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice mode { case case_1 { leaf force-32-bit { description "Always use 32-bit mode"; type empty; } } case case_2 { leaf force-64-bit { description "Always use 64-bit mode"; type empty; } } case case_3 { leaf auto-64-bit { description "Ignored; same as force-32-bit"; type empty; } } } } } } container access { description "Network access configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container address-assignment { description "Address assignment configuration"; uses address-assignment-type; } leaf address-protection { description "Initiate Duplicate Address Protection"; type empty; } } container access-profile { description "Access profile for this instance"; leaf access-profile-name { description "Profile name"; type string; } } container firewall { description "Define a firewall configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container family { description "Protocol family"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container inet { description "Protocol family IPv4 for firewall filter"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list dialer-filter { key name; ordered-by user; description "Define an IPv4 dialer filter"; uses inet_dialer_filter; } list prefix-action { key name; ordered-by user; description "Define a prefix action"; uses prefix_action; } list filter { key name; ordered-by user; description "Define an IPv4 firewall filter"; uses inet_filter; } list simple-filter { key name; ordered-by user; description "Define an IPv4 firewall simple filter"; uses inet_simple_filter; } list service-filter { key name; ordered-by user; description "One or more IPv4 service filters"; uses inet_service_filter; } list fast-update-filter { key name; ordered-by user; description "One or more fast update filters"; uses inet_fuf; } } container inet6 { description "Protocol family IPv6 for firewall filter"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list dialer-filter { key name; ordered-by user; description "Define an IPv6 dialer filter"; uses inet6_dialer_filter; } list filter { key name; ordered-by user; description "Define an IPv6 firewall filter"; uses inet6_filter; } list service-filter { key name; ordered-by user; description "One or more IPv6 service filters"; uses inet6_service_filter; } list fast-update-filter { key name; ordered-by user; description "One or more fast update filters"; uses inet6_fuf; } } container mpls { description "Protocol family MPLS for firewall filter"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list dialer-filter { key name; ordered-by user; description "Define an mpls dialer filter"; uses mpls_dialer_filter; } list filter { key name; ordered-by user; description "(null)"; uses mpls_filter; } } container vpls { description "Protocol family VPLS for firewall filter"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list filter { key name; ordered-by user; description "(null)"; uses vpls_filter; } } container bridge { description "Protocol family BRIDGE for firewall filter"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list filter { key name; ordered-by user; description "(null)"; uses bridge_filter; } } container ccc { description "Protocol family CCC for firewall filter"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list filter { key name; ordered-by user; description "(null)"; uses ccc_filter; } } container any { description "Protocol-independent filter"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list filter { key name; ordered-by user; description "Define a protocol-independent filter"; uses any_filter; } } container ethernet-switching { description "Protocol family Ethernet Switching for firewall filter"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list filter { key name; ordered-by user; description "Define an Ethernet Switching firewall filter"; uses es_filter; } } } list policer { key name; ordered-by user; description "Policer template definition"; uses firewall_policer; } list flexible-match { key name; ordered-by user; description "Flexible packet match template definition"; uses firewall_flexible_match; } list tunnel-end-point { key name; ordered-by user; description "Tunnel end-point template definition"; uses tunnel_end_point; } list hierarchical-policer { key name; ordered-by user; description "Hierarchical policer template definition"; uses firewall_hierpolicer; } list interface-set { key name; ordered-by user; description "Interface set definition"; uses interface_set_type; } list load-balance-group { key name; ordered-by user; description "Load-balance group definition"; uses firewall_load_balance_group; } list atm-policer { key name; ordered-by user; description "Atm policer"; uses atm-policer-type; } list three-color-policer { key name; ordered-by user; description "Three-color policer"; uses three-color-policer-type; } list filter { key name; ordered-by user; description "Define an IPv4 firewall filter"; uses inet_filter; } } container multicast-snooping-options { description "Multicast snooping option configuration"; uses juniper-multicast-snooping-options; } container services { description "Service PIC daemon configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container flow-monitoring { presence "enable flow-monitoring"; description "Configure flow monitoring under logical-systems"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container version9 { description "Version 9 configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list template { key name; ordered-by user; description "One or more version 9 templates"; max-elements 10; uses version9-template; } } } } container bridge-domains { description "Bridge domain configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list domain { key name; description "(null)"; uses juniper-bridge-domains; } } container vlans { description "VLAN configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list vlan { key name; description "Virtual LAN"; uses vlan-types; } } container switch-options { description "Options for default routing-instance of type virtual-switch"; uses juniper-def-rtb-switch-options; } } grouping archive-object { leaf size { description "Size of files to be archived"; units "bytes"; type string; } leaf files { description "Number of files to be archived"; type string; } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf binary-data { description "Mark file as if it contains binary data"; type empty; } leaf no-binary-data { description "Mark file as if it contains binary data"; type empty; } leaf transfer-interval { description "Frequency at which to transfer files to archive sites"; units "minutes"; type uint32 { range "5 .. 2880"; } } leaf start-time { description "Start time for file transmission (yyyy-mm-dd.hh:mm)"; type time; } list archive-sites { key name; ordered-by user; description "(null)"; leaf name { description "Primary and failover URLs to receive archive files"; type string; } leaf password { description "Password for login into the archive site"; type unreadable; } } } grouping arp-interface-type { description "Logical interface on which to configure ARP aging timer"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf aging-timer { description "Change the ARP aging time value"; units "minutes"; type uint32 { range "1 .. 600000"; } mandatory true; } } grouping cflowd_sampling_inet_lr_inst_type { leaf name { description "Name of host collecting cflowd packets"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port { description "UDP port number on host collecting cflowd packets"; type uint16; mandatory true; } leaf routing-instance { description "Name of routing instance on which flow collector is reachable"; type string; } leaf autonomous-system-type { description "Type of autonomous system number to export"; default "origin"; type enumeration { enum origin { description "Export origin-AS numbers"; } enum peer { description "Export peer-AS numbers"; } } } container aggregation { description "Aggregations to perform for exported flows (version 8 only)"; uses aggregation_type; } leaf local-dump { description "Dump cflowd records to log file before exporting"; type empty; } leaf no-local-dump { description "Dump cflowd records to log file before exporting"; type empty; } leaf source-address { description "Source IPv4 address for cflowd packets"; type ipv4addr; } container version9 { presence "enable version9"; description "Export data in version 9 format"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container template { description "Template configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf template-name { description "Template name"; type string; mandatory true; } presence "enable template"; } } } grouping aggregation_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf autonomous-system { description "Aggregate by autonomous system number"; type empty; } leaf protocol-port { description "Aggregate by protocol and port number"; type empty; } leaf source-prefix { description "Aggregate by source prefix"; type empty; } leaf destination-prefix { description "Aggregate by destination prefix"; type empty; } container source-destination-prefix { presence "enable source-destination-prefix"; description "Aggregate by source and destination prefix"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf caida-compliant { description "Compatible with Caida record format for prefix aggregation (v8)"; type empty; } } } grouping cflowd_sampling_inet_lr_type { leaf name { description "Name of host collecting cflowd packets"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port { description "UDP port number on host collecting cflowd packets"; type uint16; mandatory true; } leaf routing-instance { description "Name of routing instance on which flow collector is reachable"; type string; } leaf autonomous-system-type { description "Type of autonomous system number to export"; default "origin"; type enumeration { enum origin { description "Export origin-AS numbers"; } enum peer { description "Export peer-AS numbers"; } } } container aggregation { description "Aggregations to perform for exported flows (version 8 only)"; uses aggregation_type; } leaf local-dump { description "Dump cflowd records to log file before exporting"; type empty; } leaf no-local-dump { description "Dump cflowd records to log file before exporting"; type empty; } leaf source-address { description "Source IPv4 address for cflowd packets"; type ipv4addr; } container version9 { presence "enable version9"; description "Export data in version 9 format"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container template { description "Template configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf template-name { description "Template name"; type string; mandatory true; } presence "enable template"; } } } grouping cflowd_sampling_mpls_lr_inst_type { leaf name { description "Name of host collecting cflowd packets"; type ipaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port { description "UDP port number on host collecting cflowd packets"; type uint16; mandatory true; } leaf routing-instance { description "Name of routing instance on which flow collector is reachable"; type string; } leaf autonomous-system-type { description "Type of autonomous system number to export"; default "origin"; type enumeration { enum origin { description "Export origin-AS numbers"; } enum peer { description "Export peer-AS numbers"; } } } container aggregation { description "Aggregations to perform for exported flows (version 8 only)"; uses aggregation_type; } leaf local-dump { description "Dump cflowd records to log file before exporting"; type empty; } leaf no-local-dump { description "Dump cflowd records to log file before exporting"; type empty; } leaf source-address { description "Source IPv4 address for cflowd packets"; type ipv4addr; } container version9 { presence "enable version9"; description "Export data in version 9 format"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container template { description "Template configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf template-name { description "Template name"; type string; mandatory true; } presence "enable template"; } } } grouping cflowd_sampling_mpls_lr_type { leaf name { description "Name of host collecting cflowd packets"; type ipaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port { description "UDP port number on host collecting cflowd packets"; type uint16; mandatory true; } leaf routing-instance { description "Name of routing instance on which flow collector is reachable"; type string; } leaf autonomous-system-type { description "Type of autonomous system number to export"; default "origin"; type enumeration { enum origin { description "Export origin-AS numbers"; } enum peer { description "Export peer-AS numbers"; } } } container aggregation { description "Aggregations to perform for exported flows (version 8 only)"; uses aggregation_type; } leaf local-dump { description "Dump cflowd records to log file before exporting"; type empty; } leaf no-local-dump { description "Dump cflowd records to log file before exporting"; type empty; } leaf source-address { description "Source IPv4 address for cflowd packets"; type ipv4addr; } container version9 { presence "enable version9"; description "Export data in version 9 format"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container template { description "Template configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf template-name { description "Template name"; type string; mandatory true; } presence "enable template"; } } } grouping jdhcp-local-server-type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container dhcpv6 { description "DHCPv6 configuration"; uses dhcpv6-local-server-type; } list pool-match-order { key name; ordered-by user; description "Define order of attribute matching for pool selection"; leaf name { description "Match type"; type enumeration { enum external-authority { description "External authority handles address selection"; } enum ip-address-first { description "IP address used first to select a pool"; } enum option-82 { description "Option 82 used in matching of pool"; } enum option-82-strict { description "Option 82 used in strict matching of pool"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container duplicate-clients-in-subnet { description "Allow duplicate clients in a subnet"; uses jdhcp-duplicate-clients-in-subnet-type; } container forward-snooped-clients { description "Forward snooped (unicast) packets"; choice interface-type { case case_1 { leaf configured-interfaces { description "Forward snooped (unicast) packets on configured interfaces"; type empty; } } case case_2 { leaf non-configured-interfaces { description "Forward snooped (unicast) packets on non-configured interfaces"; type empty; } } case case_3 { leaf all-interfaces { description "Forward snooped (unicast) packets on configured and non-configured interfaces"; type empty; } } } } container authentication { description "DHCP authentication"; uses authentication-type; } container liveness-detection { description "DHCP client liveness detection processing"; uses dhcp-liveness-detection-type; } container reconfigure { description "DHCP reconfigure processing"; uses reconfigure-type; } container overrides { description "DHCP override processing"; uses override-local-server-type; } container dynamic-profile { description "Dynamic profile to use"; uses dynamic-profile-type; } leaf service-profile { description "Dynamic profile to use for default service activation"; type string { length "1 .. 128"; } } leaf access-profile { description "Access profile to use for AAA services"; type string { length "1 .. 128"; } } container route-suppression { description "Suppress access-internal and/or destination route addition"; uses dhcp-route-suppression-type; } list group { key name; ordered-by user; description "Define a DHCP local server group"; uses dhcp-local-server-group; } container lease-time-validation { presence "enable lease-time-validation"; description "Configure lease time violation validation"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf lease-time-threshold { description "Threshold for lease time violation seconds"; units "seconds"; type uint32 { range "60 .. 2147483647"; } } container violation-action { description "Lease time validation violation action"; choice violation-action-choice { case case_1 { leaf strict { description "Reject discover and renew"; type empty; } } case case_2 { leaf override-lease { description "Override assigned lease time with threshold"; type empty; } } } } } leaf requested-ip-network-match { description "Subnet to match server's address for active and giaddr for passive clients"; default "8"; type uint32 { range "0 .. 31"; } } } grouping dhcp-local-server-group { description "DHCP groups"; leaf name { description "Group name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container authentication { description "DHCP authentication"; uses authentication-type; } container liveness-detection { description "DHCP client liveness detection processing"; uses dhcp-liveness-detection-type; } container reconfigure { description "DHCP reconfigure processing"; uses reconfigure-type; } container overrides { description "DHCP override processing"; uses override-local-server-type; } container dynamic-profile { description "Dynamic profile to use"; uses dynamic-profile-type; } leaf service-profile { description "Dynamic profile to use for default service activation"; type string { length "1 .. 128"; } } leaf access-profile { description "Access profile to use for AAA services"; type string { length "1 .. 128"; } } container route-suppression { description "Suppress access-internal and/or destination route addition"; uses dhcp-route-suppression-type; } list interface { key name; description "One or more interfaces"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf upto { description "Interface up to"; type interface-name; } leaf exclude { description "Exclude this interface range"; type empty; } leaf trace { description "Enable tracing for this interface"; type empty; } container overrides { description "DHCP override processing"; uses override-local-server-type; } container dynamic-profile { description "Dynamic profile to use"; uses dynamic-profile-type; } leaf service-profile { description "Dynamic profile to use for default service activation"; type string { length "1 .. 128"; } } leaf access-profile { description "Access profile to use for AAA services"; type string { length "1 .. 128"; } } } container lease-time-validation { presence "enable lease-time-validation"; description "Configure lease time violation validation"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf lease-time-threshold { description "Threshold for lease time violation seconds"; units "seconds"; type uint32 { range "60 .. 2147483647"; } } container violation-action { description "Lease time validation violation action"; choice violation-action-choice { case case_1 { leaf strict { description "Reject discover and renew"; type empty; } } case case_2 { leaf override-lease { description "Override assigned lease time with threshold"; type empty; } } } } } } grouping dhcpv6-local-server-type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container authentication { description "DHCPv6 authentication"; uses dhcpv6-authentication-type; } container liveness-detection { description "DHCPv6 client liveness detection processing"; uses dhcpv6-liveness-detection-type; } container reconfigure { description "DHCPv6 reconfigure processing"; uses dhcpv6-reconfigure-type; } container dynamic-profile { description "Dynamic profile to use"; uses dynamic-profile-type; } leaf service-profile { description "Dynamic profile to use for default service activation"; type string { length "1 .. 128"; } } leaf access-profile { description "Access profile to use for AAA services"; type string { length "1 .. 128"; } } container overrides { description "DHCPv6 override processing"; uses dhcpv6-override-local-server-type; } container route-suppression { description "Suppress access-internal and/or access route addition"; uses dhcpv6-route-suppression-type; } list group { key name; ordered-by user; description "Define a DHCPv6 local server group"; uses dhcpv6-local-server-group; } container lease-time-validation { presence "enable lease-time-validation"; description "Configure lease time violation validation"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf lease-time-threshold { description "Threshold for lease time violation seconds"; units "seconds"; type uint32 { range "60 .. 2147483647"; } } container violation-action { description "Lease time validation violation action"; choice violation-action-choice { case case_1 { leaf strict { description "Reject solicit and renew"; type empty; } } case case_2 { leaf override-lease { description "Override assigned lease time with threshold"; type empty; } } } } } leaf requested-ip-network-match { description "Subnet to match server's address for active and link-address for passive clients"; default "16"; type uint32 { range "0 .. 127"; } } } grouping dhcpv6-local-server-group { description "DHCP groups"; leaf name { description "Group name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container authentication { description "DHCP authentication"; uses dhcpv6-authentication-type; } container liveness-detection { description "DHCPv6 client liveness detection processing"; uses dhcpv6-liveness-detection-type; } container reconfigure { description "DHCPv6 reconfigure processing"; uses dhcpv6-reconfigure-type; } container dynamic-profile { description "Dynamic profile to use"; uses dynamic-profile-type; } leaf service-profile { description "Dynamic profile to use for default service activation"; type string { length "1 .. 128"; } } leaf access-profile { description "Access profile to use for AAA services"; type string { length "1 .. 128"; } } container overrides { description "DHCP override processing"; uses dhcpv6-override-local-server-type; } container route-suppression { description "Suppress access-internal and/or access route addition"; uses dhcpv6-route-suppression-type; } list interface { key name; description "One or more interfaces"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf upto { description "Interface up to"; type interface-name; } leaf exclude { description "Exclude this interface range"; type empty; } leaf trace { description "Enable tracing for this interface"; type empty; } container overrides { description "DHCP override processing"; uses dhcpv6-override-local-server-type; } container dynamic-profile { description "Dynamic profile to use"; uses dynamic-profile-type; } leaf service-profile { description "Dynamic profile to use for default service activation"; type string { length "1 .. 128"; } } leaf access-profile { description "Access profile to use for AAA services"; type string { length "1 .. 128"; } } } container lease-time-validation { presence "enable lease-time-validation"; description "Configure lease time violation validation"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf lease-time-threshold { description "Threshold for lease time violation seconds"; units "seconds"; type uint32 { range "60 .. 2147483647"; } } container violation-action { description "Lease time validation violation action"; choice violation-action-choice { case case_1 { leaf strict { description "Reject solicit and renew"; type empty; } } case case_2 { leaf override-lease { description "Override assigned lease time with threshold"; type empty; } } } } } } grouping dhcpv6-override-local-server-type { description "DHCP override processing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interface-client-limit { description "Limit the number of clients allowed on an interface"; type uint32 { range "1 .. 500000"; } } leaf rapid-commit { description "Enable rapid commit processing"; type empty; } container process-inform { presence "enable process-inform"; description "Process INFORMATION request PDUs"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf pool { description "Pool name for family inet6"; type string { length "1 .. 64"; } } } leaf delegated-pool { description "Delegated pool name for inet6"; type string { length "1 .. 64"; } } leaf multi-address-embedded-option-response { description "If the client requests multiple addresses place the options in each address"; type empty; } leaf always-process-option-request-option { description "Always process option even after address allocation failure"; type empty; } } grouping dhcpv6-reconfigure-type { description "DHCPv6 reconfigure processing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf strict { description "Only allow packets containing Reconfigure Accept Option"; type empty; } leaf clear-on-abort { description "Delete client on reconfiguration abort"; type empty; } leaf attempts { description "Number of reconfigure attempts before aborting"; type uint32 { range "1 .. 10"; } } leaf timeout { description "Initial timeout value for retry"; type uint32 { range "1 .. 10"; } } leaf token { description "Reconfigure token"; type string { length "1 .. 244"; } } container trigger { description "DHCP reconfigure trigger"; uses reconfigure-trigger-type; } } grouping jdhcp-proxy-client-type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list dhcpv4-profiles { key name; ordered-by user; description "DHCPv4 proxy client profile configuration"; uses dhcpv4-profile; } list dhcpv6-profiles { key name; ordered-by user; description "DHCPv6 proxy client profile configuration"; uses dhcpv6-profile; } container traceoptions { description "DHCP proxy-client trace options"; uses jdhcp-traceoptions-type; } } grouping dhcpv4-profile { description "DHCPv4 proxy client configuration"; leaf name { description "DHCP proxy client profile name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf pool-name { description "This pool name will be sent to sever in subnet-name-suboption(3) of subnet allocation option(220). It is optional. It shall be sent only if configured."; type string { length "1 .. 63"; } } leaf lease-time { description "Default least time requested in seconds. If DHCP client does not get the lease time from DHCP server, it will use this default lease time as the lease time. By default, the value of lease-time is zero"; type uint16 { range "60 .. 1000"; } } leaf retransmission-attempt { description "Number of attempts to retransmit the DHCP client protocol message"; default "4"; type uint16 { range "0 .. 1000"; } } leaf retransmission-interval { description "Number of seconds between successive retransmissions of DHCP client protocols messages"; default "4"; type uint16 { range "4 .. 64"; } } leaf dead-server-retry-interval { description "Number of seconds before reconnecting to a server which was marked as down in previous attempts"; default "300"; type uint16 { range "300 .. 3600"; } } leaf dhcp-server-selection-algorithm { description "DHCP server selection algorithm to be used"; default "round-robin"; type enumeration { enum highest-priority-server { description "System will try the highest priority server first"; } enum round-robin { description "System will use round-robin method to select the server"; } } } leaf dead-server-successive-retry-attempt { description "Number of successive retry attempts before declaring an unresponsive server as dead"; default "10"; type uint16 { range "5 .. 1000"; } } leaf bind-interface { description "Primary IPv4 address of bind-interface is source of DHCP packets"; type interface-unit; mandatory true; } list servers { key name; ordered-by user; description "DHCP server"; max-elements 5; leaf name { description "DHCP server IPv4 address"; type ipv4addr; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf priority { description "Server priority"; default "3"; type uint8 { range "1 .. 5"; } } } } grouping dhcpv6-profile { description "DHCPv6 proxy client configuration"; leaf name { description "DHCP proxy client profile name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf pool-name { description "This pool name will be sent to sever in subnet-name-suboption(3) of subnet allocation option(220). It is optional. It shall be sent only if configured."; type string { length "1 .. 63"; } } leaf lease-time { description "Default least time requested in seconds. If DHCP client does not get the lease time from DHCP server, it will use this default lease time as the lease time. By default, the value of lease-time is zero"; type uint16 { range "60 .. 1000"; } } leaf retransmission-attempt { description "Number of attempts to retransmit the DHCP client protocol message"; default "4"; type uint16 { range "0 .. 1000"; } } leaf retransmission-interval { description "Number of seconds between successive retransmissions of DHCP client protocols messages"; default "4"; type uint16 { range "4 .. 64"; } } leaf bind-interface { description "Source interface of DHCP control packets"; type interface-unit; mandatory true; } } grouping jdhcp-traceoptions-type { description "Trace options for DHCP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "DHCP operations to include in debugging trace"; leaf name { description "(null)"; type enumeration { enum state { description "State-transition operations"; } enum packet { description "Packet-decoding operations"; } enum all { description "All operations"; } enum database { description "Database operations"; } enum interface { description "Interface operations"; } enum rtsock { description "Routing socket operations"; } enum io { description "I/O operations"; } enum ha { description "High Availability-related operations"; } enum ui { description "User Interface operations"; } enum general { description "Miscellaneous operations"; } enum fwd { description "Firewall process operations"; } enum rpd { description "Routing Protocol process operations"; } enum auth { description "Authentication operations"; } enum profile { description "Profile operations"; } enum session-db { description "Session database operations"; } enum performance { description "Performance measurement operations"; } enum statistics { description "Baseline statistics operations"; } enum liveness-detection { description "Liveness detection operations"; } enum security-persistence { description "Liveness detection operations"; } } } } } grouping jsscd-static-subscribers-type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container access-profile { description "Access profile reference"; uses jsscd-access-profile-type; } container dynamic-profile { description "Dynamic profile reference"; uses jsscd-dynamic-profile-type; } container authentication { description "Static Subscriber Client authentication"; uses jsscd-authentication-type; } list group { key name; ordered-by user; description "Static Subscriber Client group configuration"; uses jsscd-group-type; } } grouping jsscd-access-profile-type { description "Access profile for static subscribers"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf access-profile-name { description "Profile name"; type string; } } grouping jsscd-authentication-type { description "Static Subscriber Client authentication"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf password { description "Username password to use"; type unreadable; } container username-include { description "Add username options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf domain-name { description "Add domain name"; type string { length "1 .. 64"; } } leaf user-prefix { description "Add user defined prefix"; type string { length "1 .. 64"; } } leaf interface { description "Include interface name"; type empty; } leaf logical-system-name { description "Include logical system name"; type empty; } leaf routing-instance-name { description "Include routing instance name"; type empty; } } } grouping jsscd-dynamic-profile-type { description "Dynamic profile to use"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf dynamic-profile-name { description "Dynamic profile to use"; type string { length "1 .. 80"; } } container aggregate-clients { presence "enable aggregate-clients"; description "Aggregate client profiles"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice aggregate-type { case case_1 { leaf merge { description "Merge the client dynamic profiles"; type empty; } } case case_2 { leaf replace { description "Replace client dynamic profiles"; type empty; } } } } } grouping jsscd-group-type { leaf name { description "Group name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container access-profile { description "Access profile reference"; uses jsscd-access-profile-type; } container dynamic-profile { description "Dynamic profile reference"; uses jsscd-dynamic-profile-type; } container authentication { description "Static Subscriber Client authentication"; uses jsscd-authentication-type; } list interface { key name; description "One or more interfaces"; leaf name { description "Interface name"; type interface-unit; } leaf upto { description "Interface up to"; type interface-unit; } leaf exclude { description "Exclude this interface range"; type empty; } } } grouping juniper-mobile-diameter { description "Diameter protocol layer"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options related to DIAMETER servers"; uses diameter-traceoptions; } container origin { presence "enable origin"; description "Origin attributes of this diameter instance"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf realm { description "Origin realm of this diameter instance"; type string { length "1 .. 255"; } mandatory true; } leaf host { description "Origin host of this diameter instance"; type string { length "1 .. 255"; } mandatory true; } } leaf vendor-id { description "Vendor-Id to advertize in Capability-Exchange"; default "2636"; type uint32 { range "1 .. 4294967295"; } } leaf firmware-revision { description "Firmware-Revision to advertize in Capability-Exchange"; default "0"; type uint32 { range "0 .. 4294967295"; } } leaf product-name { description "Product-Name to advertize in Capability-Exchange"; default "0"; type string { length "1 .. 127"; } } list network-element { key name; ordered-by user; description "Network element of this diameter instance"; leaf name { description "Name for this network element"; type string { length "1 .. 31"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list function { description "Diameter function associated with by this network element"; type enumeration { enum pcc-gx { description "Policy and Charging Control Application Gx function"; } enum dcca-gy { description "Diameter Credit Control Application Gy function"; } } max-elements 3; } list peer { key name; ordered-by user; description "Peer associated with this network element"; leaf name { description "Name of a peer associated with this network element"; type string { length "1 .. 31"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf priority { description "Peer priority with this network element"; type uint32 { range "1 .. 65535"; } mandatory true; } leaf timeout { description "Peer timeout with this network element in seconds"; default "4"; type uint32 { range "1 .. 100"; } } } } list transport { key name; ordered-by user; description "Diameter transport configuration"; max-elements 31; leaf name { description "Name for this transport definition"; type string { length "1 .. 31"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf address { description "Source IP address for a peer"; type ipaddr; mandatory true; } choice instance { case case_1 { leaf routing-instance { description "Routing instance of server to which to forward"; type string { } } } } } list peer { key name; ordered-by user; description "Diameter peer configuration"; max-elements 31; leaf name { description "Name for this Diameter peer"; type string { length "1 .. 31"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf address { description "IP Address of Diameter peer"; type ipaddr; mandatory true; } container connect-actively { presence "enable connect-actively"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf transport { description "Name of transport"; type string { length "1 .. 31"; } mandatory true; } leaf port { description "Peer port"; default "3868"; type uint16 { range "1 .. 65535"; } } leaf capabilities-exchange-timeout { description "Time to wait in Wait-I-CEA state"; default "10"; units "seconds"; type uint32 { range "1 .. 65535"; } } leaf repeat-timeout { description "Timer to reconnect after getting DO_NOT_WANT_TO_TALK_TO_YOU in DPR"; default "0"; units "seconds"; type uint32 { range "0 .. 65535"; } } leaf retry-timeout { description "Time to wait between connection attempts"; default "30"; units "seconds"; type uint32 { range "1 .. 65535"; } } leaf timeout { description "Time to wait in Wait-Conn-Ack state"; default "10"; units "seconds"; type uint32 { range "1 .. 65535"; } } } container incoming-queue { presence "enable incoming-queue"; description "Incoming queue properties of this peer"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf size { description "Incoming queue size for this peer"; type uint32 { range "1 .. 65535"; } mandatory true; } } container outgoing-queue { presence "enable outgoing-queue"; description "Outgoing queue properties of this peer"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf size { description "Outgoing queue size for this peer"; type uint32 { range "1 .. 65535"; } mandatory true; } leaf low-watermark { description "Low watermark in percentage for outgoing queue of this peer"; default "60"; type uint16 { range "1 .. 100"; } } leaf high-watermark { description "High watermark in percentage for outgoing queue of this peer"; default "80"; type uint16 { range "1 .. 100"; } } } leaf watchdog-timeout { description "Time to wait for Device-Watchdog-Answer"; default "30"; units "seconds"; type uint32 { range "1 .. 65535"; } } leaf disconnect-peer-timeout { description "Time to wait in Closing state"; default "10"; units "seconds"; type uint32 { range "1 .. 65535"; } } leaf origin-host-prefix { description "Peer-specific prefix for local Origin-Host"; type string { length "1 .. 255"; } } } container applications { presence "enable applications"; description "Diameter applications related configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container pcc-gx { presence "enable pcc-gx"; description "Policy and Charging Control Application Gx configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum-pending-requests { description "Maximum pending requests for this application"; default "40000"; type uint16 { range "1000 .. 65535"; } } } container dcca-gy { presence "enable dcca-gy"; description "Diameter Credit Control Application Gy configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum-pending-requests { description "Maximum pending requests for this application"; default "40000"; type uint16 { range "1000 .. 65535"; } } } } } grouping diameter-traceoptions { description "Trace options related to DIAMETER peers"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum send { description "Trace transmitted packets"; } enum send-detail { description "Trace transmitted packets in detail"; } enum receive { description "Trace received packets"; } enum receive-detail { description "Trace received packets in detail"; } enum timeout { description "Trace timeout events"; } enum state { description "Trace DIAMTER peer state changes"; } enum all { description "Trace everything"; } } } } list peer { key name; ordered-by user; description "Trace packet sent to or received from the peer[s]"; leaf name { description "Trace packet sent to or received from the peer"; type string { length "1 .. 31"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } grouping juniper-monitoring-options { leaf name { description "Name for monitoring group"; type string; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container family { description "Address family of packets to monitor"; container inet { presence "enable inet"; description "Monitor IPv4 packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container output { description "Monitoring data disposition"; uses monitoring_output_type; } } } } grouping juniper-multicast-snooping-options { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container options { description "Miscellaneous options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container syslog { description "Set system logging level"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container level { description "Logging level"; leaf emergency { description "Emergency level"; type empty; } leaf alert { description "Alert level"; type empty; } leaf critical { description "Critical level"; type empty; } leaf error { description "Error level"; type empty; } leaf warning { description "Warning level"; type empty; } leaf notice { description "Notice level"; type empty; } leaf info { description "Informational level"; type empty; } leaf debug { description "Debugging level"; type empty; } } leaf upto { description "Log up to a particular logging level"; type enumeration { enum emergency { description "Emergency level"; } enum alert { description "Alert level"; } enum critical { description "Critical level"; } enum error { description "Error level"; } enum warning { description "Warning level"; } enum notice { description "Notice level"; } enum info { description "Informational level"; } enum debug { description "Debugging level"; } } } leaf mark { description "Periodically mark the trace file"; units "seconds"; type int32; } } } container traceoptions { description "Multicast snooping trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum parse { description "Trace configuration parsing"; } enum config-internal { description "Trace configuration internals"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf disable { description "Disable this trace flag"; type empty; } } } container forwarding-cache { description "Multicast forwarding cache"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container threshold { description "Threshold"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf suppress { description "Suppress threshold"; type uint32 { range "1 .. 200000"; } } leaf reuse { description "Reuse threshold"; type uint32 { range "1 .. 200000"; } } } } leaf-list flood-groups { description "Groups for which the traffic will be flooded"; type ipaddr; } container host-outbound-traffic { description "Host generated protocol packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf forwarding-class { description "Forwarding class name"; type string { } } leaf dot1p { description "Dot1p bits"; type uint32 { range "0 .. 7"; } } } container graceful-restart { description "Configure graceful restart attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable graceful restart"; type empty; } } } leaf restart-duration { description "Maximum time for graceful restart to finish"; default "180"; units "seconds"; type uint32 { range "0 .. 300"; } } } leaf ignore-stp-topology-change { description "Don't process stp topology change"; type empty; } leaf multichassis-lag-replicate-state { description "Enable multichassis lag replication"; type empty; } leaf nexthop-hold-time { description "Nexthop hold time in milliseconds"; units "milliseconds"; type uint32 { range "1 .. 1000"; } } } grouping juniper-next-hop-group-options { leaf name { description "Next hop group name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf group-type { description "Next hop group type"; default "inet"; type enumeration { enum inet { description "Group of family inet next-hops"; } enum layer-2 { description "Layer-2 next-hop group"; } enum inet6 { description "Group of family inet6 next-hops"; } } } list interface { key name; description "Interfaces through which to send sampled traffic"; uses next_hop_group_intf_type; } list next-hop-subgroup { key name; description "Group of interfaces through which to send sampled traffic"; uses juniper-next-hop-subgroup-options; } } grouping juniper-next-hop-subgroup-options { leaf name { description "Next-hop sub-group name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list interface { key name; description "Interface through which to send the sampled traffic"; max-elements 16; uses next_hop_subgroup_intf_type; } } grouping juniper-packet-accounting-options { leaf name { description "Name for accounting group"; type string; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container output { description "Accounting data disposition"; uses packet_accounting_output_type; } } grouping juniper-packet-capture-options { description "Packet capture options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable packet-capture"; type empty; } } } container file { description "Parameters for file that contains captured packets"; leaf filename { description "Name of file"; type string { length "1 .. 900"; } mandatory true; } presence "enable file"; leaf files { description "Maximum number of files"; default "10"; type uint32 { range "2 .. 10000"; } } leaf size { description "Maximum file size"; type string; } leaf world-readable { description "Allow any user to read packet-capture files"; type empty; } leaf no-world-readable { description "Allow any user to read packet-capture files"; type empty; } } leaf maximum-capture-size { description "Maximum packet size to capture"; default "68"; units "bytes"; type uint32 { range "68 .. 1500"; } } } grouping juniper-pic-services-logging-options { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Fsad trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum init { description "Trace initialization events"; } enum connections { description "Trace connection-specific events"; } enum flow-collector { description "Trace flow collector specific events"; } enum all { description "Trace everything"; } } } } } } grouping juniper-policy-options { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container satellite-policies { description "Satellite Policy configuration"; uses satellite-policy-options; } list prefix-list { key name; ordered-by user; description "Define a named set of address prefixes"; leaf name { description "Prefix list name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list prefix-list-item { key name; description "(null)"; uses prefix_list_items; } leaf apply-path { description "Apply IP prefixes from a configuration statement"; type string; } } list vsi-policy { key name; ordered-by user; description "Define a named set of VSI policies"; leaf name { description "VSI policy name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Conditions to match the VSI policy"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list vsi-manager { key "vsi-manager-id vsi-type vsi-version vsi-instance"; ordered-by user; description "VSI manager"; leaf vsi-manager-id { description "VSI manager ID"; type uint32 { range "1 .. 255"; } } leaf vsi-type { description "VSI type"; type uint32 { range "1 .. 16777216"; } } leaf vsi-version { description "VSI version"; type uint32 { range "1 .. 255"; } } leaf vsi-instance { description "VSI instance"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } container then { description "Actions to take if 'from' conditions match"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf filter { description "Filter name"; type string; mandatory true; } presence "enable then"; } } list policy-statement { key name; description "Routing policy"; leaf name { description "Name to identify a policy filter"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container defaults { description "Policy default behaviour"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container route-filter { description "Set route filter behaviour"; choice scope-choice { case case_1 { leaf no-walkup { description "Route filter walk up disable"; type empty; } } case case_2 { leaf walkup { description "Route filter walk up enable"; type empty; } } } } } list term { key name; ordered-by user; description "Policy term"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Conditions to match the source of a route"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf instance { description "Routing protocol instance"; type string; } leaf family { description "(null)"; type enumeration { enum inet { description "IPv4 family"; } enum inet-vpn { description "IPv4-VPN family"; } enum inet6 { description "IPv6 family"; } enum inet6-vpn { description "IPv6-VPN family"; } enum iso { description "ISO family"; } enum evpn { description "EVPN family"; } enum inet-mvpn { description "IPv4 Multicast VPN family"; } enum inet6-mvpn { description "IPv6 Multicast VPN family"; } enum inet-mdt { description "IPv4 MDT Signaling family"; } enum route-target { description "Local route target VPN family"; } enum traffic-engineering { description "Traffic Engineering family"; } } } leaf-list protocol { description "Protocol from which route was learned"; type enumeration { enum aggregate { description "Aggregate routes"; } enum bgp { description "BGP"; } enum direct { description "Directly connected routes"; } enum dvmrp { description "Distance Vector Multicast Routing Protocol"; } enum isis { description "Intermediate System-to-Intermediate System"; } enum esis { description "End System-to-Intermediate System"; } enum l2circuit { description "Layer 2 circuits"; } enum l2vpn { description "Layer 2 MPLS virtual private networks"; } enum local { description "Local system addresses"; } enum ospf { description "Open Shortest Path First"; } enum ospf2 { description "Open Shortest Path First Version 2"; } enum ospf3 { description "Open Shortest Path First Version 3"; } enum pim { description "Protocol Independent Multicast"; } enum rip { description "Routing Information Protocol"; } enum ripng { description "Routing Information Protocol next generation"; } enum static { description "Statically defined addresses"; } enum arp { description "Addresses learned from ARP"; } enum frr { description "Addresses created by Host Fast Re-route"; } enum mpls { description "Multiprotocol Label Switching"; } enum ldp { description "Label Distribution Protocol"; } enum rsvp { description "Resource Reservation Protocol"; } enum msdp { description "Multicast Source Discovery Protocol"; } enum route-target { description "Local route target VPN membership"; } enum access { description "Access server routes"; } enum access-internal { description "Internal routes to directly connected clients"; } enum anchor { description "Anchor routes connected to UEs"; } enum bgp-static { description "BGP static routes"; } enum vpls { description "Virtual Private LAN Service"; } enum evpn { description "Ethernet VPN Service"; } } } leaf rib { description "Routing table"; type string; } leaf-list neighbor { description "Neighboring router"; type ipaddr; } leaf-list next-hop { description "Next-hop router"; type ipaddr; } leaf-list interface { description "Interface name or address"; type ipaddr-or-interface; } leaf area { description "OSPF area identifier"; type areaid; } leaf-list as-path { description "Name of AS path regular expression (BGP only)"; type string; } leaf-list as-path-group { description "Name of AS path group (BGP only)"; type string; } leaf origin { description "BGP origin attribute"; type enumeration { enum igp { description "Path originated in the local IGP"; } enum egp { description "Path originated in another AS"; } enum incomplete { description "Path was learned by some other means"; } } } leaf-list community { description "BGP community"; type string; } leaf level { description "IS-IS level"; type uint32; } container external { presence "enable external"; description "External route"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf type { description "OSPF external metric type"; type int32 { range "1 .. 2"; } } } leaf validation-database { description "Name to identify a validation-state"; type enumeration { enum valid { description "Match for valid database validation-state"; } enum invalid { description "Match for invalid database validation-state"; } enum unknown { description "Match for unknown database validation-state"; } } } leaf metric { description "Metric value"; type uint32; } leaf metric2 { description "Metric value 2"; type uint32; } leaf metric3 { description "Metric value 3"; type uint32; } leaf metric4 { description "Metric value 4"; type uint32; } leaf-list tag { description "Tag string"; type uint32; } leaf tag2 { description "Tag string 2"; type uint32; } leaf preference { description "Preference value"; type uint32; } leaf preference2 { description "Preference value 2"; type uint32; } leaf color { description "Color (preference) value"; type uint32; } leaf color2 { description "Color (preference) value 2"; type uint32; } leaf local-preference { description "Local preference associated with a route"; type uint32; } leaf-list policy { description "Name of policy to evaluate"; type policy-algebra; } list route-filter { key address; ordered-by user; description "List of routes to match"; uses control_route_filter_type; } list source-address-filter { key address; ordered-by user; description "List of source addresses to match"; uses control_source_address_filter_type; } list prefix-list { key name; ordered-by user; description "List of prefix-lists of routes to match"; uses control_prefix_list_type; } list prefix-list-filter { key list_name; ordered-by user; description "List of prefix-list-filters to match"; uses control_prefix_list_filter_type; } list rtf-prefix-list { key name; ordered-by user; description "List of rtf-prefix-lists of routes to match"; uses control_rtf_prefix_list_type; } container multicast-scope { description "Multicast scope to match"; choice scope-choice { case case_1 { leaf node-local { description "Node-local scope"; type empty; } } case case_2 { leaf link-local { description "Link-local scope"; type empty; } } case case_3 { leaf site-local { description "Site-local scope"; type empty; } } case case_4 { leaf organization-local { description "Organization-local scope"; type empty; } } case case_5 { leaf global { description "Global scope"; type empty; } } case case_6 { leaf scope_value { description "Scope value"; type uint32 { range "0 .. 15"; } } } } choice scope-operator { case case_1 { leaf orhigher { description "Match higher values"; type empty; } } case case_2 { leaf orlower { description "Match lower values"; type empty; } } } } leaf aggregate-contributor { description "Match more specifics of an aggregate"; type empty; } leaf state { description "Route state"; type enumeration { enum active { description "Active route"; } enum inactive { description "Inactive route"; } } } leaf route-type { description "Route type"; type enumeration { enum internal { description "Internal route"; } enum external { description "External route"; } } } leaf-list nlri-route-type { description "Route type from NLRI"; type uint32 { range "1 .. 10"; } } leaf next-hop-type { description "Next-hop type"; type enumeration { enum merged { description "Merged next hop"; } } } leaf-list condition { description "Condition to match on"; type string; } list community-count { key name; ordered-by user; description "Number of BGP communities"; uses community_count_type; } container traffic-engineering { presence "enable traffic-engineering"; description "Traffic-Engineering related parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list protocol { description "Protocol that originated the entry"; type enumeration { enum direct { description "Directly originated"; } enum ospf { description "OSPF originated"; } enum isis-level-1 { description "ISIS level-1 originated"; } enum isis-level-2 { description "ISIS level-2 originated"; } enum static { description "Statically originated"; } enum unknown { description "Originated by unknown sources"; } } } container node { presence "enable node"; description "Node-related parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf as { description "AS number"; type string { } } leaf node-type { description "Real or pseudo-node"; type enumeration { enum router { description "Real node"; } enum pseudo-node { description "Pseudo-node"; } } } leaf router-id { description "IP prefix to match the router-id against"; type ipprefix; } leaf sys-id { description "ISO address of the node"; type sysid; } } container link { presence "enable link"; description "Link-related parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Specify parameter of the 'from' side"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf as { description "AS number"; type string { } } leaf router-id { description "IP prefix to match the router-id against"; type ipprefix; } leaf sys-id { description "System-ID of the node"; type sysid; } leaf node-type { description "Type of the node"; type enumeration { enum router { description "Real node"; } enum pseudo-node { description "Pseudo-node"; } } } leaf link-address { description "IP prefix to match the link address against"; type ipprefix; } } container to { description "Specify parameters of the 'to' side"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf as { description "AS number"; type string { } } leaf router-id { description "IP prefix to match the router-id against"; type ipprefix; } leaf sys-id { description "System-ID of the node"; type sysid; } leaf node-type { description "Type of the node"; type enumeration { enum router { description "Real node"; } enum pseudo-node { description "Pseudo-node"; } } } leaf link-address { description "IP prefix to match the link address against"; type ipprefix; } } } } } container to { description "Conditions to match the destination of a route"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf instance { description "Routing protocol instance"; type string; } leaf family { description "(null)"; type enumeration { enum inet { description "IPv4 family"; } enum inet-vpn { description "IPv4-VPN family"; } enum inet6 { description "IPv6 family"; } enum inet6-vpn { description "IPv6-VPN family"; } enum iso { description "ISO family"; } enum evpn { description "EVPN family"; } enum inet-mvpn { description "IPv4 Multicast VPN family"; } enum inet6-mvpn { description "IPv6 Multicast VPN family"; } enum inet-mdt { description "IPv4 MDT Signaling family"; } enum route-target { description "Local route target VPN family"; } enum traffic-engineering { description "Traffic Engineering family"; } } } leaf-list protocol { description "Protocol from which route was learned"; type enumeration { enum aggregate { description "Aggregate routes"; } enum bgp { description "BGP"; } enum direct { description "Directly connected routes"; } enum dvmrp { description "Distance Vector Multicast Routing Protocol"; } enum isis { description "Intermediate System-to-Intermediate System"; } enum esis { description "End System-to-Intermediate System"; } enum l2circuit { description "Layer 2 circuits"; } enum l2vpn { description "Layer 2 MPLS virtual private networks"; } enum local { description "Local system addresses"; } enum ospf { description "Open Shortest Path First"; } enum ospf2 { description "Open Shortest Path First Version 2"; } enum ospf3 { description "Open Shortest Path First Version 3"; } enum pim { description "Protocol Independent Multicast"; } enum rip { description "Routing Information Protocol"; } enum ripng { description "Routing Information Protocol next generation"; } enum static { description "Statically defined addresses"; } enum arp { description "Addresses learned from ARP"; } enum frr { description "Addresses created by Host Fast Re-route"; } enum mpls { description "Multiprotocol Label Switching"; } enum ldp { description "Label Distribution Protocol"; } enum rsvp { description "Resource Reservation Protocol"; } enum msdp { description "Multicast Source Discovery Protocol"; } enum route-target { description "Local route target VPN membership"; } enum access { description "Access server routes"; } enum access-internal { description "Internal routes to directly connected clients"; } enum anchor { description "Anchor routes connected to UEs"; } enum bgp-static { description "BGP static routes"; } enum vpls { description "Virtual Private LAN Service"; } enum evpn { description "Ethernet VPN Service"; } } } leaf rib { description "Routing table"; type string; } leaf-list neighbor { description "Neighboring router"; type ipaddr; } leaf-list next-hop { description "Next-hop router"; type ipaddr; } leaf-list interface { description "Interface name or address"; type ipaddr-or-interface; } leaf area { description "OSPF area identifier"; type areaid; } leaf-list as-path { description "Name of AS path regular expression (BGP only)"; type string; } leaf-list as-path-group { description "Name of AS path group (BGP only)"; type string; } leaf origin { description "BGP origin attribute"; type enumeration { enum igp { description "Path originated in the local IGP"; } enum egp { description "Path originated in another AS"; } enum incomplete { description "Path was learned by some other means"; } } } leaf-list community { description "BGP community"; type string; } leaf level { description "IS-IS level"; type uint32; } container external { presence "enable external"; description "External route"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf type { description "OSPF external metric type"; type int32 { range "1 .. 2"; } } } leaf validation-database { description "Name to identify a validation-state"; type enumeration { enum valid { description "Match for valid database validation-state"; } enum invalid { description "Match for invalid database validation-state"; } enum unknown { description "Match for unknown database validation-state"; } } } leaf metric { description "Metric value"; type uint32; } leaf metric2 { description "Metric value 2"; type uint32; } leaf metric3 { description "Metric value 3"; type uint32; } leaf metric4 { description "Metric value 4"; type uint32; } leaf-list tag { description "Tag string"; type uint32; } leaf tag2 { description "Tag string 2"; type uint32; } leaf preference { description "Preference value"; type uint32; } leaf preference2 { description "Preference value 2"; type uint32; } leaf color { description "Color (preference) value"; type uint32; } leaf color2 { description "Color (preference) value 2"; type uint32; } leaf local-preference { description "Local preference associated with a route"; type uint32; } leaf-list policy { description "Name of policy to evaluate"; type policy-algebra; } } container then { description "Actions to take if 'from' and 'to' conditions match"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container metric { description "Metric value"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf metric { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } case case_4 { container igp { presence "enable igp"; description "Track the IGP metric (BGP only)"; leaf metric_offset { description "Metric offset for MED"; type int32; } } } case case_5 { container minimum-igp { presence "enable minimum-igp"; description "Track the minimum IGP metric (BGP only)"; leaf metric_offset { description "Metric offset for MED"; type int32; } } } case case_6 { container expression { description "Calculate value based on route metric and metric2"; uses metric_expression_type; } } } } container metric2 { description "Metric value 2"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf metric2 { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container metric3 { description "Metric value 3"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf metric3 { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container metric4 { description "Metric value 4"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf metric4 { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container tag { description "Tag string"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf tag { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container tag2 { description "Tag string 2"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf tag2 { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container preference { description "Preference value"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf preference { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container preference2 { description "Preference value 2"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf preference2 { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container color { description "Color (preference) value"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf color { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container color2 { description "Color (preference) value 2"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf color2 { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container local-preference { description "Local preference associated with a route"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf local-preference { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } leaf priority { description "Set priority for route installation"; type enumeration { enum high { description "Set priority to high"; } enum medium { description "Set priority to medium"; } enum low { description "Set priority to low"; } } } leaf label-allocation { description "Set label allocation mode"; type enumeration { enum per-table { description "Set per-table label allocation mode"; } enum per-nexthop { description "Set per-nexthop label allocation mode"; } enum per-table-localize { description "Set per-table-localize label allocation mode"; } } } container add-path { description "Set BGP add-path attributes"; leaf send-count { description "Number of add-paths sent"; type uint32 { range "2 .. 20"; } } } leaf validation-state { description "Set validation-state of a route"; type enumeration { enum valid { description "Set validaton-state to valid"; } enum invalid { description "Set validation-state to invalid"; } enum unknown { description "Set validation-state to unknown"; } } } leaf origin { description "BGP path origin"; type enumeration { enum igp { description "Path originated in the local IGP"; } enum egp { description "Path originated in another AS"; } enum incomplete { description "Path was learned by some other means"; } } } container aigp-originate { presence "enable aigp-originate"; description "Originate a BGP AIGP attribute"; leaf distance { description "AIGP distance"; type uint32; } } list community { key "community-name"; ordered-by user; description "BGP community properties associated with a route"; choice community-action { case case_1 { leaf equal-literal { description "Set the BGP communities in the route"; type empty; } } case case_2 { leaf set { description "Set the BGP communities in the route"; type empty; } } case case_3 { leaf plus-literal { description "Add BGP communities to the route"; type empty; } } case case_4 { leaf add { description "Add BGP communities to the route"; type empty; } } case case_5 { leaf minus-literal { description "Remove BGP communities from the route"; type empty; } } case case_6 { leaf delete { description "Remove BGP communities from the route"; type empty; } } } leaf community-name { description "Name to identify a BGP community"; type string; } } leaf damping { description "Define BGP route flap damping parameters"; type string; } leaf as-path-prepend { description "Prepend AS numbers to an AS path (BGP only)"; type string; } container as-path-expand { description "Prepend AS numbers prior to adding local-as (BGP only)"; choice aspath_exp_value { case case_1 { container last-as { presence "enable last-as"; description "Prepend last AS"; leaf count { description "Repeat count"; type uint32 { range "1 .. 32"; } } } } case case_2 { leaf aspath { description "AS path string"; type string; } } } } container next-hop { description "Set the address of the next-hop router"; choice nexthop_value { case case_1 { leaf self { description "Use a local address as the next-hop address"; type empty; } } case case_2 { leaf peer-address { description "Use the remote peer address as the next-hop address"; type empty; } } case case_3 { leaf address { description "Next-hop address"; type ipaddr; } } case case_4 { leaf reject { description "Use a reject next hop"; type empty; } } case case_5 { leaf discard { description "Use a discard next hop"; type empty; } } case case_6 { leaf next-table { description "Perform a forwarding lookup in the specified table"; type string; } } } } container install-nexthop { description "Choose the next hop to be used for forwarding"; leaf strict { description "Do not use any other available next hops"; type empty; } choice nexthop-value { case case_1 { leaf-list lsp { description "Next-hop LSP name"; type string; } } case case_2 { leaf-list lsp-regex { description "Next-hop LSP name regular expression"; type string; } } case case_3 { leaf-list static-lsp { description "Next-hop static LSP name"; type string; } } case case_4 { leaf-list static-lsp-regex { description "Next-hop static LSP name regular expression"; type string; } } } container except { description "Do not choose to install matching next hops"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice nexthop-value { case case_1 { leaf-list lsp { description "Next-hop LSP name"; type string; } } case case_2 { leaf-list lsp-regex { description "Next-hop LSP name regular expression"; type string; } } case case_3 { leaf-list static-lsp { description "Next-hop static LSP name"; type string; } } case case_4 { leaf-list static-lsp-regex { description "Next-hop static LSP name regular expression"; type string; } } } } } leaf trace { description "Log matches to a trace file"; type empty; } container external { presence "enable external"; description "External route"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf type { description "OSPF external metric type"; type int32 { range "1 .. 2"; } } leaf nssa-only { description "Clear P-bit on lsa type 7"; type empty; } } container load-balance { description "Type of load balancing in forwarding table"; choice load_balance_type { case case_1 { leaf per-packet { description "Load balance on a per-packet basis"; type empty; } } case case_2 { leaf random { description "Load balance using packet random spray"; type empty; } } case case_3 { leaf per-prefix { description "Load balance on a per-prefix basis"; type empty; } } case case_4 { leaf consistent-hash { description "Give a prefix consistent load-balancing"; type empty; } } } } leaf no-route-localize { description "Force route install on all fib-remote PFEs"; type empty; } leaf install-to-fib { description "Install route to fib"; type empty; } leaf no-install-to-fib { description "Install route to fib"; type empty; } leaf class { description "Set class-of-service parameters"; type string; } leaf destination-class { description "Set destination class in forwarding table"; type string; } leaf source-class { description "Set source class in forwarding table"; type string; } leaf forwarding-class { description "Set source or destination class in forwarding table"; type string; } container map-to-interface { description "Set output logical interface"; choice map_to_interface_value { case case_1 { leaf self { description "Map the interface to itself"; type empty; } } case case_2 { leaf interface { description "Output logical interface"; type interface-name; } } } } leaf-list ssm-source { description "List of Sources for SSM mapping"; type ipaddr; } container p2mp-lsp-root { description "P2mp lsp root address"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf address { description "Ipv4 root address"; type ipv4addr; } } leaf cos-next-hop-map { description "Set CoS-based next-hop map in forwarding table"; type string; } leaf selected-mldp-egress { description "This node should act as egress node for MLDP inband signalling"; type empty; } leaf default-action { description "Set default policy action"; type enumeration { enum accept { description "Accept a route"; } enum reject { description "Reject a route"; } } } leaf next { description "Skip to next policy or term"; type enumeration { enum policy { description "Skip to next policy filter"; } enum term { description "Skip to next term in a policy filter"; } } } choice accept_reject { case case_1 { leaf accept { description "Accept a route"; type empty; } } case case_2 { leaf reject { description "Reject a route"; type empty; } } } } } container from { description "Conditions to match the source of a route"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf instance { description "Routing protocol instance"; type string; } leaf family { description "(null)"; type enumeration { enum inet { description "IPv4 family"; } enum inet-vpn { description "IPv4-VPN family"; } enum inet6 { description "IPv6 family"; } enum inet6-vpn { description "IPv6-VPN family"; } enum iso { description "ISO family"; } enum evpn { description "EVPN family"; } enum inet-mvpn { description "IPv4 Multicast VPN family"; } enum inet6-mvpn { description "IPv6 Multicast VPN family"; } enum inet-mdt { description "IPv4 MDT Signaling family"; } enum route-target { description "Local route target VPN family"; } enum traffic-engineering { description "Traffic Engineering family"; } } } leaf-list protocol { description "Protocol from which route was learned"; type enumeration { enum aggregate { description "Aggregate routes"; } enum bgp { description "BGP"; } enum direct { description "Directly connected routes"; } enum dvmrp { description "Distance Vector Multicast Routing Protocol"; } enum isis { description "Intermediate System-to-Intermediate System"; } enum esis { description "End System-to-Intermediate System"; } enum l2circuit { description "Layer 2 circuits"; } enum l2vpn { description "Layer 2 MPLS virtual private networks"; } enum local { description "Local system addresses"; } enum ospf { description "Open Shortest Path First"; } enum ospf2 { description "Open Shortest Path First Version 2"; } enum ospf3 { description "Open Shortest Path First Version 3"; } enum pim { description "Protocol Independent Multicast"; } enum rip { description "Routing Information Protocol"; } enum ripng { description "Routing Information Protocol next generation"; } enum static { description "Statically defined addresses"; } enum arp { description "Addresses learned from ARP"; } enum frr { description "Addresses created by Host Fast Re-route"; } enum mpls { description "Multiprotocol Label Switching"; } enum ldp { description "Label Distribution Protocol"; } enum rsvp { description "Resource Reservation Protocol"; } enum msdp { description "Multicast Source Discovery Protocol"; } enum route-target { description "Local route target VPN membership"; } enum access { description "Access server routes"; } enum access-internal { description "Internal routes to directly connected clients"; } enum anchor { description "Anchor routes connected to UEs"; } enum bgp-static { description "BGP static routes"; } enum vpls { description "Virtual Private LAN Service"; } enum evpn { description "Ethernet VPN Service"; } } } leaf rib { description "Routing table"; type string; } leaf-list neighbor { description "Neighboring router"; type ipaddr; } leaf-list next-hop { description "Next-hop router"; type ipaddr; } leaf-list interface { description "Interface name or address"; type ipaddr-or-interface; } leaf area { description "OSPF area identifier"; type areaid; } leaf-list as-path { description "Name of AS path regular expression (BGP only)"; type string; } leaf-list as-path-group { description "Name of AS path group (BGP only)"; type string; } leaf origin { description "BGP origin attribute"; type enumeration { enum igp { description "Path originated in the local IGP"; } enum egp { description "Path originated in another AS"; } enum incomplete { description "Path was learned by some other means"; } } } leaf-list community { description "BGP community"; type string; } leaf level { description "IS-IS level"; type uint32; } container external { presence "enable external"; description "External route"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf type { description "OSPF external metric type"; type int32 { range "1 .. 2"; } } } leaf validation-database { description "Name to identify a validation-state"; type enumeration { enum valid { description "Match for valid database validation-state"; } enum invalid { description "Match for invalid database validation-state"; } enum unknown { description "Match for unknown database validation-state"; } } } leaf metric { description "Metric value"; type uint32; } leaf metric2 { description "Metric value 2"; type uint32; } leaf metric3 { description "Metric value 3"; type uint32; } leaf metric4 { description "Metric value 4"; type uint32; } leaf-list tag { description "Tag string"; type uint32; } leaf tag2 { description "Tag string 2"; type uint32; } leaf preference { description "Preference value"; type uint32; } leaf preference2 { description "Preference value 2"; type uint32; } leaf color { description "Color (preference) value"; type uint32; } leaf color2 { description "Color (preference) value 2"; type uint32; } leaf local-preference { description "Local preference associated with a route"; type uint32; } leaf-list policy { description "Name of policy to evaluate"; type policy-algebra; } list route-filter { key address; ordered-by user; description "List of routes to match"; uses control_route_filter_type; } list source-address-filter { key address; ordered-by user; description "List of source addresses to match"; uses control_source_address_filter_type; } list prefix-list { key name; ordered-by user; description "List of prefix-lists of routes to match"; uses control_prefix_list_type; } list prefix-list-filter { key list_name; ordered-by user; description "List of prefix-list-filters to match"; uses control_prefix_list_filter_type; } list rtf-prefix-list { key name; ordered-by user; description "List of rtf-prefix-lists of routes to match"; uses control_rtf_prefix_list_type; } container multicast-scope { description "Multicast scope to match"; choice scope-choice { case case_1 { leaf node-local { description "Node-local scope"; type empty; } } case case_2 { leaf link-local { description "Link-local scope"; type empty; } } case case_3 { leaf site-local { description "Site-local scope"; type empty; } } case case_4 { leaf organization-local { description "Organization-local scope"; type empty; } } case case_5 { leaf global { description "Global scope"; type empty; } } case case_6 { leaf scope_value { description "Scope value"; type uint32 { range "0 .. 15"; } } } } choice scope-operator { case case_1 { leaf orhigher { description "Match higher values"; type empty; } } case case_2 { leaf orlower { description "Match lower values"; type empty; } } } } leaf aggregate-contributor { description "Match more specifics of an aggregate"; type empty; } leaf state { description "Route state"; type enumeration { enum active { description "Active route"; } enum inactive { description "Inactive route"; } } } leaf route-type { description "Route type"; type enumeration { enum internal { description "Internal route"; } enum external { description "External route"; } } } leaf-list nlri-route-type { description "Route type from NLRI"; type uint32 { range "1 .. 10"; } } leaf next-hop-type { description "Next-hop type"; type enumeration { enum merged { description "Merged next hop"; } } } leaf-list condition { description "Condition to match on"; type string; } list community-count { key name; ordered-by user; description "Number of BGP communities"; uses community_count_type; } container traffic-engineering { presence "enable traffic-engineering"; description "Traffic-Engineering related parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list protocol { description "Protocol that originated the entry"; type enumeration { enum direct { description "Directly originated"; } enum ospf { description "OSPF originated"; } enum isis-level-1 { description "ISIS level-1 originated"; } enum isis-level-2 { description "ISIS level-2 originated"; } enum static { description "Statically originated"; } enum unknown { description "Originated by unknown sources"; } } } container node { presence "enable node"; description "Node-related parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf as { description "AS number"; type string { } } leaf node-type { description "Real or pseudo-node"; type enumeration { enum router { description "Real node"; } enum pseudo-node { description "Pseudo-node"; } } } leaf router-id { description "IP prefix to match the router-id against"; type ipprefix; } leaf sys-id { description "ISO address of the node"; type sysid; } } container link { presence "enable link"; description "Link-related parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Specify parameter of the 'from' side"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf as { description "AS number"; type string { } } leaf router-id { description "IP prefix to match the router-id against"; type ipprefix; } leaf sys-id { description "System-ID of the node"; type sysid; } leaf node-type { description "Type of the node"; type enumeration { enum router { description "Real node"; } enum pseudo-node { description "Pseudo-node"; } } } leaf link-address { description "IP prefix to match the link address against"; type ipprefix; } } container to { description "Specify parameters of the 'to' side"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf as { description "AS number"; type string { } } leaf router-id { description "IP prefix to match the router-id against"; type ipprefix; } leaf sys-id { description "System-ID of the node"; type sysid; } leaf node-type { description "Type of the node"; type enumeration { enum router { description "Real node"; } enum pseudo-node { description "Pseudo-node"; } } } leaf link-address { description "IP prefix to match the link address against"; type ipprefix; } } } } } container to { description "Conditions to match the destination of a route"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf instance { description "Routing protocol instance"; type string; } leaf family { description "(null)"; type enumeration { enum inet { description "IPv4 family"; } enum inet-vpn { description "IPv4-VPN family"; } enum inet6 { description "IPv6 family"; } enum inet6-vpn { description "IPv6-VPN family"; } enum iso { description "ISO family"; } enum evpn { description "EVPN family"; } enum inet-mvpn { description "IPv4 Multicast VPN family"; } enum inet6-mvpn { description "IPv6 Multicast VPN family"; } enum inet-mdt { description "IPv4 MDT Signaling family"; } enum route-target { description "Local route target VPN family"; } enum traffic-engineering { description "Traffic Engineering family"; } } } leaf-list protocol { description "Protocol from which route was learned"; type enumeration { enum aggregate { description "Aggregate routes"; } enum bgp { description "BGP"; } enum direct { description "Directly connected routes"; } enum dvmrp { description "Distance Vector Multicast Routing Protocol"; } enum isis { description "Intermediate System-to-Intermediate System"; } enum esis { description "End System-to-Intermediate System"; } enum l2circuit { description "Layer 2 circuits"; } enum l2vpn { description "Layer 2 MPLS virtual private networks"; } enum local { description "Local system addresses"; } enum ospf { description "Open Shortest Path First"; } enum ospf2 { description "Open Shortest Path First Version 2"; } enum ospf3 { description "Open Shortest Path First Version 3"; } enum pim { description "Protocol Independent Multicast"; } enum rip { description "Routing Information Protocol"; } enum ripng { description "Routing Information Protocol next generation"; } enum static { description "Statically defined addresses"; } enum arp { description "Addresses learned from ARP"; } enum frr { description "Addresses created by Host Fast Re-route"; } enum mpls { description "Multiprotocol Label Switching"; } enum ldp { description "Label Distribution Protocol"; } enum rsvp { description "Resource Reservation Protocol"; } enum msdp { description "Multicast Source Discovery Protocol"; } enum route-target { description "Local route target VPN membership"; } enum access { description "Access server routes"; } enum access-internal { description "Internal routes to directly connected clients"; } enum anchor { description "Anchor routes connected to UEs"; } enum bgp-static { description "BGP static routes"; } enum vpls { description "Virtual Private LAN Service"; } enum evpn { description "Ethernet VPN Service"; } } } leaf rib { description "Routing table"; type string; } leaf-list neighbor { description "Neighboring router"; type ipaddr; } leaf-list next-hop { description "Next-hop router"; type ipaddr; } leaf-list interface { description "Interface name or address"; type ipaddr-or-interface; } leaf area { description "OSPF area identifier"; type areaid; } leaf-list as-path { description "Name of AS path regular expression (BGP only)"; type string; } leaf-list as-path-group { description "Name of AS path group (BGP only)"; type string; } leaf origin { description "BGP origin attribute"; type enumeration { enum igp { description "Path originated in the local IGP"; } enum egp { description "Path originated in another AS"; } enum incomplete { description "Path was learned by some other means"; } } } leaf-list community { description "BGP community"; type string; } leaf level { description "IS-IS level"; type uint32; } container external { presence "enable external"; description "External route"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf type { description "OSPF external metric type"; type int32 { range "1 .. 2"; } } } leaf validation-database { description "Name to identify a validation-state"; type enumeration { enum valid { description "Match for valid database validation-state"; } enum invalid { description "Match for invalid database validation-state"; } enum unknown { description "Match for unknown database validation-state"; } } } leaf metric { description "Metric value"; type uint32; } leaf metric2 { description "Metric value 2"; type uint32; } leaf metric3 { description "Metric value 3"; type uint32; } leaf metric4 { description "Metric value 4"; type uint32; } leaf-list tag { description "Tag string"; type uint32; } leaf tag2 { description "Tag string 2"; type uint32; } leaf preference { description "Preference value"; type uint32; } leaf preference2 { description "Preference value 2"; type uint32; } leaf color { description "Color (preference) value"; type uint32; } leaf color2 { description "Color (preference) value 2"; type uint32; } leaf local-preference { description "Local preference associated with a route"; type uint32; } leaf-list policy { description "Name of policy to evaluate"; type policy-algebra; } } container then { description "Actions to take if 'from' and 'to' conditions match"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container metric { description "Metric value"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf metric { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } case case_4 { container igp { presence "enable igp"; description "Track the IGP metric (BGP only)"; leaf metric_offset { description "Metric offset for MED"; type int32; } } } case case_5 { container minimum-igp { presence "enable minimum-igp"; description "Track the minimum IGP metric (BGP only)"; leaf metric_offset { description "Metric offset for MED"; type int32; } } } case case_6 { container expression { description "Calculate value based on route metric and metric2"; uses metric_expression_type; } } } } container metric2 { description "Metric value 2"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf metric2 { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container metric3 { description "Metric value 3"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf metric3 { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container metric4 { description "Metric value 4"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf metric4 { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container tag { description "Tag string"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf tag { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container tag2 { description "Tag string 2"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf tag2 { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container preference { description "Preference value"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf preference { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container preference2 { description "Preference value 2"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf preference2 { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container color { description "Color (preference) value"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf color { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container color2 { description "Color (preference) value 2"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf color2 { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container local-preference { description "Local preference associated with a route"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf local-preference { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } leaf priority { description "Set priority for route installation"; type enumeration { enum high { description "Set priority to high"; } enum medium { description "Set priority to medium"; } enum low { description "Set priority to low"; } } } leaf label-allocation { description "Set label allocation mode"; type enumeration { enum per-table { description "Set per-table label allocation mode"; } enum per-nexthop { description "Set per-nexthop label allocation mode"; } enum per-table-localize { description "Set per-table-localize label allocation mode"; } } } container add-path { description "Set BGP add-path attributes"; leaf send-count { description "Number of add-paths sent"; type uint32 { range "2 .. 20"; } } } leaf validation-state { description "Set validation-state of a route"; type enumeration { enum valid { description "Set validaton-state to valid"; } enum invalid { description "Set validation-state to invalid"; } enum unknown { description "Set validation-state to unknown"; } } } leaf origin { description "BGP path origin"; type enumeration { enum igp { description "Path originated in the local IGP"; } enum egp { description "Path originated in another AS"; } enum incomplete { description "Path was learned by some other means"; } } } container aigp-originate { presence "enable aigp-originate"; description "Originate a BGP AIGP attribute"; leaf distance { description "AIGP distance"; type uint32; } } list community { key "community-name"; ordered-by user; description "BGP community properties associated with a route"; choice community-action { case case_1 { leaf equal-literal { description "Set the BGP communities in the route"; type empty; } } case case_2 { leaf set { description "Set the BGP communities in the route"; type empty; } } case case_3 { leaf plus-literal { description "Add BGP communities to the route"; type empty; } } case case_4 { leaf add { description "Add BGP communities to the route"; type empty; } } case case_5 { leaf minus-literal { description "Remove BGP communities from the route"; type empty; } } case case_6 { leaf delete { description "Remove BGP communities from the route"; type empty; } } } leaf community-name { description "Name to identify a BGP community"; type string; } } leaf damping { description "Define BGP route flap damping parameters"; type string; } leaf as-path-prepend { description "Prepend AS numbers to an AS path (BGP only)"; type string; } container as-path-expand { description "Prepend AS numbers prior to adding local-as (BGP only)"; choice aspath_exp_value { case case_1 { container last-as { presence "enable last-as"; description "Prepend last AS"; leaf count { description "Repeat count"; type uint32 { range "1 .. 32"; } } } } case case_2 { leaf aspath { description "AS path string"; type string; } } } } container next-hop { description "Set the address of the next-hop router"; choice nexthop_value { case case_1 { leaf self { description "Use a local address as the next-hop address"; type empty; } } case case_2 { leaf peer-address { description "Use the remote peer address as the next-hop address"; type empty; } } case case_3 { leaf address { description "Next-hop address"; type ipaddr; } } case case_4 { leaf reject { description "Use a reject next hop"; type empty; } } case case_5 { leaf discard { description "Use a discard next hop"; type empty; } } case case_6 { leaf next-table { description "Perform a forwarding lookup in the specified table"; type string; } } } } container install-nexthop { description "Choose the next hop to be used for forwarding"; leaf strict { description "Do not use any other available next hops"; type empty; } choice nexthop-value { case case_1 { leaf-list lsp { description "Next-hop LSP name"; type string; } } case case_2 { leaf-list lsp-regex { description "Next-hop LSP name regular expression"; type string; } } case case_3 { leaf-list static-lsp { description "Next-hop static LSP name"; type string; } } case case_4 { leaf-list static-lsp-regex { description "Next-hop static LSP name regular expression"; type string; } } } container except { description "Do not choose to install matching next hops"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice nexthop-value { case case_1 { leaf-list lsp { description "Next-hop LSP name"; type string; } } case case_2 { leaf-list lsp-regex { description "Next-hop LSP name regular expression"; type string; } } case case_3 { leaf-list static-lsp { description "Next-hop static LSP name"; type string; } } case case_4 { leaf-list static-lsp-regex { description "Next-hop static LSP name regular expression"; type string; } } } } } leaf trace { description "Log matches to a trace file"; type empty; } container external { presence "enable external"; description "External route"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf type { description "OSPF external metric type"; type int32 { range "1 .. 2"; } } leaf nssa-only { description "Clear P-bit on lsa type 7"; type empty; } } container load-balance { description "Type of load balancing in forwarding table"; choice load_balance_type { case case_1 { leaf per-packet { description "Load balance on a per-packet basis"; type empty; } } case case_2 { leaf random { description "Load balance using packet random spray"; type empty; } } case case_3 { leaf per-prefix { description "Load balance on a per-prefix basis"; type empty; } } case case_4 { leaf consistent-hash { description "Give a prefix consistent load-balancing"; type empty; } } } } leaf no-route-localize { description "Force route install on all fib-remote PFEs"; type empty; } leaf install-to-fib { description "Install route to fib"; type empty; } leaf no-install-to-fib { description "Install route to fib"; type empty; } leaf class { description "Set class-of-service parameters"; type string; } leaf destination-class { description "Set destination class in forwarding table"; type string; } leaf source-class { description "Set source class in forwarding table"; type string; } leaf forwarding-class { description "Set source or destination class in forwarding table"; type string; } container map-to-interface { description "Set output logical interface"; choice map_to_interface_value { case case_1 { leaf self { description "Map the interface to itself"; type empty; } } case case_2 { leaf interface { description "Output logical interface"; type interface-name; } } } } leaf-list ssm-source { description "List of Sources for SSM mapping"; type ipaddr; } container p2mp-lsp-root { description "P2mp lsp root address"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf address { description "Ipv4 root address"; type ipv4addr; } } leaf cos-next-hop-map { description "Set CoS-based next-hop map in forwarding table"; type string; } leaf selected-mldp-egress { description "This node should act as egress node for MLDP inband signalling"; type empty; } leaf default-action { description "Set default policy action"; type enumeration { enum accept { description "Accept a route"; } enum reject { description "Reject a route"; } } } leaf next { description "Skip to next policy or term"; type enumeration { enum policy { description "Skip to next policy filter"; } enum term { description "Skip to next term in a policy filter"; } } } choice accept_reject { case case_1 { leaf accept { description "Accept a route"; type empty; } } case case_2 { leaf reject { description "Reject a route"; type empty; } } } } } container defaults { description "Policy default behaviour"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container route-filter { description "Set route filter behaviour"; leaf walkup { description "Route filter walk up enable"; type empty; mandatory true; } presence "enable route-filter"; } } list community { key name; description "BGP community information"; leaf name { description "Name to identify BGP community"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf invert-match { description "Invert the result of the community expression matching"; type empty; } leaf-list members { description "Community members"; type string; } } list as-path { key name; ordered-by user; description "BGP autonomous system path regular expression"; leaf name { description "Name to identify AS path regular expression"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf path { description "AS path regular expression"; type string { } } } list as-path-group { key name; ordered-by user; description "Group a set of AS paths"; leaf name { description "Name to identify AS path group"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list as-path { key name; ordered-by user; description "BGP autonomous system path regular expression"; leaf name { description "Name to identify AS path regular expression"; type string; } leaf path { description "AS path regular expression"; type string { } } } } list damping { key name; ordered-by user; description "BGP route flap damping properties"; leaf name { description "Name to identify route flap damping parameters"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable damping"; type empty; } } } leaf half-life { description "Decay half-life"; units "minutes"; type uint32 { range "1 .. 45"; } } leaf reuse { description "Reuse threshold (figure-of-merit value)"; type uint32 { range "1 .. 20000"; } } leaf suppress { description "Cutoff threshold (figure-of-merit value)"; type uint32 { range "1 .. 20000"; } } leaf max-suppress { description "Maximum hold-down time"; units "minutes"; type uint32 { range "1 .. 720"; } } } list condition { key name; description "Define a route advertisement condition"; leaf name { description "Name to identify Condition"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice condition_type { case case_1 { leaf route-active-on { description "Route is active on a specific node"; type enumeration { enum node0 { description "Route active on node 0"; } enum node1 { description "Route active on node 1"; } } } } case case_2 { container if-route-exists { presence "enable if-route-exists"; description "Route exists in a specific routing table"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container address-family { presence "enable address-family"; description "Indicates the address family of the route to match on"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice address-family { case case_1 { container inet { presence "enable inet"; description "Route to match corresponds to an inet/inet6 prefix"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf address { description "Exact address of the route"; type ipprefix; mandatory true; } leaf table { description "Routing table in which route should exist"; type string; mandatory true; } } } case case_2 { container ccc { presence "enable ccc"; description "Route to match corresponds to a ccc prefix"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf address { description "Logical interface used to establish ccc route"; type interface-name; mandatory true; } leaf table { description "Routing table in which route should exist"; type string; mandatory true; } leaf standby { description "Indicates if route must be in standby state to be considered a match"; type empty; } leaf peer-unit { description "Associated LT ifl's peer-unit. Required for LT-based routes"; type uint32 { range "0 .. 8192"; } } } } } } leaf address { description "Exact address of the route"; type ipprefix; } leaf table { description "Routing table in which route should exist"; type string; } } } } } list rtf-prefix-list { key name; ordered-by user; description "Define a named set of family route target prefixes"; leaf name { description "RTF prefix list name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list prefix-list { key name; description "(null)"; uses rtf_prefix_list_items; } } list application-maps { key name; ordered-by user; description "Define application maps"; uses application_map_object; } } grouping application_map_object { leaf name { description "Name of application map"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list application { key name; ordered-by user; description "Name of the application"; leaf name { description "Name of the application"; type string { length "1 .. 63"; } } leaf-list code-points { description "List of code point bit strings"; type string; } } } grouping community_count_type { description "Number of BGP communities"; leaf name { description "Number of communities"; type uint32 { range "0 .. 1024"; } } choice count-operator { case case_1 { leaf equal { description "Match equal values"; type empty; } } case case_2 { leaf orhigher { description "Match higher or equal values"; type empty; } } case case_3 { leaf orlower { description "Match lower or equal values"; type empty; } } } } grouping control_prefix_list_filter_type { leaf list_name { description "Name of prefix-list of routes to match"; type string; } choice modifier { case case_1 { leaf exact { description "Exactly match the prefix length"; type empty; } } case case_2 { leaf longer { description "Mask is greater than the prefix length"; type empty; } } case case_3 { leaf orlonger { description "Mask is greater than or equal to the prefix length"; type empty; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container metric { description "Metric value"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf metric { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } case case_4 { container igp { presence "enable igp"; description "Track the IGP metric (BGP only)"; leaf metric_offset { description "Metric offset for MED"; type int32; } } } case case_5 { container minimum-igp { presence "enable minimum-igp"; description "Track the minimum IGP metric (BGP only)"; leaf metric_offset { description "Metric offset for MED"; type int32; } } } case case_6 { container expression { description "Calculate value based on route metric and metric2"; uses metric_expression_type; } } } } container metric2 { description "Metric value 2"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf metric2 { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container metric3 { description "Metric value 3"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf metric3 { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container metric4 { description "Metric value 4"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf metric4 { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container tag { description "Tag string"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf tag { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container tag2 { description "Tag string 2"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf tag2 { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container preference { description "Preference value"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf preference { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container preference2 { description "Preference value 2"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf preference2 { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container color { description "Color (preference) value"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf color { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container color2 { description "Color (preference) value 2"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf color2 { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container local-preference { description "Local preference associated with a route"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf local-preference { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } leaf priority { description "Set priority for route installation"; type enumeration { enum high { description "Set priority to high"; } enum medium { description "Set priority to medium"; } enum low { description "Set priority to low"; } } } leaf label-allocation { description "Set label allocation mode"; type enumeration { enum per-table { description "Set per-table label allocation mode"; } enum per-nexthop { description "Set per-nexthop label allocation mode"; } enum per-table-localize { description "Set per-table-localize label allocation mode"; } } } container add-path { description "Set BGP add-path attributes"; leaf send-count { description "Number of add-paths sent"; type uint32 { range "2 .. 20"; } } } leaf validation-state { description "Set validation-state of a route"; type enumeration { enum valid { description "Set validaton-state to valid"; } enum invalid { description "Set validation-state to invalid"; } enum unknown { description "Set validation-state to unknown"; } } } leaf origin { description "BGP path origin"; type enumeration { enum igp { description "Path originated in the local IGP"; } enum egp { description "Path originated in another AS"; } enum incomplete { description "Path was learned by some other means"; } } } container aigp-originate { presence "enable aigp-originate"; description "Originate a BGP AIGP attribute"; leaf distance { description "AIGP distance"; type uint32; } } list community { key "community-name"; ordered-by user; description "BGP community properties associated with a route"; choice community-action { case case_1 { leaf equal-literal { description "Set the BGP communities in the route"; type empty; } } case case_2 { leaf set { description "Set the BGP communities in the route"; type empty; } } case case_3 { leaf plus-literal { description "Add BGP communities to the route"; type empty; } } case case_4 { leaf add { description "Add BGP communities to the route"; type empty; } } case case_5 { leaf minus-literal { description "Remove BGP communities from the route"; type empty; } } case case_6 { leaf delete { description "Remove BGP communities from the route"; type empty; } } } leaf community-name { description "Name to identify a BGP community"; type string; } } leaf damping { description "Define BGP route flap damping parameters"; type string; } leaf as-path-prepend { description "Prepend AS numbers to an AS path (BGP only)"; type string; } container as-path-expand { description "Prepend AS numbers prior to adding local-as (BGP only)"; choice aspath_exp_value { case case_1 { container last-as { presence "enable last-as"; description "Prepend last AS"; leaf count { description "Repeat count"; type uint32 { range "1 .. 32"; } } } } case case_2 { leaf aspath { description "AS path string"; type string; } } } } container next-hop { description "Set the address of the next-hop router"; choice nexthop_value { case case_1 { leaf self { description "Use a local address as the next-hop address"; type empty; } } case case_2 { leaf peer-address { description "Use the remote peer address as the next-hop address"; type empty; } } case case_3 { leaf address { description "Next-hop address"; type ipaddr; } } case case_4 { leaf reject { description "Use a reject next hop"; type empty; } } case case_5 { leaf discard { description "Use a discard next hop"; type empty; } } case case_6 { leaf next-table { description "Perform a forwarding lookup in the specified table"; type string; } } } } container install-nexthop { description "Choose the next hop to be used for forwarding"; leaf strict { description "Do not use any other available next hops"; type empty; } choice nexthop-value { case case_1 { leaf-list lsp { description "Next-hop LSP name"; type string; } } case case_2 { leaf-list lsp-regex { description "Next-hop LSP name regular expression"; type string; } } case case_3 { leaf-list static-lsp { description "Next-hop static LSP name"; type string; } } case case_4 { leaf-list static-lsp-regex { description "Next-hop static LSP name regular expression"; type string; } } } container except { description "Do not choose to install matching next hops"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice nexthop-value { case case_1 { leaf-list lsp { description "Next-hop LSP name"; type string; } } case case_2 { leaf-list lsp-regex { description "Next-hop LSP name regular expression"; type string; } } case case_3 { leaf-list static-lsp { description "Next-hop static LSP name"; type string; } } case case_4 { leaf-list static-lsp-regex { description "Next-hop static LSP name regular expression"; type string; } } } } } leaf trace { description "Log matches to a trace file"; type empty; } container external { presence "enable external"; description "External route"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf type { description "OSPF external metric type"; type int32 { range "1 .. 2"; } } leaf nssa-only { description "Clear P-bit on lsa type 7"; type empty; } } container load-balance { description "Type of load balancing in forwarding table"; choice load_balance_type { case case_1 { leaf per-packet { description "Load balance on a per-packet basis"; type empty; } } case case_2 { leaf random { description "Load balance using packet random spray"; type empty; } } case case_3 { leaf per-prefix { description "Load balance on a per-prefix basis"; type empty; } } case case_4 { leaf consistent-hash { description "Give a prefix consistent load-balancing"; type empty; } } } } leaf no-route-localize { description "Force route install on all fib-remote PFEs"; type empty; } leaf install-to-fib { description "Install route to fib"; type empty; } leaf no-install-to-fib { description "Install route to fib"; type empty; } leaf class { description "Set class-of-service parameters"; type string; } leaf destination-class { description "Set destination class in forwarding table"; type string; } leaf source-class { description "Set source class in forwarding table"; type string; } leaf forwarding-class { description "Set source or destination class in forwarding table"; type string; } container map-to-interface { description "Set output logical interface"; choice map_to_interface_value { case case_1 { leaf self { description "Map the interface to itself"; type empty; } } case case_2 { leaf interface { description "Output logical interface"; type interface-name; } } } } leaf-list ssm-source { description "List of Sources for SSM mapping"; type ipaddr; } container p2mp-lsp-root { description "P2mp lsp root address"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf address { description "Ipv4 root address"; type ipv4addr; } } leaf cos-next-hop-map { description "Set CoS-based next-hop map in forwarding table"; type string; } leaf selected-mldp-egress { description "This node should act as egress node for MLDP inband signalling"; type empty; } leaf default-action { description "Set default policy action"; type enumeration { enum accept { description "Accept a route"; } enum reject { description "Reject a route"; } } } leaf next { description "Skip to next policy or term"; type enumeration { enum policy { description "Skip to next policy filter"; } enum term { description "Skip to next term in a policy filter"; } } } choice accept_reject { case case_1 { leaf accept { description "Accept a route"; type empty; } } case case_2 { leaf reject { description "Reject a route"; type empty; } } } } grouping control_prefix_list_type { leaf name { description "Name of prefix-list of routes to match"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } grouping control_route_filter_type { leaf address { description "IP address or hostname"; type ipprefix; } choice modifier { case case_1 { leaf exact { description "Exactly match the prefix length"; type empty; } } case case_2 { leaf longer { description "Mask is greater than the prefix length"; type empty; } } case case_3 { leaf orlonger { description "Mask is greater than or equal to the prefix length"; type empty; } } case case_4 { leaf upto { description "Mask falls between two prefix lengths"; type string { } } } case case_5 { leaf through { description "Route falls between two prefixes"; type ipprefix; } } case case_6 { leaf prefix-length-range { description "Mask falls between two prefix lengths"; type string { } } } case case_7 { leaf address-mask { description "Mask applied to prefix address"; type ipaddr; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container metric { description "Metric value"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf metric { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } case case_4 { container igp { presence "enable igp"; description "Track the IGP metric (BGP only)"; leaf metric_offset { description "Metric offset for MED"; type int32; } } } case case_5 { container minimum-igp { presence "enable minimum-igp"; description "Track the minimum IGP metric (BGP only)"; leaf metric_offset { description "Metric offset for MED"; type int32; } } } case case_6 { container expression { description "Calculate value based on route metric and metric2"; uses metric_expression_type; } } } } container metric2 { description "Metric value 2"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf metric2 { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container metric3 { description "Metric value 3"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf metric3 { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container metric4 { description "Metric value 4"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf metric4 { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container tag { description "Tag string"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf tag { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container tag2 { description "Tag string 2"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf tag2 { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container preference { description "Preference value"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf preference { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container preference2 { description "Preference value 2"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf preference2 { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container color { description "Color (preference) value"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf color { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container color2 { description "Color (preference) value 2"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf color2 { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container local-preference { description "Local preference associated with a route"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf local-preference { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } leaf priority { description "Set priority for route installation"; type enumeration { enum high { description "Set priority to high"; } enum medium { description "Set priority to medium"; } enum low { description "Set priority to low"; } } } leaf label-allocation { description "Set label allocation mode"; type enumeration { enum per-table { description "Set per-table label allocation mode"; } enum per-nexthop { description "Set per-nexthop label allocation mode"; } enum per-table-localize { description "Set per-table-localize label allocation mode"; } } } container add-path { description "Set BGP add-path attributes"; leaf send-count { description "Number of add-paths sent"; type uint32 { range "2 .. 20"; } } } leaf validation-state { description "Set validation-state of a route"; type enumeration { enum valid { description "Set validaton-state to valid"; } enum invalid { description "Set validation-state to invalid"; } enum unknown { description "Set validation-state to unknown"; } } } leaf origin { description "BGP path origin"; type enumeration { enum igp { description "Path originated in the local IGP"; } enum egp { description "Path originated in another AS"; } enum incomplete { description "Path was learned by some other means"; } } } container aigp-originate { presence "enable aigp-originate"; description "Originate a BGP AIGP attribute"; leaf distance { description "AIGP distance"; type uint32; } } list community { key "community-name"; ordered-by user; description "BGP community properties associated with a route"; choice community-action { case case_1 { leaf equal-literal { description "Set the BGP communities in the route"; type empty; } } case case_2 { leaf set { description "Set the BGP communities in the route"; type empty; } } case case_3 { leaf plus-literal { description "Add BGP communities to the route"; type empty; } } case case_4 { leaf add { description "Add BGP communities to the route"; type empty; } } case case_5 { leaf minus-literal { description "Remove BGP communities from the route"; type empty; } } case case_6 { leaf delete { description "Remove BGP communities from the route"; type empty; } } } leaf community-name { description "Name to identify a BGP community"; type string; } } leaf damping { description "Define BGP route flap damping parameters"; type string; } leaf as-path-prepend { description "Prepend AS numbers to an AS path (BGP only)"; type string; } container as-path-expand { description "Prepend AS numbers prior to adding local-as (BGP only)"; choice aspath_exp_value { case case_1 { container last-as { presence "enable last-as"; description "Prepend last AS"; leaf count { description "Repeat count"; type uint32 { range "1 .. 32"; } } } } case case_2 { leaf aspath { description "AS path string"; type string; } } } } container next-hop { description "Set the address of the next-hop router"; choice nexthop_value { case case_1 { leaf self { description "Use a local address as the next-hop address"; type empty; } } case case_2 { leaf peer-address { description "Use the remote peer address as the next-hop address"; type empty; } } case case_3 { leaf address { description "Next-hop address"; type ipaddr; } } case case_4 { leaf reject { description "Use a reject next hop"; type empty; } } case case_5 { leaf discard { description "Use a discard next hop"; type empty; } } case case_6 { leaf next-table { description "Perform a forwarding lookup in the specified table"; type string; } } } } container install-nexthop { description "Choose the next hop to be used for forwarding"; leaf strict { description "Do not use any other available next hops"; type empty; } choice nexthop-value { case case_1 { leaf-list lsp { description "Next-hop LSP name"; type string; } } case case_2 { leaf-list lsp-regex { description "Next-hop LSP name regular expression"; type string; } } case case_3 { leaf-list static-lsp { description "Next-hop static LSP name"; type string; } } case case_4 { leaf-list static-lsp-regex { description "Next-hop static LSP name regular expression"; type string; } } } container except { description "Do not choose to install matching next hops"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice nexthop-value { case case_1 { leaf-list lsp { description "Next-hop LSP name"; type string; } } case case_2 { leaf-list lsp-regex { description "Next-hop LSP name regular expression"; type string; } } case case_3 { leaf-list static-lsp { description "Next-hop static LSP name"; type string; } } case case_4 { leaf-list static-lsp-regex { description "Next-hop static LSP name regular expression"; type string; } } } } } leaf trace { description "Log matches to a trace file"; type empty; } container external { presence "enable external"; description "External route"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf type { description "OSPF external metric type"; type int32 { range "1 .. 2"; } } leaf nssa-only { description "Clear P-bit on lsa type 7"; type empty; } } container load-balance { description "Type of load balancing in forwarding table"; choice load_balance_type { case case_1 { leaf per-packet { description "Load balance on a per-packet basis"; type empty; } } case case_2 { leaf random { description "Load balance using packet random spray"; type empty; } } case case_3 { leaf per-prefix { description "Load balance on a per-prefix basis"; type empty; } } case case_4 { leaf consistent-hash { description "Give a prefix consistent load-balancing"; type empty; } } } } leaf no-route-localize { description "Force route install on all fib-remote PFEs"; type empty; } leaf install-to-fib { description "Install route to fib"; type empty; } leaf no-install-to-fib { description "Install route to fib"; type empty; } leaf class { description "Set class-of-service parameters"; type string; } leaf destination-class { description "Set destination class in forwarding table"; type string; } leaf source-class { description "Set source class in forwarding table"; type string; } leaf forwarding-class { description "Set source or destination class in forwarding table"; type string; } container map-to-interface { description "Set output logical interface"; choice map_to_interface_value { case case_1 { leaf self { description "Map the interface to itself"; type empty; } } case case_2 { leaf interface { description "Output logical interface"; type interface-name; } } } } leaf-list ssm-source { description "List of Sources for SSM mapping"; type ipaddr; } container p2mp-lsp-root { description "P2mp lsp root address"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf address { description "Ipv4 root address"; type ipv4addr; } } leaf cos-next-hop-map { description "Set CoS-based next-hop map in forwarding table"; type string; } leaf selected-mldp-egress { description "This node should act as egress node for MLDP inband signalling"; type empty; } leaf default-action { description "Set default policy action"; type enumeration { enum accept { description "Accept a route"; } enum reject { description "Reject a route"; } } } leaf next { description "Skip to next policy or term"; type enumeration { enum policy { description "Skip to next policy filter"; } enum term { description "Skip to next term in a policy filter"; } } } choice accept_reject { case case_1 { leaf accept { description "Accept a route"; type empty; } } case case_2 { leaf reject { description "Reject a route"; type empty; } } } } grouping control_rtf_prefix_list_type { description "RTF prefix list"; leaf name { description "Name of rtf-prefix-list of routes to match"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } grouping control_source_address_filter_type { leaf address { description "IP address or hostname"; type ipprefix; } choice modifier { case case_1 { leaf exact { description "Exactly match the prefix length"; type empty; } } case case_2 { leaf longer { description "Mask is greater than the prefix length"; type empty; } } case case_3 { leaf orlonger { description "Mask is greater than or equal to the prefix length"; type empty; } } case case_4 { leaf upto { description "Mask falls between two prefix lengths"; type string { } } } case case_5 { leaf through { description "Route falls between two prefixes"; type ipprefix; } } case case_6 { leaf prefix-length-range { description "Mask falls between two prefix lengths"; type string { } } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container metric { description "Metric value"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf metric { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } case case_4 { container igp { presence "enable igp"; description "Track the IGP metric (BGP only)"; leaf metric_offset { description "Metric offset for MED"; type int32; } } } case case_5 { container minimum-igp { presence "enable minimum-igp"; description "Track the minimum IGP metric (BGP only)"; leaf metric_offset { description "Metric offset for MED"; type int32; } } } case case_6 { container expression { description "Calculate value based on route metric and metric2"; uses metric_expression_type; } } } } container metric2 { description "Metric value 2"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf metric2 { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container metric3 { description "Metric value 3"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf metric3 { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container metric4 { description "Metric value 4"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf metric4 { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container tag { description "Tag string"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf tag { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container tag2 { description "Tag string 2"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf tag2 { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container preference { description "Preference value"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf preference { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container preference2 { description "Preference value 2"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf preference2 { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container color { description "Color (preference) value"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf color { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container color2 { description "Color (preference) value 2"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf color2 { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } container local-preference { description "Local preference associated with a route"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice metric_action { case case_1 { leaf local-preference { description "(null)"; type uint32; } } case case_2 { leaf add { description "Add constant to attribute"; type uint32; } } case case_3 { leaf subtract { description "Subtract constant from attribute"; type uint32; } } } } leaf priority { description "Set priority for route installation"; type enumeration { enum high { description "Set priority to high"; } enum medium { description "Set priority to medium"; } enum low { description "Set priority to low"; } } } leaf label-allocation { description "Set label allocation mode"; type enumeration { enum per-table { description "Set per-table label allocation mode"; } enum per-nexthop { description "Set per-nexthop label allocation mode"; } enum per-table-localize { description "Set per-table-localize label allocation mode"; } } } container add-path { description "Set BGP add-path attributes"; leaf send-count { description "Number of add-paths sent"; type uint32 { range "2 .. 20"; } } } leaf validation-state { description "Set validation-state of a route"; type enumeration { enum valid { description "Set validaton-state to valid"; } enum invalid { description "Set validation-state to invalid"; } enum unknown { description "Set validation-state to unknown"; } } } leaf origin { description "BGP path origin"; type enumeration { enum igp { description "Path originated in the local IGP"; } enum egp { description "Path originated in another AS"; } enum incomplete { description "Path was learned by some other means"; } } } container aigp-originate { presence "enable aigp-originate"; description "Originate a BGP AIGP attribute"; leaf distance { description "AIGP distance"; type uint32; } } list community { key "community-name"; ordered-by user; description "BGP community properties associated with a route"; choice community-action { case case_1 { leaf equal-literal { description "Set the BGP communities in the route"; type empty; } } case case_2 { leaf set { description "Set the BGP communities in the route"; type empty; } } case case_3 { leaf plus-literal { description "Add BGP communities to the route"; type empty; } } case case_4 { leaf add { description "Add BGP communities to the route"; type empty; } } case case_5 { leaf minus-literal { description "Remove BGP communities from the route"; type empty; } } case case_6 { leaf delete { description "Remove BGP communities from the route"; type empty; } } } leaf community-name { description "Name to identify a BGP community"; type string; } } leaf damping { description "Define BGP route flap damping parameters"; type string; } leaf as-path-prepend { description "Prepend AS numbers to an AS path (BGP only)"; type string; } container as-path-expand { description "Prepend AS numbers prior to adding local-as (BGP only)"; choice aspath_exp_value { case case_1 { container last-as { presence "enable last-as"; description "Prepend last AS"; leaf count { description "Repeat count"; type uint32 { range "1 .. 32"; } } } } case case_2 { leaf aspath { description "AS path string"; type string; } } } } container next-hop { description "Set the address of the next-hop router"; choice nexthop_value { case case_1 { leaf self { description "Use a local address as the next-hop address"; type empty; } } case case_2 { leaf peer-address { description "Use the remote peer address as the next-hop address"; type empty; } } case case_3 { leaf address { description "Next-hop address"; type ipaddr; } } case case_4 { leaf reject { description "Use a reject next hop"; type empty; } } case case_5 { leaf discard { description "Use a discard next hop"; type empty; } } case case_6 { leaf next-table { description "Perform a forwarding lookup in the specified table"; type string; } } } } container install-nexthop { description "Choose the next hop to be used for forwarding"; leaf strict { description "Do not use any other available next hops"; type empty; } choice nexthop-value { case case_1 { leaf-list lsp { description "Next-hop LSP name"; type string; } } case case_2 { leaf-list lsp-regex { description "Next-hop LSP name regular expression"; type string; } } case case_3 { leaf-list static-lsp { description "Next-hop static LSP name"; type string; } } case case_4 { leaf-list static-lsp-regex { description "Next-hop static LSP name regular expression"; type string; } } } container except { description "Do not choose to install matching next hops"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice nexthop-value { case case_1 { leaf-list lsp { description "Next-hop LSP name"; type string; } } case case_2 { leaf-list lsp-regex { description "Next-hop LSP name regular expression"; type string; } } case case_3 { leaf-list static-lsp { description "Next-hop static LSP name"; type string; } } case case_4 { leaf-list static-lsp-regex { description "Next-hop static LSP name regular expression"; type string; } } } } } leaf trace { description "Log matches to a trace file"; type empty; } container external { presence "enable external"; description "External route"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf type { description "OSPF external metric type"; type int32 { range "1 .. 2"; } } leaf nssa-only { description "Clear P-bit on lsa type 7"; type empty; } } container load-balance { description "Type of load balancing in forwarding table"; choice load_balance_type { case case_1 { leaf per-packet { description "Load balance on a per-packet basis"; type empty; } } case case_2 { leaf random { description "Load balance using packet random spray"; type empty; } } case case_3 { leaf per-prefix { description "Load balance on a per-prefix basis"; type empty; } } case case_4 { leaf consistent-hash { description "Give a prefix consistent load-balancing"; type empty; } } } } leaf no-route-localize { description "Force route install on all fib-remote PFEs"; type empty; } leaf install-to-fib { description "Install route to fib"; type empty; } leaf no-install-to-fib { description "Install route to fib"; type empty; } leaf class { description "Set class-of-service parameters"; type string; } leaf destination-class { description "Set destination class in forwarding table"; type string; } leaf source-class { description "Set source class in forwarding table"; type string; } leaf forwarding-class { description "Set source or destination class in forwarding table"; type string; } container map-to-interface { description "Set output logical interface"; choice map_to_interface_value { case case_1 { leaf self { description "Map the interface to itself"; type empty; } } case case_2 { leaf interface { description "Output logical interface"; type interface-name; } } } } leaf-list ssm-source { description "List of Sources for SSM mapping"; type ipaddr; } container p2mp-lsp-root { description "P2mp lsp root address"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf address { description "Ipv4 root address"; type ipv4addr; } } leaf cos-next-hop-map { description "Set CoS-based next-hop map in forwarding table"; type string; } leaf selected-mldp-egress { description "This node should act as egress node for MLDP inband signalling"; type empty; } leaf default-action { description "Set default policy action"; type enumeration { enum accept { description "Accept a route"; } enum reject { description "Reject a route"; } } } leaf next { description "Skip to next policy or term"; type enumeration { enum policy { description "Skip to next policy filter"; } enum term { description "Skip to next term in a policy filter"; } } } choice accept_reject { case case_1 { leaf accept { description "Accept a route"; type empty; } } case case_2 { leaf reject { description "Reject a route"; type empty; } } } } grouping juniper-port-mirror-options { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Port-mirroring trace options"; uses sampling_traceoptions_type; } leaf disable { description "Disable the global port-mirroring instance"; type empty; } leaf disable-all-instances { description "Disable the all port-mirroring instances"; type empty; } leaf mirror-once { description "Sample the packet for port mirroring only once"; type empty; } leaf no-preserve-ingress-tag { description "Mirror the packet retaining tag value before normalization"; type empty; } container input { description "Settings for sampling of input packets"; uses pm_family_input_type; } container family { description "Address family of packets to mirror"; container inet { description "Mirror IPv4 packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container output { description "One or more next hops for port-mirrored packets"; uses inet_pm_family_output_type; } } container inet6 { description "Mirror IPv6 packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container output { description "One or more next hops for port-mirrored packets"; uses inet6_pm_family_output_type; } } container mpls { description "Mirror MPLS packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container output { description "One or more next hops for port-mirrored packets"; uses mpls_pm_family_output_type; } } container any { description "Mirror any packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container output { description "One or more next hops for port-mirrored packets"; uses any_pm_family_output_type; } } container vpls { description "Mirror Layer-2 bridged/vpls packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container output { description "Destination for port-mirrored packets"; uses layer2_pm_family_output_type; } } container ethernet-switching { description "Mirror Layer-2 ethernet-switched packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container output { description "Destination for port-mirrored packets"; uses layer2_pm_family_output_type; } } container ccc { description "Mirror layer-2 ccc packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container output { description "Destination for port-mirrored packets"; uses layer2_pm_family_output_type; } } } list instance { key name; ordered-by user; description "Instance of port-mirroring parameters"; leaf name { description "Name for port-mirroring instance"; type string { length "1 .. 63"; } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable the this port-mirroring instance"; type empty; } choice input_params_or_instance { case case_1 { container input { description "Settings for sampling of input packets"; uses pm_family_input_type; } } case case_2 { leaf input-parameters-instance { description "Name of port-mirroring instance to use for input parameters"; type string; } } } container family { description "Address family of packets to mirror"; container inet { description "Mirror IPv4 packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container output { description "One or more next hops for port-mirrored packets"; uses inet_pm_family_output_type; } } container inet6 { description "Mirror IPv6 packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container output { description "One or more next hops for port-mirrored packets"; uses inet6_pm_family_output_type; } } container mpls { description "Mirror MPLS packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container output { description "One or more next hops for port-mirrored packets"; uses mpls_pm_family_output_type; } } container any { description "Mirror any packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container output { description "One or more next hops for port-mirrored packets"; uses any_pm_family_output_type; } } container vpls { description "Mirror Layer-2 bridged/vpls packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container output { description "Destination for port-mirrored packets"; uses layer2_pm_family_output_type; } } container ethernet-switching { description "Mirror Layer-2 ethernet-switched packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container output { description "Destination for port-mirrored packets"; uses layer2_pm_family_output_type; } } container ccc { description "Mirror layer-2 ccc packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container output { description "Destination for port-mirrored packets"; uses layer2_pm_family_output_type; } } } } } grouping any_pm_family_output_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice interface-or-next-hop-index { case case_1 { list interface { key name; description "Interfaces through which to send sampled traffic"; uses inet_pm_intf_type; } } case case_2 { leaf next-hop-group { description "Next-hop-group through which to send port-mirror traffic"; type string; } } } leaf no-filter-check { description "Do not check for filters on port-mirroring interface"; type empty; } container hosted-service { description "Configure Hosted Service"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf server-profile { description "Server profile name"; type string { length "3 .. 32"; } mandatory true; } presence "enable hosted-service"; } } grouping inet6_pm_family_output_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice interface-or-next-hop-index { case case_1 { list interface { key name; description "Interfaces through which to send sampled traffic"; uses inet6_pm_intf_type; } } case case_2 { leaf next-hop-group { description "Next-hop-group through which to send port-mirror traffic"; type string; } } } leaf no-filter-check { description "Do not check for filters on port-mirroring interface"; type empty; } leaf server-profile { description "Server profile name"; type string { length "3 .. 32"; } } } grouping inet6_pm_intf_type { leaf name { description "Interface through which to send sampled traffic"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list next-hop { key name; ordered-by user; description "Address of next hop through which to send sampled traffic"; uses inet6_next_hop_type; } } grouping inet6_next_hop_type { description "Address of next hop through which to send sampled traffic"; leaf name { description "(null)"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } grouping inet_pm_family_output_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice interface-or-next-hop-index { case case_1 { list interface { key name; description "Interfaces through which to send sampled traffic"; uses inet_pm_intf_type; } } case case_2 { leaf next-hop-group { description "Next-hop-group through which to send port-mirror traffic"; type string; } } } leaf no-filter-check { description "Do not check for filters on port-mirroring interface"; type empty; } leaf server-profile { description "Server profile name"; type string { length "3 .. 32"; } } } grouping inet_pm_intf_type { leaf name { description "Interface through which to send sampled traffic"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list next-hop { key name; ordered-by user; description "Address of next hop through which to send sampled traffic"; uses inet_next_hop_type; } } grouping inet_next_hop_type { description "Address of next hop through which to send sampled traffic"; leaf name { description "(null)"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } grouping juniper-protected-system-domain { description "Protected system domain configuration"; leaf name { description "Name of protected system domain (psd[1-31], ex. psd2)"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf description { description "Description of protected system domain"; type string; } leaf-list fpcs { description "FPC associated with protected system domain"; type uint32 { range "0 .. 63"; } } list lcc { key name; description "(null)"; leaf name { description "Specific LCC"; type uint32 { range "0 .. 15"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list fpcs { description "FPC associated with protected system domain"; type uint32 { range "0 .. 7"; } } } leaf control-system-id { description "Control system identifier"; type uint32 { range "1 .. 4"; } mandatory true; } leaf-list control-slot-numbers { description "Slots associated with protected system domain"; type uint32 { range "1 .. 12"; } max-elements 2; } leaf control-plane-bandwidth-percent { description "Percentage of control plane bandwidth"; units "percent"; type uint32 { range "0 .. 100"; } } } grouping juniper-protected-system-domain-traceoptions { description "Protected system domain traceoptions"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum configuration { description "Trace configuration events"; } enum rtsock { description "Trace rtsock messages"; } enum ipc { description "Trace IPC messages"; } enum init { description "Trace intialization messages"; } enum psd { description "Trace psd messages"; } enum all { description "Trace everything"; } } } } } grouping juniper-protocols { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container l2iw { presence "enable l2iw"; description "Configuration for Layer 2 interworking"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for Layer 2 circuits"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum error { description "Trace errors"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } } container igmp { presence "enable igmp"; description "IGMP options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for IGMP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum packets { description "Trace all IGMP packets"; } enum query { description "Trace IGMP membership query messages"; } enum report { description "Trace membership report messages"; } enum leave { description "Trace leave group messages (IGMPv2 only)"; } enum mtrace { description "Trace mtrace packets"; } enum group { description "Trace group operations"; } enum client-notification { description "Trace notifications"; } enum host-notification { description "Trace host notifications"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } leaf query-interval { description "When to send host query messages"; units "seconds"; type uint32 { range "1 .. 1024"; } } leaf query-response-interval { description "How long to wait for a host query response"; units "seconds"; type string { } } leaf query-last-member-interval { description "When to send group query messages"; units "seconds"; type string { } } leaf robust-count { description "Expected packet loss on a subnet"; type uint32 { range "2 .. 10"; } } leaf maximum-transmit-rate { description "Maximum transmission rate (packets per second)"; type uint32 { range "1 .. 10000"; } } leaf accounting { description "Enable join and leave event notification"; type empty; } list interface { key name; ordered-by user; description "Interface options for IGMP"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable IGMP on this interface"; type empty; } } } leaf version { description "Set IGMP version number on this interface"; type uint8 { range "1 .. 3"; } } container static { description "Static group or source membership"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "IP multicast group address"; leaf name { description "IP multicast group address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf group-increment { description "Mask for the incrementing group IP address"; type ipv4addr; } leaf group-count { description "Number of groups"; type uint32 { range "1 .. 512"; } } leaf exclude { description "Exclude sources"; type empty; } list source { key name; ordered-by user; description "IP multicast source address"; leaf name { description "Source address of IP multicast data"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-increment { description "Mask for the incrementing source IP address"; type ipv4addr; } leaf source-count { description "Number of sources"; type uint32 { range "1 .. 1024"; } } } } } leaf ssm-map { description "Map for SSM translation of IGMPv1 or IGMPv2 messages"; type string; } leaf-list ssm-map-policy { description "SSM map policy name"; type policy-algebra; } leaf immediate-leave { description "Group is removed immediately without sending query for last membership"; type empty; } leaf promiscuous-mode { description "Accept IGMP messages coming from different subnet"; type empty; } leaf accounting { description "Enable join and leave event notification"; type empty; } leaf no-accounting { description "Enable join and leave event notification"; type empty; } leaf-list group-policy { description "Group filter applied to incoming IGMP report messages"; type policy-algebra; } leaf group-limit { description "Maximum number of (source,group) per interface"; type uint16 { range "1 .. 32767"; } } leaf group-threshold { description "Percentage of limit at which to generate warnings"; type uint32 { range "1 .. 100"; } } leaf log-interval { description "Time between consecutive log messages"; type uint32 { range "6 .. 32767"; } } container passive { presence "enable passive"; description "Suppress sending and receiving IGMP messages"; leaf allow-receive { description "Allow receiving IGMP messages"; type empty; } leaf send-general-query { description "Send IGMP general query messages"; type empty; } leaf send-group-query { description "Send IGMP group query messages"; type empty; } } leaf-list oif-map { description "Output interface map"; type policy-algebra; } } container amt { description "Automatic Multicast Tunnel options for IGMP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container relay { description "AMT relay options for IGMP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container defaults { presence "enable defaults"; description "Default AMT relay options for IGMP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "Set IGMP version number on AMT interfaces"; type uint8 { range "1 .. 3"; } } leaf ssm-map { description "Map for SSM translation of IGMPv1 or IGMPv2 messages"; type string; } leaf-list ssm-map-policy { description "SSM map policy name"; type policy-algebra; } leaf accounting { description "Enable join and leave event notification"; type empty; } leaf no-accounting { description "Enable join and leave event notification"; type empty; } leaf-list group-policy { description "Group filter applied to incoming IGMP report messages"; type policy-algebra; } leaf group-limit { description "Maximum number of (source,group) per interface"; type uint16 { range "1 .. 32767"; } } leaf group-threshold { description "Percentage of limit at which to generate warnings"; type uint32 { range "1 .. 100"; } } leaf log-interval { description "Time between consecutive log messages"; type uint32 { range "6 .. 32767"; } } leaf robust-count { description "Expected packet loss on a subnet"; type uint32 { range "2 .. 10"; } } leaf query-interval { description "When to send host query messages"; units "seconds"; type uint32 { range "1 .. 1024"; } } leaf query-response-interval { description "How long to wait for a host query response"; units "seconds"; type string { } } } } } } container mld { presence "enable mld"; description "MLD options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for MLD"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum packets { description "Trace all MLD packets"; } enum query { description "Trace MLD membership query messages"; } enum report { description "Trace membership report messages"; } enum leave { description "Trace leave group messages (MLDv2 only)"; } enum mtrace { description "Trace mtrace packets"; } enum group { description "Trace group operations"; } enum client-notification { description "Trace notifications"; } enum host-notification { description "Trace host notifications"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } leaf query-interval { description "When to send host query messages"; units "seconds"; type uint32 { range "1 .. 1024"; } } leaf query-response-interval { description "How long to wait for a host query response"; units "seconds"; type string { } } leaf query-last-member-interval { description "When to send group query messages"; units "seconds"; type string { } } leaf robust-count { description "Expected packet loss on a subnet"; type uint32 { range "2 .. 10"; } } leaf maximum-transmit-rate { description "Maximum transmission rate (packets per second)"; type uint32 { range "1 .. 10000"; } } leaf accounting { description "Enable join and leave event notification"; type empty; } list interface { key name; ordered-by user; description "Interface options for MLD"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable MLD on this interface"; type empty; } } } leaf version { description "Set MLD version number on this interface"; type uint8 { range "1 .. 2"; } } container static { description "Static group or source membership"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "IP multicast group address"; leaf name { description "IP multicast group address"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf group-increment { description "Mask for the incrementing group IP address"; type ipv6addr; } leaf group-count { description "Number of groups"; type uint32 { range "1 .. 512"; } } leaf exclude { description "Exclude sources"; type empty; } list source { key name; ordered-by user; description "IP multicast source address"; leaf name { description "Source address of IP multicast data"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-increment { description "Mask for the incrementing source IP address"; type ipv6addr; } leaf source-count { description "Number of sources"; type uint32 { range "1 .. 1024"; } } } } } leaf ssm-map { description "Map for SSM translation of MLDv1 messages"; type string; } leaf-list ssm-map-policy { description "SSM map policy name"; type policy-algebra; } leaf immediate-leave { description "Group is removed immediately without sending query for last membership"; type empty; } leaf-list group-policy { description "Group filter applied to incoming MLD report messages"; type policy-algebra; } leaf group-limit { description "Maximum number of (source,group) per interface"; type uint16 { range "1 .. 32767"; } } leaf group-threshold { description "Percentage of group-limit at which to start generating warnings"; type uint16 { range "1 .. 100"; } } leaf log-interval { description "Time between consecutive log messages"; type uint32 { range "6 .. 32767"; } } leaf accounting { description "Enable join and leave event notification"; type empty; } leaf no-accounting { description "Enable join and leave event notification"; type empty; } container passive { presence "enable passive"; description "Suppress sending and receiving MLD messages"; leaf allow-receive { description "Allow receiving MLD messages"; type empty; } leaf send-general-query { description "Send MLD general query messages"; type empty; } leaf send-group-query { description "Send MLD group query messages"; type empty; } } leaf-list oif-map { description "Output interface map"; type policy-algebra; } } } container amt { description "AMT configuration"; uses juniper-protocols-amt; } container router-discovery { description "ICMP router discovery options"; uses juniper-protocols-router-discovery; } container router-advertisement { description "IPv6 router advertisement options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for router advertisement"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } } } list interface { key name; ordered-by user; description "Interfaces on which to configure router advertisement"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf max-advertisement-interval { description "Maximum advertisement interval"; units "seconds"; type uint32 { range "4 .. 1800"; } } leaf min-advertisement-interval { description "Minimum advertisement interval"; units "seconds"; type uint32 { range "3 .. 1350"; } } leaf managed-configuration { description "Set managed address configuration"; type empty; } leaf no-managed-configuration { description "Set managed address configuration"; type empty; } leaf other-stateful-configuration { description "Set other stateful configuration"; type empty; } leaf no-other-stateful-configuration { description "Set other stateful configuration"; type empty; } leaf link-mtu { description "Link MTU"; type empty; } leaf no-link-mtu { description "Link MTU"; type empty; } leaf solicit-router-advertisement-unicast { description "Enbale solicited router advertisement as unicast"; type empty; } leaf reachable-time { description "Reachable time"; units "milliseconds"; type uint32 { range "0 .. 3600000"; } } leaf retransmit-timer { description "Retransmit timer"; units "milliseconds"; type uint32 { range "0 .. 4294967295"; } } leaf virtual-router-only { description "Send advertisemnets only for vrrp-inet6-group"; type empty; } leaf current-hop-limit { description "Current hop limit"; type uint32 { range "0 .. 255"; } } leaf default-lifetime { description "Router lifetime"; units "seconds"; type uint32 { range "0 .. 9000"; } } list dns-server-address { key name; ordered-by user; description "Recursive DNS address configuration"; max-elements 3; leaf name { description "DNS address to be advertised"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf lifetime { description "DNS address lifetime"; default "1800"; units "seconds"; type uint32 { range "0 .. 4294967295"; } } } list prefix { key name; ordered-by user; description "Prefix configuration"; leaf name { description "Prefix to be advertised"; type ipv6prefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf valid-lifetime { description "Valid lifetime (fixed)"; units "seconds"; type uint32 { range "0 .. 4294967295"; } } leaf on-link { description "Set on-link flag"; type empty; } leaf no-on-link { description "Set on-link flag"; type empty; } leaf preferred-lifetime { description "Preferred lifetime (fixed)"; units "seconds"; type uint32 { range "0 .. 4294967295"; } } leaf autonomous { description "Set autonomous flag"; type empty; } leaf no-autonomous { description "Set autonomous flag"; type empty; } } } } container sap { presence "enable sap"; description "Session Advertisement Protocol options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable SAP"; type empty; } } } list listen { key name; ordered-by user; description "Address for SAP and SDP to listen on"; leaf name { description "IP address"; type ipv4addr; } leaf port { description "Port to listen for session advertisements"; type uint16; } } } container rsvp { description "RSVP options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable RSVP"; type empty; } } } container graceful-restart { description "Configure graceful restart attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable RSVP graceful restart capability"; type empty; } } } leaf helper-disable { description "Disable graceful restart helper capability"; type empty; } leaf maximum-helper-restart-time { description "Maximum wait time from down event to neighbor dead"; default "20"; units "seconds"; type uint32 { range "1 .. 1800"; } } leaf maximum-helper-recovery-time { description "Maximum time restarting neighbor states are kept"; default "180"; units "seconds"; type uint32 { range "1 .. 3600"; } } } container tunnel-services { presence "enable tunnel-services"; description "Use tunnel services for P2MP LSP ultimate-hop popping"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list devices { description "Tunnel services devices to use for P2MP LSPs"; type interface-device; } } leaf no-p2mp-sublsp { description "Disable P2MP sub-LSP object generation"; type empty; } leaf no-node-id-subobject { description "Do not include the node-id sub-object in the RRO"; type empty; } leaf no-interface-hello { description "Disble interface Hellos on all RSVP interfaces"; type empty; } leaf hello-acknowledgements { description "Acknowledge Hellos on RSVP interfaces not having sessions"; type empty; } container node-hello { presence "enable node-hello"; description "Enable node-ID based Hellos on all RSVP interfaces"; leaf hello-interval { description "Hello interval"; default "9"; units "seconds"; type uint32 { range "0 .. 60"; } } } leaf no-local-reversion { description "Disable local reversion at this Point of Local Repair"; type empty; } container fast-reroute { description "One-to-one fast-reroute protection mechanism"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf optimize-timer { description "Frequency of reoptimization for fast-reroute detour"; units "seconds"; type int32 { range "0 .. 65535"; } } } container load-balance { description "Per-packet load-balancing algorithm"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Per-packet load balancing proportional to LSP bandwidth"; type empty; } } container traceoptions { description "Trace options for RSVP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum packets { description "Trace all RSVP packets"; } enum path { description "Trace RSVP path messages"; } enum resv { description "Trace RSVP Resv messages"; } enum pathtear { description "Trace RSVP PathTear messages"; } enum resvtear { description "Trace RSVP ResvTear messages"; } enum state { description "Trace state transitions"; } enum error { description "Trace error conditions"; } enum route { description "Trace routing information"; } enum lmp { description "Trace RSVP-LMP related interactions"; } enum event { description "Trace RSVP related events"; } enum nsr-synchronization { description "Trace NSR synchronization events"; } enum lsp-prefix { description "Prefix the trace messages with LSP information"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } leaf refresh-time { description "Refresh time"; default "30"; type uint32 { range "1 .. 65535"; } } leaf keep-multiplier { description "Keep multiplier"; default "3"; type uint32 { range "1 .. 255"; } } leaf graceful-deletion-timeout { description "Time to complete graceful deletion signaling"; default "30"; units "seconds"; type uint32 { range "1 .. 300"; } } leaf setup-protection { description "Enable setup protection"; type empty; } leaf cross-credibility-cspf { description "Compute CSPF paths spanning protocols for bypass LSP, detour LSP and loose hop expansion"; type empty; } container preemption { description "Set RSVP session preemption attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice preemption-type { case case_1 { leaf disabled { description "No RSVP session preemption"; type empty; } } case case_2 { leaf normal { description "Run RSVP session preemption to accommodate new sessions"; type empty; } } case case_3 { leaf aggressive { description "Run RSVP session preemption whenever necessary"; type empty; } } } container soft-preemption { description "Options for establishing new path before tearing down a preempted LSP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf cleanup-timer { description "Time a soft-preempted LSP will be maintained"; units "seconds"; type int32 { range "0 .. 180"; } } } } container associated-bidirectional-lsp { description "Set associated bidirectional LSP attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf single-sided-provisioning { description "Enable unidirectional reverse LSP setup for single sided provisioned forward LSP"; type empty; } } list interface { key name; ordered-by user; description "RSVP interface options"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable RSVP on this interface"; type empty; } } } leaf authentication-key { description "Authentication password"; type unreadable; } leaf aggregate { description "Permit refresh reduction extensions on the interface"; type empty; } leaf no-aggregate { description "Permit refresh reduction extensions on the interface"; type empty; } leaf reliable { description "Permit reliable message delivery on the interface"; type empty; } leaf no-reliable { description "Permit reliable message delivery on the interface"; type empty; } leaf hello-interval { description "Hello interval"; default "9"; units "seconds"; type uint32 { range "0 .. 60"; } } container subscription { description "Link bandwidth percentage for RSVP reservation"; uses subscription-type; } leaf bandwidth { description "Available bandwidth for the interface units bps"; type string; } leaf update-threshold { description "Percentage change in reserved bandwidth to trigger IGP update"; default "10"; units "percent"; type uint32 { range "1 .. 20"; } } container link-protection { presence "enable link-protection"; description "Protect traffic with a label-stacked LSP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable link protection on this interface"; type empty; } } } container bandwidth { description "Bandwidth for each bypass"; uses bandwidth-type; } leaf max-bypasses { description "Max number of bypasses permitted for protecting this interface"; default "1"; type uint32 { range "0 .. 99"; } } leaf subscription { description "Percent of bandwidth guaranteed when admitting protected LSPs into bypasses"; default "100"; type uint32 { range "1 .. 65535"; } } leaf no-node-protection { description "Disallow node protection on this interface"; type empty; } leaf optimize-timer { description "Interval between bypass reoptimizations"; default "0"; units "seconds"; type uint32 { range "0 .. 65535"; } } leaf class-of-service { description "Class of service for the bypass LSP"; type int32 { range "0 .. 7"; } } leaf hop-limit { description "Maximum allowed router hops for bypass"; type uint32 { range "2 .. 255"; } } leaf no-cspf { description "Disable automatic path computation"; type empty; } leaf exclude-srlg { description "Exclude SRLG links"; type empty; } container priority { presence "enable priority"; description "Preemption priorities for the bypass LSP"; } leaf setup-priority { description "Set-up priority"; type uint32 { range "0 .. 7"; } } leaf reservation-priority { description "Reservation priority"; type uint32 { range "0 .. 7"; } } list path { key name; ordered-by user; description "Explicit route of bypass path"; leaf name { description "Address of next system in path"; type ipv4addr; } choice loose_strict_none { case case_1 { leaf loose { description "Next hop might not be adjacent"; type empty; } } case case_2 { leaf strict { description "Next hop must be adjacent"; type empty; } } } } container admin-group { description "Administrative group policy"; uses admin_group_include_exclude; } list bypass { key name; ordered-by user; description "Bypass with specific constraints"; leaf name { description "Name of bypass"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf to { description "Address of egress router"; type ipv4addr; mandatory true; } container bandwidth { description "Bandwidth for each bypass"; uses bandwidth-type; } leaf description { description "Text description of bypass"; type string { length "1 .. 80"; } } container priority { presence "enable priority"; description "Preemption priorities for bypass"; } leaf setup-priority { description "Set-up priority"; type uint32 { range "0 .. 7"; } } leaf reservation-priority { description "Reservation priority"; type uint32 { range "0 .. 7"; } } leaf class-of-service { description "Class of service for the bypass LSP"; type int32 { range "0 .. 7"; } } leaf hop-limit { description "Maximum allowed router hops for bypass"; type uint32 { range "2 .. 255"; } } leaf no-cspf { description "Disable automatic path computation"; type empty; } leaf exclude-srlg { description "Exclude SRLG links"; type empty; } list path { key name; ordered-by user; description "Explicit route of bypass path"; leaf name { description "Address of next system in path"; type ipv4addr; } choice loose_strict_none { case case_1 { leaf loose { description "Next hop might not be adjacent"; type empty; } } case case_2 { leaf strict { description "Next hop must be adjacent"; type empty; } } } } container admin-group { description "Administrative group policy"; uses admin_group_include_exclude; } } } } list peer-interface { key name; ordered-by user; description "Configuration for peer interface"; leaf name { description "Name of peer interface"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable RSVP on this control peer"; type empty; } } } leaf authentication-key { description "Authentication password"; type unreadable; } leaf aggregate { description "Permit refresh reduction extensions on the interface"; type empty; } leaf no-aggregate { description "Permit refresh reduction extensions on the interface"; type empty; } leaf reliable { description "Permit reliable message delivery on the interface"; type empty; } leaf no-reliable { description "Permit reliable message delivery on the interface"; type empty; } leaf hello-interval { description "Hello interval"; default "9"; units "seconds"; type uint32 { range "0 .. 60"; } } container dynamic-bidirectional-transport { presence "enable dynamic-bidirectional-transport"; description "Enable dynamic setup of bidirectional packet LSP for transporting non-packet GMPLS LSP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf template { description "Template for the dynamic bidirectional packet LSP"; type string { } } } } list lsp-set { key name; ordered-by user; description "Configuration for lsp set"; leaf name { description "Name of lsp set"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable this lsp set"; type empty; } } } container match-criteria { description "Match criteria for this lsp set"; uses lsp-set-match-type; } container traceoptions { description "Trace options for this lsp set"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum packets { description "Trace all RSVP packets"; } enum path { description "Trace RSVP path messages"; } enum resv { description "Trace RSVP Resv messages"; } enum pathtear { description "Trace RSVP PathTear messages"; } enum resvtear { description "Trace RSVP ResvTear messages"; } enum state { description "Trace state transitions"; } enum error { description "Trace error conditions"; } enum route { description "Trace routing information"; } enum lmp { description "Trace RSVP-LMP related interactions"; } enum event { description "Trace RSVP related events"; } enum nsr-synchronization { description "Trace NSR synchronization events"; } enum lsp-prefix { description "Prefix the trace messages with LSP information"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } } } container mpls { description "Multiprotocol Label Switching options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable MPLS"; type empty; } } } list lsp-external-controller { key name; ordered-by user; description "External path computing entity"; leaf name { description "Name of the external path computing entity"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container label-switched-path-template { description "Template for externally provisioned LSP parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice dynamic-template { case case_1 { leaf template-name { description "Name of point-to-point LSP template"; type string { length "1 .. 32"; } } } case case_2 { leaf default-template { description "Use default parameters"; type empty; } } } } list pce-controlled-lsp { key name; ordered-by user; description "Template for externally provisioned using regular expression"; leaf name { description "Template regular expression"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container label-switched-path-template { description "Template for externally provisioned LSP parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf template-name { description "Name of point-to-point LSP template"; type string { length "1 .. 64"; } } } } } container path-mtu { presence "enable path-mtu"; description "Path MTU configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf allow-fragmentation { description "If needed, fragment IP before encapsulating in MPLS"; type empty; } container rsvp { presence "enable rsvp"; description "RSVP-specific path MTU options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf mtu-signaling { description "Enable RSVP path MTU signaling"; type empty; } } } container diffserv-te { description "Global diffserv-traffic-engineering options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth-model { description "Bandwidth constraint model supported"; type enumeration { enum extended-mam { description "Maximum allocation model with support for E-LSPs"; } enum mam { description "Maximum allocation model"; } enum rdm { description "Russian dolls model"; } } } container te-class-matrix { description "Supported combinations of traffic-class and preemption"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container te0 { description "Definition for traffic-engineering class te0"; uses te-class-object; } container te1 { description "Definition for traffic-engineering class te1"; uses te-class-object; } container te2 { description "Definition for traffic-engineering class te2"; uses te-class-object; } container te3 { description "Definition for traffic-engineering class te3"; uses te-class-object; } container te4 { description "Definition for traffic-engineering class te4"; uses te-class-object; } container te5 { description "Definition for traffic-engineering class te5"; uses te-class-object; } container te6 { description "Definition for traffic-engineering class te6"; uses te-class-object; } container te7 { description "Definition for traffic-engineering class te7"; uses te-class-object; } } } container auto-policing { description "Automatic policing of LSPs"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list class { key name; ordered-by user; description "Forwarding class"; leaf name { description "(null)"; type enumeration { enum all { description "All forwarding classes"; } enum ct0 { description "Forwarding class 0"; } enum ct1 { description "Forwarding class 1"; } enum ct2 { description "Forwarding class 2"; } enum ct3 { description "Forwarding class 3"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice policing-action { case case_1 { leaf drop { description "Drop packets if bandwidth is exceeded"; type empty; } } case case_2 { leaf loss-priority-high { description "Set loss priority to high if bandwidth is exceeded"; type empty; } } case case_3 { leaf loss-priority-low { description "Set loss priority to low if bandwidth is exceeded"; type empty; } } } } } container statistics { description "Collect statistics for signaled label-switched paths"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Statistics file options"; uses trace_file_type; } leaf interval { description "Time to collect statistics (seconds)"; type int32 { range "1 .. 65535"; } } leaf auto-bandwidth { description "Enable auto bandwidth allocation"; type empty; } leaf no-transit-statistics { description "Disable transit LSP statistics collection"; type empty; } choice transit-polling-type { case case_1 { leaf transit-statistics-polling { description "Enable polling and display of transit lsp statistics"; type empty; } } } leaf statistics-query-batch-size { description "Number of LSPs for which statistics will be queried together"; type int32 { range "1 .. 25"; } } leaf traffic-class-statistics { description "Create per traffic class statistics sensors for LSPs"; type empty; } } container log-updown { description "Logging actions for LSP up/down events"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf syslog { description "Send syslog messages"; type empty; } leaf no-syslog { description "Send syslog messages"; type empty; } choice trap-choice { case case_1 { leaf trap { description "Send SNMP traps"; type empty; } } case case_2 { container no-trap { presence "enable no-trap"; description "Don't send SNMP traps"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf mpls-lsp-traps { description "Dont send mpls lsp up/down traps"; type empty; } leaf rfc3812-traps { description "Dont send rfc3812 traps"; type empty; } } } } leaf trap-path-down { description "Send SNMP traps when a path goes down"; type empty; } leaf trap-path-up { description "Send SNMP traps when a path goes up"; type empty; } } container traffic-engineering { presence "enable traffic-engineering"; description "Traffic-engineering control"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice protocols { case case_1 { leaf bgp { description "BGP destinations only"; type empty; } } case case_2 { leaf bgp-igp { description "BGP and IGP destinations"; type empty; } } case case_3 { leaf bgp-igp-both-ribs { description "BGP and IGP destinations with routes in both routing tables"; type empty; } } case case_4 { leaf mpls-forwarding { description "Use MPLS routes for forwarding, not routing"; type empty; } } } container database { description "Traffic engineering database"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container import { description "Configure TED import parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list policy { description "Configure import policy"; type policy-algebra; } leaf identifier { description "BGP-TE identifier"; type uint64 { range "2 .. 18446744073709551615"; } } leaf bgp-ls-identifier { description "BGP-TE domain identifier"; type uint32; } } container export { description "Configure TED export related parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list policy { description "Export policy"; type policy-algebra; } container credibility { description "TED credibility value for entries from BGP-TE"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf unknown { description "Entries sourced from unknown entities"; type uint32 { range "0 .. 512"; } } leaf direct { description "Entries sourced from directly connected links"; type uint32 { range "0 .. 512"; } } leaf static { description "Entries sourced from static configuration"; type uint32 { range "0 .. 512"; } } leaf ospf { description "Entries sourced from ospf"; type uint32 { range "0 .. 512"; } } leaf isis-level-1 { description "Entries sourced from ISIS Level 1"; type uint32 { range "0 .. 512"; } } leaf isis-level-2 { description "Entries sourced from ISIS Level 2"; type uint32 { range "0 .. 512"; } } } } } } container traceoptions { description "Trace options for MPLS"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum connection { description "Trace CCC activity"; } enum connection-detail { description "Trace CCC activity in detail"; } enum cspf { description "Trace CSPF computation"; } enum cspf-node { description "Trace nodes visited during CSPF"; } enum cspf-link { description "Trace links visited during CSPF"; } enum state { description "Trace state transitions"; } enum error { description "Trace error conditions"; } enum lsping { description "Trace LSP ping packets received"; } enum graceful-restart { description "Trace graceful-restart-related events"; } enum nsr-synchronization { description "Trace NSR synchronization events"; } enum nsr-synchronization-detail { description "Trace NSR synchronization events in detail"; } enum static { description "Trace static label-switched path"; } enum egress-protection { description "Trace egress protection events"; } enum all { description "Trace everything"; } enum autobw-state { description "Trace autobandwidth events in mpls trace"; } enum externally-controlled-lsp { description "Trace externally controlled LSP events in mpls trace"; } enum ted-import { description "Trace leaking TED entries into lsdist.0 table"; } enum ted-export { description "Trace leaking of entries from lsdist.0 table into TED"; } } } } } list admin-groups { key name; ordered-by user; description "Administrative groups"; leaf name { description "Group name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf group-value { description "Group bit position"; type uint32 { range "0 .. 31"; } } } leaf advertisement-hold-time { description "Time that an 'LSP down' advertisement will be delayed"; default "5"; units "seconds"; type uint32 { range "0 .. 65535"; } } leaf rsvp-error-hold-time { description "Time that RSVP PathErr events will be remembered"; default "25"; units "seconds"; type uint32 { range "0 .. 240"; } } leaf optimize-aggressive { description "Run aggressive optimization algorithm based on IGP metric only"; type empty; } leaf smart-optimize-timer { description "Path optimization interval after a link traversed by the path goes down"; units "seconds"; type int32 { range "0 .. 65535"; } } leaf optimize-switchover-delay { description "Delay before switching LSP to newly optimized path"; units "seconds"; type int32 { range "1 .. 900"; } } leaf no-propagate-ttl { description "Disable TTL propagation from IP to MPLS (on push) and MPLS to IP (on pop)"; type empty; } leaf explicit-null { description "Advertise the EXPLICIT_NULL label when the router is the egress"; type empty; } leaf ipv6-tunneling { description "Allow MPLS LSPs to be used for tunneling IPv6 traffic"; type empty; } leaf icmp-tunneling { description "Allow MPLS LSPs to be used for tunneling ICMP error packets"; type empty; } leaf revert-timer { description "Hold-down window before reverting back to primary path, 0 means disable"; units "seconds"; type int32 { range "0 .. 65535"; } } leaf optimize-hold-dead-delay { description "Delay before tearing down the old optimized path"; units "seconds"; type int32 { range "0 .. 65535"; } } leaf expand-loose-hop { description "Perform CSPF path computation to expand loose hops"; type empty; } leaf mib-mpls-show-p2mp { description "Show p2mp tunnels entries in mpls mib walk"; type empty; } container bandwidth { description "Bandwidth to reserve (bps)"; uses bandwidth-type; } leaf class-of-service { description "Class-of-service value"; type int32 { range "0 .. 7"; } } leaf no-decrement-ttl { description "Do not decrement the TTL within an LSP"; type empty; } leaf hop-limit { description "Maximum allowed router hops"; type int32 { range "2 .. 255"; } } leaf no-cspf { description "Disable automatic path computation"; type empty; } leaf admin-down { description "Set GMPLS LSP to administrative down state"; type empty; } leaf optimize-timer { description "Periodical path reoptimizations"; units "seconds"; type int32 { range "0 .. 65535"; } } leaf preference { description "Preference value"; type uint32; } container priority { presence "enable priority"; description "Preemption priorities"; } leaf setup-priority { description "Set-up priority"; type uint32 { range "0 .. 7"; } } leaf reservation-priority { description "Reservation priority"; type uint32 { range "0 .. 7"; } } leaf record { description "Record transit routers"; type empty; } leaf no-record { description "Record transit routers"; type empty; } leaf standby { description "Keep backup paths in continuous standby"; type empty; } leaf exclude-srlg { description "Exclude SRLG links for secondary path"; type empty; } container admin-group { description "Administrative group policy"; uses admin_group_include_exclude; } container admin-group-extended { description "Extended administrative group policy"; uses admin_group_include_exclude; } container oam { description "Periodic OAM"; uses periodic_oam; } leaf ultimate-hop-popping { description "Request ultimate hop popping from egress"; type empty; } leaf sync-active-path-bandwidth { description "Signal standby path with bandwidth obtained from active path"; type empty; } leaf cross-credibility-cspf { description "Compute paths across multi-protocol links and nodes"; type empty; } list label-switched-path { key name; ordered-by user; description "Label-switched path"; leaf name { description "Name of path"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable MPLS label-switched path"; type empty; } } } container traceoptions { description "Trace options for MPLS label-switched path"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum cspf { description "Trace CSPF computation"; } enum cspf-node { description "Trace nodes visited during CSPF"; } enum cspf-link { description "Trace links visited during CSPF"; } enum state { description "Trace state transitions"; } enum all { description "Trace everything"; } } } } } leaf no-install-to-address { description "Don't install host route 'to' address into routing tables"; type empty; } leaf backup { description "Use LSP for IGP backup"; type empty; } leaf from { description "Address of ingress router"; type ipv4addr; } choice label-switched-path-or-template { case case_1 { leaf to { description "Address of egress router"; type ipv4addr; } } case case_2 { leaf template { description "Template for dynamic lsp paramaters"; type empty; } } } leaf corouted-bidirectional { description "Setup the LSP as a corouted bidirectional LSP"; type empty; } leaf corouted-bidirectional-passive { description "Associate LSP with incoming corouted bidirectional LSP"; type empty; } leaf metric { description "Metric value"; type uint32 { range "1 .. 16777215"; } } leaf ldp-tunneling { description "Allow LDP to use this LSP for tunneling"; type empty; } leaf soft-preemption { description "Attempt make-before-break service while preempting this LSP"; type empty; } list install { key name; ordered-by user; description "Install prefix"; leaf name { description "Destination prefix"; type ipprefix; } leaf active { description "Install prefix into forwarding table"; type empty; } } leaf retry-timer { description "Time before retrying the primary path"; units "seconds"; type uint32 { range "1 .. 600"; } } leaf retry-limit { description "Maximum number of times to retry primary path"; type uint32 { range "0 .. 10000"; } } container lsp-attributes { description "Attributes for generalized LSP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf signal-bandwidth { description "Signal bandwidth for the LSP"; type enumeration { enum ds1 { description "1.544 Mbps"; } enum vt1-5 { description "1.728 Mbps"; } enum e1 { description "2.048 Mbps"; } enum vt2 { description "2.304 Mbps"; } enum ethernet { description "10 Mbps"; } enum e3 { description "34.368 Mbps"; } enum ds3 { description "44.736 Mbps"; } enum sts-1 { description "51.84 Mbps"; } enum fastether { description "100.00 Mbps"; } enum stm-1 { description "155.52 Mbps"; } enum stm-4 { description "622.08 Mbps"; } enum gigether { description "1000.00 Mbps"; } enum stm-16 { description "2488.32 Mbps"; } enum stm-64 { description "9953.28 Mbps"; } enum 10gigether { description "10000.00 Mbps"; } enum stm-256 { description "39813.12 Mbps"; } enum 100gige { description "100000.00 Mbps"; } } } leaf switching-type { description "LSP switching type desired"; type enumeration { enum psc-1 { description "Packet switching"; } enum lambda { description "Lambda switching"; } enum fiber { description "Fiber switching"; } enum tdm { description "TDM switching"; } enum ethernet-vlan { description "Ethernet VLAN switching"; } } mandatory true; } presence "enable lsp-attributes"; leaf encoding-type { description "LSP encoding type desired"; type enumeration { enum packet { description "Packet encoding"; } enum ethernet { description "Ethernet encoding"; } enum pdh { description "PDH encoding"; } enum sonet-sdh { description "SONET-SDH encoding"; } } } leaf gpid { description "Generalized PID"; type enumeration { enum ipv4 { description "(null)"; } enum ethernet { description "(null)"; } enum ppp { description "(null)"; } enum hdlc { description "(null)"; } enum pos-no-scrambling-crc-16 { description "(null)"; } enum pos-no-scrambling-crc-32 { description "(null)"; } enum pos-scrambling-crc-16 { description "(null)"; } enum pos-scrambling-crc-32 { description "(null)"; } } } container upstream-label { description "Upstream Label for the bidirectional label-switched path"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf vlan-id { description "VLAN ID label for the label-switched path"; type uint32 { range "1 .. 4094"; } } } } leaf revert-timer { description "Hold-down window before reverting back to primary path, 0 means disable"; units "seconds"; type int32 { range "0 .. 65535"; } } leaf optimize-hold-dead-delay { description "Delay before tearing down the old optimized path"; units "seconds"; type int32 { range "0 .. 65535"; } } container bandwidth { description "Bandwidth to reserve (bps)"; uses bandwidth-type; } leaf class-of-service { description "Class-of-service value"; type int32 { range "0 .. 7"; } } leaf no-decrement-ttl { description "Do not decrement the TTL within an LSP"; type empty; } leaf hop-limit { description "Maximum allowed router hops"; type int32 { range "2 .. 255"; } } leaf no-cspf { description "Disable automatic path computation"; type empty; } leaf admin-down { description "Set GMPLS LSP to administrative down state"; type empty; } leaf optimize-timer { description "Periodical path reoptimizations"; units "seconds"; type int32 { range "0 .. 65535"; } } leaf preference { description "Preference value"; type uint32; } container priority { presence "enable priority"; description "Preemption priorities"; } leaf setup-priority { description "Set-up priority"; type uint32 { range "0 .. 7"; } } leaf reservation-priority { description "Reservation priority"; type uint32 { range "0 .. 7"; } } leaf record { description "Record transit routers"; type empty; } leaf no-record { description "Record transit routers"; type empty; } leaf standby { description "Keep backup paths in continuous standby"; type empty; } leaf exclude-srlg { description "Exclude SRLG links for secondary path"; type empty; } container admin-group { description "Administrative group policy"; uses admin_group_include_exclude; } container admin-group-extended { description "Extended administrative group policy"; uses admin_group_include_exclude; } container oam { description "Periodic OAM"; uses periodic_oam; } leaf ultimate-hop-popping { description "Request ultimate hop popping from egress"; type empty; } leaf sync-active-path-bandwidth { description "Signal standby path with bandwidth obtained from active path"; type empty; } leaf cross-credibility-cspf { description "Compute paths across multi-protocol links and nodes"; type empty; } leaf entropy-label { description "Enable entropy label"; type empty; } choice cspf-attribute { case case_1 { leaf random { description "Randomly select among equal-cost paths"; type empty; } } case case_2 { leaf least-fill { description "Select the least filled among equal-cost paths"; type empty; } } case case_3 { leaf most-fill { description "Select the most filled among equal-cost paths"; type empty; } } } leaf description { description "Text description of label-switched path"; type string { } } choice lp-type { case case_1 { leaf link-protection { description "Protect LSP from link faults only"; type empty; } } case case_2 { leaf node-link-protection { description "Protect LSP from both link and node faults"; type empty; } } } leaf inter-domain { description "Inter-domain LSP"; type empty; } leaf adaptive { description "Have the LSP smoothly cut over to new routes"; type empty; } container fast-reroute { presence "enable fast-reroute"; description "Fast reroute"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf hop-limit { description "Maximum allowed router hops"; type int32 { range "0 .. 255"; } } choice bw-attribute { case case_1 { leaf bandwidth { description "Bandwidth to reserve (bps)"; type string; } } case case_2 { leaf bandwidth-percent { description "Percentage of main path bandwidth to reserve"; type int32 { range "1 .. 100"; } } } } choice include_any_or_no_include_any { case case_1 { leaf no-include-any { description "Disable include-any checking"; type empty; } } case case_2 { leaf-list include-any { description "Groups, one or more of which must be present"; type string; } } } choice include_all_or_no_include_all { case case_1 { leaf no-include-all { description "Disable include-all checking"; type empty; } } case case_2 { leaf-list include-all { description "Groups, all of which must be present"; type string; } } } choice exclude_or_no_exclude { case case_1 { leaf no-exclude { description "Disable exclude checking"; type empty; } } case case_2 { leaf-list exclude { description "Groups, all of which must be absent"; type string; } } } } container p2mp { presence "enable p2mp"; description "Point-to-multipoint label-switched path"; leaf path_name { description "Name of point-to-multipoint LSP"; type string { } } } container auto-bandwidth { presence "enable auto-bandwidth"; description "Do auto bandwidth allocation for this LSP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf adjust-interval { description "Time to adjust LSP bandwidth"; default "86400"; units "seconds"; type uint32 { range "300 .. 315360000"; } } leaf adjust-threshold { description "Change in average LSP utilization to trigger auto-adjustment"; default "0"; units "percent"; type uint32 { range "0 .. 50"; } } leaf adjust-threshold-activate-bandwidth { description "Adjusts signaled bw if greater than this value"; units "bps"; type string; } leaf minimum-bandwidth { description "Minimum LSP bandwidth"; units "bps"; type string; } leaf maximum-bandwidth { description "Maximum LSP bandwidth"; units "bps"; type string; } leaf minimum-bandwidth-adjust-interval { description "Duration for which minimum bandwidth will be frozen"; units "seconds"; type uint32 { range "300 .. 31536000"; } } leaf minimum-bandwidth-adjust-threshold-change { description "Change in max average bandwidth to freeze min bandwidth"; units "percent"; type uint32 { range "0 .. 100"; } } leaf monitor-bandwidth { description "Monitor LSP bandwidth without adjustments"; type empty; } leaf adjust-threshold-overflow-limit { description "Number of consecutive overflow samples to trigger auto-adjustment"; type uint32 { range "1 .. 65535"; } } leaf adjust-threshold-underflow-limit { description "Number of consecutive underflow samples to trigger auto-adjustment"; type uint32 { range "1 .. 65535"; } } leaf resignal-minimum-bandwidth { description "Resignal the LSP using minimum-bandwidth"; type empty; } leaf sync-active-path-bandwidth { description "Signal standby path with bandwidth obtained from active path"; type empty; } } container optimize-on-change { description "Do ingress controlled preemption for this LSP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf link-congestion { description "Optimize when a link becomes congested"; type empty; } } container deselect-on-bandwidth-failure { presence "enable deselect-on-bandwidth-failure"; description "Deselect active path if it cannot meet the bandwidth constraint"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf tear-lsp { description "Bring down active path when all paths fail to reserve required bandwidth"; type empty; } } container associate-lsp { description "Associate the LSP for OAM"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf lsp-name { description "Name of assocation LSP"; type string { } mandatory true; } presence "enable associate-lsp"; leaf from { description "Address of ingress router of associated LSP"; type ipv4addr; } } list primary { key name; ordered-by user; description "Preferred path"; leaf name { description "Name of path"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container bandwidth { description "Bandwidth to reserve (bps)"; uses bandwidth-type; } leaf class-of-service { description "Class-of-service value"; type int32 { range "0 .. 7"; } } leaf no-decrement-ttl { description "Do not decrement the TTL within an LSP"; type empty; } leaf hop-limit { description "Maximum allowed router hops"; type int32 { range "2 .. 255"; } } leaf no-cspf { description "Disable automatic path computation"; type empty; } leaf admin-down { description "Set GMPLS LSP to administrative down state"; type empty; } leaf optimize-timer { description "Periodical path reoptimizations"; units "seconds"; type int32 { range "0 .. 65535"; } } leaf preference { description "Preference value"; type uint32; } container priority { presence "enable priority"; description "Preemption priorities"; } leaf setup-priority { description "Set-up priority"; type uint32 { range "0 .. 7"; } } leaf reservation-priority { description "Reservation priority"; type uint32 { range "0 .. 7"; } } leaf record { description "Record transit routers"; type empty; } leaf no-record { description "Record transit routers"; type empty; } leaf standby { description "Keep backup paths in continuous standby"; type empty; } leaf exclude-srlg { description "Exclude SRLG links for secondary path"; type empty; } container admin-group { description "Administrative group policy"; uses admin_group_include_exclude; } container admin-group-extended { description "Extended administrative group policy"; uses admin_group_include_exclude; } container oam { description "Periodic OAM"; uses periodic_oam; } leaf ultimate-hop-popping { description "Request ultimate hop popping from egress"; type empty; } leaf sync-active-path-bandwidth { description "Signal standby path with bandwidth obtained from active path"; type empty; } leaf cross-credibility-cspf { description "Compute paths across multi-protocol links and nodes"; type empty; } leaf adaptive { description "Have the LSP smoothly cut over to new routes"; type empty; } leaf select { description "(null)"; type enumeration { enum manual { description "Manual override as preferred active path, if up and stable"; } enum unconditional { description "Unconditional override as preferred active path, regardless of up/down status"; } } } container upstream-label { description "Upstream Label for the bidirectional label-switched path"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf vlan-id { description "VLAN ID label for the label-switched path"; type uint32 { range "1 .. 4094"; } } } container optimize-on-change { description "Do ingress controlled preemption for this LSP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf link-congestion { description "Optimize when a link becomes congested"; type empty; } } } list secondary { key name; ordered-by user; description "Backup path"; leaf name { description "Name of path"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container bandwidth { description "Bandwidth to reserve (bps)"; uses bandwidth-type; } leaf class-of-service { description "Class-of-service value"; type int32 { range "0 .. 7"; } } leaf no-decrement-ttl { description "Do not decrement the TTL within an LSP"; type empty; } leaf hop-limit { description "Maximum allowed router hops"; type int32 { range "2 .. 255"; } } leaf no-cspf { description "Disable automatic path computation"; type empty; } leaf admin-down { description "Set GMPLS LSP to administrative down state"; type empty; } leaf optimize-timer { description "Periodical path reoptimizations"; units "seconds"; type int32 { range "0 .. 65535"; } } leaf preference { description "Preference value"; type uint32; } container priority { presence "enable priority"; description "Preemption priorities"; } leaf setup-priority { description "Set-up priority"; type uint32 { range "0 .. 7"; } } leaf reservation-priority { description "Reservation priority"; type uint32 { range "0 .. 7"; } } leaf record { description "Record transit routers"; type empty; } leaf no-record { description "Record transit routers"; type empty; } leaf standby { description "Keep backup paths in continuous standby"; type empty; } leaf exclude-srlg { description "Exclude SRLG links for secondary path"; type empty; } container admin-group { description "Administrative group policy"; uses admin_group_include_exclude; } container admin-group-extended { description "Extended administrative group policy"; uses admin_group_include_exclude; } container oam { description "Periodic OAM"; uses periodic_oam; } leaf ultimate-hop-popping { description "Request ultimate hop popping from egress"; type empty; } leaf sync-active-path-bandwidth { description "Signal standby path with bandwidth obtained from active path"; type empty; } leaf cross-credibility-cspf { description "Compute paths across multi-protocol links and nodes"; type empty; } leaf adaptive { description "Have the LSP smoothly cut over to new routes"; type empty; } leaf select { description "(null)"; type enumeration { enum manual { description "Manual override as preferred active path, if up and stable"; } enum unconditional { description "Unconditional override as preferred active path, regardless of up/down status"; } } } container upstream-label { description "Upstream Label for the bidirectional label-switched path"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf vlan-id { description "VLAN ID label for the label-switched path"; type uint32 { range "1 .. 4094"; } } } container optimize-on-change { description "Do ingress controlled preemption for this LSP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf link-congestion { description "Optimize when a link becomes congested"; type empty; } } } container policing { description "Traffic policing for this LSP"; leaf filter { description "Name of filter to use for policing LSP traffic"; type string { } } leaf no-auto-policing { description "Turn off automatic policing for this LSP"; type empty; } } leaf lsp-external-controller { description "Name of the external path computing entity"; type string { } } leaf associate-backup-pe-groups { description "Associate this LSP with backup-pe groups"; type empty; } leaf egress-protection { description "Use this LSP for egress protection data transport"; type empty; } } container deselect-on-bandwidth-failure { presence "enable deselect-on-bandwidth-failure"; description "Deselect active path if it cannot meet the bandwidth constraint"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf tear-lsp { description "Bring down active path when all paths fail to reserve required bandwidth"; type empty; } } list container-label-switched-path { key name; ordered-by user; description "(null)"; leaf name { description "Name of path"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable MPLS container-label-switched path"; type empty; } } } leaf description { description "Text description of label-switched path"; type string { } } container label-switched-path-template { description "Template for dynamic point-to-point LSP parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice dynamic-template { case case_1 { leaf template-name { description "Name of point-to-point LSP template"; type string { length "1 .. 64"; } } } case case_2 { leaf default-template { description "Use default parameters"; type empty; } } } } leaf to { description "Address of egress router"; type ipv4addr; mandatory true; } leaf suffix { description "Suffix to generate names of members of container LSP"; type string { } } container splitting-merging { description "Do splitting and merging"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum-member-lsps { description "Maximum number of LSPs including master and slave"; type int32 { range "1 .. 64"; } } leaf minimum-member-lsps { description "Minimum number of LSPs including master and slave"; type int32 { range "1 .. 64"; } } leaf splitting-bandwidth { description "Maximum bandwidth threshold for splitting"; units "bps"; type string; } leaf merging-bandwidth { description "Minimum bandwidth threshold for merging"; units "bps"; type string; } leaf maximum-signaling-bandwidth { description "Maximum bandwidth for signaling during normalization"; units "bps"; type string; } leaf minimum-signaling-bandwidth { description "Minimum bandwidth for signaling during normalization"; units "bps"; type string; } leaf splitting-merging-threshold { description "Change in aggregate LSP utilization to trigger splitting or merging"; default "10"; units "percent"; type uint32 { range "0 .. 100"; } } container normalization { description "Do normalization"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf normalize-interval { description "Time to normalize container LSP"; default "86400"; units "seconds"; type uint32 { range "300 .. 315360000"; } } leaf failover-normalization { description "Do pre-mature normalization in case some LSPs go down before next normalization"; type empty; } leaf no-incremental-normalize { description "Do not normalize unless all LSPs are successfully signaled"; type empty; } leaf normalization-retry-duration { description "Time before retrying the container LSP normalization"; units "seconds"; type uint32 { range "1 .. 86400"; } } leaf normalization-retry-limits { description "Maximum number of times to retry container LSP normalization"; type uint32 { range "1 .. 1000"; } } } container sampling { description "Do normalization"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf cut-off-threshold { description "Cut-off percentile to remove outliers from aggregate samples"; default "0"; type uint32 { range "0 .. 100"; } } choice sampling-mode { case case_1 { leaf use-average-aggregate { description "Use average of the samples"; type empty; } } case case_2 { leaf use-percentile { description "Use a percentile of the samples"; default "100"; type uint32 { range "0 .. 100"; } } } } } } leaf lsp-external-controller { description "Name of the external path computing entity"; type string { } } } list transit-lsp-association { key name; ordered-by user; description "Transit label switch path assoication"; leaf name { description "Name of transit assocation LSP group"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf lsp-name-1 { description "Name of assocation LSP 1"; type string { } } leaf from-1 { description "Address of associated LSP 1"; type ipv4addr; } leaf lsp-name-2 { description "Name of assocation LSP 2"; type string { } } leaf from-2 { description "Address of associated LSP 2"; type ipv4addr; } } list path { key name; ordered-by user; description "Route of a label-switched path"; leaf name { description "Name of label-switched path"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list path-list { key name; ordered-by user; description "List of routers in the label-switched path"; leaf name { description "Address of next system in path"; type ipv4addr; } choice loose-strict-none { case case_1 { leaf loose { description "Next hop might not be adjacent"; type empty; } } case case_2 { leaf strict { description "Next hop must be adjacent"; type empty; } } } } } list static-label-switched-path { key name; ordered-by user; description "Static label-switched path"; leaf name { description "Name of path"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice lsp-type { case case_1 { container bypass { description "Bypass ingress label-switched path"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Bandwidth to reserve"; units "bps"; type string; } leaf description { description "Text description of label-switched path"; type string { } } leaf next-hop { description "IPv4 address or interface of next-hop router"; type ipv4addr-or-interface; mandatory true; } presence "enable bypass"; leaf push { description "Label to push"; type uint32 { range "0 .. 1048575"; } } leaf to { description "Address of egress router"; type ipv4addr; mandatory true; } } } case case_2 { list transit { key name; ordered-by user; description "Transit label-switched path"; leaf name { description "Incoming label value"; type uint32 { range "1000000 .. 1048575"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Bandwidth to reserve"; units "bps"; type string; } leaf description { description "Text description of label-switched path"; type string { } } container link-protection { description "Bypass link protection"; leaf bypass-name { description "Bypass label-switched path name"; type string { } mandatory true; } presence "enable link-protection"; } leaf next-hop { description "IPv4 address or interface of next-hop router"; type ipv4addr-or-interface; mandatory true; } container node-protection { description "Bypass node protection"; leaf bypass-name { description "Bypass label-switched path name"; type string { } mandatory true; } presence "enable node-protection"; leaf next-next-label { description "Label expected by next-next-hop"; type uint32 { range "0 .. 1048575"; } } } choice label-action { case case_1 { leaf swap { description "Swap top label with this label"; type uint32 { range "0 .. 1048575"; } } } case case_2 { leaf pop { description "Pop the top label"; type empty; } } } } } case case_3 { container ingress { description "Ingress LSR configuration for a static LSP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Bandwidth to reserve"; units "bps"; type string; } leaf class-of-service { description "Class-of-service value"; type int32 { range "0 .. 7"; } } leaf description { description "Text description of label-switched path"; type string { } } list install { key name; ordered-by user; description "Install prefix"; leaf name { description "Destination prefix"; type ipv4prefix; } leaf active { description "Install prefix into forwarding table"; type empty; } } leaf metric { description "Metric value"; type uint32 { range "1 .. 16777215"; } } leaf next-hop { description "IPv4 address or interface of next-hop router"; type ipv4addr-or-interface; mandatory true; } presence "enable ingress"; container link-protection { description "Bypass link protection"; leaf bypass-name { description "Bypass label-switched path name"; type string { } mandatory true; } presence "enable link-protection"; } container node-protection { description "Bypass node protection"; leaf bypass-name { description "Bypass label-switched path name"; type string { } mandatory true; } presence "enable node-protection"; leaf next-next-label { description "Label expected by next-next-hop"; type uint32 { range "0 .. 1048575"; } } } leaf no-install-to-address { description "Don't install host route 'to' address into routing tables"; type empty; } container policing { description "Traffic policing for this LSP"; leaf filter { description "Name of filter to use for policing LSP traffic"; type string { } } leaf no-auto-policing { description "Turn off automatic policing for this LSP"; type empty; } } leaf preference { description "Preference value"; type uint32; } leaf to { description "Address of egress router"; type ipv4addr; mandatory true; } leaf push { description "Label to push"; type uint32 { range "0 .. 1048575"; } } leaf entropy-label { description "Enable entropy label"; type empty; } } } } } list interface { key name; ordered-by user; description "MPLS interface options"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable MPLS on this interface"; type empty; } } } leaf-list srlg { description "SRLG Name"; type string; max-elements 64; } leaf always-mark-connection-protection-tlv { description "Mark connection protection tlv on this interface"; type empty; } leaf switch-away-lsps { description "Switch away protected LSPs to their bypass LSPs"; type empty; } leaf-list admin-group { description "Administrative groups"; type string; } leaf-list admin-group-extended { description "Extended administrative groups"; type string; } container static { description "Static label-switch path related configurations"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf protection-revert-time { description "FRR revert wait time, 0 means disable"; units "seconds"; type uint32 { range "0 .. 65535"; } } } } container egress-protection { description "Egress router protection"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list context-identifier { key name; description "Context identifier"; leaf name { description "IP address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice context-type { case case_1 { leaf primary { description "Primary"; type empty; } } case case_2 { leaf protector { description "Protector"; type empty; } } } leaf metric { description "IGP metric"; type uint32 { range "2 .. 16777215"; } } leaf advertise-mode { description "Advertise mode"; type enumeration { enum stub-proxy { description "Proxy"; } enum stub-alias { description "Alias"; } } } leaf-list admin-group { description "Administrative groups"; type string; } } container traceoptions { description "Trace options for egress-protection"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum state { description "Trace state transitions"; } enum route { description "Trace route transitions"; } enum error { description "Trace error conditions"; } enum all { description "Trace everything"; } } } } } } } container bgp { description "BGP options"; uses juniper-protocols-bgp; } container dvmrp { presence "enable dvmrp"; description "DVMRP options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable DVMRP"; type empty; } } } container traceoptions { description "Trace options for DVMRP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum route { description "Trace routing information"; } enum poison { description "Trace poison-route-reverse packets"; } enum packets { description "Trace all DVMRP packets"; } enum probe { description "Trace probe packets"; } enum report { description "Trace DVMRP route report packets"; } enum neighbor { description "Trace neighbor probe packets"; } enum prune { description "Trace prune messages"; } enum graft { description "Trace graft messages"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } container rib-group { description "Routing table group"; uses rib_group_inet_type; } leaf-list import { description "Import policy"; type policy-algebra; } leaf-list export { description "Export policy"; type policy-algebra; } list interface { key name; ordered-by user; description "DVMRP interface options"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable DVMRP on this interface"; type empty; } } } leaf mode { description "Mode of interface"; type enumeration { enum forwarding { description "Use DVMRP for multicast forwarding"; } enum unicast-routing { description "Use DVMRP for unicast routing only"; } } } leaf metric { description "DVMRP metric value"; type uint32 { range "1 .. 32"; } } leaf hold-time { description "When neighbors think the interface is down"; units "seconds"; type uint32 { range "1 .. 255"; } } } } container isis { description "IS-IS options"; uses juniper-protocols-isis; } container esis { description "End system-intermediate system options"; uses juniper-protocols-esis; } container msdp { description "MSDP configuration"; uses juniper-protocols-msdp; } container ospf { description "OSPF configuration"; uses juniper-protocols-ospf; } container ospf3 { description "OSPFv3 configuration"; list realm { key name; ordered-by user; description "OSPFv3 realm configuration"; leaf name { description "OSPFv3 realm name"; type enumeration { enum ipv6-unicast { description "IPv6 unicast realm"; } enum ipv6-multicast { description "IPv6 multicast realm"; } enum ipv4-unicast { description "IPv4 unicast realm"; } enum ipv4-multicast { description "IPv4 multicast realm"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable OSPF"; type empty; } } } container traceoptions { description "Trace options for OSPF"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum spf { description "Trace SPF calculations"; } enum error { description "Trace errored packets"; } enum event { description "Trace OSPF state machine events"; } enum packet-dump { description "Dump the contents of selected packet types"; } enum flooding { description "Trace LSA flooding"; } enum lsa-analysis { description "Trace LSA analysis"; } enum packets { description "Trace all OSPF packets"; } enum hello { description "Trace hello packets"; } enum database-description { description "Trace database description packets"; } enum lsa-request { description "Trace LSA request packets"; } enum lsa-update { description "Trace LSA update packets"; } enum lsa-ack { description "Trace LSA acknowledgment packets"; } enum ldp-synchronization { description "Trace synchronization between OSPF and LDP"; } enum on-demand { description "Trace demand circuit extensions"; } enum nsr-synchronization { description "Trace NSR synchronization events"; } enum graceful-restart { description "Trace graceful restart"; } enum restart-signaling { description "Trace restart signaling"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } list topology { key name; ordered-by user; description "Topology parameters"; leaf name { description "Topology name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable this topology"; type empty; } leaf topology-id { description "Topology identifier"; type uint8 { range "32 .. 127"; } } leaf overload { description "Set the overload mode (repel transit traffic)"; type empty; } leaf rib-group { description "Routing table group for importing routes"; type string; } container spf-options { description "Configure options for SPF"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf delay { description "Time to wait before running an SPF"; units "milliseconds"; type uint32 { range "50 .. 8000"; } } leaf holddown { description "Time to hold down before running an SPF"; units "milliseconds"; type uint32 { range "2000 .. 20000"; } } leaf rapid-runs { description "Number of maximum rapid SPF runs before holddown"; type uint32 { range "1 .. 10"; } } leaf no-ignore-our-externals { description "Do not ignore self-generated external and NSSA LSAs"; type empty; } } container backup-spf-options { description "Configure options for backup SPF"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Do not run backup SPF"; type empty; } leaf no-install { description "Do not install backup nexthops into the RIB"; type empty; } leaf downstream-paths-only { description "Use only downstream backup paths"; type empty; } } leaf prefix-export-limit { description "Maximum number of prefixes that can be exported"; type uint32 { range "0 .. 4294967295"; } } } container spf-options { description "Configure options for SPF"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf delay { description "Time to wait before running an SPF"; units "milliseconds"; type uint32 { range "50 .. 8000"; } } leaf holddown { description "Time to hold down before running an SPF"; units "milliseconds"; type uint32 { range "2000 .. 20000"; } } leaf rapid-runs { description "Number of maximum rapid SPF runs before holddown"; type uint32 { range "1 .. 10"; } } leaf no-ignore-our-externals { description "Do not ignore self-generated external and NSSA LSAs"; type empty; } } container backup-spf-options { description "Configure options for backup SPF"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Do not run backup SPF"; type empty; } leaf no-install { description "Do not install backup nexthops into the RIB"; type empty; } leaf downstream-paths-only { description "Use only downstream backup paths"; type empty; } } leaf prefix-export-limit { description "Maximum number of prefixes that can be exported"; type uint32 { range "0 .. 4294967295"; } } leaf rib-group { description "Routing table group for importing OSPF routes"; type string; } container overload { presence "enable overload"; description "Set the overload mode (repel transit traffic)"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf timeout { description "Time after which overload mode is reset"; units "seconds"; type uint32 { range "60 .. 1800"; } } } container database-protection { presence "enable database-protection"; description "Configure database protection attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum-lsa { description "Maximum allowed non self-generated LSAs"; type uint32 { range "1 .. 1000000"; } mandatory true; } leaf warning-only { description "Emit only a warning when LSA maximum limit is exceeded"; type empty; } leaf warning-threshold { description "Percentage of LSA maximum above which to trigger warning"; units "percent"; type uint8 { range "30 .. 100"; } } leaf ignore-count { description "Maximum number of times to go into ignore state"; type uint8 { range "1 .. 32"; } } leaf ignore-time { description "Time to stay in ignore state and ignore all neighbors"; units "seconds"; type uint16 { range "30 .. 3600"; } } leaf reset-time { description "Time after which the ignore count gets reset to zero"; units "seconds"; type uint32 { range "60 .. 86400"; } } } container graceful-restart { description "Configure graceful restart attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable OSPF graceful restart capability"; type empty; } } } leaf restart-duration { description "Time for all neighbors to become full"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf notify-duration { description "Time to send all max-aged grace LSAs"; units "seconds"; type uint32 { range "1 .. 3600"; } } container helper-disable { presence "enable helper-disable"; description "Disable graceful restart helper capability"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice disable-choices { case case_1 { leaf standard { description "Disable helper-mode for rfc3623 based GR"; type empty; } } case case_2 { leaf restart-signaling { description "Disable helper mode for restart-signaling "; type empty; } } case case_3 { leaf both { description "Disable helper mode for both the types of GR"; type empty; } } } } leaf no-strict-lsa-checking { description "Do not abort graceful helper mode upon LSA changes"; type empty; } } container traffic-engineering { presence "enable traffic-engineering"; description "Configure traffic engineering attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-topology { description "Disable dissemination of TE link-state topology information"; type empty; } leaf multicast-rpf-routes { description "Install routes for multicast RPF checks into inet.2"; type empty; } leaf ignore-lsp-metrics { description "Ignore label-switched path metrics when doing shortcuts"; type empty; } container shortcuts { presence "enable shortcuts"; description "Use label-switched paths as next hops, if possible"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf lsp-metric-into-summary { description "Advertise LSP metric into summary LSAs"; type empty; } } leaf advertise-unnumbered-interfaces { description "Advertise unnumbered interfaces"; type empty; } leaf credibility-protocol-preference { description "TED protocol credibility follows protocol preference"; type empty; } } leaf route-type-community { description "Specify BGP extended community value to encode OSPF route type"; type enumeration { enum iana { description "BGP extended community value used is 0x0306"; } enum vendor { description "Vendor BGP extended community value used is 0x8000"; } } } container domain-id { description "Configure domain ID"; choice domain_id_or_disable { case case_1 { leaf domain-id { description "Domain ID"; type string; } } case case_2 { leaf disable { description "Disable domain ID"; type empty; } } } } choice domain_vpn_tag_or_disable { case case_1 { leaf domain-vpn-tag { description "Domain VPN tag for external LSA"; type uint32 { range "0 .. 4294967295"; } } } case case_2 { leaf no-domain-vpn-tag { description "Disable domain VPN tag"; type empty; } } } leaf preference { description "Preference of internal routes"; type uint32; } leaf external-preference { description "Preference of external routes"; type uint32; } leaf-list export { description "Export policy"; type policy-algebra; } leaf-list import { description "Import policy (for external routes or setting priority)"; type policy-algebra; } leaf reference-bandwidth { description "Bandwidth for calculating metric defaults"; type string; } leaf lsa-refresh-interval { description "LSA refresh interval (minutes)"; default "50"; type uint32 { range "25 .. 50"; } } leaf no-rfc-1583 { description "Disable RFC1583 compatibility"; type empty; } leaf forwarding-address-to-broadcast { description "Set forwarding address in Type 5 LSA in broadcast network"; type empty; } choice nssa-abr-option { case case_1 { leaf no-nssa-abr { description "Disable full NSSA functionality at ABR"; type empty; } } } container sham-link { presence "enable sham-link"; description "Configure parameters for sham links"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf local { description "Local sham link endpoint address"; type ipaddr; } } list area { key name; ordered-by user; description "Configure an OSPF area"; leaf name { description "Area ID"; type areaid; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice stub-option { case case_1 { container stub { presence "enable stub"; description "Configure a stub area"; leaf default-metric { description "Metric for the default route in this stub area"; type uint32 { range "1 .. 16777215"; } } leaf summaries { description "Flood summary LSAs into this stub area"; type empty; } leaf no-summaries { description "Flood summary LSAs into this stub area"; type empty; } } } case case_2 { container nssa { presence "enable nssa"; description "Configure a not-so-stubby area"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container default-lsa { presence "enable default-lsa"; description "Configure a default LSA"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default-metric { description "Metric for the default route in this area"; type uint32 { range "1 .. 16777215"; } } leaf metric-type { description "External metric type for the default type 7 LSA"; type uint32 { range "1 .. 2"; } } leaf type-7 { description "Flood type 7 default LSA if no-summaries is configured"; type empty; } } leaf summaries { description "Flood summary LSAs into this NSSA area"; type empty; } leaf no-summaries { description "Flood summary LSAs into this NSSA area"; type empty; } list area-range { key name; ordered-by user; description "Configure NSSA area ranges"; leaf name { description "Range to summarize NSSA routes in this area"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf restrict { description "Restrict advertisement of this area range"; type empty; } leaf exact { description "Enforce exact match for advertisement of this area range"; type empty; } container override-metric { presence "enable override-metric"; description "Override the dynamic metric for this area-range"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf metric { description "Metric value"; type uint32 { range "1 .. 16777215"; } mandatory true; } leaf metric-type { description "Set the metric type for the override metric"; default "1"; type uint32 { range "1 .. 2"; } } } } } } } list area-range { key name; ordered-by user; description "Configure area ranges"; leaf name { description "Range to summarize routes in this area"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf restrict { description "Restrict advertisement of this area range"; type empty; } leaf exact { description "Enforce exact match for advertisement of this area range"; type empty; } leaf override-metric { description "Override the dynamic metric for this area-range"; type uint32 { range "1 .. 16777215"; } } } leaf-list network-summary-export { description "Export policy for Type 3 Summary LSAs"; type policy-algebra; } leaf-list network-summary-import { description "Import policy for Type 3 Summary LSAs"; type policy-algebra; } leaf-list inter-area-prefix-export { description "Export policy for Inter Area Prefix LSAs"; type policy-algebra; } leaf-list inter-area-prefix-import { description "Import policy for Inter Area Prefix LSAs"; type policy-algebra; } list virtual-link { key "neighbor-id transit-area"; ordered-by user; description "Configure virtual links"; leaf neighbor-id { description "Router ID of a virtual neighbor"; type ipv4addr; } leaf transit-area { description "Transit area in common with virtual neighbor"; type areaid; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable this virtual link"; type empty; } } } leaf retransmit-interval { description "Retransmission interval (seconds)"; type uint32 { range "1 .. 65535"; } } leaf transit-delay { description "Transit delay (seconds)"; type uint32 { range "1 .. 65535"; } } leaf hello-interval { description "Hello interval (seconds)"; type uint32 { range "1 .. 255"; } } leaf dead-interval { description "Dead interval (seconds)"; type uint32 { range "1 .. 65535"; } } choice auth { case case_1 { container authentication { uses juniper-ospf-authentication; } } } leaf demand-circuit { description "Interface functions as a demand circuit"; type empty; } leaf flood-reduction { description "Enable flood reduction"; type empty; } leaf no-neighbor-down-notification { description "Don't inform other protocols about neighbor down events"; type empty; } leaf ipsec-sa { description "IPSec security association name"; type string { length "1 .. 32"; } } list topology { key name; ordered-by user; description "Topology specific attributes"; leaf name { description "Topology name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable this topology"; type empty; } leaf metric { description "Topology metric"; type uint16 { range "1 .. 65535"; } } container bandwidth-based-metrics { description "Configure bandwidth based metrics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list bandwidth { key name; description "Bandwidth threshold"; leaf name { description "(null)"; type string; } leaf metric { description "Metric associated with specified bandwidth"; type uint16 { range "1 .. 65535"; } mandatory true; } } } } } list sham-link-remote { key name; ordered-by user; description "Configure parameters for remote sham link endpoint"; leaf name { description "Remote sham link endpoint address"; type ipaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf metric { description "Sham link metric"; type uint16 { range "1 .. 65535"; } } leaf ipsec-sa { description "IPSec security association name"; type string { length "1 .. 32"; } } leaf demand-circuit { description "Interface functions as a demand circuit"; type empty; } leaf flood-reduction { description "Enable flood reduction"; type empty; } list topology { key name; ordered-by user; description "Topology specific attributes"; leaf name { description "Topology name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable this topology"; type empty; } leaf metric { description "Topology metric"; type uint16 { range "1 .. 65535"; } } container bandwidth-based-metrics { description "Configure bandwidth based metrics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list bandwidth { key name; description "Bandwidth threshold"; leaf name { description "(null)"; type string; } leaf metric { description "Metric associated with specified bandwidth"; type uint16 { range "1 .. 65535"; } mandatory true; } } } } } list interface { key name; ordered-by user; description "Include an interface in this area"; leaf name { description "Interface name"; type ipv4addr-or-interface; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable OSPF on this interface"; type empty; } } } leaf interface-type { description "Type of interface"; type enumeration { enum nbma { description "Nonbroadcast multiaccess"; } enum p2mp { description "Point-to-multipoint NBMA"; } enum p2p { description "Point-to-point"; } enum p2mp-over-lan { description "Point-to-multipoint over LAN mode"; } } } choice protection-type { case case_1 { leaf link-protection { description "Protect interface from link faults only"; type empty; } } case case_2 { leaf node-link-protection { description "Protect interface from both link and node faults"; type empty; } } } leaf no-eligible-backup { description "Not eligible to backup traffic from protected interfaces"; type empty; } container passive { presence "enable passive"; description "Do not run OSPF, but advertise it"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traffic-engineering { description "Advertise TE link information"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf remote-node-id { description "Remote address of the link"; type ipaddr; } leaf remote-node-router-id { description "TE Router-ID of the remote node"; type ipv4addr; } } } leaf secondary { description "Treat interface as secondary"; type empty; } leaf own-router-lsa { description "Generate a separate router LSA for this interface"; type empty; } container bandwidth-based-metrics { description "Configure bandwidth based metrics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list bandwidth { key name; description "Bandwidth threshold"; leaf name { description "(null)"; type string; } leaf metric { description "Metric associated with specified bandwidth"; type uint16 { range "1 .. 65535"; } mandatory true; } } } leaf metric { description "Interface metric"; type uint16 { range "1 .. 65535"; } } leaf te-metric { description "Traffic engineering metric"; type uint32 { range "1 .. 4294967295"; } } leaf priority { description "Designated router priority"; type uint32 { range "0 .. 255"; } } container ldp-synchronization { description "Advertise maximum metric until LDP is operational"; uses ldp-sync-obj; } leaf retransmit-interval { description "Retransmission interval (seconds)"; type uint32 { range "1 .. 65535"; } } leaf transit-delay { description "Transit delay (seconds)"; type uint32 { range "1 .. 65535"; } } leaf hello-interval { description "Hello interval (seconds)"; type uint32 { range "1 .. 255"; } } leaf dead-interval { description "Dead interval (seconds)"; type uint32 { range "1 .. 65535"; } } choice auth { case case_1 { container authentication { uses juniper-ospf-authentication; } } } leaf demand-circuit { description "Interface functions as a demand circuit"; type empty; } leaf flood-reduction { description "Enable flood reduction"; type empty; } leaf no-neighbor-down-notification { description "Don't inform other protocols about neighbor down events"; type empty; } leaf ipsec-sa { description "IPSec security association name"; type string { length "1 .. 32"; } } list topology { key name; ordered-by user; description "Topology specific attributes"; leaf name { description "Topology name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable this topology"; type empty; } leaf metric { description "Topology metric"; type uint16 { range "1 .. 65535"; } } container bandwidth-based-metrics { description "Configure bandwidth based metrics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list bandwidth { key name; description "Bandwidth threshold"; leaf name { description "(null)"; type string; } leaf metric { description "Metric associated with specified bandwidth"; type uint16 { range "1 .. 65535"; } mandatory true; } } } } container bfd-liveness-detection { description "Bidirectional Forwarding Detection options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } container authentication { description "Authentication options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf key-chain { description "Key chain name"; type string; } leaf algorithm { description "Algorithm name"; type enumeration { enum simple-password { description "Simple password"; } enum keyed-md5 { description "Keyed message Digest 5"; } enum meticulous-keyed-md5 { description "Meticulous keyed message Digest 5"; } enum keyed-sha-1 { description "Keyed secure hash algorithm (SHA1) "; } enum meticulous-keyed-sha-1 { description "Meticulous keyed secure hash algorithm (SHA1) "; } } } leaf loose-check { description "Verify authentication only if authentication is negotiated"; type empty; } } leaf full-neighbors-only { description "Setup BFD sessions only to Full neighbors"; type empty; } } leaf dynamic-neighbors { description "Learn neighbors dynamically on a p2mp interface"; type empty; } list neighbor { key name; ordered-by user; description "NBMA neighbor"; leaf name { description "Address of neighbor"; type ipaddr; } leaf eligible { description "Eligible to be DR on an NBMA network"; type empty; } } leaf poll-interval { description "Poll interval for NBMA interfaces"; type uint32 { range "1 .. 65535"; } } leaf no-interface-state-traps { description "Do not send interface state change traps"; type empty; } } leaf no-context-identifier-advertisement { description "Disable context identifier advertisments in this area"; type empty; } list context-identifier { key name; ordered-by user; description "Configure context identifier in support of edge protection"; leaf name { description "Context identifier"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list label-switched-path { key name; ordered-by user; description "Configuration for advertisement of a label-switched path"; leaf name { description "Name of label-switched path to be advertised"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable OSPF on this label-switched path"; type empty; } } } leaf metric { description "Interface metric"; type uint16 { range "1 .. 65535"; } } list topology { key name; ordered-by user; description "Topology specific attributes"; leaf name { description "Topology name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable this topology"; type empty; } leaf metric { description "Topology metric"; type uint16 { range "1 .. 65535"; } } container bandwidth-based-metrics { description "Configure bandwidth based metrics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list bandwidth { key name; description "Bandwidth threshold"; leaf name { description "(null)"; type string; } leaf metric { description "Metric associated with specified bandwidth"; type uint16 { range "1 .. 65535"; } mandatory true; } } } } } list peer-interface { key name; ordered-by user; description "Configuration for peer interface"; leaf name { description "Name of peer interface"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable OSPF on this control peer"; type empty; } } } leaf retransmit-interval { description "Retransmission interval (seconds)"; type uint32 { range "1 .. 65535"; } } leaf transit-delay { description "Transit delay (seconds)"; type uint32 { range "1 .. 65535"; } } leaf hello-interval { description "Hello interval (seconds)"; type uint32 { range "1 .. 255"; } } leaf dead-interval { description "Dead interval (seconds)"; type uint32 { range "1 .. 65535"; } } choice auth { case case_1 { container authentication { uses juniper-ospf-authentication; } } } leaf demand-circuit { description "Interface functions as a demand circuit"; type empty; } leaf flood-reduction { description "Enable flood reduction"; type empty; } leaf no-neighbor-down-notification { description "Don't inform other protocols about neighbor down events"; type empty; } } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable OSPF"; type empty; } } } container traceoptions { description "Trace options for OSPF"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum spf { description "Trace SPF calculations"; } enum error { description "Trace errored packets"; } enum event { description "Trace OSPF state machine events"; } enum packet-dump { description "Dump the contents of selected packet types"; } enum flooding { description "Trace LSA flooding"; } enum lsa-analysis { description "Trace LSA analysis"; } enum packets { description "Trace all OSPF packets"; } enum hello { description "Trace hello packets"; } enum database-description { description "Trace database description packets"; } enum lsa-request { description "Trace LSA request packets"; } enum lsa-update { description "Trace LSA update packets"; } enum lsa-ack { description "Trace LSA acknowledgment packets"; } enum ldp-synchronization { description "Trace synchronization between OSPF and LDP"; } enum on-demand { description "Trace demand circuit extensions"; } enum nsr-synchronization { description "Trace NSR synchronization events"; } enum graceful-restart { description "Trace graceful restart"; } enum restart-signaling { description "Trace restart signaling"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } list topology { key name; ordered-by user; description "Topology parameters"; leaf name { description "Topology name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable this topology"; type empty; } leaf topology-id { description "Topology identifier"; type uint8 { range "32 .. 127"; } } leaf overload { description "Set the overload mode (repel transit traffic)"; type empty; } leaf rib-group { description "Routing table group for importing routes"; type string; } container spf-options { description "Configure options for SPF"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf delay { description "Time to wait before running an SPF"; units "milliseconds"; type uint32 { range "50 .. 8000"; } } leaf holddown { description "Time to hold down before running an SPF"; units "milliseconds"; type uint32 { range "2000 .. 20000"; } } leaf rapid-runs { description "Number of maximum rapid SPF runs before holddown"; type uint32 { range "1 .. 10"; } } leaf no-ignore-our-externals { description "Do not ignore self-generated external and NSSA LSAs"; type empty; } } container backup-spf-options { description "Configure options for backup SPF"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Do not run backup SPF"; type empty; } leaf no-install { description "Do not install backup nexthops into the RIB"; type empty; } leaf downstream-paths-only { description "Use only downstream backup paths"; type empty; } } leaf prefix-export-limit { description "Maximum number of prefixes that can be exported"; type uint32 { range "0 .. 4294967295"; } } } container spf-options { description "Configure options for SPF"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf delay { description "Time to wait before running an SPF"; units "milliseconds"; type uint32 { range "50 .. 8000"; } } leaf holddown { description "Time to hold down before running an SPF"; units "milliseconds"; type uint32 { range "2000 .. 20000"; } } leaf rapid-runs { description "Number of maximum rapid SPF runs before holddown"; type uint32 { range "1 .. 10"; } } leaf no-ignore-our-externals { description "Do not ignore self-generated external and NSSA LSAs"; type empty; } } container backup-spf-options { description "Configure options for backup SPF"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Do not run backup SPF"; type empty; } leaf no-install { description "Do not install backup nexthops into the RIB"; type empty; } leaf downstream-paths-only { description "Use only downstream backup paths"; type empty; } } leaf prefix-export-limit { description "Maximum number of prefixes that can be exported"; type uint32 { range "0 .. 4294967295"; } } leaf rib-group { description "Routing table group for importing OSPF routes"; type string; } container overload { presence "enable overload"; description "Set the overload mode (repel transit traffic)"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf timeout { description "Time after which overload mode is reset"; units "seconds"; type uint32 { range "60 .. 1800"; } } } container database-protection { presence "enable database-protection"; description "Configure database protection attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum-lsa { description "Maximum allowed non self-generated LSAs"; type uint32 { range "1 .. 1000000"; } mandatory true; } leaf warning-only { description "Emit only a warning when LSA maximum limit is exceeded"; type empty; } leaf warning-threshold { description "Percentage of LSA maximum above which to trigger warning"; units "percent"; type uint8 { range "30 .. 100"; } } leaf ignore-count { description "Maximum number of times to go into ignore state"; type uint8 { range "1 .. 32"; } } leaf ignore-time { description "Time to stay in ignore state and ignore all neighbors"; units "seconds"; type uint16 { range "30 .. 3600"; } } leaf reset-time { description "Time after which the ignore count gets reset to zero"; units "seconds"; type uint32 { range "60 .. 86400"; } } } container graceful-restart { description "Configure graceful restart attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable OSPF graceful restart capability"; type empty; } } } leaf restart-duration { description "Time for all neighbors to become full"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf notify-duration { description "Time to send all max-aged grace LSAs"; units "seconds"; type uint32 { range "1 .. 3600"; } } container helper-disable { presence "enable helper-disable"; description "Disable graceful restart helper capability"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice disable-choices { case case_1 { leaf standard { description "Disable helper-mode for rfc3623 based GR"; type empty; } } case case_2 { leaf restart-signaling { description "Disable helper mode for restart-signaling "; type empty; } } case case_3 { leaf both { description "Disable helper mode for both the types of GR"; type empty; } } } } leaf no-strict-lsa-checking { description "Do not abort graceful helper mode upon LSA changes"; type empty; } } container traffic-engineering { presence "enable traffic-engineering"; description "Configure traffic engineering attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-topology { description "Disable dissemination of TE link-state topology information"; type empty; } leaf multicast-rpf-routes { description "Install routes for multicast RPF checks into inet.2"; type empty; } leaf ignore-lsp-metrics { description "Ignore label-switched path metrics when doing shortcuts"; type empty; } container shortcuts { presence "enable shortcuts"; description "Use label-switched paths as next hops, if possible"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf lsp-metric-into-summary { description "Advertise LSP metric into summary LSAs"; type empty; } } leaf advertise-unnumbered-interfaces { description "Advertise unnumbered interfaces"; type empty; } leaf credibility-protocol-preference { description "TED protocol credibility follows protocol preference"; type empty; } } leaf route-type-community { description "Specify BGP extended community value to encode OSPF route type"; type enumeration { enum iana { description "BGP extended community value used is 0x0306"; } enum vendor { description "Vendor BGP extended community value used is 0x8000"; } } } container domain-id { description "Configure domain ID"; choice domain_id_or_disable { case case_1 { leaf domain-id { description "Domain ID"; type string; } } case case_2 { leaf disable { description "Disable domain ID"; type empty; } } } } choice domain_vpn_tag_or_disable { case case_1 { leaf domain-vpn-tag { description "Domain VPN tag for external LSA"; type uint32 { range "0 .. 4294967295"; } } } case case_2 { leaf no-domain-vpn-tag { description "Disable domain VPN tag"; type empty; } } } leaf preference { description "Preference of internal routes"; type uint32; } leaf external-preference { description "Preference of external routes"; type uint32; } leaf-list export { description "Export policy"; type policy-algebra; } leaf-list import { description "Import policy (for external routes or setting priority)"; type policy-algebra; } leaf reference-bandwidth { description "Bandwidth for calculating metric defaults"; type string; } leaf lsa-refresh-interval { description "LSA refresh interval (minutes)"; default "50"; type uint32 { range "25 .. 50"; } } leaf no-rfc-1583 { description "Disable RFC1583 compatibility"; type empty; } leaf forwarding-address-to-broadcast { description "Set forwarding address in Type 5 LSA in broadcast network"; type empty; } choice nssa-abr-option { case case_1 { leaf no-nssa-abr { description "Disable full NSSA functionality at ABR"; type empty; } } } container sham-link { presence "enable sham-link"; description "Configure parameters for sham links"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf local { description "Local sham link endpoint address"; type ipaddr; } } list area { key name; ordered-by user; description "Configure an OSPF area"; leaf name { description "Area ID"; type areaid; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice stub-option { case case_1 { container stub { presence "enable stub"; description "Configure a stub area"; leaf default-metric { description "Metric for the default route in this stub area"; type uint32 { range "1 .. 16777215"; } } leaf summaries { description "Flood summary LSAs into this stub area"; type empty; } leaf no-summaries { description "Flood summary LSAs into this stub area"; type empty; } } } case case_2 { container nssa { presence "enable nssa"; description "Configure a not-so-stubby area"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container default-lsa { presence "enable default-lsa"; description "Configure a default LSA"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default-metric { description "Metric for the default route in this area"; type uint32 { range "1 .. 16777215"; } } leaf metric-type { description "External metric type for the default type 7 LSA"; type uint32 { range "1 .. 2"; } } leaf type-7 { description "Flood type 7 default LSA if no-summaries is configured"; type empty; } } leaf summaries { description "Flood summary LSAs into this NSSA area"; type empty; } leaf no-summaries { description "Flood summary LSAs into this NSSA area"; type empty; } list area-range { key name; ordered-by user; description "Configure NSSA area ranges"; leaf name { description "Range to summarize NSSA routes in this area"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf restrict { description "Restrict advertisement of this area range"; type empty; } leaf exact { description "Enforce exact match for advertisement of this area range"; type empty; } container override-metric { presence "enable override-metric"; description "Override the dynamic metric for this area-range"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf metric { description "Metric value"; type uint32 { range "1 .. 16777215"; } mandatory true; } leaf metric-type { description "Set the metric type for the override metric"; default "1"; type uint32 { range "1 .. 2"; } } } } } } } list area-range { key name; ordered-by user; description "Configure area ranges"; leaf name { description "Range to summarize routes in this area"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf restrict { description "Restrict advertisement of this area range"; type empty; } leaf exact { description "Enforce exact match for advertisement of this area range"; type empty; } leaf override-metric { description "Override the dynamic metric for this area-range"; type uint32 { range "1 .. 16777215"; } } } leaf-list network-summary-export { description "Export policy for Type 3 Summary LSAs"; type policy-algebra; } leaf-list network-summary-import { description "Import policy for Type 3 Summary LSAs"; type policy-algebra; } leaf-list inter-area-prefix-export { description "Export policy for Inter Area Prefix LSAs"; type policy-algebra; } leaf-list inter-area-prefix-import { description "Import policy for Inter Area Prefix LSAs"; type policy-algebra; } list virtual-link { key "neighbor-id transit-area"; ordered-by user; description "Configure virtual links"; leaf neighbor-id { description "Router ID of a virtual neighbor"; type ipv4addr; } leaf transit-area { description "Transit area in common with virtual neighbor"; type areaid; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable this virtual link"; type empty; } } } leaf retransmit-interval { description "Retransmission interval (seconds)"; type uint32 { range "1 .. 65535"; } } leaf transit-delay { description "Transit delay (seconds)"; type uint32 { range "1 .. 65535"; } } leaf hello-interval { description "Hello interval (seconds)"; type uint32 { range "1 .. 255"; } } leaf dead-interval { description "Dead interval (seconds)"; type uint32 { range "1 .. 65535"; } } choice auth { case case_1 { container authentication { uses juniper-ospf-authentication; } } } leaf demand-circuit { description "Interface functions as a demand circuit"; type empty; } leaf flood-reduction { description "Enable flood reduction"; type empty; } leaf no-neighbor-down-notification { description "Don't inform other protocols about neighbor down events"; type empty; } leaf ipsec-sa { description "IPSec security association name"; type string { length "1 .. 32"; } } list topology { key name; ordered-by user; description "Topology specific attributes"; leaf name { description "Topology name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable this topology"; type empty; } leaf metric { description "Topology metric"; type uint16 { range "1 .. 65535"; } } container bandwidth-based-metrics { description "Configure bandwidth based metrics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list bandwidth { key name; description "Bandwidth threshold"; leaf name { description "(null)"; type string; } leaf metric { description "Metric associated with specified bandwidth"; type uint16 { range "1 .. 65535"; } mandatory true; } } } } } list sham-link-remote { key name; ordered-by user; description "Configure parameters for remote sham link endpoint"; leaf name { description "Remote sham link endpoint address"; type ipaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf metric { description "Sham link metric"; type uint16 { range "1 .. 65535"; } } leaf ipsec-sa { description "IPSec security association name"; type string { length "1 .. 32"; } } leaf demand-circuit { description "Interface functions as a demand circuit"; type empty; } leaf flood-reduction { description "Enable flood reduction"; type empty; } list topology { key name; ordered-by user; description "Topology specific attributes"; leaf name { description "Topology name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable this topology"; type empty; } leaf metric { description "Topology metric"; type uint16 { range "1 .. 65535"; } } container bandwidth-based-metrics { description "Configure bandwidth based metrics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list bandwidth { key name; description "Bandwidth threshold"; leaf name { description "(null)"; type string; } leaf metric { description "Metric associated with specified bandwidth"; type uint16 { range "1 .. 65535"; } mandatory true; } } } } } list interface { key name; ordered-by user; description "Include an interface in this area"; leaf name { description "Interface name"; type ipv4addr-or-interface; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable OSPF on this interface"; type empty; } } } leaf interface-type { description "Type of interface"; type enumeration { enum nbma { description "Nonbroadcast multiaccess"; } enum p2mp { description "Point-to-multipoint NBMA"; } enum p2p { description "Point-to-point"; } enum p2mp-over-lan { description "Point-to-multipoint over LAN mode"; } } } choice protection-type { case case_1 { leaf link-protection { description "Protect interface from link faults only"; type empty; } } case case_2 { leaf node-link-protection { description "Protect interface from both link and node faults"; type empty; } } } leaf no-eligible-backup { description "Not eligible to backup traffic from protected interfaces"; type empty; } container passive { presence "enable passive"; description "Do not run OSPF, but advertise it"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traffic-engineering { description "Advertise TE link information"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf remote-node-id { description "Remote address of the link"; type ipaddr; } leaf remote-node-router-id { description "TE Router-ID of the remote node"; type ipv4addr; } } } leaf secondary { description "Treat interface as secondary"; type empty; } leaf own-router-lsa { description "Generate a separate router LSA for this interface"; type empty; } container bandwidth-based-metrics { description "Configure bandwidth based metrics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list bandwidth { key name; description "Bandwidth threshold"; leaf name { description "(null)"; type string; } leaf metric { description "Metric associated with specified bandwidth"; type uint16 { range "1 .. 65535"; } mandatory true; } } } leaf metric { description "Interface metric"; type uint16 { range "1 .. 65535"; } } leaf te-metric { description "Traffic engineering metric"; type uint32 { range "1 .. 4294967295"; } } leaf priority { description "Designated router priority"; type uint32 { range "0 .. 255"; } } container ldp-synchronization { description "Advertise maximum metric until LDP is operational"; uses ldp-sync-obj; } leaf retransmit-interval { description "Retransmission interval (seconds)"; type uint32 { range "1 .. 65535"; } } leaf transit-delay { description "Transit delay (seconds)"; type uint32 { range "1 .. 65535"; } } leaf hello-interval { description "Hello interval (seconds)"; type uint32 { range "1 .. 255"; } } leaf dead-interval { description "Dead interval (seconds)"; type uint32 { range "1 .. 65535"; } } choice auth { case case_1 { container authentication { uses juniper-ospf-authentication; } } } leaf demand-circuit { description "Interface functions as a demand circuit"; type empty; } leaf flood-reduction { description "Enable flood reduction"; type empty; } leaf no-neighbor-down-notification { description "Don't inform other protocols about neighbor down events"; type empty; } leaf ipsec-sa { description "IPSec security association name"; type string { length "1 .. 32"; } } list topology { key name; ordered-by user; description "Topology specific attributes"; leaf name { description "Topology name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable this topology"; type empty; } leaf metric { description "Topology metric"; type uint16 { range "1 .. 65535"; } } container bandwidth-based-metrics { description "Configure bandwidth based metrics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list bandwidth { key name; description "Bandwidth threshold"; leaf name { description "(null)"; type string; } leaf metric { description "Metric associated with specified bandwidth"; type uint16 { range "1 .. 65535"; } mandatory true; } } } } container bfd-liveness-detection { description "Bidirectional Forwarding Detection options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } container authentication { description "Authentication options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf key-chain { description "Key chain name"; type string; } leaf algorithm { description "Algorithm name"; type enumeration { enum simple-password { description "Simple password"; } enum keyed-md5 { description "Keyed message Digest 5"; } enum meticulous-keyed-md5 { description "Meticulous keyed message Digest 5"; } enum keyed-sha-1 { description "Keyed secure hash algorithm (SHA1) "; } enum meticulous-keyed-sha-1 { description "Meticulous keyed secure hash algorithm (SHA1) "; } } } leaf loose-check { description "Verify authentication only if authentication is negotiated"; type empty; } } leaf full-neighbors-only { description "Setup BFD sessions only to Full neighbors"; type empty; } } leaf dynamic-neighbors { description "Learn neighbors dynamically on a p2mp interface"; type empty; } list neighbor { key name; ordered-by user; description "NBMA neighbor"; leaf name { description "Address of neighbor"; type ipaddr; } leaf eligible { description "Eligible to be DR on an NBMA network"; type empty; } } leaf poll-interval { description "Poll interval for NBMA interfaces"; type uint32 { range "1 .. 65535"; } } leaf no-interface-state-traps { description "Do not send interface state change traps"; type empty; } } leaf no-context-identifier-advertisement { description "Disable context identifier advertisments in this area"; type empty; } list context-identifier { key name; ordered-by user; description "Configure context identifier in support of edge protection"; leaf name { description "Context identifier"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list label-switched-path { key name; ordered-by user; description "Configuration for advertisement of a label-switched path"; leaf name { description "Name of label-switched path to be advertised"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable OSPF on this label-switched path"; type empty; } } } leaf metric { description "Interface metric"; type uint16 { range "1 .. 65535"; } } list topology { key name; ordered-by user; description "Topology specific attributes"; leaf name { description "Topology name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable this topology"; type empty; } leaf metric { description "Topology metric"; type uint16 { range "1 .. 65535"; } } container bandwidth-based-metrics { description "Configure bandwidth based metrics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list bandwidth { key name; description "Bandwidth threshold"; leaf name { description "(null)"; type string; } leaf metric { description "Metric associated with specified bandwidth"; type uint16 { range "1 .. 65535"; } mandatory true; } } } } } list peer-interface { key name; ordered-by user; description "Configuration for peer interface"; leaf name { description "Name of peer interface"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable OSPF on this control peer"; type empty; } } } leaf retransmit-interval { description "Retransmission interval (seconds)"; type uint32 { range "1 .. 65535"; } } leaf transit-delay { description "Transit delay (seconds)"; type uint32 { range "1 .. 65535"; } } leaf hello-interval { description "Hello interval (seconds)"; type uint32 { range "1 .. 255"; } } leaf dead-interval { description "Dead interval (seconds)"; type uint32 { range "1 .. 65535"; } } choice auth { case case_1 { container authentication { uses juniper-ospf-authentication; } } } leaf demand-circuit { description "Interface functions as a demand circuit"; type empty; } leaf flood-reduction { description "Enable flood reduction"; type empty; } leaf no-neighbor-down-notification { description "Don't inform other protocols about neighbor down events"; type empty; } } } } container ldp { description "LDP options"; uses juniper-protocols-ldp; } container pim { description "PIM configuration"; uses juniper-protocols-pim; } container rip { description "RIP options"; uses juniper-protocols-rip; } container ripng { description "RIPng options"; uses juniper-protocols-ripng; } container connections { description "Circuit cross-connect configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list interface-switch { key name; ordered-by user; description "Bidirectional switch between interfaces"; leaf name { description "Name of interface switch"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list interface { key name; ordered-by user; description "Interface to be switched"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } list remote-interface-switch { key name; ordered-by user; description "Bidirectional switch between a local and a remote interface"; leaf name { description "Name of remote interface switch"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interface { description "Local interface name"; type interface-name; mandatory true; } leaf transmit-lsp { description "Name of outgoing label-switched path"; type string; mandatory true; } leaf receive-lsp { description "Name of incoming label-switched path"; type string; mandatory true; } } list lsp-switch { key name; ordered-by user; description "Unidirectional switch between two label-switched paths"; leaf name { description "Name of label-switched path switch"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf transmit-lsp { description "Name of outgoing label-switched path"; type string; mandatory true; } leaf receive-lsp { description "Name of incoming label-switched path"; type string; mandatory true; } } list p2mp-transmit-switch { key name; ordered-by user; description "Local interface to point-to-multipoint LSP switch"; leaf name { description "Point-to-multipoint switch name on which to transmit"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input-interface { description "Input interface name"; type interface-name; mandatory true; } leaf transmit-p2mp-lsp { description "Point-to-multipoint LSP name on which to transmit"; type string; mandatory true; } leaf-list output-interface { description "Outgoing interface name"; type interface-name; max-elements 16; } } list p2mp-receive-switch { key name; ordered-by user; description "Point-to-multipoint LSP to local interfaces switch"; leaf name { description "Point-to-multipoint switch name on which to receive"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf receive-p2mp-lsp { description "Point-to-multipoint LSP name on which to receive"; type string; mandatory true; } leaf-list output-interface { description "Next outgoing interface name"; type interface-name; } } } container vrrp { description "VRRP options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for VRRP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "0 .. 4294967295"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } leaf microsecond-stamp { description "Timestamp with microsecond granularity"; type empty; } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum database { description "Trace database"; } enum general { description "Trace general events"; } enum interfaces { description "Trace interface messages"; } enum normal { description "Trace normal events"; } enum packets { description "Trace packets"; } enum state { description "Trace state transitions"; } enum timer { description "Trace timer events"; } enum ppm { description "VRRP PPM related messages"; } enum all { description "Trace all events"; } } } } } leaf failover-delay { description "Additional failover delay timer"; units "milliseconds"; type uint32 { range "50 .. 100000"; } } leaf startup-silent-period { description "Period for ignoring master down timer at device startup"; units "seconds"; type uint32 { range "1 .. 2000"; } } leaf asymmetric-hold-time { description "Priority hold time asymmetric behaviour"; type empty; } container delegate-processing { presence "enable delegate-processing"; description "Switch to distributed PPMD"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf skew-timer-disable { description "Disable the skew timer"; type empty; } leaf global-advertisements-threshold { description "Number of vrrp advertisements missed before declaring master down"; default "3"; type uint32 { range "1 .. 15"; } } leaf inherit-advertisement-interval { description "Advertisement interval for inherit sessions"; default "120"; type uint32 { range "5 .. 120"; } } leaf version-3 { description "VRRPv3 conformance"; type empty; } } container l2circuit { description "Configuration for Layer 2 circuits over MPLS"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for Layer 2 circuits"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum error { description "Trace errors"; } enum topology { description "Trace Layer 2 circuit topology changes"; } enum fec { description "Trace Layer 2 circuit VC FEC advertisements"; } enum connections { description "Trace Layer 2 circuit connections"; } enum oam { description "Trace Layer 2 circuit OAM messages"; } enum egress-protection { description "Trace Layer 2 circuit egress protection messages"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } list neighbor { key name; ordered-by user; description "List of Layer 2 circuits to this neighbor"; leaf name { description "Neighbor ID"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list interface { key name; ordered-by user; description "Interface forming the Layer 2 circuit"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container static { presence "enable static"; description "Configuration of static Pseudowire"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf incoming-label { description "Layer 2 circuit incoming static label"; type uint32 { range "1000000 .. 1048575"; } mandatory true; } leaf outgoing-label { description "Layer 2 circuit outgoing static label"; type uint32 { range "16 .. 1048575"; } mandatory true; } leaf send-oam { description "Turn on sending of l2ckt ping"; type empty; } } leaf psn-tunnel-endpoint { description "Endpoint of the transport tunnel on the remote PE"; type ipv4addr; } leaf protect-interface { description "Name of protect interface"; type interface-name; } leaf virtual-circuit-id { description "Identifier for this Layer 2 circuit"; type uint32 { range "1 .. 4294967295"; } mandatory true; } leaf description { description "Text description of Layer 2 circuit"; type string; } leaf control-word { description "Add control word to the Layer 2 encapsulation"; type empty; } leaf no-control-word { description "Add control word to the Layer 2 encapsulation"; type empty; } leaf flow-label-transmit { description "Advertise capability to push Flow Label in transmit direction to remote PE"; type empty; } leaf flow-label-transmit-static { description "Push Flow Label on PW packets sent to remote PE"; type empty; } leaf flow-label-receive { description "Advertise capability to pop Flow Label in receive direction to remote PE"; type empty; } leaf flow-label-receive-static { description "Pop Flow Label from PW packets received from remote PE"; type empty; } leaf community { description "Community associated with this Layer 2 circuit"; type string; } leaf mtu { description "MTU to be advertised for this Layer 2 circuit"; type uint32 { range "512 .. 65535"; } } leaf encapsulation-type { description "Encapsulation type for VPN"; type enumeration { enum atm-aal5 { description "ATM AAL/5 encapsulation"; } enum atm-cell { description "ATM port promiscuous mode cell encapsulation"; } enum atm-cell-port-mode { description "ATM port promiscuous mode cell encapsulation"; } enum atm-cell-vp-mode { description "ATM VP promiscuous mode cell encapsulation"; } enum atm-cell-vc-mode { description "ATM non-promiscuous cell encapsulation"; } enum frame-relay { description "Frame Relay encapsulation"; } enum ppp { description "PPP encapsulation"; } enum cisco-hdlc { description "Cisco-compatible HDLC encapsulation"; } enum ethernet-vlan { description "Ethernet VLAN encapsulation"; } enum ethernet { description "Ethernet encapsulation"; } enum interworking { description "Layer 2.5 interworking VPN"; } enum frame-relay-port-mode { description "Frame Relay port mode encapsulation"; } enum satop-t1 { description "SATOP-T1 based Layer 2 VPN"; } enum satop-e1 { description "SATOP-E1 based Layer 2 VPN"; } enum satop-t3 { description "SATOP-T3 based Layer 2 VPN"; } enum satop-e3 { description "SATOP-E3 based Layer 2 VPN"; } enum cesop { description "CESOP based Layer 2 VPN"; } } } leaf ignore-encapsulation-mismatch { description "Allow different encapsulation types on local and remote end"; type empty; } leaf ignore-mtu-mismatch { description "Allow different MTUs on interfaces"; type empty; } leaf no-revert { description "Don't revert to primary-interface"; type empty; } container bandwidth { description "Bandwidth to reserve (bps)"; uses bandwidth-type; } container pseudowire-status-tlv { presence "enable pseudowire-status-tlv"; description "Send pseudowire status TLV"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf hot-standby-vc-on { description "Activate pseudowire upon arrival of 'hot-standby' status TLV message"; type empty; } } leaf switchover-delay { description "Layer 2 circuit switchover delay"; default "10000"; units "milliseconds"; type uint32 { range "0 .. 180000"; } } container revert-time { presence "enable revert-time"; description "Enable pseudowire redundancy reversion"; leaf delay { description "Reversion timer (seconds)"; units "seconds"; type uint32 { range "0 .. 600"; } mandatory true; } leaf maximum { description "Maximum reversion interval to add over revert-time delay"; units "seconds"; type uint32 { range "0 .. 1200"; } } } leaf connection-protection { description "End-2-end protection via OAM failure detection"; type empty; } list backup-neighbor { key name; ordered-by user; description "Configuration of redundant l2circuit"; leaf name { description "Neighbor ID"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container static { presence "enable static"; description "Configuration of static Pseudowire"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf incoming-label { description "Layer 2 circuit incoming static label"; type uint32 { range "1000000 .. 1048575"; } mandatory true; } leaf outgoing-label { description "Layer 2 circuit outgoing static label"; type uint32 { range "16 .. 1048575"; } mandatory true; } } leaf virtual-circuit-id { description "Identifier for this Layer 2 circuit"; type uint32 { range "1 .. 4294967295"; } } leaf community { description "Community associated with this Layer 2 circuit"; type string; } leaf psn-tunnel-endpoint { description "Endpoint of the transport tunnel on the remote PE"; type ipv4addr; } leaf standby { description "Keep backup pseudowire in continuous standby"; type empty; } leaf hot-standby { description "Keep backup pseudowire in continuous standby mode and ready for traffic forwarding"; type empty; } } container oam { description "OAM Configuration for Layer 2 circuit"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ping-interval { description "Time interval between ping messages"; default "60"; units "seconds"; type uint16 { range "30 .. 3600"; } } container bfd-liveness-detection { description "Bidirectional Forwarding Detection (BFD) options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } } } container egress-protection { description "Egress protection for Layer 2 circuit"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice protection-type { case case_1 { leaf protector-interface { description "Name of the protector interface for local protection"; type interface-name; } } case case_2 { container protector-pe { description "Address of the protector PE"; leaf address { description "Address of the protector PE"; type ipv4addr; mandatory true; } presence "enable protector-pe"; leaf context-identifier { description "Identifier of the context used for this protection"; type ipv4addr; mandatory true; } leaf lsp { description "Name of the label-switched path used for the protection"; type string { } } } } } container protected-l2circuit { description "Primary Layer 2 circuit to be protected"; leaf l2circuit-name { description "Name of the protected Layer 2 circuit"; type string { } mandatory true; } presence "enable protected-l2circuit"; leaf ingress-pe { description "Ingress PE address of the protected Layer 2 circuit"; type ipv4addr; mandatory true; } leaf egress-pe { description "Egress PE address of the protected Layer 2 circuit"; type ipv4addr; mandatory true; } leaf virtual-circuit-id { description "Identifier of the protected Layer 2 circuit"; type uint32 { range "1 .. 4294967295"; } mandatory true; } } } } } container local-switching { description "Configuration of Layer 2 circuits local switching"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list interface { key name; ordered-by user; description "Interface forming the local Layer 2 circuit"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-revert { description "Do not revert to primary-interface"; type empty; } leaf protect-interface { description "Name of protect interface"; type interface-name; } leaf connection-protection { description "End-2-end protection via OAM failure detection"; type empty; } list neighbor { key name; ordered-by user; description "Configuration of Layer 2 circuit"; leaf name { description "Neighbor ID"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf virtual-circuit-id { description "Identifier for this Layer 2 circuit"; type uint32 { range "1 .. 4294967295"; } mandatory true; } leaf community { description "Community associated with this Layer 2 circuit"; type string; } leaf psn-tunnel-endpoint { description "Endpoint of the transport tunnel on the neighbor PE"; type ipv4addr; } leaf mtu { description "MTU to be advertised for this Layer 2 circuit"; type uint32 { range "512 .. 65535"; } } } list backup-neighbor { key name; ordered-by user; description "Configuration of redundant l2circuit"; leaf name { description "Backup Neighbor ID"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf virtual-circuit-id { description "Identifier for this Layer 2 circuit"; type uint32 { range "1 .. 4294967295"; } mandatory true; } leaf psn-tunnel-endpoint { description "Endpoint of the transport tunnel on the backup neighbor PE"; type ipv4addr; } leaf community { description "Community associated with this Layer 2 circuit"; type string; } leaf mtu { description "MTU to be advertised for this Layer 2 circuit"; type uint32 { range "512 .. 65535"; } } } container end-interface { description "Interface name of the other end point"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interface { description "Interface name"; type interface-name; } leaf no-revert { description "Do not revert to primary-interface"; type empty; } leaf protect-interface { description "Name of protect interface"; type interface-name; } leaf backup-interface { description "Name of backup interface"; type interface-name; } } leaf description { description "Text description of Layer 2 circuit"; type string; } leaf encapsulation-type { description "Encapsulation type for VPN"; type enumeration { enum atm-aal5 { description "ATM AAL/5 encapsulation"; } enum atm-cell { description "ATM port promiscuous mode cell encapsulation"; } enum atm-cell-port-mode { description "ATM port promiscuous mode cell encapsulation"; } enum atm-cell-vp-mode { description "ATM VP promiscuous mode cell encapsulation"; } enum atm-cell-vc-mode { description "ATM non-promiscuous cell encapsulation"; } enum frame-relay { description "Frame Relay encapsulation"; } enum ppp { description "PPP encapsulation"; } enum cisco-hdlc { description "Cisco-compatible HDLC encapsulation"; } enum ethernet-vlan { description "Ethernet VLAN encapsulation"; } enum ethernet { description "Ethernet encapsulation"; } enum interworking { description "Layer 2.5 interworking VPN"; } enum frame-relay-port-mode { description "Frame Relay port mode encapsulation"; } enum satop-t1 { description "SATOP-T1 based Layer 2 VPN"; } enum satop-e1 { description "SATOP-E1 based Layer 2 VPN"; } enum satop-t3 { description "SATOP-T3 based Layer 2 VPN"; } enum satop-e3 { description "SATOP-E3 based Layer 2 VPN"; } enum cesop { description "CESOP based Layer 2 VPN"; } } } leaf ignore-encapsulation-mismatch { description "Allow different encapsulation types on local and remote end"; type empty; } leaf ignore-mtu-mismatch { description "Allow different MTUs on interfaces"; type empty; } } } } container link-management { description "LMP options"; uses juniper-protocols-lmp; } container pgm { description "PGM options"; uses juniper-protocols-pgm; } container bfd { description "Bidirectional Forwarding Detection (BFD) options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for BFD"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Trace flag information"; leaf name { description "(null)"; type enumeration { enum adjacency { description "Trace adjacency messages"; } enum event { description "Trace all events"; } enum error { description "Trace all errors"; } enum packet { description "Trace all packets"; } enum ppm-packet { description "Trace packet activity by periodic packet management"; } enum pipe { description "Trace pipe messages"; } enum pipe-detail { description "Trace pipe messages in detail"; } enum state { description "Trace state transitions"; } enum timer { description "Trace timer processing"; } enum nsr-synchronization { description "Trace NSR synchronization events"; } enum nsr-packet { description "Trace packet activity of NSR"; } enum issu { description "Trace ISSU packet activity"; } enum slow-start { description "Trace slow-start activity"; } enum session { description "Per session activity"; } enum all { description "Trace everything"; } } } } } leaf no-issu-timer-negotiation { description "Disable ISSU timer negotiation"; type empty; } } container mvpn { description "BGP-MVPN configuration"; uses juniper-protocols-mvpn; } container vpls { description "Configuration for global vpls module"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container static-vpls { description "Enables static vpls configuration using no-tunnel-services"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-tunnel-services { description "Enables static partitioning of vpls labels"; type empty; mandatory true; } presence "enable static-vpls"; } } container neighbor-discovery { presence "enable neighbor-discovery"; description "IPv6 neighbor discovery"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf onlink-subnet-only { description "Onlink subnet only knob"; type empty; } leaf no-dad-on-state-change { description "Disable DAD on interface state change"; type empty; } container secure { description "SEND process configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container security-level { presence "enable security-level"; description "Security level"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice security-level-name { case case_1 { leaf default { description "Default level"; type empty; } } case case_2 { leaf secure-messages-only { description "Allow only secure messages"; type empty; } } } } container cryptographic-address { presence "enable cryptographic-address"; description "Cryptographic address configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf key-length { description "RSA key length in bits"; type uint32 { range "1024 .. 2048"; } } leaf key-pair { description "Pathname of RSA key file"; type string; } } container timestamp { presence "enable timestamp"; description "Timestamp option configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf new-peer-window { description "New peer window (delta)"; units "seconds"; type uint32; } leaf known-peer-window { description "Known peer window (fuzz)"; units "seconds"; type uint32; } leaf clock-drift { description "Clock drift"; type unsigned-float; } } container traceoptions { description "Trace options for SEND"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum cryptographic-address { description "Trace Cryptographically Generated Address events"; } enum configuration { description "Trace configuration events"; } enum protocol { description "Trace protocol processing events"; } enum rsa { description "Trace RSA events"; } enum all { description "Trace everything"; } } } } } } } container iccp { description "ICCP options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf local-ip-addr { description "Local IP address to use by default for all peers"; type ipv4addr; mandatory true; } presence "enable iccp"; leaf session-establishment-hold-time { description "Time within which connection must succeed with peers"; default "300"; units "seconds"; type uint32 { range "45 .. 600"; } } leaf authentication-key { description "MD5 authentication key for all peers"; type string { length "1 .. 126"; } } list peer { key name; description "Redundancy Group Configuration"; uses peer-group; } container traceoptions { description "Trace options for ICCP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Trace flag information"; leaf name { description "(null)"; type enumeration { enum error { description "Trace all errors"; } enum event { description "Trace all events"; } enum packet { description "Trace all packets"; } enum pipe { description "Trace pipe messages"; } enum pipe-detail { description "Trace pipe messages in detail"; } enum all { description "Trace everything"; } } } } } } container ilmi { description "Interim Local Management Interface Protocol configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "ILMI trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum database { description "Trace database events"; } enum routing-socket { description "Trace Routing socket events"; } enum state { description "Trace state change events"; } enum debug { description "Trace debug messages"; } enum event { description "Trace event handler events"; } enum packet { description "Trace packet events"; } enum all { description "Trace all areas of code"; } } } } } } container lacp { description "Link Aggregation Control Protocol configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "LACP trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Events and packet types to include in the trace"; leaf name { description "(null)"; type enumeration { enum configuration { description "Configuration events"; } enum routing-socket { description "Routing socket events"; } enum process { description "Process events"; } enum startup { description "Process startup events"; } enum protocol { description "Protocol events"; } enum packet { description "LACP packets"; } enum ppm { description "LACP PPM messages"; } enum bfd { description "LACP BFD events"; } enum mc-ae { description "Multi-chassis AE messages"; } enum all { description "All events and packets"; } } } } } leaf ppm { description "Force PPM processing"; type enumeration { enum centralized { description "Centralized PPM processing"; } } } leaf fast-hello-issu { description "ISSU support for peer lacp configured in fast periodic"; type empty; } } container oam { description "Operation, Administration, and Management configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container ethernet { description "OAM configuration for Ethernet"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container link-fault-management { description "802.3ah Ethernet OAM configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for link-fault management"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum configuration { description "Trace configuration events"; } enum routing-socket { description "Trace routing socket events"; } enum protocol { description "Trace protocol processing events"; } enum action-profile { description "Trace action profile invocation events"; } enum all { description "Trace everything"; } } } } } list action-profile { key name; ordered-by user; description "Define an action profile"; leaf name { description "Name of action profile"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container event { description "Events this action profile will check"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf link-adjacency-loss { description "Loss of adjacency with OAM peer"; type empty; } leaf protocol-down { description "Upper layer indication on protocol down"; type empty; } container link-event-rate { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf symbol-period { description "Rate of receiving symbol period events"; units "error(s) per 100 symbol"; type int32 { range "1 .. 100"; } } leaf frame-error { description "Rate of receiving frame error events"; units "error(s) per 100 milli-second"; type int32 { range "1 .. 1000"; } } leaf frame-period { description "Rate of receiving frame period events"; units "error(s) per 100 frames"; type int32 { range "1 .. 100"; } } leaf frame-period-summary { description "Rate of receiving frame period summary events"; units "error(s) per second"; type int32 { range "1 .. 1000"; } } } } container action { description "Action to take on specified events"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf syslog { description "Generate syslog message"; type empty; } leaf link-down { description "Mark the interface down for transit traffic"; type empty; } leaf send-critical-event { description "Start sending OAM PDUs with critical event bit set"; type empty; } } } list interface { key name; ordered-by user; description "Interface on which to set Ethernet OAM parameters"; leaf name { description "Interface name"; type interface-device; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list apply-action-profile { description "Apply the specified action profile on the interface"; type string; } leaf pdu-interval { description "Periodic OAM protocol data unit interval"; default "1000"; units "milliseconds"; type int32 { range "100 .. 1000"; } } leaf loopback-tracking { description "Enable link down on loopback detection"; type empty; } leaf link-discovery { description "Mode of discovery"; default "active"; type enumeration { enum active { description "(null)"; } enum passive { description "(null)"; } } } leaf pdu-threshold { description "Number of PDUs missed before declaring peer lost"; default "3"; type int32 { range "3 .. 10"; } } leaf remote-loopback { description "Put remote DTE into remote-loopback mode"; type empty; } container negotiation-options { description "802.3ah features supported on the interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-allow-link-events { description "Do not emit periodic PDUs detailing framing and symbol errors"; type empty; } leaf allow-remote-loopback { description "Allow local port to be put into loopback mode"; type empty; } } container event-thresholds { description "Thresholds for sending 802.3ah events"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf symbol-period { description "Threshold for sending symbol period events"; default "1"; type int32 { range "1 .. 100"; } } leaf frame-error { description "Threshold for sending frame error events"; default "1"; type int32 { range "1 .. 100"; } } leaf frame-period { description "Threshold for sending frame period error events"; default "1"; type int32 { range "1 .. 100"; } } leaf frame-period-summary { description "Threshold for sending frame period summary error events"; default "1"; type int32 { range "1 .. 100"; } } } } } container connectivity-fault-management { description "Configurations related to 802.1ag ethernet oam"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container performance-monitoring { description "Configurations related to ethernet performance monitoring"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf hardware-assisted-timestamping { description "Enable timestamping feature in hardware"; type empty; } leaf delegate-server-processing { description "Delegate performance measurement request handling to PFE"; type empty; } leaf hardware-assisted-keepalives { description "Enable/Disable delegating keepalives to hardware"; type enumeration { enum enable { description "Enable delegate keepalives handling to Hardware"; } enum disable { description "Disable delegate keepalives handling to Hardware (default)"; } } } leaf enhanced-sla-iterator { description "Enable Enhanced SLA Iterator Cycle-time"; type empty; } leaf measurement-interval { description "Enables measurement-interval based PM (MEF 36 mode)"; units "minutes"; type enumeration { enum 2 { description "2 minutes measurement interval"; } enum 5 { description "5 minutes measurement interval"; } enum 15 { description "15 minutes measurement interval"; } enum 30 { description "30 minutes measurement interval"; } enum 60 { description "1 hour measurement interval"; } } } list sla-iterator-profiles { key name; ordered-by user; description "Configuration related to an sla monitoring iterator"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable the iterator profile"; type empty; } leaf measurement-type { description "Choice of the type of Y.1731(SLA measurement) frame to be sent"; type enumeration { enum two-way-delay { description "Y.1731 2-way DM frames are sent for this profile"; } enum loss { description "Y.1731 LM frames are sent for this profile"; } enum slm { description "Y.1731 SLM frames are sent for this profile"; } enum statistical-frame-loss { description "Y.1731 2-way DM frames for statistical frame loss are sent for this profile"; } } mandatory true; } leaf cycle-time { description "Time period of an iterator profile"; default "1000"; units "milliseconds"; type enumeration { enum 100 { description "Cycle Time 100ms"; } enum 1000 { description "Cycle Time 1s"; } enum 10000 { description "Cycle Time 10s"; } } } leaf iteration-period { description "Maximum services under this iterator profile"; default "2000"; units "connections"; type uint32 { range "1 .. 2000"; } } container calculation-weight { presence "enable calculation-weight"; description "Configure delay and delay variation calculation weight"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf delay { description "Weight used in delay calculation"; default "1"; type uint32 { range "1 .. 65535"; } } leaf delay-variation { description "Weight used in delay-variation calculation"; default "1"; type uint32 { range "1 .. 65535"; } } } leaf avg-flr-forward-threshold { description "Avg forward flr threshold value in mili-percent"; type uint32 { range "1 .. 100000"; } } leaf avg-flr-backward-threshold { description "Avg backward flr threshold value in mili-percent"; type uint32 { range "1 .. 100000"; } } leaf avg-fd-twoway-threshold { description "Avg frame delay threshold value"; units "microseconds"; type uint32 { range "1 .. 4294967295"; } } leaf avg-fdv-twoway-threshold { description "Avg frame delay variance threshold value"; units "microseconds"; type uint32 { range "1 .. 4294967295"; } } leaf measurement-interval { description "Measurement-interval to be used for this PM session (MEF 36 mode)"; units "minutes"; type enumeration { enum 2 { description "2 minutes measurement interval"; } enum 5 { description "5 minutes measurement interval"; } enum 15 { description "15 minutes measurement interval"; } enum 30 { description "30 minutes measurement interval"; } enum 60 { description "1 hour measurement interval"; } } } container frame-delay { description "Bin configuration for frame delay"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf num-bins { description "Max number of bins"; type uint32 { range "2 .. 5"; } mandatory true; } presence "enable frame-delay"; container two-way { presence "enable two-way"; description "Bin configuration for 2way frame delay"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list lower-threshold-bin { description "Lower threshold bin configuration in ascending order"; type uint32 { range "1 .. 4294967294"; } } } container forward { presence "enable forward"; description "Bin configuration for forward frame delay"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list lower-threshold-bin { description "Lower threshold bin configuration in ascending order"; type uint32 { range "1 .. 4294967294"; } } } container backward { presence "enable backward"; description "Bin configuration for backward frame delay"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list lower-threshold-bin { description "Lower threshold bin configuration in ascending order"; type uint32 { range "1 .. 4294967294"; } } } } container frame-delay-range { description "Bin configuration for frame delay range"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf num-bins { description "Max number of bins"; type uint32 { range "2 .. 5"; } mandatory true; } presence "enable frame-delay-range"; container two-way { presence "enable two-way"; description "Bin configuration for 2way frame delay range"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list lower-threshold-bin { description "Lower threshold bin configuration in ascending order"; type uint32 { range "1 .. 4294967294"; } } } container forward { presence "enable forward"; description "Bin configuration for forward frame delay range"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list lower-threshold-bin { description "Lower threshold bin configuration in ascending order"; type uint32 { range "1 .. 4294967294"; } } } container backward { presence "enable backward"; description "Bin configuration for backward frame delay range"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list lower-threshold-bin { description "Lower threshold bin configuration in ascending order"; type uint32 { range "1 .. 4294967294"; } } } } container ifdv { description "Bin configuration for IFDV"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf num-bins { description "Max number of bins"; type uint32 { range "2 .. 5"; } mandatory true; } presence "enable ifdv"; container two-way { presence "enable two-way"; description "Bin configuration for 2way IFDV"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list lower-threshold-bin { description "Lower threshold bin configuration in ascending order"; type uint32 { range "1 .. 4294967294"; } } } container forward { presence "enable forward"; description "Bin configuration for forward IFDV"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list lower-threshold-bin { description "Lower threshold bin configuration in ascending order"; type uint32 { range "1 .. 4294967294"; } } } container backward { presence "enable backward"; description "Bin configuration for backward IFDV"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list lower-threshold-bin { description "Lower threshold bin configuration in ascending order"; type uint32 { range "1 .. 4294967294"; } } } } container availability { description "Configuration of availabilty related parameters (MEF 36 mode)"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf num-consecutive-pdus { description "Number of consecutive LM/SLM PDUs to be used in availability measurement"; type uint32 { range "1 .. 100"; } } leaf flr-threshold { description "FLR threshold in milli-percent to be used for evaluating availability"; type uint32 { range "0 .. 100000"; } } leaf num-consecutive-intervals { description "Number of consecutive availability indicators to detect change in availability"; type uint32 { range "1 .. 10"; } } leaf num-consecutive-highflr { description "Number of consecutive availability indicators to access CHLI"; type uint32 { range "1 .. 9"; } } } } list interface { key name; ordered-by user; description "Name of interface for the performance monitoring"; leaf name { description "Interface name"; type interface-unit; } leaf enable-multiclass-loss-measurement { description "Disable multiclass loss measurement in hardware"; type empty; } leaf code-point-based-lm-accounting { description "Enable code point based loss measurement in hardware"; type empty; } leaf priority-based-lm-accounting { description "Enable priority based loss measurement in hardware"; type empty; } } leaf enable-multiclass-loss-measurement { description "Disable multiclass loss measurement in hardware"; type empty; } leaf code-point-based-lm-accounting { description "Enable code point based loss measurement in hardware"; type empty; } leaf priority-based-lm-accounting { description "Enable priority based loss measurement in hardware"; type empty; } leaf colorless-loss-measurement { description "Enable colorless loss measurement in hardware"; type empty; } } container connection-protection { description "Configurations related to Carrier Ethernet Transport Mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf mark-connection-protection-tlv { description "Enable marking of Connection Protection TLV"; type empty; } leaf uhp-label-lookup { description "Enable lookup for special UHP labels"; type empty; } } leaf no-aggregate-delegate-processing { description "Do not distribute aggregate session to pfe"; type empty; } container traceoptions { description "Trace options for connectivity fault management"; uses cfm-traceoptions; } list action-profile { key name; ordered-by user; description "Action profiles to use when one or more remote maintenance association endpoints are down"; leaf name { description "Name of action profile"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container event { description "Events that need to be monitored"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list interface-status-tlv { description "Values that need to be monitored in interface status TLV"; type enumeration { enum down { description "Interface is administratively down"; } enum lower-layer-down { description "Interface is physically down"; } } } leaf-list port-status-tlv { description "Values that need to be monitored in port status TLV"; type enumeration { enum blocked { description "Port is blocked"; } } } leaf adjacency-loss { description "Connectivity is lost"; type empty; } leaf rdi { description "RDI received from some MEP"; type empty; } leaf connection-protection-tlv { description "Values that need to be monitored in connection protection TLV"; type enumeration { enum using-working-path { description "Service traffic is using working path"; } enum using-protection-path { description "Service traffic is using protection path"; } } } leaf server-mep-defects { description "Defects which are monitored by Server MEP"; type enumeration { enum link-loss-defect { description "Detect link loss defects for the ethernet interface"; } enum l2circuit-defect { description "Detect l2circuit down defects"; } enum l2vpn-defect { description "Detect l2vpn down defects"; } } } leaf-list ais-trigger-condition { description "Defect condition that generates alarm indication signal"; type enumeration { enum all-defects { description "All defects"; } enum adjacency-loss { description "Loss of connectivity defects"; } enum cross-connect-ccm { description "Cross connect CCMs"; } enum erroneous-ccm { description "Erroneous CCMs"; } enum receive-ais { description "AIS message received"; } } } } container action { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interface-down { description "Mark the interface as down"; type empty; } leaf revertive-interface-down { description "Wait for CC loss-threshold to bring back the interface up"; type empty; } leaf non-revertive-interface-down { description "Interface will not be brought up when CC is received"; type empty; } leaf propagate-remote-mac-flush { description "Remote mac-flush"; type empty; } container log-and-generate-ais { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list level { description "Server maintenance domain levels range"; type uint32 { range "1 .. 7"; } } leaf interval { description "Interval between AIS messages"; default "1s"; type enumeration { enum 1s { description "(null)"; } enum 1m { description "(null)"; } } } leaf priority { description "802.1p priority of AIS packet"; default "0"; type uint32 { range "0 .. 7"; } } } } container clear-action { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container interface-down { description "Mark the interface as down"; leaf peer-interface { description "Mark the interface as down"; type empty; } } leaf propagate-remote-mac-flush { description "Remote mac flush"; type empty; } } container default-actions { description "Action that needs to be taken"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interface-down { description "Bring the interface down"; type empty; } } } list server-mep { key name; ordered-by user; description "Server MEP to use when generation of AIS is required to monitor different services"; leaf name { description "Identifier for Server MEP"; type uint16 { range "1 .. 8191"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container protocol { presence "enable protocol"; description "Protocol that needs to be monitored by Server MEP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice protocol { case case_1 { container l2circuit { presence "enable l2circuit"; description "Protocol that need to be monitored is l2circuit protocol"; container interface { presence "enable interface"; description "Interface which is participating in l2circuit service"; leaf interface-name { description "Interface name"; type interface-name; mandatory true; } } } } case case_2 { container l2vpn { presence "enable l2vpn"; description "Protocol that need to be monitored is l2vpn protocol"; container interface { presence "enable interface"; description "Interface which is participating in l2vpn service"; leaf interface-name { description "Interface name"; type interface-name; mandatory true; } } } } case case_3 { container ethernet { presence "enable ethernet"; description "Protocol that need to be monitored is physical ethernet service"; container interface { presence "enable interface"; description "Interface which is going to be monitored"; leaf interface-name { description "Interface name"; type interface-device; mandatory true; } } } } } } container action-profile { presence "enable action-profile"; description "Attached action profile for this Server MEP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf action-profile-name { description "Name of the action profile"; type string; mandatory true; } } } container policer { description "Rate limit Ethernet OAM packets for all sessions"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf continuity-check { description "Policer to rate limit Continuity Check Ethernet OAM messages"; type string; } leaf other { description "Policer to rate limit non Continuity Check Ethernet OAM messages"; type string; } leaf all { description "Policer to rate limit all Ethernet OAM messages"; type string; } } container linktrace { presence "enable linktrace"; description "Linktrace protocol global options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf path-database-size { description "Number of linktrace reply entries to be stored per linktrace request"; default "100"; type uint32 { range "1 .. 255"; } } leaf age { description "Time after which a stale request-response entry is deleted"; default "10m"; type enumeration { enum 10s { description "(null)"; } enum 30s { description "(null)"; } enum 1m { description "(null)"; } enum 10m { description "(null)"; } enum 30m { description "(null)"; } } } } list maintenance-domain { key name; ordered-by user; description "Maintenance domain configuration"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list bridge-domain { key name; ordered-by user; description "Bridge-domain information for the default maintenance domain"; leaf name { description "Bridge domain name"; type string; } leaf-list vlan-id { description "VLAN id"; type string; } } list vlan { key name; ordered-by user; description "VLAN information for the default maintenance domain"; leaf name { description "VLAN name"; type string; } } list virtual-switch { key name; ordered-by user; description "Virtual switch Bridge-domain information for the default maintenance domain"; leaf name { description "Routing instance of type virtual switch"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list bridge-domain { key name; ordered-by user; description "(null)"; leaf name { description "Bridge domain name"; type string; } leaf-list vlan-id { description "VLAN id"; type string; } } } list instance { key name; ordered-by user; description "VPLS instance name for the default maintenance domain"; leaf name { description "VPLS routing instance name"; type string; } } list interface { key name; ordered-by user; description "Name of interface for the default maintenance domain"; leaf name { description "Interface name"; type interface-unit; } } leaf level { description "Level value for maintenance domain"; type uint8 { range "0 .. 7"; } } leaf name-format { description "Format of maintenance domain name"; type enumeration { enum none { description "No format specified"; } enum dns { description "Character string similar to Domain Name System name"; } enum mac+2oct { description "MAC address with 2 octet integer (xx:xx:xx:xx:xx:xx.Y format)"; } enum character-string { description "Character string"; } } } leaf mip-half-function { description "Half function to be implemented by MIP"; default "none"; type enumeration { enum none { description "No MHFs should be created"; } enum default { description "Create MHF as per IEEE 802.1ag specifications for defMHFDefault"; } enum explicit { description "Create MHF as per IEEE 802.1ag specifications for defMHFExplicit"; } } } list maintenance-association { key name; ordered-by user; description "Maintenance association configuration"; leaf name { description "Name of maintenance association in IEEE compliant format"; type string { length "1 .. 45"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf debug-session { description "Debug the CFM session"; type empty; } leaf short-name-format { description "Format of Maintenance Association Name"; type enumeration { enum 2octet { description "An integer in the range 0..65535"; } enum rfc-2685-vpn-id { description "VPN identifier that complies with RFC 2685"; } enum vlan { description "Primary VLAN identifier"; } enum character-string { description "Character string"; } enum icc { description "ITU Carrier Code"; } } } container protect-maintenance-association { description "Maintenance association used for connection protection"; leaf ma-name { description "Name of the protect maintenance association"; type string { length "1 .. 45"; } mandatory true; } presence "enable protect-maintenance-association"; leaf aps-profile { description "Name of the automatic-protection-switching profile"; type string; } leaf detect-path-type { description "Enable detection of working and protect paths"; type empty; } } leaf primary-vid { description "VLAN id"; type string; } container continuity-check { presence "enable continuity-check"; description "Continuity check configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interval { description "Interval between continuity-check messages"; default "1m"; type enumeration { enum 10ms { description "(null)"; } enum 100ms { description "(null)"; } enum 1s { description "(null)"; } enum 10s { description "(null)"; } enum 1m { description "(null)"; } enum 10m { description "(null)"; } } } leaf loss-threshold { description "Number of continuity-check messages lost before marking endpoint as down"; default "3"; type uint32 { range "3 .. 256"; } } leaf hold-interval { description "Time before flushing MEP database if no updates occur"; default "10"; units "minutes"; type uint32 { range "1 .. 256"; } } leaf port-status-tlv { description "Include port status TLV in CCM"; type empty; } leaf interface-status-tlv { description "Include interface status TLV in CCM"; type empty; } leaf connection-protection-tlv { description "Include connection protection OUI TLV in CCM"; type empty; } leaf convey-loss-threshold { description "Include Loss Threshold OUI TLV in CCM"; type empty; } } leaf mip-half-function { description "Half function to be implemented by MIP"; default "defer"; type enumeration { enum none { description "No MHFs should be created"; } enum default { description "Create MHF as per IEEE 802.1ag specifications for defMHFDefault"; } enum explicit { description "Create MHF as per IEEE 802.1ag specifications for defMHFExplicit"; } enum defer { description "Create MHF as per IEEE 802.1ag specifications for defMHFDefer"; } } } list mep { key name; ordered-by user; description "Maintenance association endpoint configuration"; max-elements 1; leaf name { description "Identifier for maintenance association endpoint"; type uint16 { range "1 .. 8191"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container interface { presence "enable interface"; description "Name of interface"; leaf interface-name { description "(null)"; type interface-unit; mandatory true; } leaf vlan { description "Trunk port interface VLAN identifier"; type uint32 { range "1 .. 4094"; } } choice connection-type { case case_1 { leaf working { description "Monitory the primary path"; type empty; } } case case_2 { leaf protect { description "Monitory the protect path"; type empty; } } } } leaf direction { description "Direction of maintenance endpoint"; default "down"; type enumeration { enum up { description "(null)"; } enum down { description "(null)"; } } } leaf priority { description "802.1p priority of continuity-check and link-trace packet"; default "0"; type uint32 { range "0 .. 7"; } } leaf auto-discovery { description "Accept continuity-check messages from all remote MEPs"; type empty; } leaf action-profile { description "Name of the action profile"; type string; } list remote-mep { key name; ordered-by user; description "Remote maintenance association endpoint configuration"; leaf name { description "Identifier for remote maintenance association endpoint"; type uint16 { range "1 .. 8191"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf action-profile { description "Name of the action profile"; type string; } list sla-iterator-profile { key name; ordered-by user; description "Name of the iterator profile"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf iteration-count { description "Iterations to partake for acquiring SLA measurements"; units "frames"; type uint32 { range "1 .. 65535"; } } leaf priority { description "The vlan pcp value to be sent in the Y.1731 frame"; type uint32 { range "0 .. 7"; } } leaf data-tlv-size { description "Size of the data-tlv portion of Y.1731 frame"; units "bytes"; type uint32 { range "1 .. 1400"; } } } leaf detect-loc { description "Detects initial loss of connectivity with remote mep"; type empty; } } leaf lowest-priority-defect { description "Lowest priority defect that is allowed to generate a fault alarm"; type enumeration { enum all-defects { description "Allows all defects"; } enum mac-rem-err-xcon { description "Allows only MAC, not receiving CCM, erroneous CCM and cross connect defects"; } enum rem-err-xcon { description "Allows only not receiving CCM, erroneous CCM and cross connect CCM defects"; } enum err-xcon { description "Allows only erroneous CCM and cross connect CCM defects"; } enum xcon { description "Allows only cross connect CCM defect"; } enum no-defect { description "Allows no defect"; } } } } container policer { description "Rate limit Ethernet OAM packets for this session"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf continuity-check { description "Policer to rate limit Continuity Check Ethernet OAM messages"; type string; } leaf other { description "Policer to rate limit non Continuity Check Ethernet OAM messages"; type string; } leaf all { description "Policer to rate limit all Ethernet OAM messages"; type string; } } } } } list evcs { key name; description "Ethernet virtual circuits configuration"; leaf name { description "EVC id"; type string { length "1 .. 100"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container evc-protocol { description "Signaling protocol to monitor EVC status"; choice protocol { case case_1 { container cfm { presence "enable cfm"; description "Connectivity fault management"; leaf maintenance-domain { description "Maintenance domain name"; type string; mandatory true; } leaf maintenance-association { description "Maintenance association name"; type string; mandatory true; } container faults { description "CFM faults to trigger ELMI"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf rdi { description "RDI received from some MEP"; type empty; } } } } case case_2 { container vpls { presence "enable vpls"; description "Virtual private LAN service (BGP/LDP)"; leaf routing-instance { description "Routing instance name"; type string; mandatory true; } } } case case_3 { container l2circuit { description "L2circuit"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container interface { description "Name of interface forming the Layer 2 circuit"; leaf interface-name { description "(null)"; type interface-name; mandatory true; } presence "enable interface"; } } } case case_4 { container l2vpn { description "L2vpn"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container interface { description "Name of interface forming the Layer 2 VPN"; leaf interface-name { description "(null)"; type interface-name; mandatory true; } presence "enable interface"; } } } } } leaf remote-uni-count { description "Number of remote UNIs in the EVC"; default "1"; type uint8 { range "1 .. 255"; } } leaf async-status-msg-transmit-interval { description "Time interval between E-LMI async status messages per EVC"; default "10"; units "milliseconds"; type int32 { range "1 .. 10000"; } } leaf multipoint-to-multipoint { description "Multipoint to Multipoint EVC"; type empty; } } container lmi { presence "enable lmi"; description "Ethernet local management interface configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for ethernet local management interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum configuration { description "Trace configuration events"; } enum routing-socket { description "Trace routing socket events"; } enum protocol { description "Trace protocol processing events"; } enum init { description "Trace events related to protocol daemon start-up"; } enum error { description "Trace events related to catestrophic errors in daemon"; } enum packet { description "Trace events related to packet flow"; } enum all { description "Trace everything"; } } } } } leaf status-counter { description "E-LMI status counter (N393)"; default "4"; type uint8 { range "2 .. 10"; } } leaf polling-verification-timer { description "Polling verification timer (T392)"; default "15"; units "seconds"; type uint8 { range "5 .. 30"; } } list interface { key name; description "Interface options"; leaf name { description "(null)"; type interface-device; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf uni-id { description "UNI identifier"; type string { length "1 .. 64"; } } leaf status-counter { description "E-LMI status counter (N393)"; default "4"; type uint8 { range "2 .. 10"; } } leaf polling-verification-timer { description "Polling verification timer (T392)"; default "15"; units "seconds"; type uint8 { range "5 .. 30"; } } leaf evc-map-type { description "CE-VLAN ID/EVC map type"; default "bundling"; type enumeration { enum all-to-one-bundling { description "All to one bundling"; } enum service-multiplexing { description "Service multiplexing with no bundling"; } enum bundling { description "Bundling with service multiplexing"; } } } list evc { key name; description "EVC configuration"; leaf name { description "EVC identifier"; type string { length "1 .. 100"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default-evc { description "Default EVC"; type empty; } leaf-list vlan-list { description "Vlans mapped to this EVC"; type vlan-range; } } } } container fnp { presence "enable fnp"; description "Failure notification protocol configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Tracing options for FNP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum events { description "Trace protocol events"; } enum pdu { description "Trace PDU reception and transmission"; } enum timers { description "Trace protocol timers"; } enum error { description "Trace all failure conditions"; } enum all { description "Trace all"; } } } } } leaf interval { description "Interval between FNP messages"; default "1s"; type enumeration { enum 100ms { description "(null)"; } enum 1s { description "(null)"; } enum 10s { description "(null)"; } enum 1m { description "(null)"; } enum 10m { description "(null)"; } } } leaf loss-threshold { description "Number of FNP messages lost before clearing FNP state"; default "4"; type uint8 { range "3 .. 255"; } } list interface { key name; ordered-by user; description "Interface configuration"; leaf name { description "(null)"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf domain-id { description "Ethernet domain identifier"; default "0"; type uint32; } } } } container gre-tunnel { presence "enable gre-tunnel"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for GRE keepalives"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum configuration { description "Trace configuration events"; } enum routing-socket { description "Trace routing socket events"; } enum protocol { description "Trace protocol processing events"; } enum all { description "Trace everything"; } } } } } list interface { key name; ordered-by user; description "(null)"; leaf name { description "Interface name"; type interface-unit; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf keepalive-time { description "Keepalive time"; default "1"; units "seconds"; type int32 { range "1 .. 50"; } } leaf hold-time { description "Hold time"; default "5"; units "seconds"; type int32 { range "5 .. 250"; } } } } } container ancp { description "Access Node Control Protocol options"; uses juniper-protocols-ancp; } container ptp { description "Precision Time Protocol v2 options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf clock-mode { description "Clock mode"; type enumeration { enum ordinary { description "PTP Ordinary clock"; } enum boundary { description "PTP Boundary clock"; } } } leaf priority1 { description "Used in selecting best master clock"; type int32 { range "0 .. 255"; } } leaf priority2 { description "Tie-braker in selecting best master clock"; type int32 { range "0 .. 255"; } } leaf domain { description "PTP domain number"; type int32 { range "0 .. 127"; } } leaf path-trace { description "Enable path tracing"; type empty; } leaf unicast-negotiation { description "Enable unicast negotiation"; type empty; } leaf phy-timestamping { description "PHY time-stamping feature"; type empty; } leaf ipv4-dscp { description "IPv4 dscp value to be used for PTP packets"; type int32 { range "0 .. 63"; } } container performance-monitor { description "PTP packet delay metrics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container threshold { description "Configure delay and jitter thresholds"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf min-outbound-delay { description "Configure minimum outbound delay"; default "0"; type uint32 { range "0 .. 1000000"; } } leaf max-outbound-delay { description "Configure maximum outbound delay"; default "1000000"; type uint32 { range "0 .. 1000000"; } } leaf min-inbound-delay { description "Configure minimum inbound delay"; default "0"; type uint32 { range "0 .. 1000000"; } } leaf max-inbound-delay { description "Configure maximum inbound delay"; default "1000000"; type uint32 { range "0 .. 1000000"; } } leaf max-inbound-jitter-neg { description "Configure max inbound negetive jitter"; default "-1000000"; type int32 { range "-1000000 .. 0"; } } leaf max-inbound-jitter-pos { description "Configure max inbound positive jitter"; default "1000000"; type uint32 { range "0 .. 1000000"; } } leaf max-outbound-jitter-neg { description "Configure max outbound negetive jitter"; default "-1000000"; type int32 { range "-1000000 .. 0"; } } leaf max-outbound-jitter-pos { description "Configure max outbound positive jitter"; default "1000000"; type uint32 { range "0 .. 1000000"; } } } } container slave { description "PTP Slave parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf frequency-only { description "Only for frequency syntonization"; type empty; } leaf delay-request { description "Log mean interval between delay requests"; type int32 { range "-6 .. 6"; } } leaf announce-timeout { description "Timeout period for announce messages"; type uint32 { range "2 .. 10"; } } leaf announce-interval { description "Log mean interval between announce messages"; type int32 { range "0 .. 4"; } } leaf sync-interval { description "Requested log mean interval between sync messages"; type int32 { range "-6 .. 0"; } } leaf grant-duration { description "Length of grants in seconds requested during unicast-negotiation"; type uint32 { range "60 .. 7200"; } } leaf convert-clock-class-to-quality-level { description "Enable PTP clock class to ESMC quality level mapping"; type empty; } container clock-class-to-quality-level-mapping { description "PTP clock class to ESMC quality level mapping"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list quality-level { key name; description "(null)"; leaf name { description "(null)"; type enumeration { enum prc { description "Timing quality of a primary reference clock (option-1 only)"; } enum ssu-a { description "Timing quality of a type I or IV slave clock (option-1 only)"; } enum ssu-b { description "Timing quality of a type VI slave clock (option-1 only)"; } enum sec { description "Timing quality of SDH equipment clock (option-1 only)"; } enum prs { description "Clock traceable to primary reference source (option-2 only)"; } enum st2 { description "Clock traceable to stratum 2 (option-2 only)"; } enum tnc { description "Clock traceable to transit node clock (option-2 only)"; } enum st3e { description "Clock traceable to stratum 3E (option-2 only)"; } enum st3 { description "Clock traceable to stratum 3 (option-2 only)"; } enum smc { description "Clock traceable to self-timed SONET (option-2 only)"; } enum st4 { description "Clock traceable to stratum 4 free-run (option-2 only)"; } enum stu { description "Clock traceable to unknown quality (option-2 only)"; } } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf clock-class { description "PTP clock class threshold value"; type int32 { range "0 .. 255"; } mandatory true; } } } list interface { key name; description "Interface on which to respond to upstream PTP master"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container unicast-mode { description "Configure upstream unicast PTP master clock sources"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf transport { description "Encapsulation for PTP packet transport"; type enumeration { enum ipv4 { description "Use IP as transport"; } } mandatory true; } presence "enable unicast-mode"; list clock-source { key "ip-address local-ip-address"; description "Configure PTP master parameters"; leaf ip-address { description "IP address of PTP master"; type ipv4addr; } leaf local-ip-address { description "Must be IP address on local interface"; type ipv4addr; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf asymmetry { description "Adjust the slave-to-master delay by value specified in nanoseconds"; type int32 { range "-100000000 .. 100000000"; } } } } container multicast-mode { description "Configure PTP slave clock to use multicast frames"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container transport { presence "enable transport"; description "Encapsulation for PTP packet transport"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice transport-type { case case_1 { container ieee-802.3 { presence "enable ieee-802.3"; description "PTP over 802.3 frames"; leaf link-local { description "Use link local 802.3 MAC address"; type empty; } } } } } leaf asymmetry { description "Adjust the slave-to-master delay by value specified in nanoseconds"; type int32 { range "-100000000 .. 100000000"; } } } } container hybrid { presence "enable hybrid"; description "Hybrid mode configuration options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container synchronous-ethernet-mapping { presence "enable synchronous-ethernet-mapping"; description "PTP source to synchronous ethernet interface mapping"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list clock-source { key name; description "PTP source being mapped"; leaf name { description "IP address of remote PTP master"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list interface { key name; description "Synchonous ethernet interface name"; leaf name { description "(null)"; type interface-device; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } } container master { description "PTP Master parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf announce-interval { description "Log mean interval between announce messages"; type int32 { range "0 .. 4"; } } leaf sync-interval { description "Log mean interval between sync messages"; type int32 { range "-6 .. 6"; } } leaf min-announce-interval { description "Min log mean interval between announce messages"; type int32 { range "0 .. 4"; } } leaf max-announce-interval { description "Max log mean interval between announce messages"; type int32 { range "0 .. 4"; } } leaf min-sync-interval { description "Min log mean interval between sync messages"; type int32 { range "-6 .. 6"; } } leaf max-sync-interval { description "Max log mean interval between sync messages"; type int32 { range "-6 .. 6"; } } leaf min-delay-response-interval { description "Min log mean interval between delay-resp messages"; type int32 { range "-6 .. 6"; } } leaf max-delay-response-interval { description "Max log mean interval between delay-resp messages"; type int32 { range "-6 .. 6"; } } leaf clock-step { description "Type of clock step"; default "one-step"; type enumeration { enum one-step { description "PTP One-step clock"; } enum two-step { description "PTP Two-step clock"; } } } list interface { key name; description "Interface on which to respond to downstream PTP slaves"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container unicast-mode { description "Configure downstream PTP clock slaves"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf transport { description "Encapsulation for PTP packet transport"; type enumeration { enum ipv4 { description "Use IP as transport"; } } mandatory true; } presence "enable unicast-mode"; list clock-client { key "ip-address local-ip-address"; description "Configure PTP master parameters"; leaf ip-address { description "IP address or subnet of remote PTP slave"; type ipv4prefix; } leaf local-ip-address { description "IP address of local PTP master interface"; type ipv4addr; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf manual { description "This slave does not use unicast negotiation"; type empty; } } } container multicast-mode { description "Configure PTP master clock to use multicast frames"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container transport { presence "enable transport"; description "Encapsulation for PTP packet transport"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice transport-type { case case_1 { container ieee-802.3 { presence "enable ieee-802.3"; description "PTP over 802.3 frames"; leaf link-local { description "Use link local 802.3 MAC address"; type empty; } } } } } } } } container stateful { description "PTP stateful parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list interface { key name; description "Interfaces which will set to PTP stateful role"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container multicast-mode { description "Configure PTP stateful clock to use multicast frames"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container transport { presence "enable transport"; description "Encapsulation for PTP packet transport"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice transport-type { case case_1 { container ieee-802.3 { presence "enable ieee-802.3"; description "PTP over 802.3 frames"; leaf link-local { description "Use link local 802.3 MAC address"; type empty; } } } } } leaf asymmetry { description "Adjust the slave-to-master delay by value specified in nanoseconds"; type int32 { range "-100000000 .. 100000000"; } } } } } } container clock-synchronization { description "Configuring parameters common to SyncE and PTP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Configure trace information for PTP and synce"; uses clksync-traceoptions; } } container dcbx { description "DCBX Protocol"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable DCBX"; type empty; } } } list interface { key name; ordered-by user; description "Interface configuration"; leaf name { description "Name of logical interface"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable DCBX"; type empty; } } } leaf dcbx-version { description "Configure DCBX version"; default "auto-negotiation"; type enumeration { enum auto-negotiation { description "Negotiate with peer device (default)"; } enum ieee-dcbx { description "IEEE DCBX version"; } enum dcbx-1.01 { description "DCBX version 1.01"; } } } container priority-flow-control { description "Configure priority flow control feature"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-auto-negotiation { description "Enable PFC manually"; type empty; } } container enhanced-transmission-selection { description "Configure enhanced transmission selection feature"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-auto-negotiation { description "Enable ETS manually"; type empty; } choice recommendation { case case_1 { leaf recommendation-tlv { description "Enables recommendation tlv (default)"; type empty; } } case case_2 { leaf no-recommendation-tlv { description "Disables recommendation tlv"; type empty; } } } } container applications { description "Configure application feature"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-auto-negotiation { description "Enable APP manually"; type empty; } } leaf application-map { description "Application map to be enabled on the interface"; type string { length "1 .. 63"; } } } } container dot1x { description "802.1X options"; uses juniper-protocols-dot1x; } container ppp-service { description "Configure PPP service"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for PPP service"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Area of PPP service to enable debugging output"; leaf name { description "(null)"; type enumeration { enum accounting-statistics { description "Trace accounting statistics events"; } enum authentication { description "Trace authentication code"; } enum chap { description "Trace CHAP code"; } enum events { description "Trace interface events"; } enum gres { description "Trace GRES events"; } enum init { description "Trace daemon initialization"; } enum interface-db { description "Trace interface database code"; } enum lcp { description "Trace LCP state machine code"; } enum memory { description "Trace memory management code"; } enum ncp { description "Trace NCP state machine code"; } enum packet-error { description "Trace Packet error events"; } enum pap { description "Trace PAP code"; } enum parse { description "Trace parsing events"; } enum profile { description "Trace libdynamic-profile events"; } enum receive-packets { description "Trace received PPP packets"; } enum routing-process { description "Trace routing process interactions"; } enum rtp { description "Trace RealTimePriority code"; } enum rtsock { description "Trace routing socket code"; } enum session-db { description "Trace session database interactions"; } enum smi-services-sentry { description "Trace SMI services requests/retries"; } enum states { description "Trace state machine events"; } enum transmit-packets { description "Trace tranmitted PPP packets"; } enum tunnel { description "Trace l2tp tunneling"; } enum all { description "Trace all areas of code"; } } } } container filter { presence "enable filter"; description "Trace filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf aci { description "Regular expression to match ACI"; type string { length "1 .. 64"; } } leaf ari { description "Regular expression to match ARI"; type string { length "1 .. 64"; } } leaf service-name { description "Service name"; type string { length "1 .. 64"; } } leaf underlying-interface { description "Underlying interface name"; type string; } } } leaf on-demand-ip-address { description "Enable On-Demand IPv4 address allocation and de-allocation"; type empty; } leaf reject-unauthorized-ipv6cp { description "Reject IPv6 NCP if no appropriate IPv6 address or prefix is authorized"; type empty; } } container igmp-host { presence "enable igmp-host"; description "IGMP host options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for IGMP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum packets { description "Trace all IGMP packets"; } enum query { description "Trace IGMP membership query messages"; } enum report { description "Trace membership report messages"; } enum leave { description "Trace leave group messages (IGMPv2 only)"; } enum mtrace { description "Trace mtrace packets"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } list client { key name; ordered-by user; description "IGMP Host client"; leaf name { description "Client number"; type uint8 { range "0 .. 3"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list interface { key name; ordered-by user; description "Interface options for IGMP"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "Maximum IGMP version number on this interface"; type uint8 { range "1 .. 3"; } } leaf no-flush { description "Don't clean up by sending Leaves when disabling interface"; type empty; } leaf transmit-interval { description "Transmit interval in milliseconds"; type uint32; } list group { key name; ordered-by user; description "IP multicast group address"; leaf name { description "IP multicast group address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf exclude { description "Exclude these sources"; type empty; } list source { key name; ordered-by user; description "IP multicast source address"; leaf name { description "Source address of IP multicast data"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } } container mld-host { presence "enable mld-host"; description "MLD host options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for MLD"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum packets { description "Trace all MLD packets"; } enum query { description "Trace MLD membership query messages"; } enum report { description "Trace membership report messages"; } enum leave { description "Trace leave group messages (MLDv1 only)"; } enum mtrace { description "Trace mtrace packets"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } list client { key name; ordered-by user; description "MLD Host client"; leaf name { description "Client number"; type uint8 { range "0 .. 3"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list interface { key name; ordered-by user; description "Interface options for MLD"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "Maximum MLD version number on this interface"; type uint8 { range "1 .. 2"; } } leaf no-flush { description "Don't clean up by sending Leaves when disabling interface"; type empty; } leaf transmit-interval { description "Transmit interval in milliseconds"; type uint32; } list group { key name; ordered-by user; description "IP multicast group address"; leaf name { description "IP multicast group address"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf exclude { description "Exclude these sources"; type empty; } list source { key name; ordered-by user; description "IP multicast source address"; leaf name { description "Source address of IP multicast data"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } } container l2-learning { description "Layer 2 forwarding configuration"; uses juniper-protocols-bridge; } container lldp { description "Link Layer Detection Protocol"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable LLDP"; type empty; } } } container traceoptions { description "Trace options for LLDP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum all { description "Trace configuration events"; } enum configuration { description "Log configuration events"; } enum rtsock { description "Trace rtsock message events"; } enum packet { description "Trace packet information"; } enum protocol { description "Trace protocol information"; } enum interface { description "Trace interface update events"; } enum vlan { description "Trace VLAN update events"; } enum snmp { description "Trace SNMP events"; } } } leaf disable { description "Disable this trace flag"; type empty; } } } leaf management-address { description "LLDP management address"; type ipaddr; } leaf advertisement-interval { description "Transmit interval for LLDP messages"; default "30"; units "seconds"; type uint32 { range "5 .. 32768"; } } leaf transmit-delay { description "Transmit delay time interval for LLDP messages"; units "seconds"; type uint32 { range "1 .. 8192"; } } leaf hold-multiplier { description "Hold timer interval for LLDP messages"; default "4"; type uint32 { range "2 .. 10"; } } leaf ptopo-configuration-trap-interval { description "Interval for physical topology configuration change trap"; default "0"; units "seconds"; type uint32 { range "0 .. 3600"; } } leaf ptopo-configuration-maximum-hold-time { description "Hold time for physical topology connection entries"; default "300"; units "seconds"; type uint32 { range "1 .. 2147483647"; } } leaf lldp-configuration-notification-interval { description "Time interval for LLDP notification"; default "0"; units "seconds"; type uint32 { range "0 .. 3600"; } } leaf port-id-subtype { description "Sub-type to be used for Port ID TLV generation"; default "locally-assigned"; type enumeration { enum locally-assigned { description "Locally assigned value (SNMP index of the interface)"; } enum interface-name { description "Interface name on which LLDPDU is sent"; } } } leaf port-description-type { description "The Interfaces Group MIB object to be used for Port Description TLV generation"; default "interface-alias"; type enumeration { enum interface-alias { description "Use object ifAlias value for TLV generation"; } enum interface-description { description "Use object ifDescr value for TLV generation"; } } } list interface { key name; ordered-by user; description "Interface configuration"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable LLDP"; type empty; } } } container power-negotiation { presence "enable power-negotiation"; description "LLDP power negotiation"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable power negotiation"; type empty; } } } } } } container lldp-med { presence "enable lldp-med"; description "LLDP Media Endpoint Discovery"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf fast-start { description "Discovery count for MED"; type uint32 { range "1 .. 10"; } } list interface { key name; ordered-by user; description "Interface configuration"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable LLDP"; type empty; } } } container location { presence "enable location"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice location-type { case case_1 { container civic-based { description "Postal address"; uses civic-address-elements; } } case case_2 { leaf elin { description "Emergency line identification (ELIN) string"; type string; } } case case_3 { container co-ordinate { description "Address based on longitude and latitude coordinates"; uses co-ordinate-elements; } } } } } } container igmp-snooping { description "IGMP snooping configuration"; uses juniper-default-ri-protocols-igmp-snooping; } container mld-snooping { description "MLD snooping configuration"; uses juniper-default-ri-protocols-mld-snooping; } container openflow { description "OpenFlow protocol"; uses juniper-protocols-openflow; } container pcep { description "Path computation client configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf message-rate-limit { description "Messages per minute rate that path computation client will handle at maximum. 0 - disabled"; type uint16 { range "0 .. 16384"; } } leaf update-rate-limit { description "Updates per minute rate that path computation client will handle at maximum. 0 - disabled"; type uint16 { range "0 .. 16384"; } } leaf max-provisioned-lsps { description "Defines max count of externally provisioned LSPs over all conected PCEs (default: 16000)"; default "16000"; type uint32 { range "1 .. 32000"; } } list pce-group { key name; ordered-by user; description "PCE group definition"; leaf name { description "PCE group identifier"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container pce-type { description "Type of the PCE (e.g. stateful or stateless)"; leaf active { description "The PCE can modify delegated LSPs"; type empty; } choice statefullness { case case_1 { leaf stateful { description "The PCE is stateful"; type empty; } } } } leaf lsp-provisioning { description "The PCE is capable of provisioning LSPs"; type empty; } leaf lsp-cleanup-timer { description "LSP cleanup time (default: 0)"; units "seconds"; type uint32 { range "0 .. 4294967294"; } } leaf lsp-retry-delegation { description "Retry LSP delegation process is enabled"; type empty; } leaf lsp-retry-delegation-timer { description "LSP retry delegation timer in case delegation failure or re-delegate (default: 3600)"; units "seconds"; type uint32 { range "0 .. 4294967294"; } } leaf request-timer { description "The amount of time path computation client waits for a reply before resending its requests"; units "seconds"; type uint16 { range "0 .. 65535"; } } leaf max-unknown-requests { description "Max unknown requests per minute after which the connection will be closed. 0 - disabled"; default "5"; units "requests-per-minute"; type uint32 { range "0 .. 16384"; } } leaf max-unknown-messages { description "Max unknown messages per minute after which the connection will be closed. 0 - disabled"; default "5"; units "messages-per-minute"; type uint32 { range "0 .. 16384"; } } container traceoptions { description "Path Computation Element Protocol trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Area of Path Computation Client Daemon to enable debugging output"; leaf name { description "(null)"; type enumeration { enum pcep { description "Trace Path Computation Element protocol"; } enum all { description "Trace all areas of Path Computation Client Daemon code"; } } } } } leaf delegation-cleanup-timeout { description "Return control of LSPs after PCEP session disconnection (default: 30)"; units "seconds"; type uint16 { range "0 .. 600"; } } } list pce { key name; ordered-by user; description "Per PCE configuration"; leaf name { description "PCE unique identifier"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf local-address { description "Address of local end of PCEP session"; type ipv4addr; } leaf destination-ipv4-address { description "IPV4 Address of PCE"; type ipv4addr; mandatory true; } leaf destination-port { description "Destination TCP port PCE is listening on"; default "4189"; type uint16 { range "1 .. 65535"; } } leaf delegation-priority { description "This PCE's priority among configured stateful PCEs in one pce-group"; type uint16 { range "1 .. 65535"; } } leaf request-priority { description "This PCE's priority among configured stateless PCEs in one pce-group"; type uint16 { range "1 .. 65535"; } } leaf pce-group { description "Assign this PCE to defined pce group. PCE will inherit default values from the pce-group"; type string; } container pce-type { description "Type of the PCE (e.g. stateful or stateless)"; leaf active { description "The PCE can modify delegated LSPs"; type empty; } choice statefullness { case case_1 { leaf stateful { description "The PCE is stateful"; type empty; } } } } leaf lsp-provisioning { description "The PCE is capable of provisioning LSPs"; type empty; } leaf lsp-cleanup-timer { description "LSP cleanup time (default: 0)"; units "seconds"; type uint32 { range "0 .. 4294967294"; } } leaf lsp-retry-delegation { description "Retry LSP delegation process is enabled"; type empty; } leaf lsp-retry-delegation-timer { description "LSP retry delegation timer in case delegation failure or re-delegate (default: 3600)"; units "seconds"; type uint32 { range "0 .. 4294967294"; } } leaf request-timer { description "The amount of time path computation client waits for a reply before resending its requests"; units "seconds"; type uint16 { range "0 .. 65535"; } } leaf max-unknown-requests { description "Max unknown requests per minute after which the connection will be closed. 0 - disabled"; default "5"; units "requests-per-minute"; type uint32 { range "0 .. 16384"; } } leaf max-unknown-messages { description "Max unknown messages per minute after which the connection will be closed. 0 - disabled"; default "5"; units "messages-per-minute"; type uint32 { range "0 .. 16384"; } } container traceoptions { description "Path Computation Element Protocol trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Area of Path Computation Client Daemon to enable debugging output"; leaf name { description "(null)"; type enumeration { enum pcep { description "Trace Path Computation Element protocol"; } enum all { description "Trace all areas of Path Computation Client Daemon code"; } } } } } leaf delegation-cleanup-timeout { description "Return control of LSPs after PCEP session disconnection (default: 30)"; units "seconds"; type uint16 { range "0 .. 600"; } } } container traceoptions { description "Path Computation Client Daemon trace options"; uses pccd-traceoptions-type; } } container ppp { description "Configure PPP process"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "PPP trace options"; uses ppp-traceoptions-type; } list monitor-session { key session-name; description "Monitor packet exchange for PPP session"; leaf session-name { description "PPP session name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } container pppoe { description "Configure PPPoE process"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "PPPoE trace options"; uses pppoe-traceoptions-type; } leaf pado-advertise { description "Enable PADO advertising of PPPoE Service-Names"; type empty; } list service-name-tables { key name; ordered-by user; description "PPPoE Service Name Tables"; leaf name { description "Table name"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list service { key name; ordered-by user; description "One or more named PPPoE services"; leaf name { description "Service name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice service-action { case case_1 { leaf terminate { description "Service Action Terminate"; type empty; } } case case_2 { leaf drop { description "Service Action Drop"; type empty; } } case case_3 { leaf delay { description "Service Action Delay"; units "seconds"; type uint32 { range "1 .. 120"; } } } } leaf dynamic-profile { description "Attach dynamic-profile to entry"; type string { length "1 .. 64"; } } leaf routing-instance { description "Attach routing-instance to entry"; type string; } leaf max-sessions { description "Maximum sessions associated with Service"; type uint32 { range "1 .. 32000"; } } list agent-specifier { key "aci ari"; ordered-by user; description "One or more ACI/ARI entries"; leaf aci { description "Agent Circuit ID"; type string { length "1 .. 64"; } mandatory true; } leaf ari { description "Agent Remote ID"; type string { length "1 .. 64"; } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice service-action { case case_1 { leaf terminate { description "Service Action Terminate"; type empty; } } case case_2 { leaf drop { description "Service Action Drop"; type empty; } } case case_3 { leaf delay { description "Service Action Delay"; units "seconds"; type uint32 { range "1 .. 120"; } } } } leaf dynamic-profile { description "Attach dynamic-profile to entry"; type string { length "1 .. 64"; } } leaf routing-instance { description "Attach routing-instance to entry"; type string; } leaf static-interface { description "Attach static-interface to entry"; type interface-unit; } } } } choice ac-info-choice { } } container r2cp { description "Radio-to-Router Control Protocol configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable R2CP"; type empty; } } } container traceoptions { description "R2CP trace options"; uses r2cp-traceoptions-type; } leaf server-port { description "R2CP server port number"; type uint16 { range "1 .. 65535"; } } container client-port { description "R2CP client port number"; choice client-port-value { case case_1 { leaf port-number { description "UDP port number for R2CP clients"; type uint16 { range "1 .. 65535"; } } } case case_2 { choice port-any { case case_1 { leaf any { description "Accept R2CP messages sent on any port"; type empty; } } } } } } leaf node-terminate-count { description "Node Term retransmit count"; type uint16 { range "1 .. 5"; } } leaf node-terminate-interval { description "Node Terminate interval"; units "milliseconds"; type uint16 { range "100 .. 5000"; } } leaf session-terminate-count { description "Session Term retransmit count"; type uint16 { range "1 .. 5"; } } leaf session-terminate-interval { description "Session Term interval"; units "milliseconds"; type uint16 { range "100 .. 5000"; } } list radio { key name; ordered-by user; description "(null)"; leaf name { description "Radio name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interface { description "Interface listening for R2CP messages"; type interface-unit; mandatory true; } leaf virtual-channel-group { description "Virtual channel group name"; type string { } mandatory true; } list radio-interface { key name; ordered-by user; description "(null)"; leaf name { description "Data channel interface"; type interface-unit; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } container sflow { presence "enable sflow"; description "SFLOW protocol"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for SFLOW"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum configuration { description "Trace sflow configuration"; } enum rtsock { description "Trace rtsock events"; } enum interface { description "Trace interface events"; } enum client-server { description "Trace sflow client-server events"; } enum all { description "Trace all sflow events"; } } } leaf disable { description "Disable this trace flag"; type empty; } } } leaf agent-id { description "Sflow agent ipv4 address"; type ipv4addr; } leaf polling-interval { description "Interval between port statistics"; default "20"; units "seconds"; type uint32 { range "0 .. 3600"; } } container sample-rate { description "Sampling rate"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ingress { description "Ingress direction"; type uint32 { range "1 .. 1073741823"; } } leaf egress { description "Egress direction"; type uint32 { range "1 .. 1073741823"; } } } leaf source-ip { description "Sflow datagram source ipv4 address"; type ipv4addr; } list collector { key name; ordered-by user; description "SFLOW collector configuration"; max-elements 4; leaf name { description "Collector IPv4 address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf udp-port { description "Collector UDP port"; default "6343"; type uint16; } } list interfaces { key name; description "Enable SFLOW on this interface"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf polling-interval { description "Interval between port statistics"; units "seconds"; type uint32 { range "0 .. 3600"; } } container sample-rate { description "Sampling rate"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ingress { description "Ingress direction"; type uint32 { range "1 .. 1073741823"; } } leaf egress { description "Egress direction"; type uint32 { range "1 .. 1073741823"; } } } } } container layer2-control { description "Global options for layer 2 protocols"; uses juniper-protocols-l2control; } container rstp { description "Rapid Spanning Tree Protocol options"; uses juniper-protocols-stp; } container mstp { description "Multiple Spanning Tree Protocol options"; uses juniper-protocols-mstp; } container vstp { description "VLAN Spanning Tree Protocol options"; uses juniper-protocols-vstp; } container protection-group { description "Protection group"; uses juniper-protocols-protection-group; } container mvrp { description "MVRP configuration"; uses juniper-protocols-mvrp; } container uplink-failure-detection { description "Uplink failure detection configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container group { description "Uplink failure detection group"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list ufd-group-name { key name; description "Uplink failure detection group name"; uses ufd-group-type; } } container traceoptions { description "Trace options for uplink failure detection"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum parse { description "Trace configuration parsing"; } enum interface { description "Trace interface notifcation handlers of ufd"; } enum dcd { description "Trace ufdd interaction with dcd"; } enum groups { description "Trace uplink failure detection group handling"; } enum all { description "Trace everything"; } } } } } container action { description "Define action on ufd group state change"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf log { description "Log a message"; type empty; } } } container ovsdb { description "OVSDB protocol"; uses juniper-protocols-vgd; } } grouping admin_group_include_exclude { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice include-any-choice { case case_1 { leaf-list include-any { description "Groups, one or more of which must be present"; type string; } } } choice include-all-choice { case case_1 { leaf-list include-all { description "Groups, all of which must be present"; type string; } } } choice exclude-choice { case case_1 { leaf-list exclude { description "Groups, all of which must be absent"; type string; } } } } grouping bandwidth-type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf per-traffic-class-bandwidth { description "Bandwidth to reserve"; units "bps"; type string; } leaf ct0 { description "Bandwidth from traffic class 0"; units "bps"; type string; } leaf ct1 { description "Bandwidth from traffic class 1"; units "bps"; type string; } leaf ct2 { description "Bandwidth from traffic class 2"; units "bps"; type string; } leaf ct3 { description "Bandwidth from traffic class 3"; units "bps"; type string; } } grouping civic-address-elements { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf what { description "Type of address"; default "1"; type uint16 { range "0 .. 2"; } } leaf country-code { description "Two-letter country code"; type string { length 2; } mandatory true; } list ca-type { key name; ordered-by user; description "(null)"; leaf name { description "Address element type"; type uint16 { range "0 .. 255"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ca-value { description "Address element value"; type string; } } } grouping clksync-traceoptions { description "Trace options for syncE and PTP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum init { description "Trace daemon start-up related events"; } enum routing-socket { description "Trace routing-socket events"; } enum synchronization { description "Trace esmc protocol events only"; } enum ptp { description "Trace ptp protocol events only"; } enum protocol { description "Trace protocol events"; } enum configuration { description "Trace configuration events"; } enum debug { description "Trace generic debug events"; } enum ppm { description "Trace periodic packet management events"; } enum error { description "Trace error events"; } enum hybrid { description "Trace hybrid events"; } enum framer { description "Trace BITS framer events"; } enum all { description "Trace everything"; } } } } } grouping co-ordinate-elements { description "Geographical co-ordinates"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf longitude { description "Longitude vlaue"; type uint16 { range "0 .. 360"; } } leaf lattitude { description "Lattitude vlaue"; type uint16 { range "0 .. 360"; } } } grouping juniper-default-ri-protocols-igmp-snooping { description "IGMP snooping options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list vlan { key name; ordered-by user; description "VLAN options"; leaf name { description "VLAN name"; type string { length "2 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for IGMP Snooping"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum packets { description "Trace all IGMP packets"; } enum query { description "Trace IGMP membership query messages"; } enum report { description "Trace membership report messages"; } enum leave { description "Trace leave group messages (IGMPv2 only)"; } enum group { description "Trace group operations"; } enum client-notification { description "Trace notifications"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } leaf query-interval { description "When to send host query messages"; default "125"; units "seconds"; type uint32 { range "1 .. 1024"; } } container l2-querier { description "Enable L2 querier mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-address { description "Source IP address to use for L2 querier"; type ipv4addr; mandatory true; } presence "enable l2-querier"; } leaf query-response-interval { description "How long to wait for a host query response"; default "10"; units "seconds"; type string { } } leaf query-last-member-interval { description "When to send group query messages"; default "1"; units "seconds"; type string { } } leaf robust-count { description "Expected packet loss on a subnet"; default "2"; type uint32 { range "2 .. 10"; } } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } container proxy { presence "enable proxy"; description "Enable proxy mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-address { description "Source IP address to use for proxy"; type ipv4addr; } } list interface { key name; ordered-by user; description "Interface options for IGMP"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf multicast-router-interface { description "Enabling multicast-router-interface on the interface"; type empty; } leaf immediate-leave { description "Enable immediate group leave on interface"; type empty; } leaf host-only-interface { description "Enable interface to be treated as host-side interface"; type empty; } leaf group-limit { description "Maximum number of groups an interface can join"; type uint16; } container static { description "Static group or source membership"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "IP multicast group address"; leaf name { description "IP multicast group address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list source { key name; ordered-by user; description "IP multicast source address"; leaf name { description "Source address of IP multicast data"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } list qualified-vlan { key name; ordered-by user; description "VLAN options for qualified-learning"; leaf name { description "VLAN ID of the learning-domain"; type uint32 { range "0 .. 1023"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf query-interval { description "When to send host query messages"; units "seconds"; type uint32 { range "1 .. 1024"; } } container l2-querier { description "Enable L2 querier mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-address { description "Source IP address to use for L2 querier"; type ipv4addr; mandatory true; } presence "enable l2-querier"; } leaf query-response-interval { description "How long to wait for a host query response"; units "seconds"; type string { } } leaf query-last-member-interval { description "When to send group query messages"; units "seconds"; type string { } } leaf robust-count { description "Expected packet loss on a subnet"; type uint32 { range "2 .. 10"; } } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } container proxy { presence "enable proxy"; description "Enable proxy mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-address { description "Source IP address to use for proxy"; type ipv4addr; } } list interface { key name; ordered-by user; description "Interface options for IGMP"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf multicast-router-interface { description "Enabling multicast-router-interface on the interface"; type empty; } leaf immediate-leave { description "Enable immediate group leave on interface"; type empty; } leaf host-only-interface { description "Enable interface to be treated as host-side interface"; type empty; } leaf group-limit { description "Maximum number of groups an interface can join"; type uint16; } container static { description "Static group or source membership"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "IP multicast group address"; leaf name { description "IP multicast group address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list source { key name; ordered-by user; description "IP multicast source address"; leaf name { description "Source address of IP multicast data"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } } } container traceoptions { description "Trace options for IGMP Snooping"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum packets { description "Trace all IGMP packets"; } enum query { description "Trace IGMP membership query messages"; } enum report { description "Trace membership report messages"; } enum leave { description "Trace leave group messages (IGMPv2 only)"; } enum group { description "Trace group operations"; } enum client-notification { description "Trace notifications"; } enum host-notification { description "Trace host notifications"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } leaf query-interval { description "When to send host query messages"; default "125"; units "seconds"; type uint32 { range "1 .. 1024"; } } leaf query-response-interval { description "How long to wait for a host query response"; default "10"; units "seconds"; type string { } } leaf query-last-member-interval { description "When to send group query messages"; default "1"; units "seconds"; type string { } } leaf robust-count { description "Expected packet loss on a subnet"; default "2"; type uint32 { range "2 .. 10"; } } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } container proxy { presence "enable proxy"; description "Enable proxy mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-address { description "Source IP address to use for proxy"; type ipv4addr; } } list interface { key name; ordered-by user; description "Interface options for IGMP"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf multicast-router-interface { description "Enabling multicast-router-interface on the interface"; type empty; } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } leaf host-only-interface { description "Enable interfaces to be treated as host-side interfaces"; type empty; } leaf group-limit { description "Maximum number of (source,group) per interface"; type uint16 { range "1 .. 65535"; } } container static { description "Static group or source membership"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "IP multicast group address"; leaf name { description "IP multicast group address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list source { key name; ordered-by user; description "IP multicast source address"; leaf name { description "Source address of IP multicast data"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } } grouping juniper-default-ri-protocols-mld-snooping { description "MLD snooping options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list vlan { key name; ordered-by user; description "VLAN options"; leaf name { description "VLAN name"; type string { length "2 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for MLD Snooping"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum packets { description "Trace all MLD packets"; } enum query { description "Trace MLD membership query messages"; } enum report { description "Trace membership report messages"; } enum leave { description "Trace leave group messages (MLDv1 only)"; } enum group { description "Trace group operations"; } enum client-notification { description "Trace notifications"; } enum host-notification { description "Trace host notifications"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } leaf query-interval { description "When to send host query messages"; default "125"; units "seconds"; type uint32 { range "1 .. 1024"; } } leaf query-response-interval { description "How long to wait for a host query response"; default "10"; units "seconds"; type string { } } leaf query-last-member-interval { description "When to send group query messages"; default "1"; units "seconds"; type string { } } leaf robust-count { description "Expected packet loss on a subnet"; default "2"; type uint32 { range "2 .. 10"; } } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } list interface { key name; ordered-by user; description "Interface options for MLD"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf multicast-router-interface { description "Enabling multicast-router-interface on the interface"; type empty; } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } leaf host-only-interface { description "Enable interfaces to be treated as host-side interfaces"; type empty; } leaf group-limit { description "Maximum number of groups an interface can join"; type uint16; } container static { description "Static group or source membership"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "IP multicast group address"; leaf name { description "IP multicast group address"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list source { key name; ordered-by user; description "IP multicast source address"; leaf name { description "Source address of IP multicast data"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } list qualified-vlan { key name; ordered-by user; description "VLAN options for qualified-learning"; leaf name { description "VLAN ID of the learning-domain"; type uint32 { range "0 .. 1023"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf query-interval { description "When to send host query messages"; units "seconds"; type uint32 { range "1 .. 1024"; } } leaf query-response-interval { description "How long to wait for a host query response"; units "seconds"; type string { } } leaf query-last-member-interval { description "When to send group query messages"; units "seconds"; type string { } } leaf robust-count { description "Expected packet loss on a subnet"; type uint32 { range "2 .. 10"; } } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } list interface { key name; ordered-by user; description "Interface options for MLD"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf multicast-router-interface { description "Enabling multicast-router-interface on the interface"; type empty; } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } leaf host-only-interface { description "Enable interfaces to be treated as host-side interfaces"; type empty; } leaf group-limit { description "Maximum number of groups an interface can join"; type uint16; } container static { description "Static group or source membership"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "IP multicast group address"; leaf name { description "IP multicast group address"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list source { key name; ordered-by user; description "IP multicast source address"; leaf name { description "Source address of IP multicast data"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } } } container traceoptions { description "Trace options for MLD Snooping"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum packets { description "Trace all MLD packets"; } enum query { description "Trace MLD membership query messages"; } enum report { description "Trace membership report messages"; } enum leave { description "Trace leave group messages (MLDv2 only)"; } enum group { description "Trace group operations"; } enum client-notification { description "Trace notifications"; } enum host-notification { description "Trace host notifications"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } leaf query-interval { description "When to send host query messages"; default "125"; units "seconds"; type uint32 { range "1 .. 1024"; } } leaf query-response-interval { description "How long to wait for a host query response"; default "10"; units "seconds"; type string { } } leaf query-last-member-interval { description "When to send group query messages"; default "1"; units "seconds"; type string { } } leaf robust-count { description "Expected packet loss on a subnet"; default "2"; type uint32 { range "2 .. 10"; } } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } container proxy { presence "enable proxy"; description "Enable proxy mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-address { description "Source IP address to use for proxy"; type ipv6addr; mandatory true; } } list interface { key name; ordered-by user; description "Interface options for MLD"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf multicast-router-interface { description "Enabling multicast-router-interface on the interface"; type empty; } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } leaf host-only-interface { description "Enable interfaces to be treated as host-side interfaces"; type empty; } leaf group-limit { description "Maximum number of (source,group) per interface"; type uint16 { range "1 .. 65535"; } } container static { description "Static group or source membership"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "IP multicast group address"; leaf name { description "IP multicast group address"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list source { key name; ordered-by user; description "IP multicast source address"; leaf name { description "Source address of IP multicast data"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } } grouping juniper-ospf-authentication { description "Authentication information"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice authentication-type { case case_1 { leaf simple-password { description "Authentication key"; type unreadable; } } case case_2 { list md5 { key name; ordered-by user; description "MD5 authentication key"; leaf name { description "Key ID for MD5 authentication"; type uint32 { range "0 .. 255"; } } leaf key { description "MD5 authentication key value"; type unreadable; mandatory true; } leaf start-time { description "Start time for key transmission (YYYY-MM-DD.HH:MM)"; type time; } } } } } grouping juniper-protocols-amt { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for AMT"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum packets { description "Trace all AMT packets"; } enum errors { description "Trace all error messages"; } enum tunnels { description "Trace all AMT tunnel messages"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } container relay { description "AMT relay"; uses juniper-protocols-amt-relay; } } grouping juniper-protocols-amt-relay { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container family { presence "enable family"; description "Protocol family"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container inet { presence "enable inet"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf anycast-prefix { description "IPv4 anycast prefix"; type ipv4prefix; } leaf local-address { description "IPv4 local address"; type ipv4addr; } } } leaf secret-key-timeout { description "Time interval for the secret key to expire"; units "minutes"; type uint32 { range "5 .. 1440"; } } leaf tunnel-limit { description "Number of AMT tunnels"; type uint32; } leaf unicast-stream-limit { description "Maximum number of AMT unicast streams(s,g,intf)"; type uint32; } leaf accounting { description "Enable AMT accounting"; type empty; } leaf-list tunnel-devices { description "Tunnel devices to be used for creating ud interfaces"; type interface-device; } } grouping juniper-protocols-ancp { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for ANCP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum config { description "Trace config events"; } enum cos { description "Trace CoS events"; } enum routing-socket { description "Trace routing-socket events"; } enum packet { description "Trace ANCP packet Transmit/Receive"; } enum protocol { description "Trace protocol events"; } enum process { description "Trace process internals"; } enum startup { description "Trace ANCP startup events/flow"; } enum session { description "Trace connection events/sessions"; } enum general { description "Trace general flow"; } enum restart { description "Trace process restart flow"; } enum subscriber { description "Trace subscriber events"; } enum timer { description "Trace timer processing"; } enum all { description "Trace everything"; } } } leaf disable { description "Disable this trace flag"; type empty; } } } container qos-adjust { presence "enable qos-adjust"; description "Enable QoS adjust for interfaces and interface-sets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf sdsl-bytes { description "Set SDSL byte adjust value"; default "0"; units "bytes"; type int32 { range "-100 .. 100"; } } leaf sdsl-overhead-adjust { description "Set SDSL overhead adjusted"; default "100"; units "percent"; type uint32 { range "80 .. 100"; } } leaf vdsl-bytes { description "Set VDSL byte adjust value"; default "0"; units "bytes"; type int32 { range "-100 .. 100"; } } leaf vdsl-overhead-adjust { description "Set VDSL overhead adjusted"; default "100"; units "percent"; type uint32 { range "80 .. 100"; } } leaf vdsl2-bytes { description "Set VDSL2 byte adjust value"; default "0"; units "bytes"; type int32 { range "-100 .. 100"; } } leaf vdsl2-overhead-adjust { description "Set VDSL2 overhead adjusted"; default "100"; units "percent"; type uint32 { range "80 .. 100"; } } } leaf pre-ietf-mode { description "Enable backward compatibility mode"; type empty; } leaf maximum-discovery-table-entries { description "Maximum number of discovery table entries per neighbor"; type uint32 { range "1 .. 100000"; } } leaf adjacency-timer { description "Set adjacency timer in seconds"; type uint32 { range "1 .. 25"; } } leaf maximum-helper-restart-time { description "Set maximum helper restart timer"; units "seconds"; type uint32 { range "45 .. 600"; } } leaf qos-adjust-adsl { description "Set ADSL QoS adjustment factor"; default "100"; units "percent"; type uint32 { range "0 .. 100"; } } leaf qos-adjust-adsl2 { description "Set ADSL2 QoS adjustment factor"; default "100"; units "percent"; type uint32 { range "0 .. 100"; } } leaf qos-adjust-adsl2-plus { description "Set ADSL2+ QoS adjustment factor"; default "100"; units "percent"; type uint32 { range "0 .. 100"; } } leaf qos-adjust-vdsl { description "Set VDSL QoS adjustment factor"; default "100"; units "percent"; type uint32 { range "0 .. 100"; } } leaf qos-adjust-vdsl2 { description "Set VDSL2 QoS adjustment factor"; default "100"; units "percent"; type uint32 { range "0 .. 100"; } } leaf qos-adjust-sdsl { description "Set SDSL QoS adjustment factor"; default "100"; units "percent"; type uint32 { range "0 .. 100"; } } leaf gsmp-syn-wait { description "Enable partition ID learning"; type empty; } leaf gsmp-syn-timeout { description "Set partition ID learning timeout"; default "30"; units "seconds"; type uint32 { range "1 .. 60"; } } container interfaces { description "ANCP interface config options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list interface-set { key name; description "ANCP interface-set specific options"; leaf name { description "Name of the interface set"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf access-identifier { description "Subscriber specific access identifier information"; type string { } mandatory true; } } list interface { key name; description "(null)"; uses ancp_interfaces_type; } } list neighbor { key name; description "ANCP neighbor config options"; leaf name { description "IP address of neighbor"; type ipaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice ietf-mode-option { case case_1 { leaf pre-ietf-mode { description "Enable backward compatibility mode"; type empty; } } case case_2 { leaf ietf-mode { description "Enable IETF mode"; type empty; } } } leaf adjacency-timer { description "Set adjacency timer in seconds"; type uint32 { range "1 .. 25"; } } leaf maximum-discovery-table-entries { description "Maximum number of discovery table entries"; type uint32 { range "1 .. 100000"; } } } } grouping ancp_interfaces_type { description "Physical interface"; leaf name { description "(null)"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf access-identifier { description "Subscriber specific access identifier information"; type string { } mandatory true; } } grouping juniper-protocols-bd { description "Bridging configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container mac-table-size { description "Size of MAC address forwarding table"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf limit { description "Maximum number of MAC addresses"; type uint32 { range "16 .. 1048575"; } } leaf packet-action { description "Action when MAC limit is reached"; type enumeration { enum drop { description "Drop packets and do not learn. Default is forward"; } } } } container interface-mac-limit { description "Maximum MAC address learned per interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf limit { description "Maximum number of MAC addresses per interface"; type uint32 { range "1 .. 131071"; } } leaf packet-action { description "Action when MAC limit is reached"; type enumeration { enum none { description "Forward the packet"; } enum drop { description "Drop packets and do not learn. Default is forward"; } enum log { description "Do not drop the packet but generate an alarm, an SNMP trap or a system log entry"; } enum shutdown { description "Disable the interface and generate an alarm, an SNMP trap or a system log entry"; } enum drop-and-log { description "Drop the packet and generate an alarm, an SNMP trap or a system log entry"; } } } } leaf mac-table-aging-time { description "Delay for discarding MAC address if no updates are received"; units "seconds"; type uint32 { range "10 .. 1000000"; } } leaf no-mac-learning { description "Disable dynamic MAC address learning"; type empty; } leaf mac-statistics { description "Enable MAC address statistics"; type empty; } list interface { key name; ordered-by user; description "Interface that connect this site to the VPN"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container interface-mac-limit { description "Maximum number of MAC addresses learned on the interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf limit { description "Maximum number of MAC addresses per interface"; type uint32 { range "1 .. 131071"; } } leaf packet-action { description "Action when MAC limit is reached"; type enumeration { enum none { description "Forward the packet"; } enum drop { description "Drop packets and do not learn. Default is forward"; } enum log { description "Do not drop the packet but generate an alarm, an SNMP trap or a system log entry"; } enum shutdown { description "Disable the interface and generate an alarm, an SNMP trap or a system log entry"; } enum drop-and-log { description "Drop the packet and generate an alarm, an SNMP trap or a system log entry"; } } } } leaf action-priority { description "Blocking priority of this interface on mac move detection"; type uint32 { range "0 .. 7"; } } leaf remote-site-id { description "Site identifier associated with this interface"; type uint32 { range "1 .. 65534"; } } leaf target-attachment-identifier { description "FEC 129 VPWS target attachment identifier"; type string { } } leaf flow-label-transmit { description "Advertise capability to push Flow Label in transmit direction to remote PE"; type empty; } leaf flow-label-receive { description "Advertise capability to push Flow Label in receive direction to remote PE"; type empty; } leaf encapsulation-type { description "Encapsulation type for VPN"; type enumeration { enum atm-aal5 { description "ATM AAL/5 encapsulation"; } enum atm-cell { description "ATM port promiscuous mode cell encapsulation"; } enum atm-cell-port-mode { description "ATM port promiscuous mode cell encapsulation"; } enum atm-cell-vp-mode { description "ATM VP promiscuous mode cell encapsulation"; } enum atm-cell-vc-mode { description "ATM non-promiscuous cell encapsulation"; } enum frame-relay { description "Frame Relay encapsulation"; } enum ppp { description "PPP encapsulation"; } enum cisco-hdlc { description "Cisco-compatible HDLC encapsulation"; } enum ethernet-vlan { description "Ethernet VLAN encapsulation"; } enum ethernet { description "Ethernet encapsulation"; } enum interworking { description "Layer 2.5 interworking VPN"; } enum frame-relay-port-mode { description "Frame Relay port mode encapsulation"; } enum satop-t1 { description "SATOP-T1 based Layer 2 VPN"; } enum satop-e1 { description "SATOP-E1 based Layer 2 VPN"; } enum satop-t3 { description "SATOP-T3 based Layer 2 VPN"; } enum satop-e3 { description "SATOP-E3 based Layer 2 VPN"; } enum cesop { description "CESOP based Layer 2 VPN"; } } } leaf ignore-encapsulation-mismatch { description "Allow different encapsulation types on local and remote end"; type empty; } leaf mtu { description "MTU to be advertised to the remote end"; type uint16 { range "512 .. 65535"; } } leaf ignore-mtu-mismatch { description "Allow different MTU values on local and remote end"; type empty; } choice cword { case case_1 { leaf control-word { description "Adds control-word to the Layer 2 encapsulation"; type empty; } } case case_2 { leaf no-control-word { description "Disables control-word to the Layer 2 encapsulation"; type empty; } } } leaf pseudowire-status-tlv { description "Send pseudowire status TLV"; type empty; } container oam { description "OAM Configuration for VPN"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ping-interval { description "Time interval between ping messages"; default "60"; units "seconds"; type uint16 { range "30 .. 3600"; } } container bfd-liveness-detection { description "Bidirectional Forwarding Detection (BFD) options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } } } leaf community { description "Community associated with this interface"; type string; } list static-mac { key name; ordered-by user; description "Static MAC addresses assigned to this interface"; leaf name { description "MAC address"; type mac-addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list vlan-id { key name; ordered-by user; description "VLAN ID of learning VLAN"; leaf name { description "Learning VLAN"; type uint32 { range "0 .. 4094"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } leaf no-mac-learning { description "Disable dynamic MAC address learning"; type empty; } leaf description { description "Text description"; type string; } } } grouping juniper-protocols-bgp { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable BGP"; type empty; } } } leaf precision-timers { description "Use precision timers for scheduling keepalives"; type empty; } leaf no-precision-timers { description "Use precision timers for scheduling keepalives"; type empty; } container path-selection { description "Configure path selection strategy"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf cisco-non-deterministic { description "Use Cisco IOS nondeterministic path selection algorithm"; type empty; } leaf always-compare-med { description "Always compare MED values, regardless of neighbor AS"; type empty; } container med-plus-igp { presence "enable med-plus-igp"; description "Add IGP cost to next-hop to MED before comparing MED values"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf med-multiplier { description "Multiplier for MED"; default "1"; type uint16 { range "1 .. 1000"; } } leaf igp-multiplier { description "Multiplier for IGP cost to next-hop"; default "1"; type uint16 { range "1 .. 1000"; } } } leaf external-router-id { description "Compare router ID on BGP externals"; type empty; } leaf as-path-ignore { description "Ignore AS path comparison during path selection"; type empty; } leaf l2vpn-use-bgp-rules { description "Use standard BGP rules during L2VPN path selection"; type empty; } } leaf advertise-from-main-vpn-tables { description "Advertise VPN routes from bgp.Xvpn.0 tables in master instance"; type empty; } leaf stale-labels-holddown-period { description "Duration (sec) MPLS labels allocated by BGP are kept after they go stale"; type int32 { range "1 .. 600"; } } container egress-te-backup-paths { description "Backup-path for Egress-TE peer interface failure"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list template { key name; description "Backup-path template"; leaf name { description "Name of Egress-TE backup path"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list peer { key name; ordered-by user; description "Egress peer TE backup exit path"; leaf name { description "Address of BGP peer to use as backup next-hop"; type ipaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container remote-nexthop { description "Resolve and use tunnel to this next-hop as backup path"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf remote-nh-addr { description "Address of remote-nexthop to use as backup path"; type ipaddr; mandatory true; } presence "enable remote-nexthop"; } container ip-forward { presence "enable ip-forward"; description "Use IP-forward backup path for Egress TE"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf rti-name { description "Routing-instance to use as IP forward backup-path"; type string { } } } } } container traceoptions { description "Trace options for BGP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum damping { description "Trace BGP damping information"; } enum packets { description "Trace all BGP protocol packets"; } enum open { description "Trace BGP open packets"; } enum update { description "Trace BGP update packets"; } enum keepalive { description "Trace BGP keepalive packets"; } enum refresh { description "Trace BGP refresh packets"; } enum nsr-synchronization { description "Trace NSR synchronization events"; } enum bfd { description "Trace BFD events"; } enum 4byte-as { description "Trace 4 byte AS events"; } enum add-path { description "Trace add-path events"; } enum graceful-restart { description "Trace Graceful Restart events"; } enum egress-te { description "Egress Peering Traffic-Engineering events"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } container filter { description "Filter to apply to this flag"; uses bgp_filter_obj; } } } leaf description { description "Text description"; type string { length "1 .. 255"; } } container metric-out { description "Route metric sent in MED"; choice metric_param { case case_1 { leaf metric-value { description "Metric value"; type uint32 { range "0 .. 4294967295"; } } } case case_2 { container minimum-igp { presence "enable minimum-igp"; description "Track the minimum IGP metric"; leaf metric-offset { description "Metric offset for MED"; type int32; } } } case case_3 { container igp { presence "enable igp"; description "Track the IGP metric"; leaf metric-offset { description "Metric offset for MED"; type int32; } leaf delay-med-update { description "Delay updating MED when IGP metric increases"; type empty; } } } } } container multihop { presence "enable multihop"; description "Configure an EBGP multihop session"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ttl { description "TTL value for the session"; type uint8 { range "1 .. 255"; } } leaf no-nexthop-change { description "Do not change next hop to self in advertisements"; type empty; } } leaf accept-remote-nexthop { description "Allow import policy to specify a non-directly connected next-hop"; type empty; } leaf preference { description "Preference value"; type uint32; } leaf local-preference { description "Value of LOCAL_PREF path attribute"; type uint32; } leaf local-address { description "Address of local end of BGP session"; type ipaddr; } leaf local-interface { description "Local interface for IPv6 link local EBGP peering"; type interface-name; } leaf hold-time { description "Hold time used when negotiating with a peer"; type uint32 { range "0 .. 65535"; } } leaf passive { description "Do not send open messages to a peer"; type empty; } leaf advertise-inactive { description "Advertise inactive routes"; type empty; } leaf advertise-peer-as { description "Advertise routes received from the same autonomous system"; type empty; } leaf no-advertise-peer-as { description "Advertise routes received from the same autonomous system"; type empty; } container advertise-external { presence "enable advertise-external"; description "Advertise best external routes"; leaf conditional { description "Route matches active route upto med-comparison rule"; type empty; } } leaf keep { description "How to retain routes in the routing table"; type enumeration { enum all { description "Retain all routes"; } enum none { description "Retain no routes"; } } } leaf no-aggregator-id { description "Set router ID in aggregator path attribute to 0"; type empty; } leaf mtu-discovery { description "Enable TCP path MTU discovery"; type empty; } leaf out-delay { description "How long before exporting routes from routing table"; type uint32 { range "0 .. 65535"; } } leaf ttl { description "TTL value for the single-hop peer"; type enumeration { enum 1 { description "(null)"; } enum 255 { description "(null)"; } } } leaf log-updown { description "Log a message for peer state transitions"; type empty; } leaf damping { description "Enable route flap damping"; type empty; } leaf-list import { description "Import policy"; type policy-algebra; } container bgp-error-tolerance { presence "enable bgp-error-tolerance"; description "Handle BGP malformed updates softly"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf malformed-update-log-interval { description "Time used when logging malformed update"; default "300"; units "seconds"; type uint32 { range "10 .. 65535"; } } choice malformed-routes-limit-choice { case case_1 { leaf malformed-route-limit { description "Maximum number of malformed routes from a peer"; default "1000"; type uint32 { range "0 .. 4294967295"; } } } case case_2 { leaf no-malformed-route-limit { description "No malformed route limit"; type empty; } } } } container family { description "Protocol family for NLRIs in updates"; container inet { description "IPv4 NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container unicast { description "Include unicast NLRI"; uses bgp-afi-topo; } container multicast { description "Include multicast NLRI"; uses bgp-afi-default; } container flow { description "Include flow NLRI"; uses bgp-afi-flow; } container any { description "Include unicast or multicast NLRI"; uses bgp-afi-default; } container labeled-unicast { description "Include labeled unicast NLRI"; uses bgp-afi-labeled; } } container inet-vpn { description "IPv4 Layer 3 VPN NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container unicast { description "Include unicast NLRI"; uses bgp-afi-vpn-protection; } container multicast { description "Include multicast NLRI"; uses bgp-afi-vpn; } container flow { description "Include flow VPN NLRI"; uses bgp-afi-default; } container any { description "Include unicast or multicast NLRI"; uses bgp-afi-vpn; } } container inet6 { description "IPv6 NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container unicast { description "Include unicast NLRI"; uses bgp-afi-topo; } container multicast { description "Include multicast NLRI"; uses bgp-afi-default; } container any { description "Include unicast or multicast NLRI"; uses bgp-afi-default; } container labeled-unicast { description "Include labeled unicast NLRI"; uses bgp-afi-inet6-labeled; } } container inet6-vpn { description "IPv6 Layer 3 VPN NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container unicast { description "Include unicast NLRI"; uses bgp-afi-vpn-protection; } container multicast { description "Include multicast NLRI"; uses bgp-afi-vpn; } container any { description "Include unicast or multicast NLRI"; uses bgp-afi-vpn; } } container iso-vpn { description "ISO Layer 3 VPN NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container unicast { description "Include unicast NLRI"; uses bgp-afi-vpn-protection; } } container l2vpn { description "MPLS-based Layer 2 VPN and VPLS NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container auto-discovery-only { description "Include auto-discovery NLRI for LDP Layer 2 VPN and VPLS"; uses bgp-afi-default; } container auto-discovery-mspw { description "Include auto-discovery NLRI for LDP Signalled MultiSegment PW"; uses bgp-afi-default; } container signaling { description "Include Layer 2 VPN and VPLS signaling NLRI"; uses bgp-afi-l2vpn; } } container evpn { description "EVPN NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container signaling { description "Include EVPN signaling NLRI"; uses bgp-afi-default; } } container inet-mvpn { description "IPv4 MVPN NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container signaling { description "Include IPv4 multicast VPN signaling NLRI"; uses bgp-afi-default; } } container inet6-mvpn { description "IPv6 MVPN NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container signaling { description "Include IPv6 multicast VPN signaling NLRI"; uses bgp-afi-default; } } container inet-mdt { description "IPv4 Multicast Distribution Tree (MDT) NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container signaling { description "Include IPv4 multicast VPN auto-discovery NLRI"; uses bgp-afi-default; } } container traffic-engineering { description "Traffic Engineering (BGP-TE) NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container unicast { description "Include BGP-TE NLRI"; uses bgp-afi-default; } } container route-target { presence "enable route-target"; description "Route target NLRI used for VPN route filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container prefix-limit { description "Limit maximum number of prefixes from a peer"; uses bgpaf-prefix-limit; } container accepted-prefix-limit { description "Limit maximum number of prefixes accepted from a peer"; uses bgpaf-accepted-prefix-limit; } container proxy-generate { presence "enable proxy-generate"; description "Generate route target NLRI for peers that don't support it"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list route-target-policy { description "Limit VPN routes that are used to generate proxy route-target filters"; type policy-algebra; } } leaf external-paths { description "Number of external paths accepted for route filtering"; type uint32 { range "1 .. 256"; } } leaf advertise-default { description "Advertise default and suppress more specific routes"; type empty; } leaf damping { description "Enable route flap damping"; type empty; } } container bridge-vpn { description "Bridge VPN NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container unicast { description "Include unicast NLRI"; uses bgp-afi-vpn; } } container fabric-vpn { description "Fabric VPN NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container unicast { description "Include unicast NLRI"; uses bgp-afi-vpn; } } } leaf authentication-key { description "MD5 authentication key"; type string { length "1 .. 126"; } } leaf authentication-algorithm { description "Authentication algorithm name"; default "hmac-sha-1-96"; type enumeration { enum md5 { description "Message Digest 5"; } enum hmac-sha-1-96 { description "Hash-based Message Authentication Code (SHA1) (96 bits)"; } enum aes-128-cmac-96 { description "Cipher-based Message Authentication Code (AES128) (96 bits)"; } } } leaf authentication-key-chain { description "Key chain name"; type string { length "1 .. 128"; } } leaf-list export { description "Export policy"; type policy-algebra; } leaf vpn-apply-export { description "Apply BGP export policy when exporting VPN routes"; type empty; } container egress-te { presence "enable egress-te"; description "Use Egress Peering traffic engineering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf backup-path { description "The 'egress-te-backup-paths template' to use for this peer"; type string { } } } container remove-private { presence "enable remove-private"; description "Remove well-known private AS numbers"; container all { presence "enable all"; description "Remove all private AS numbers and do not stop at the first public AS number"; container replace { presence "enable replace"; description "Replace private AS numbers with the BGP Group's local AS number"; leaf nearest { description "Use closest public AS number to replace a private AS number"; type empty; } } } } leaf cluster { description "Cluster identifier"; type areaid; } leaf no-client-reflect { description "Disable intracluster route redistribution"; type empty; } leaf peer-as { description " Autonomous system number in plain number or 'higher 16bits'.'Lower 16 bits' (asdot notation) format"; type string { } } container local-as { description "Local autonomous system number"; leaf as-number { description " Autonomous system number in plain number or 'higher 16bits'.'Lower 16 bits' (asdot notation) format"; type string { } mandatory true; } presence "enable local-as"; leaf loops { description "Maximum number of times this AS can be in an AS path"; type int32 { range "1 .. 10"; } } leaf private { description "Hide this local AS in paths learned from this peering"; type empty; } leaf alias { description "Treat this AS as an alias to the system AS"; type empty; } leaf no-prepend-global-as { description "Do not prepend global autonomous-system number in advertised paths"; type empty; } } leaf ipsec-sa { description "IPSec SA name"; type string { length "1 .. 32"; } } leaf unconfigured-peer-graceful-restart { description "BGP unconfigured peer graceful restart options"; type empty; } container graceful-restart { presence "enable graceful-restart"; description "BGP graceful restart options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable graceful restart"; type empty; } } } leaf restart-time { description "Restart time used when negotiating with a peer"; type uint32 { range "1 .. 600"; } } leaf stale-routes-time { description "Maximum time for which stale routes are kept"; type uint32 { range "1 .. 600"; } } } leaf include-mp-next-hop { description "Include NEXT-HOP attribute in multiprotocol updates"; type empty; } container idle-after-switch-over { description "Stop peer session from coming up after nonstop-routing switch-over"; choice idle-interval { case case_1 { leaf forever { description "Idle the peer until the user intervenes"; type empty; } } case case_2 { leaf timeout { description "Timeout value, in seconds, for starting peer after switch over"; type uint32 { range "1 .. 4294967295"; } } } } } container outbound-route-filter { description "Dynamically negotiated cooperative route filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bgp-orf-cisco-mode { description "Using BGP ORF capability code 130 and Prefix ORF type 128"; type empty; } container prefix-based { presence "enable prefix-based"; description "Prefix-based outbound route filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container accept { presence "enable accept"; description "Honor Prefix-based ORFs from remote peers"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf inet { description "Honor IPv4 prefix filters"; type empty; } leaf inet6 { description "Honor IPv6 prefix filters"; type empty; } } } } leaf tcp-mss { description "Maximum TCP segment size"; type uint32 { range "1 .. 4096"; } } leaf tcp-aggressive-transmission { description "Enable aggressive transmission of pure TCP ACKs and retransmissions"; type empty; } container bmp { description "Specific settings to override the routing-options settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf monitor { description "Enable/Disable monitoring"; type enumeration { enum enable { description "Enable monitoring of BGP peer(s)"; } enum disable { description "Disable monitoring of BGP peer(s)"; } } } container route-monitoring { description "Control route monitoring settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf none { description "Do not send route montoring messages"; type empty; } container pre-policy { presence "enable pre-policy"; description "Send pre policy route montoring messages"; leaf exclude-non-feasible { description "Exclude looped routes, etc"; type empty; } } container post-policy { presence "enable post-policy"; description "Send post policy route montoring messages"; leaf exclude-non-eligible { description "Exclude unresolved routes, etc."; type empty; } } } } container advertise-bgp-static { presence "enable advertise-bgp-static"; description "Advertise bgp-static routes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list policy { description "Static route advertisement policy"; type policy-algebra; } } container bfd-liveness-detection { description "Bidirectional Forwarding Detection (BFD) options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } container authentication { description "Authentication options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf key-chain { description "Key chain name"; type string; } leaf algorithm { description "Algorithm name"; type enumeration { enum simple-password { description "Simple password"; } enum keyed-md5 { description "Keyed message Digest 5"; } enum meticulous-keyed-md5 { description "Meticulous keyed message Digest 5"; } enum keyed-sha-1 { description "Keyed secure hash algorithm (SHA1) "; } enum meticulous-keyed-sha-1 { description "Meticulous keyed secure hash algorithm (SHA1) "; } } } leaf loose-check { description "Verify authentication only if authentication is negotiated"; type empty; } } leaf session-mode { description "BFD single-hop or multihop session-mode"; default "automatic"; type enumeration { enum automatic { description "Choose session-mode automatically"; } enum single-hop { description "Use single-hop"; } enum multihop { description "Use multihop"; } } } leaf holddown-interval { description "Time to hold the session-UP notification to the client"; units "milliseconds"; type uint32 { range "0 .. 255000"; } } } list group { key name; ordered-by user; description "Define a peer group"; leaf name { description "Group name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf type { description "Type of peer group"; type enumeration { enum internal { description "IBGP group"; } enum external { description "EBGP group"; } } } container traceoptions { description "Trace options for BGP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum damping { description "Trace BGP damping information"; } enum packets { description "Trace all BGP protocol packets"; } enum open { description "Trace BGP open packets"; } enum update { description "Trace BGP update packets"; } enum keepalive { description "Trace BGP keepalive packets"; } enum refresh { description "Trace BGP refresh packets"; } enum nsr-synchronization { description "Trace NSR synchronization events"; } enum bfd { description "Trace BFD events"; } enum 4byte-as { description "Trace 4 byte AS events"; } enum add-path { description "Trace add-path events"; } enum graceful-restart { description "Trace Graceful Restart events"; } enum egress-te { description "Egress Peering Traffic-Engineering events"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } container filter { description "Filter to apply to this flag"; uses bgp_filter_obj; } } } leaf description { description "Text description"; type string { length "1 .. 255"; } } container metric-out { description "Route metric sent in MED"; choice metric_param { case case_1 { leaf metric-value { description "Metric value"; type uint32 { range "0 .. 4294967295"; } } } case case_2 { container minimum-igp { presence "enable minimum-igp"; description "Track the minimum IGP metric"; leaf metric-offset { description "Metric offset for MED"; type int32; } } } case case_3 { container igp { presence "enable igp"; description "Track the IGP metric"; leaf metric-offset { description "Metric offset for MED"; type int32; } leaf delay-med-update { description "Delay updating MED when IGP metric increases"; type empty; } } } } } container multihop { presence "enable multihop"; description "Configure an EBGP multihop session"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ttl { description "TTL value for the session"; type uint8 { range "1 .. 255"; } } leaf no-nexthop-change { description "Do not change next hop to self in advertisements"; type empty; } } leaf accept-remote-nexthop { description "Allow import policy to specify a non-directly connected next-hop"; type empty; } leaf preference { description "Preference value"; type uint32; } leaf local-preference { description "Value of LOCAL_PREF path attribute"; type uint32; } leaf local-address { description "Address of local end of BGP session"; type ipaddr; } leaf local-interface { description "Local interface for IPv6 link local EBGP peering"; type interface-name; } leaf hold-time { description "Hold time used when negotiating with a peer"; type uint32 { range "0 .. 65535"; } } leaf passive { description "Do not send open messages to a peer"; type empty; } leaf advertise-inactive { description "Advertise inactive routes"; type empty; } leaf advertise-peer-as { description "Advertise routes received from the same autonomous system"; type empty; } leaf no-advertise-peer-as { description "Advertise routes received from the same autonomous system"; type empty; } container advertise-external { presence "enable advertise-external"; description "Advertise best external routes"; leaf conditional { description "Route matches active route upto med-comparison rule"; type empty; } } leaf keep { description "How to retain routes in the routing table"; type enumeration { enum all { description "Retain all routes"; } enum none { description "Retain no routes"; } } } leaf no-aggregator-id { description "Set router ID in aggregator path attribute to 0"; type empty; } leaf mtu-discovery { description "Enable TCP path MTU discovery"; type empty; } leaf out-delay { description "How long before exporting routes from routing table"; type uint32 { range "0 .. 65535"; } } leaf ttl { description "TTL value for the single-hop peer"; type enumeration { enum 1 { description "(null)"; } enum 255 { description "(null)"; } } } leaf log-updown { description "Log a message for peer state transitions"; type empty; } leaf damping { description "Enable route flap damping"; type empty; } leaf-list import { description "Import policy"; type policy-algebra; } container bgp-error-tolerance { presence "enable bgp-error-tolerance"; description "Handle BGP malformed updates softly"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf malformed-update-log-interval { description "Time used when logging malformed update"; default "300"; units "seconds"; type uint32 { range "10 .. 65535"; } } choice malformed-routes-limit-choice { case case_1 { leaf malformed-route-limit { description "Maximum number of malformed routes from a peer"; default "1000"; type uint32 { range "0 .. 4294967295"; } } } case case_2 { leaf no-malformed-route-limit { description "No malformed route limit"; type empty; } } } } container family { description "Protocol family for NLRIs in updates"; container inet { description "IPv4 NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container unicast { description "Include unicast NLRI"; uses bgp-afi-topo; } container multicast { description "Include multicast NLRI"; uses bgp-afi-default; } container flow { description "Include flow NLRI"; uses bgp-afi-flow; } container any { description "Include unicast or multicast NLRI"; uses bgp-afi-default; } container labeled-unicast { description "Include labeled unicast NLRI"; uses bgp-afi-labeled; } } container inet-vpn { description "IPv4 Layer 3 VPN NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container unicast { description "Include unicast NLRI"; uses bgp-afi-vpn-protection; } container multicast { description "Include multicast NLRI"; uses bgp-afi-vpn; } container flow { description "Include flow VPN NLRI"; uses bgp-afi-default; } container any { description "Include unicast or multicast NLRI"; uses bgp-afi-vpn; } } container inet6 { description "IPv6 NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container unicast { description "Include unicast NLRI"; uses bgp-afi-topo; } container multicast { description "Include multicast NLRI"; uses bgp-afi-default; } container any { description "Include unicast or multicast NLRI"; uses bgp-afi-default; } container labeled-unicast { description "Include labeled unicast NLRI"; uses bgp-afi-inet6-labeled; } } container inet6-vpn { description "IPv6 Layer 3 VPN NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container unicast { description "Include unicast NLRI"; uses bgp-afi-vpn-protection; } container multicast { description "Include multicast NLRI"; uses bgp-afi-vpn; } container any { description "Include unicast or multicast NLRI"; uses bgp-afi-vpn; } } container iso-vpn { description "ISO Layer 3 VPN NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container unicast { description "Include unicast NLRI"; uses bgp-afi-vpn-protection; } } container l2vpn { description "MPLS-based Layer 2 VPN and VPLS NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container auto-discovery-only { description "Include auto-discovery NLRI for LDP Layer 2 VPN and VPLS"; uses bgp-afi-default; } container auto-discovery-mspw { description "Include auto-discovery NLRI for LDP Signalled MultiSegment PW"; uses bgp-afi-default; } container signaling { description "Include Layer 2 VPN and VPLS signaling NLRI"; uses bgp-afi-l2vpn; } } container evpn { description "EVPN NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container signaling { description "Include EVPN signaling NLRI"; uses bgp-afi-default; } } container inet-mvpn { description "IPv4 MVPN NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container signaling { description "Include IPv4 multicast VPN signaling NLRI"; uses bgp-afi-default; } } container inet6-mvpn { description "IPv6 MVPN NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container signaling { description "Include IPv6 multicast VPN signaling NLRI"; uses bgp-afi-default; } } container inet-mdt { description "IPv4 Multicast Distribution Tree (MDT) NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container signaling { description "Include IPv4 multicast VPN auto-discovery NLRI"; uses bgp-afi-default; } } container traffic-engineering { description "Traffic Engineering (BGP-TE) NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container unicast { description "Include BGP-TE NLRI"; uses bgp-afi-default; } } container route-target { presence "enable route-target"; description "Route target NLRI used for VPN route filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container prefix-limit { description "Limit maximum number of prefixes from a peer"; uses bgpaf-prefix-limit; } container accepted-prefix-limit { description "Limit maximum number of prefixes accepted from a peer"; uses bgpaf-accepted-prefix-limit; } container proxy-generate { presence "enable proxy-generate"; description "Generate route target NLRI for peers that don't support it"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list route-target-policy { description "Limit VPN routes that are used to generate proxy route-target filters"; type policy-algebra; } } leaf external-paths { description "Number of external paths accepted for route filtering"; type uint32 { range "1 .. 256"; } } leaf advertise-default { description "Advertise default and suppress more specific routes"; type empty; } leaf damping { description "Enable route flap damping"; type empty; } } container bridge-vpn { description "Bridge VPN NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container unicast { description "Include unicast NLRI"; uses bgp-afi-vpn; } } container fabric-vpn { description "Fabric VPN NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container unicast { description "Include unicast NLRI"; uses bgp-afi-vpn; } } } leaf authentication-key { description "MD5 authentication key"; type string { length "1 .. 126"; } } leaf authentication-algorithm { description "Authentication algorithm name"; type enumeration { enum md5 { description "Message Digest 5"; } enum hmac-sha-1-96 { description "Hash-based Message Authentication Code (SHA1) (96 bits)"; } enum aes-128-cmac-96 { description "Cipher-based Message Authentication Code (AES128) (96 bits)"; } } } leaf authentication-key-chain { description "Key chain name"; type string { length "1 .. 128"; } } leaf-list export { description "Export policy"; type policy-algebra; } leaf vpn-apply-export { description "Apply BGP export policy when exporting VPN routes"; type empty; } container egress-te { presence "enable egress-te"; description "Use Egress Peering traffic engineering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf backup-path { description "The 'egress-te-backup-paths template' to use for this peer"; type string { } } } container remove-private { presence "enable remove-private"; description "Remove well-known private AS numbers"; container all { presence "enable all"; description "Remove all private AS numbers and do not stop at the first public AS number"; container replace { presence "enable replace"; description "Replace private AS numbers with the BGP Group's local AS number"; leaf nearest { description "Use closest public AS number to replace a private AS number"; type empty; } } } } leaf cluster { description "Cluster identifier"; type areaid; } leaf no-client-reflect { description "Disable intracluster route redistribution"; type empty; } leaf peer-as { description " Autonomous system number in plain number or 'higher 16bits'.'Lower 16 bits' (asdot notation) format"; type string { } } container local-as { description "Local autonomous system number"; leaf as-number { description " Autonomous system number in plain number or 'higher 16bits'.'Lower 16 bits' (asdot notation) format"; type string { } mandatory true; } presence "enable local-as"; leaf loops { description "Maximum number of times this AS can be in an AS path"; type int32 { range "1 .. 10"; } } leaf private { description "Hide this local AS in paths learned from this peering"; type empty; } leaf alias { description "Treat this AS as an alias to the system AS"; type empty; } leaf no-prepend-global-as { description "Do not prepend global autonomous-system number in advertised paths"; type empty; } } leaf ipsec-sa { description "IPSec SA name"; type string { length "1 .. 32"; } } leaf unconfigured-peer-graceful-restart { description "BGP unconfigured peer graceful restart options"; type empty; } container graceful-restart { presence "enable graceful-restart"; description "BGP graceful restart options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable graceful restart"; type empty; } } } leaf restart-time { description "Restart time used when negotiating with a peer"; type uint32 { range "1 .. 600"; } } leaf stale-routes-time { description "Maximum time for which stale routes are kept"; type uint32 { range "1 .. 600"; } } } leaf include-mp-next-hop { description "Include NEXT-HOP attribute in multiprotocol updates"; type empty; } container idle-after-switch-over { description "Stop peer session from coming up after nonstop-routing switch-over"; choice idle-interval { case case_1 { leaf forever { description "Idle the peer until the user intervenes"; type empty; } } case case_2 { leaf timeout { description "Timeout value, in seconds, for starting peer after switch over"; type uint32 { range "1 .. 4294967295"; } } } } } container outbound-route-filter { description "Dynamically negotiated cooperative route filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bgp-orf-cisco-mode { description "Using BGP ORF capability code 130 and Prefix ORF type 128"; type empty; } container prefix-based { presence "enable prefix-based"; description "Prefix-based outbound route filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container accept { presence "enable accept"; description "Honor Prefix-based ORFs from remote peers"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf inet { description "Honor IPv4 prefix filters"; type empty; } leaf inet6 { description "Honor IPv6 prefix filters"; type empty; } } } } leaf tcp-mss { description "Maximum TCP segment size"; type uint32 { range "1 .. 4096"; } } leaf tcp-aggressive-transmission { description "Enable aggressive transmission of pure TCP ACKs and retransmissions"; type empty; } container bmp { description "Specific settings to override the routing-options settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf monitor { description "Enable/Disable monitoring"; type enumeration { enum enable { description "Enable monitoring of BGP peer(s)"; } enum disable { description "Disable monitoring of BGP peer(s)"; } } } container route-monitoring { description "Control route monitoring settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf none { description "Do not send route montoring messages"; type empty; } container pre-policy { presence "enable pre-policy"; description "Send pre policy route montoring messages"; leaf exclude-non-feasible { description "Exclude looped routes, etc"; type empty; } } container post-policy { presence "enable post-policy"; description "Send post policy route montoring messages"; leaf exclude-non-eligible { description "Exclude unresolved routes, etc."; type empty; } } } } container advertise-bgp-static { presence "enable advertise-bgp-static"; description "Advertise bgp-static routes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list policy { description "Static route advertisement policy"; type policy-algebra; } } container bfd-liveness-detection { description "Bidirectional Forwarding Detection (BFD) options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } container authentication { description "Authentication options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf key-chain { description "Key chain name"; type string; } leaf algorithm { description "Algorithm name"; type enumeration { enum simple-password { description "Simple password"; } enum keyed-md5 { description "Keyed message Digest 5"; } enum meticulous-keyed-md5 { description "Meticulous keyed message Digest 5"; } enum keyed-sha-1 { description "Keyed secure hash algorithm (SHA1) "; } enum meticulous-keyed-sha-1 { description "Meticulous keyed secure hash algorithm (SHA1) "; } } } leaf loose-check { description "Verify authentication only if authentication is negotiated"; type empty; } } leaf session-mode { description "BFD single-hop or multihop session-mode"; default "automatic"; type enumeration { enum automatic { description "Choose session-mode automatically"; } enum single-hop { description "Use single-hop"; } enum multihop { description "Use multihop"; } } } leaf holddown-interval { description "Time to hold the session-UP notification to the client"; units "milliseconds"; type uint32 { range "0 .. 255000"; } } } container multipath { presence "enable multipath"; description "Allow load sharing among multiple BGP paths"; leaf multiple-as { description "Use paths received from different ASs"; type empty; } } leaf as-override { description "Replace neighbor AS number with our AS number"; type empty; } leaf-list allow { description "Configure peer connections for specific networks"; type ipprefix; } leaf mvpn-iana-rt-import { description "Use IANA assigned rt-import type value for MVPN"; type empty; } list neighbor { key name; ordered-by user; description "Configure a neighbor"; leaf name { description "(null)"; type ipaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for BGP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum damping { description "Trace BGP damping information"; } enum packets { description "Trace all BGP protocol packets"; } enum open { description "Trace BGP open packets"; } enum update { description "Trace BGP update packets"; } enum keepalive { description "Trace BGP keepalive packets"; } enum refresh { description "Trace BGP refresh packets"; } enum nsr-synchronization { description "Trace NSR synchronization events"; } enum bfd { description "Trace BFD events"; } enum 4byte-as { description "Trace 4 byte AS events"; } enum add-path { description "Trace add-path events"; } enum graceful-restart { description "Trace Graceful Restart events"; } enum egress-te { description "Egress Peering Traffic-Engineering events"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } container filter { description "Filter to apply to this flag"; uses bgp_filter_obj; } } } leaf description { description "Text description"; type string { length "1 .. 255"; } } container metric-out { description "Route metric sent in MED"; choice metric_param { case case_1 { leaf metric-value { description "Metric value"; type uint32 { range "0 .. 4294967295"; } } } case case_2 { container minimum-igp { presence "enable minimum-igp"; description "Track the minimum IGP metric"; leaf metric-offset { description "Metric offset for MED"; type int32; } } } case case_3 { container igp { presence "enable igp"; description "Track the IGP metric"; leaf metric-offset { description "Metric offset for MED"; type int32; } leaf delay-med-update { description "Delay updating MED when IGP metric increases"; type empty; } } } } } container multihop { presence "enable multihop"; description "Configure an EBGP multihop session"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ttl { description "TTL value for the session"; type uint8 { range "1 .. 255"; } } leaf no-nexthop-change { description "Do not change next hop to self in advertisements"; type empty; } } leaf accept-remote-nexthop { description "Allow import policy to specify a non-directly connected next-hop"; type empty; } leaf preference { description "Preference value"; type uint32; } leaf local-preference { description "Value of LOCAL_PREF path attribute"; type uint32; } leaf local-address { description "Address of local end of BGP session"; type ipaddr; } leaf local-interface { description "Local interface for IPv6 link local EBGP peering"; type interface-name; } leaf hold-time { description "Hold time used when negotiating with a peer"; type uint32 { range "0 .. 65535"; } } leaf passive { description "Do not send open messages to a peer"; type empty; } leaf advertise-inactive { description "Advertise inactive routes"; type empty; } leaf advertise-peer-as { description "Advertise routes received from the same autonomous system"; type empty; } leaf no-advertise-peer-as { description "Advertise routes received from the same autonomous system"; type empty; } container advertise-external { presence "enable advertise-external"; description "Advertise best external routes"; leaf conditional { description "Route matches active route upto med-comparison rule"; type empty; } } leaf keep { description "How to retain routes in the routing table"; type enumeration { enum all { description "Retain all routes"; } enum none { description "Retain no routes"; } } } leaf no-aggregator-id { description "Set router ID in aggregator path attribute to 0"; type empty; } leaf mtu-discovery { description "Enable TCP path MTU discovery"; type empty; } leaf out-delay { description "How long before exporting routes from routing table"; type uint32 { range "0 .. 65535"; } } leaf ttl { description "TTL value for the single-hop peer"; type enumeration { enum 1 { description "(null)"; } enum 255 { description "(null)"; } } } leaf log-updown { description "Log a message for peer state transitions"; type empty; } leaf damping { description "Enable route flap damping"; type empty; } leaf-list import { description "Import policy"; type policy-algebra; } container bgp-error-tolerance { presence "enable bgp-error-tolerance"; description "Handle BGP malformed updates softly"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf malformed-update-log-interval { description "Time used when logging malformed update"; default "300"; units "seconds"; type uint32 { range "10 .. 65535"; } } choice malformed-routes-limit-choice { case case_1 { leaf malformed-route-limit { description "Maximum number of malformed routes from a peer"; default "1000"; type uint32 { range "0 .. 4294967295"; } } } case case_2 { leaf no-malformed-route-limit { description "No malformed route limit"; type empty; } } } } container family { description "Protocol family for NLRIs in updates"; container inet { description "IPv4 NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container unicast { description "Include unicast NLRI"; uses bgp-afi-topo; } container multicast { description "Include multicast NLRI"; uses bgp-afi-default; } container flow { description "Include flow NLRI"; uses bgp-afi-flow; } container any { description "Include unicast or multicast NLRI"; uses bgp-afi-default; } container labeled-unicast { description "Include labeled unicast NLRI"; uses bgp-afi-labeled; } } container inet-vpn { description "IPv4 Layer 3 VPN NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container unicast { description "Include unicast NLRI"; uses bgp-afi-vpn-protection; } container multicast { description "Include multicast NLRI"; uses bgp-afi-vpn; } container flow { description "Include flow VPN NLRI"; uses bgp-afi-default; } container any { description "Include unicast or multicast NLRI"; uses bgp-afi-vpn; } } container inet6 { description "IPv6 NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container unicast { description "Include unicast NLRI"; uses bgp-afi-topo; } container multicast { description "Include multicast NLRI"; uses bgp-afi-default; } container any { description "Include unicast or multicast NLRI"; uses bgp-afi-default; } container labeled-unicast { description "Include labeled unicast NLRI"; uses bgp-afi-inet6-labeled; } } container inet6-vpn { description "IPv6 Layer 3 VPN NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container unicast { description "Include unicast NLRI"; uses bgp-afi-vpn-protection; } container multicast { description "Include multicast NLRI"; uses bgp-afi-vpn; } container any { description "Include unicast or multicast NLRI"; uses bgp-afi-vpn; } } container iso-vpn { description "ISO Layer 3 VPN NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container unicast { description "Include unicast NLRI"; uses bgp-afi-vpn-protection; } } container l2vpn { description "MPLS-based Layer 2 VPN and VPLS NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container auto-discovery-only { description "Include auto-discovery NLRI for LDP Layer 2 VPN and VPLS"; uses bgp-afi-default; } container auto-discovery-mspw { description "Include auto-discovery NLRI for LDP Signalled MultiSegment PW"; uses bgp-afi-default; } container signaling { description "Include Layer 2 VPN and VPLS signaling NLRI"; uses bgp-afi-l2vpn; } } container evpn { description "EVPN NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container signaling { description "Include EVPN signaling NLRI"; uses bgp-afi-default; } } container inet-mvpn { description "IPv4 MVPN NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container signaling { description "Include IPv4 multicast VPN signaling NLRI"; uses bgp-afi-default; } } container inet6-mvpn { description "IPv6 MVPN NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container signaling { description "Include IPv6 multicast VPN signaling NLRI"; uses bgp-afi-default; } } container inet-mdt { description "IPv4 Multicast Distribution Tree (MDT) NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container signaling { description "Include IPv4 multicast VPN auto-discovery NLRI"; uses bgp-afi-default; } } container traffic-engineering { description "Traffic Engineering (BGP-TE) NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container unicast { description "Include BGP-TE NLRI"; uses bgp-afi-default; } } container route-target { presence "enable route-target"; description "Route target NLRI used for VPN route filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container prefix-limit { description "Limit maximum number of prefixes from a peer"; uses bgpaf-prefix-limit; } container accepted-prefix-limit { description "Limit maximum number of prefixes accepted from a peer"; uses bgpaf-accepted-prefix-limit; } container proxy-generate { presence "enable proxy-generate"; description "Generate route target NLRI for peers that don't support it"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list route-target-policy { description "Limit VPN routes that are used to generate proxy route-target filters"; type policy-algebra; } } leaf external-paths { description "Number of external paths accepted for route filtering"; type uint32 { range "1 .. 256"; } } leaf advertise-default { description "Advertise default and suppress more specific routes"; type empty; } leaf damping { description "Enable route flap damping"; type empty; } } container bridge-vpn { description "Bridge VPN NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container unicast { description "Include unicast NLRI"; uses bgp-afi-vpn; } } container fabric-vpn { description "Fabric VPN NLRI parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container unicast { description "Include unicast NLRI"; uses bgp-afi-vpn; } } } leaf authentication-key { description "MD5 authentication key"; type string { length "1 .. 126"; } } leaf authentication-algorithm { description "Authentication algorithm name"; type enumeration { enum md5 { description "Message Digest 5"; } enum hmac-sha-1-96 { description "Hash-based Message Authentication Code (SHA1) (96 bits)"; } enum aes-128-cmac-96 { description "Cipher-based Message Authentication Code (AES128) (96 bits)"; } } } leaf authentication-key-chain { description "Key chain name"; type string { length "1 .. 128"; } } leaf-list export { description "Export policy"; type policy-algebra; } leaf vpn-apply-export { description "Apply BGP export policy when exporting VPN routes"; type empty; } container egress-te { presence "enable egress-te"; description "Use Egress Peering traffic engineering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf backup-path { description "The 'egress-te-backup-paths template' to use for this peer"; type string { } } } container remove-private { presence "enable remove-private"; description "Remove well-known private AS numbers"; container all { presence "enable all"; description "Remove all private AS numbers and do not stop at the first public AS number"; container replace { presence "enable replace"; description "Replace private AS numbers with the BGP Group's local AS number"; leaf nearest { description "Use closest public AS number to replace a private AS number"; type empty; } } } } leaf cluster { description "Cluster identifier"; type areaid; } leaf no-client-reflect { description "Disable intracluster route redistribution"; type empty; } leaf peer-as { description " Autonomous system number in plain number or 'higher 16bits'.'Lower 16 bits' (asdot notation) format"; type string { } } container local-as { description "Local autonomous system number"; leaf as-number { description " Autonomous system number in plain number or 'higher 16bits'.'Lower 16 bits' (asdot notation) format"; type string { } mandatory true; } presence "enable local-as"; leaf loops { description "Maximum number of times this AS can be in an AS path"; type int32 { range "1 .. 10"; } } leaf private { description "Hide this local AS in paths learned from this peering"; type empty; } leaf alias { description "Treat this AS as an alias to the system AS"; type empty; } leaf no-prepend-global-as { description "Do not prepend global autonomous-system number in advertised paths"; type empty; } } leaf ipsec-sa { description "IPSec SA name"; type string { length "1 .. 32"; } } leaf unconfigured-peer-graceful-restart { description "BGP unconfigured peer graceful restart options"; type empty; } container graceful-restart { presence "enable graceful-restart"; description "BGP graceful restart options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable graceful restart"; type empty; } } } leaf restart-time { description "Restart time used when negotiating with a peer"; type uint32 { range "1 .. 600"; } } leaf stale-routes-time { description "Maximum time for which stale routes are kept"; type uint32 { range "1 .. 600"; } } } leaf include-mp-next-hop { description "Include NEXT-HOP attribute in multiprotocol updates"; type empty; } container idle-after-switch-over { description "Stop peer session from coming up after nonstop-routing switch-over"; choice idle-interval { case case_1 { leaf forever { description "Idle the peer until the user intervenes"; type empty; } } case case_2 { leaf timeout { description "Timeout value, in seconds, for starting peer after switch over"; type uint32 { range "1 .. 4294967295"; } } } } } container outbound-route-filter { description "Dynamically negotiated cooperative route filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bgp-orf-cisco-mode { description "Using BGP ORF capability code 130 and Prefix ORF type 128"; type empty; } container prefix-based { presence "enable prefix-based"; description "Prefix-based outbound route filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container accept { presence "enable accept"; description "Honor Prefix-based ORFs from remote peers"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf inet { description "Honor IPv4 prefix filters"; type empty; } leaf inet6 { description "Honor IPv6 prefix filters"; type empty; } } } } leaf tcp-mss { description "Maximum TCP segment size"; type uint32 { range "1 .. 4096"; } } leaf tcp-aggressive-transmission { description "Enable aggressive transmission of pure TCP ACKs and retransmissions"; type empty; } container bmp { description "Specific settings to override the routing-options settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf monitor { description "Enable/Disable monitoring"; type enumeration { enum enable { description "Enable monitoring of BGP peer(s)"; } enum disable { description "Disable monitoring of BGP peer(s)"; } } } container route-monitoring { description "Control route monitoring settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf none { description "Do not send route montoring messages"; type empty; } container pre-policy { presence "enable pre-policy"; description "Send pre policy route montoring messages"; leaf exclude-non-feasible { description "Exclude looped routes, etc"; type empty; } } container post-policy { presence "enable post-policy"; description "Send post policy route montoring messages"; leaf exclude-non-eligible { description "Exclude unresolved routes, etc."; type empty; } } } } container advertise-bgp-static { presence "enable advertise-bgp-static"; description "Advertise bgp-static routes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list policy { description "Static route advertisement policy"; type policy-algebra; } } container bfd-liveness-detection { description "Bidirectional Forwarding Detection (BFD) options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } container authentication { description "Authentication options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf key-chain { description "Key chain name"; type string; } leaf algorithm { description "Algorithm name"; type enumeration { enum simple-password { description "Simple password"; } enum keyed-md5 { description "Keyed message Digest 5"; } enum meticulous-keyed-md5 { description "Meticulous keyed message Digest 5"; } enum keyed-sha-1 { description "Keyed secure hash algorithm (SHA1) "; } enum meticulous-keyed-sha-1 { description "Meticulous keyed secure hash algorithm (SHA1) "; } } } leaf loose-check { description "Verify authentication only if authentication is negotiated"; type empty; } } leaf session-mode { description "BFD single-hop or multihop session-mode"; default "automatic"; type enumeration { enum automatic { description "Choose session-mode automatically"; } enum single-hop { description "Use single-hop"; } enum multihop { description "Use multihop"; } } } leaf holddown-interval { description "Time to hold the session-UP notification to the client"; units "milliseconds"; type uint32 { range "0 .. 255000"; } } } container multipath { presence "enable multipath"; description "Allow load sharing among multiple BGP paths"; leaf multiple-as { description "Use paths received from different ASs"; type empty; } } leaf as-override { description "Replace neighbor AS number with our AS number"; type empty; } } } } grouping bgp-afi-default { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container prefix-limit { description "Limit maximum number of prefixes from a peer"; uses bgpaf-prefix-limit; } container accepted-prefix-limit { description "Limit maximum number of prefixes accepted from a peer"; uses bgpaf-accepted-prefix-limit; } container rib-group { description "Routing table group"; uses rib_group_inet_type; } container add-path { description "Advertise multiple paths to peer"; uses apath-options; } container aigp { description "Allow sending and receiving of AIGP attribute"; uses bgpaf-aigp-options; } leaf damping { description "Enable route flap damping"; type empty; } container loops { description "Allow local AS in received AS paths"; uses bgpaf-loops; } } grouping apath-options { description "Number of paths to advertise"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf receive { description "Receive multiple paths from peer"; type empty; } container send { presence "enable send"; description "Send multiple paths to peer"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list prefix-policy { description "Perform add-path only for prefixes that match policy"; type policy-algebra; } leaf path-count { description "Number of paths to advertise"; type int32 { range "2 .. 6"; } mandatory true; } } } grouping bgp-afi-flow { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container prefix-limit { description "Limit maximum number of prefixes from a peer"; uses bgpaf-prefix-limit; } container accepted-prefix-limit { description "Limit maximum number of prefixes accepted from a peer"; uses bgpaf-accepted-prefix-limit; } container rib-group { description "Routing table group"; uses rib_group_inet_type; } container add-path { description "Advertise multiple paths to peer"; uses apath-options; } container aigp { description "Allow sending and receiving of AIGP attribute"; uses bgpaf-aigp-options; } leaf damping { description "Enable route flap damping"; type empty; } container loops { description "Allow local AS in received AS paths"; uses bgpaf-loops; } leaf-list no-validate { description "Bypass validation procedure for routes that match policy"; type policy-algebra; } } grouping bgp-afi-inet6-labeled { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container prefix-limit { description "Limit maximum number of prefixes from a peer"; uses bgpaf-prefix-limit; } container accepted-prefix-limit { description "Limit maximum number of prefixes accepted from a peer"; uses bgpaf-accepted-prefix-limit; } container rib-group { description "Routing table group"; uses rib_group_inet_type; } container add-path { description "Advertise multiple paths to peer"; uses apath-options; } container aigp { description "Allow sending and receiving of AIGP attribute"; uses bgpaf-aigp-options; } leaf damping { description "Enable route flap damping"; type empty; } container loops { description "Allow local AS in received AS paths"; uses bgpaf-loops; } container aggregate-label { presence "enable aggregate-label"; description "Aggregate labels of incoming routes with the same FEC"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf community { description "Community to identify the FEC of incoming routes"; type string; mandatory true; } } leaf per-group-label { description "Advertise prefixes with unique labels per group"; type empty; } container traffic-statistics { description "Collect statistics for BGP label-switched paths"; uses bgpaf-traffic-statistics; } container rib { description "Select table used by labeled unicast routes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf inet6.3 { description "Use inet6.3 to exchange labeled unicast routes"; type empty; } } container explicit-null { presence "enable explicit-null"; description "Advertise explicit null"; leaf connected-only { description "Advertise explicit null only for connected routes"; type empty; } } container protection { presence "enable protection"; description "Compute backup path for active nexthop failure"; } } grouping bgp-afi-l2vpn { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container prefix-limit { description "Limit maximum number of prefixes from a peer"; uses bgpaf-prefix-limit; } container accepted-prefix-limit { description "Limit maximum number of prefixes accepted from a peer"; uses bgpaf-accepted-prefix-limit; } container rib-group { description "Routing table group"; uses rib_group_inet_type; } container add-path { description "Advertise multiple paths to peer"; uses apath-options; } container aigp { description "Allow sending and receiving of AIGP attribute"; uses bgpaf-aigp-options; } leaf damping { description "Enable route flap damping"; type empty; } container loops { description "Allow local AS in received AS paths"; uses bgpaf-loops; } container egress-protection { presence "enable egress-protection"; description "Egress router protection"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container context-identifier { description "Context identifier"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf context-id { description "IP address"; type ipv4addr; } } leaf-list keep-import { description "Import policy"; type policy-algebra; } } } grouping bgp-afi-labeled { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container prefix-limit { description "Limit maximum number of prefixes from a peer"; uses bgpaf-prefix-limit; } container accepted-prefix-limit { description "Limit maximum number of prefixes accepted from a peer"; uses bgpaf-accepted-prefix-limit; } container rib-group { description "Routing table group"; uses rib_group_inet_type; } container add-path { description "Advertise multiple paths to peer"; uses apath-options; } container aigp { description "Allow sending and receiving of AIGP attribute"; uses bgpaf-aigp-options; } leaf damping { description "Enable route flap damping"; type empty; } container loops { description "Allow local AS in received AS paths"; uses bgpaf-loops; } container aggregate-label { presence "enable aggregate-label"; description "Aggregate labels of incoming routes with the same FEC"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf community { description "Community to identify the FEC of incoming routes"; type string; mandatory true; } } leaf per-prefix-label { description "Allocate a unique label to each advertised prefix"; type empty; } leaf per-group-label { description "Advertise prefixes with unique labels per group"; type empty; } container traffic-statistics { description "Collect statistics for BGP label-switched paths"; uses bgpaf-traffic-statistics; } container rib { description "Select table used by labeled unicast routes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf inet.3 { description "Use inet.3 to exchange labeled unicast routes"; type empty; } } container explicit-null { presence "enable explicit-null"; description "Advertise explicit null"; leaf connected-only { description "Advertise explicit null only for connected routes"; type empty; mandatory true; } } container protection { presence "enable protection"; description "Compute backup path for active nexthop failure"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container egress-protection { presence "enable egress-protection"; description "Egress router protection"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container context-identifier { description "Context identifier"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf context-id { description "IP address"; type ipv4addr; } } leaf-list keep-import { description "Import policy"; type policy-algebra; } } leaf resolve-vpn { description "Install received NLRI in inet.3 also"; type empty; } } grouping bgp-afi-topo { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container prefix-limit { description "Limit maximum number of prefixes from a peer"; uses bgpaf-prefix-limit; } container accepted-prefix-limit { description "Limit maximum number of prefixes accepted from a peer"; uses bgpaf-accepted-prefix-limit; } container rib-group { description "Routing table group"; uses rib_group_inet_type; } container add-path { description "Advertise multiple paths to peer"; uses apath-options; } container aigp { description "Allow sending and receiving of AIGP attribute"; uses bgpaf-aigp-options; } leaf damping { description "Enable route flap damping"; type empty; } container loops { description "Allow local AS in received AS paths"; uses bgpaf-loops; } container protection { presence "enable protection"; description "Compute backup path for active nexthop failure"; } list topology { key name; ordered-by user; description "Multi topology routing tables"; leaf name { description "Topology name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf community { description "Community to identify multi topology routes"; type string; mandatory true; } } } grouping bgp-afi-vpn { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container prefix-limit { description "Limit maximum number of prefixes from a peer"; uses bgpaf-prefix-limit; } container accepted-prefix-limit { description "Limit maximum number of prefixes accepted from a peer"; uses bgpaf-accepted-prefix-limit; } container rib-group { description "Routing table group"; uses rib_group_inet_type; } container add-path { description "Advertise multiple paths to peer"; uses apath-options; } container aigp { description "Allow sending and receiving of AIGP attribute"; uses bgpaf-aigp-options; } leaf damping { description "Enable route flap damping"; type empty; } container loops { description "Allow local AS in received AS paths"; uses bgpaf-loops; } container aggregate-label { presence "enable aggregate-label"; description "Aggregate labels of incoming routes with the same FEC"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf community { description "Community to identify the FEC of incoming routes"; type string; mandatory true; } } } grouping bgp-afi-vpn-protection { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container prefix-limit { description "Limit maximum number of prefixes from a peer"; uses bgpaf-prefix-limit; } container accepted-prefix-limit { description "Limit maximum number of prefixes accepted from a peer"; uses bgpaf-accepted-prefix-limit; } container rib-group { description "Routing table group"; uses rib_group_inet_type; } container add-path { description "Advertise multiple paths to peer"; uses apath-options; } container aigp { description "Allow sending and receiving of AIGP attribute"; uses bgpaf-aigp-options; } leaf damping { description "Enable route flap damping"; type empty; } container loops { description "Allow local AS in received AS paths"; uses bgpaf-loops; } container aggregate-label { presence "enable aggregate-label"; description "Aggregate labels of incoming routes with the same FEC"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf community { description "Community to identify the FEC of incoming routes"; type string; mandatory true; } } container egress-protection { presence "enable egress-protection"; description "Egress router protection"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container context-identifier { description "Context identifier"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf context-id { description "IP address"; type ipv4addr; } } leaf-list keep-import { description "Import policy"; type policy-algebra; } } } grouping bgp_filter_obj { description "Filter to apply to tracing"; leaf match-on { description "Argument on which to match"; type enumeration { enum prefix { description "Filter based on prefix"; } } mandatory true; } leaf-list policy { description "Filter policy"; type policy-algebra; } } grouping bgpaf-accepted-prefix-limit { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum { description "Maximum number of prefixes accepted from a peer"; type uint32 { range "1 .. 4294967295"; } mandatory true; } container teardown { presence "enable teardown"; description "Clear peer connection on reaching limit"; leaf limit-threshold { description "Percentage of prefix-limit to start warnings"; type uint32 { range "1 .. 100"; } } container idle-timeout { presence "enable idle-timeout"; description "Timeout before attempting to restart peer"; choice idle-parm { case case_1 { leaf forever { description "Idle the peer until the user intervenes"; type empty; } } case case_2 { leaf timeout { description "Timeout value, in minutes, for restarting peer"; type uint32 { range "1 .. 2400"; } } } } } } } grouping bgpaf-aigp-options { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable sending and receiving of AIGP attribute"; type empty; } } grouping bgpaf-loops { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf loops { description "AS-Path loop count"; type int32 { range "1 .. 10"; } mandatory true; } } grouping bgpaf-prefix-limit { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum { description "Maximum number of prefixes from a peer"; type uint32 { range "1 .. 4294967295"; } mandatory true; } container teardown { presence "enable teardown"; description "Clear peer connection on reaching limit"; leaf limit-threshold { description "Percentage of prefix-limit to start warnings"; type uint32 { range "1 .. 100"; } } container idle-timeout { presence "enable idle-timeout"; description "Timeout before attempting to restart peer"; choice idle-parm { case case_1 { leaf forever { description "Idle the peer until the user intervenes"; type empty; } } case case_2 { leaf timeout { description "Timeout value, in minutes, for restarting peer"; type uint32 { range "1 .. 2400"; } } } } } } } grouping bgpaf-traffic-statistics { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Statistics file options"; uses trace_file_type; } leaf interval { description "Time to collect statistics (seconds)"; type int32 { range "60 .. 65535"; } } } grouping juniper-protocols-bridge { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container vpls-mac-move { presence "enable vpls-mac-move"; description "Enable VPLS loop prevention related options at global level"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf cooloff-time { description "Time interval in secs during which no further actions are taken"; units "seconds"; type uint32; } leaf statistical-approach-wait-time { description "Time during which MAC moves are monitored to collect statistics"; units "seconds"; type uint32; } leaf interface-recovery-time { description "Time interval after which interface is made operationally up"; units "seconds"; type uint32; } list virtual-mac { key name; ordered-by user; description "Virtual MAC addresses to be not considered in VPLS loop prevention algorithm"; leaf name { description "Source MAC address"; type mac-addr-prefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } leaf global-mac-table-aging-time { description "System level MAC table aging time"; units "seconds"; type uint32 { range "10 .. 1000000"; } } leaf global-le-aging-time { description "Set LE aging time"; units "seconds"; type uint32 { range "120 .. 1000000"; } } leaf global-le-bridge-domain-aging-time { description "Set LE bridge-domain aging time"; units "seconds"; type uint32 { range "120 .. 1000000"; } } container global-mac-limit { presence "enable global-mac-limit"; description "System level MAC limit options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf mac-limit { description "System level MAC limit"; type uint64 { range "20 .. 1048575"; } } leaf packet-action { description "(null)"; type enumeration { enum drop { description "Enable packet-action drop when MAC limit is reached"; } } } } leaf global-mac-statistics { description "Enable MAC address statistics at system level"; type empty; } leaf global-no-mac-learning { description "Disable dynamic MAC address learning at system level"; type empty; } leaf global-no-control-mac-aging { description "Disable control MAC-address aging from software"; type empty; } leaf mclag-arp-nd-sync { description "Arp and ND entry sync from peer device."; type empty; } } grouping juniper-protocols-dot1x { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for 802.1X"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum dot1x-debug { description "Trace dot1x events"; } enum parse { description "Trace configuration parsing"; } enum esw-if { description "Trace ESW Interactions"; } enum eapol { description "Trace EAPOL Transmit/Receive"; } enum config-internal { description "Trace configuration internals"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol task timer processing"; } enum vlan { description "Trace VLAN transactions"; } enum all { description "Trace everything"; } enum dot1x-ipc { description "Trace dot1x IPC interactions"; } enum dot1x-event { description "Trace dot1x events"; } } } leaf disable { description "Disable this trace flag"; type empty; } } } container authenticator { presence "enable authenticator"; description "802.1X authenticator options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf authentication-profile-name { description "Access profile name to use for authentication"; type string { length "1 .. 64"; } } leaf no-mac-table-binding { description "Disable association between mac table and dot1x"; type empty; } leaf radius-options { description "Info sent to radius server"; type enumeration { enum use-vlan-name { description "Vlan name"; } enum use-vlan-id { description "Vlan id"; } } } list static { key name; ordered-by user; description "Static MAC configuration needed to bypass 802.1X"; leaf name { description "MAC addresses to bypass authentication"; type mac-addr-prefix; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf vlan-assignment { description "VLAN name or 802.1q tag for the MAC address"; type string { } } leaf bridge-domain-assignment { description "Bridge-domain name or 802.1q tag for the MAC address"; type string { } } leaf interface { description "Interface on which authentication is bypassed"; type interface-name; } } list interface { key name; description "802.1X interface specific options"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable 802.1X on this interface"; type empty; } leaf supplicant { description "Set supplicant mode for this interface"; default "single"; type enumeration { enum single { description "Allow multiple clients; authenticate first client only"; } enum single-secure { description "Allow and authenticate only a single client"; } enum multiple { description "Allow multiple clients; authenticate each individually"; } } } leaf retries { description "Number of retries after which port is placed into wait state"; type uint32 { range "0 .. 10"; } } leaf quiet-period { description "Time to wait after an authentication failure"; units "seconds"; type uint32 { range "0 .. 65535"; } } leaf transmit-period { description "Interval before retransmitting initial EAPOL PDUs"; units "seconds"; type uint32 { range "1 .. 65535"; } } container mac-radius { presence "enable mac-radius"; description "Enable MAC-RADIUS"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf restrict { description "Bypass dot1x authentication, use MAC RADIUS only"; type empty; } leaf flap-on-disconnect { description "Reset an interface on receiving a disconnect request"; type empty; } } choice reauthentication-mode { case case_1 { leaf no-reauthentication { description "Disable reauthentication"; type empty; } } case case_2 { leaf reauthentication { description "Reauthentication interval"; units "seconds"; type uint32 { range "1 .. 65535"; } } } } leaf supplicant-timeout { description "Time to wait for a client response"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf server-timeout { description "Authentication server timeout interval"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf maximum-requests { description "Number of EAPOL RequestIDs to send before timing out"; type uint32 { range "1 .. 10"; } } leaf guest-vlan { description "VLAN name or 802.1q tag for unauthenticated or non-responsive hosts"; type string { } } leaf guest-bridge-domain { description "Bridge-domain name or 802.1q tag for unauthenticated or non-responsive hosts"; type string { } } container server-reject-vlan { description "VLAN name or 802.1q tag for authentication rejected clients"; leaf vlan-name { description "VLAN name or VLAN Tag (1..4095)"; type string { } mandatory true; } presence "enable server-reject-vlan"; leaf block-interval { description "Interval for authenticator to ignore the EAP-Start packets."; units "seconds"; type uint32 { range "120 .. 65535"; } } leaf eapol-block { description "Force the authenticator to ignore EAPOL-Start packets."; type empty; } } container server-reject-bridge-domain { description "VLAN name or 802.1q tag for authentication rejected clients"; leaf bridge-domain { description "Bridge-domain name or VLAN Tag (1..4095)"; type string { } mandatory true; } presence "enable server-reject-bridge-domain"; leaf block-interval { description "Interval for authenticator to ignore the EAP-Start packets."; units "seconds"; type uint32 { range "120 .. 65535"; } } leaf eapol-block { description "Force the authenticator to ignore EAPOL-Start packets."; type empty; } } leaf lldp-med-bypass { description "Bypass dot1x authentication, use lldp-med based authentication"; type empty; } container server-fail { description "Action to be taken when server is inaccessible"; choice server-fail-options { case case_1 { leaf deny { description "Force client authentication to fail"; type empty; } } case case_2 { leaf permit { description "Force client authentication to succeed"; type empty; } } case case_3 { leaf vlan-name { description "VLAN name or 802.1q tag for unreachable servers"; type string { } } } case case_4 { leaf bridge-domain { description "Bridge-domain name or 802.1q tag for unreachable servers"; type string { } } } case case_5 { leaf use-cache { description "Use the previous state of the client"; type empty; } } } } } } } grouping juniper-protocols-esis { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable ES-IS"; type empty; } } } container traceoptions { description "Trace options for ES-IS"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum error { description "Trace errored packets"; } enum esh { description "Trace end system hello packets"; } enum ish { description "Trace intermediate system hello packets"; } enum graceful-restart { description "Trace graceful restart events"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } leaf preference { description "Preference of routes"; type uint32; } container graceful-restart { description "ES-IS graceful restart options"; choice enable-disable { case case_1 { leaf disable { description "Disable graceful restart"; type empty; } } } leaf restart-duration { description "Maximum time for graceful restart to finish"; units "seconds"; type uint32 { range "30 .. 300"; } } } list interface { key name; description "Interface configuration"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf hold-time { description "Time after which neighbors think the interface is down"; units "seconds"; type uint32 { range "1 .. 65535"; } } leaf end-system-configuration-timer { description "Suggested end system configuration timer"; units "seconds"; type uint32 { range "1 .. 65535"; } } choice enable-disable { case case_1 { leaf disable { description "Disable ES-IS on this interface"; type empty; } } } } } grouping juniper-protocols-isis { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable IS-IS"; type empty; } } } container traceoptions { description "Trace options for IS-IS"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum error { description "Trace errored packets"; } enum spf { description "Trace SPF events"; } enum packets { description "Trace IS-IS packets"; } enum hello { description "Trace hello packets"; } enum lsp { description "Trace link-state packets"; } enum psn { description "Trace partial sequence number (PSN) packets"; } enum csn { description "Trace complete sequence number (CSN) packets"; } enum lsp-generation { description "Trace LSP generation"; } enum graceful-restart { description "Trace graceful restart events"; } enum ldp-synchronization { description "Trace synchronization between IS-IS and LDP"; } enum nsr-synchronization { description "Trace NSR synchronization events"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } leaf-list export { description "Export policy"; type policy-algebra; } leaf reference-bandwidth { description "Bandwidth for calculating metric defaults"; type string; } leaf lsp-lifetime { description "Lifetime of LSPs"; units "seconds"; type uint32 { range "350 .. 65535"; } } leaf max-lsp-size { description "Maximum size allowed for LSPs"; default "1492"; type uint32 { range "512 .. 1492"; } } leaf max-hello-size { description "Maximum size allowed for ISIS Hello PDUs"; default "1492"; type uint32 { range "512 .. 1492"; } } leaf max-snp-size { description "Maximum size allowed for Sequence Number (Complete/Partial) PDUs"; default "1400"; type uint32 { range "512 .. 1400"; } } leaf loose-authentication-check { description "Verify authentication only if PDU has authentication TLV"; type empty; } leaf max-areas { description "Maximum number of advertised Areas"; default "3"; type uint32 { range "3 .. 36"; } } leaf no-authentication-check { description "Disable authentication checking"; type empty; } leaf no-ipv4-routing { description "Disable IPv4 routing"; type empty; } leaf no-ipv6-routing { description "Disable IPv6 routing"; type empty; } leaf clns-routing { description "Enable CLNS routing"; type empty; } leaf clns-updown-compatibility { description "Set the Up/Down Bit in place of the I/E bit in CLNS TLVs"; type empty; } leaf no-adjacency-holddown { description "Disable adjacency hold down"; type empty; } leaf ignore-attached-bit { description "Ignore the attached bit in Level 1 LSPs"; type empty; } container rib-group { description "Routing table group for importing IS-IS routes"; uses rib_group_type; } container spf-options { description "Configure SPF attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf delay { description "Time to wait before running an SPF"; units "milliseconds"; type uint32 { range "50 .. 1000"; } } leaf holddown { description "Time to hold down before running an SPF"; units "milliseconds"; type uint32 { range "2000 .. 10000"; } } leaf rapid-runs { description "Number of rapid SPF runs before SPF holddown"; type uint32 { range "1 .. 5"; } } } container backup-spf-options { description "Configure backup SPF attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf per-prefix-calculation { description "Calculate backup nexthops for non-best prefix originators"; type empty; } container remote-backup-calculation { presence "enable remote-backup-calculation"; description "Calculate Remote LFA backup nexthops"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf node-link-degradation { description "Degrade to link protection when nodelink protection not available"; type empty; } } container topologies { description "Enable topologies"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ipv4-multicast { description "Enable IPv4-multicast topology"; type empty; } leaf ipv6-unicast { description "Enable IPv6-unicast topology"; type empty; } leaf ipv6-multicast { description "Enable IPv6-multicast topology"; type empty; } } container overload { presence "enable overload"; description "Set the overload bit (no transit traffic)"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf timeout { description "Time after which overload bit is reset"; units "seconds"; type uint32 { range "60 .. 1800"; } } leaf advertise-high-metrics { description "Advertise high metrics instead of setting the overload bit"; type empty; } leaf allow-route-leaking { description "Allow routes to be leaked when overload is configured"; type empty; } } container traffic-engineering { description "Configure traffic engineering attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable traffic engineering"; type empty; } } } leaf credibility-protocol-preference { description "Follow IGP protocol preference for TED protocol credibility"; type empty; } leaf ignore-lsp-metrics { description "Ignore label-switched path metrics when doing shortcuts"; type empty; } list family { key name; ordered-by user; description "Address family specific traffic-engineering attributes"; leaf name { description "(null)"; type enumeration { enum inet { description "IPv4 family"; } enum inet6 { description "IPv6 family"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container shortcuts { presence "enable shortcuts"; description "Use label-switched paths as next hops, if possible"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf multicast-rpf-routes { description "Install routes for multicast RPF checks into multicast RIB"; type empty; } } } container multipath { description "Configure label-switched-path multipath behavior"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf lsp-equal-cost { description "Include equal cost label-switched-paths"; type empty; } } } container graceful-restart { description "IS-IS graceful restart options"; choice enable-disable { case case_1 { leaf disable { description "Disable graceful restart"; type empty; } } } leaf helper-disable { description "Disable graceful restart helper capability"; type empty; } leaf restart-duration { description "Maximum time for graceful restart to finish"; units "seconds"; type uint32 { range "30 .. 300"; } } } list level { key name; ordered-by user; description "Configure global level attributes"; leaf name { description "IS-IS level number"; type uint32 { range "1 .. 2"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable IS-IS on this level"; type empty; } } } leaf authentication-key { description "Authentication key (password)"; type unreadable; } leaf authentication-type { description "Authentication type"; type enumeration { enum md5 { description "MD5 authentication"; } enum simple { description "Simple password authentication"; } } } leaf purge-originator { description "Add Purge Originator information"; type enumeration { enum self { description "Add POI only for self-originated purge LSPs"; } enum empty { description "Add POI for purge LSPs who do not have POI information"; } } } leaf no-hello-authentication { description "Disable authentication for hello packets"; type empty; } leaf no-csnp-authentication { description "Disable authentication for CSN packets"; type empty; } leaf no-psnp-authentication { description "Disable authentication for PSN packets"; type empty; } leaf authentication-key-chain { description "Key chain name"; type string { length "1 .. 128"; } } leaf wide-metrics-only { description "Generate wide metrics only"; type empty; } leaf preference { description "Preference of internal routes"; type uint32; } leaf external-preference { description "Preference of external routes"; type uint32; } leaf prefix-export-limit { description "Maximum number of external prefixes that can be exported"; type uint32 { range "0 .. 4294967295"; } } } list interface { key name; description "Interface configuration"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable IS-IS on this interface"; type empty; } } } leaf hello-padding-type { description "Type of padding for hello packets"; default "loose"; type enumeration { enum strict { description "Padding for all adjacency states"; } enum adaptive { description "Padding until state of neighbor adjacency is 'up'"; } enum loose { description "Padding until state of adjacency is 'initializing'"; } enum disable { description "Do not add any padding for hello packets"; } } } container ldp-synchronization { description "Advertise maximum metric until LDP is operational"; uses ldp-sync-obj; } leaf lsp-interval { description "Interval between LSP transmissions"; default "100"; units "milliseconds"; type uint32 { range "1 .. 1000"; } } container csnp-interval { description "Rate of CSN packets (for LAN interfaces only)"; choice csnp_interval_option { case case_1 { leaf csnp-interval-number { description "Interval between CSN packets"; units "seconds"; type uint32 { range "1 .. 65535"; } } } case case_2 { leaf disable { description "Do not send CSN packets on this interface"; type empty; } } } } container mesh-group { description "Add the interface to a mesh group"; choice mesh_group_option { case case_1 { leaf mesh-group-number { description "Mesh group number for this interface"; type uint32; } } case case_2 { leaf blocked { description "Do not flood new LSPs on this interface"; type empty; } } } } leaf point-to-point { description "Treat interface as point to point"; type empty; } choice protection-type { case case_1 { leaf link-protection { description "Protect interface from link faults only"; type empty; } } case case_2 { leaf node-link-protection { description "Protect interface from both link and node faults"; type empty; } } } leaf no-eligible-backup { description "Not eligible for backup traffic from protected interfaces"; type empty; } container passive { presence "enable passive"; description "Do not run IS-IS, but advertise it"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf remote-node-iso { description "ISO System-ID of the remote node"; type sysid; } leaf remote-node-id { description "Remote address of the link"; type ipv4addr; } } leaf no-eligible-remote-backup { description "Not eligible for Remote-LFA backup traffic from protected interfaces"; type empty; } leaf checksum { description "Enable checksum for packets on this interface"; type empty; } leaf no-unicast-topology { description "Do not include this interface in the unicast topology"; type empty; } leaf no-ipv4-multicast { description "Do not include this interface in the IPv4 multicast topology"; type empty; } leaf no-ipv6-unicast { description "Do not include this interface in the IPv6 unicast topology"; type empty; } leaf no-ipv6-multicast { description "Do not include this interface in the IPv6 multicast topology"; type empty; } leaf no-adjacency-down-notification { description "Do not inform other protocols about adjacency down events"; type empty; } container bfd-liveness-detection { description "Bidirectional Forwarding Detection options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } container authentication { description "Authentication options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf key-chain { description "Key chain name"; type string; } leaf algorithm { description "Algorithm name"; type enumeration { enum simple-password { description "Simple password"; } enum keyed-md5 { description "Keyed message Digest 5"; } enum meticulous-keyed-md5 { description "Meticulous keyed message Digest 5"; } enum keyed-sha-1 { description "Keyed secure hash algorithm (SHA1) "; } enum meticulous-keyed-sha-1 { description "Meticulous keyed secure hash algorithm (SHA1) "; } } } leaf loose-check { description "Verify authentication only if authentication is negotiated"; type empty; } } } list level { key name; ordered-by user; description "Configure levels on this interface"; leaf name { description "IS-IS level number"; type uint32 { range "1 .. 2"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable IS-IS for this level"; type empty; } } } leaf metric { description "Metric for this level"; type uint32 { range "0 .. 16777215"; } } leaf ipv4-multicast-metric { description "IPv4 multicast metric for this level"; type uint32 { range "0 .. 16777215"; } } leaf ipv6-unicast-metric { description "IPv6 unicast metric for this level"; type uint32 { range "0 .. 16777215"; } } leaf ipv6-multicast-metric { description "IPv6 multicast metric for this level"; type uint32 { range "0 .. 16777215"; } } leaf te-metric { description "Traffic engineering metric"; type uint32 { range "0 .. 16777215"; } } leaf hello-authentication-key { description "Authentication key (password) for hello packets"; type unreadable; } leaf hello-authentication-type { description "Authentication type for hello packets"; type enumeration { enum md5 { description "MD5 authentication"; } enum simple { description "Simple password authentication"; } } } leaf hello-authentication-key-chain { description "Key chain name"; type string { length "1 .. 128"; } } leaf hello-interval { description "Interval between hello packet transmissions"; units "seconds"; type uint32 { range "1 .. 21845"; } } leaf hold-time { description "Time after which neighbors think the interface is down"; units "seconds"; type uint32 { range "1 .. 65535"; } } leaf priority { description "Designated router election priority"; type uint32 { range "0 .. 127"; } } container passive { presence "enable passive"; description "Do not run IS-IS at this level, but advertise it"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf remote-node-iso { description "ISO System-ID of the remote node"; type sysid; } leaf remote-node-id { description "Remote address of the link"; type ipv4addr; } } } } list label-switched-path { key name; ordered-by user; description "Configuration for advertisement of a label-switched path"; leaf name { description "Name of label-switched path to be advertised"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list level { key name; ordered-by user; description "Level to advertise this label-switched path"; leaf name { description "IS-IS level number"; type uint32 { range "1 .. 2"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable advertisements to this level"; type empty; } } } leaf metric { description "SPF metric for this level"; type uint32 { range "0 .. 16777215"; } } } } list context-identifier { key name; ordered-by user; description "Configuration for advertisement of a context-identifier "; leaf name { description "Context identifier range"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list level { key name; ordered-by user; description "Level to advertise this context-identifier"; leaf name { description "IS-IS level number"; type uint32 { range "1 .. 2"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable advertisements to this level"; type empty; } } } } } } grouping juniper-protocols-l2control { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Global tracing options for STP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum parse { description "Trace configuration parsing"; } enum regex-parse { description "Trace regular-expression parsing"; } enum config-internal { description "Trace configuration internals"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol task timer processing"; } enum ppmlite { description "Trace libppmlite processing"; } enum all { description "Trace everything"; } } } leaf disable { description "Disable this trace flag"; type empty; } } } leaf nonstop-bridging { description "Enable nonstop operation"; type empty; } container bpdu-block { presence "enable bpdu-block"; description "Block BPDU on interface (BPDU Protect)"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list interface { description "Interface name to block BPDU on"; type interface-device; } leaf disable-timeout { description "Disable timeout for BPDU Protect"; units "seconds"; type int32 { range "10 .. 3600"; } } } container mac-rewrite { description "Mac rewrite functionality"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list interface { key name; ordered-by user; description "(null)"; leaf name { description "(null)"; type interface-device; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf enable-all-ifl { description "Enable tunneling for all the IFLs under the interface"; type empty; } container protocol { presence "enable protocol"; description "Protocols for which mac rewrite need to be enabled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container stp { presence "enable stp"; description "Enable mac rewrite for STP"; } container vtp { presence "enable vtp"; description "Enable mac rewrite for VTP"; } container cdp { presence "enable cdp"; description "Enable mac rewrite for CDP"; } container ieee8021x { presence "enable ieee8021x"; description "Enable mac rewrite for 8021X"; } container ieee8023ah { presence "enable ieee8023ah"; description "Enable mac rewrite for 8023AH"; } container elmi { presence "enable elmi"; description "Enable mac rewrite for ELMI"; } container lacp { presence "enable lacp"; description "Enable mac rewrite for LACP"; } container lldp { presence "enable lldp"; description "Enable mac rewrite for LLDP"; } container mmrp { presence "enable mmrp"; description "Enable mac rewrite for MMRP"; } container mvrp { presence "enable mvrp"; description "Enable mac rewrite for MVRP"; } container pvstp { presence "enable pvstp"; description "Enable mac rewrite for PVSTP+"; } } } } } grouping juniper-protocols-ldp { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for LDP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum error { description "Trace errored packets"; } enum event { description "Trace LDP state machine events"; } enum packets { description "Trace all LDP packets"; } enum periodic { description "Trace periodic (hello and keepalive) packets"; } enum initialization { description "Trace initialization packets"; } enum notification { description "Trace notification packets"; } enum address { description "Trace address packets"; } enum label { description "Trace label packets"; } enum binding { description "Trace label binding state"; } enum path { description "Trace label path state"; } enum ppmd { description "Trace state and events for ppmd process"; } enum nsr-synchronization { description "Trace NSR synchronization events"; } enum link-protection { description "Trace link protection events"; } enum p2mp-nsr-synchronization { description "Trace p2mp NSR synchronization events"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } container filter { description "Filter to apply to this flag"; uses ldp_filter_obj; } } } container traffic-statistics { description "Collect statistics for LDP label-switched paths"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Statistics file options"; uses trace_file_type; } leaf interval { description "Time to collect statistics (seconds)"; type int32 { range "60 .. 65535"; } } leaf no-penultimate-hop { description "No penultimate hop statistics collection"; type empty; } } container graceful-restart { description "Configure graceful restart attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable graceful restart"; type empty; } } } leaf helper-disable { description "Disable the graceful restart helper capability"; type empty; } leaf recovery-time { description "Time required for recovery"; units "seconds"; type uint32 { range "120 .. 1800"; } } leaf maximum-neighbor-recovery-time { description "Maximum time stale mappings are maintained"; units "seconds"; type uint32 { range "140 .. 1900"; } } leaf reconnect-time { description "Time required to reestablish session after graceful restart"; units "seconds"; type uint32 { range "30 .. 300"; } } leaf maximum-neighbor-reconnect-time { description "Maximum reconnect time allowed from a restarting neighbor"; units "seconds"; type uint32 { range "30 .. 300"; } } } container auto-targeted-session { presence "enable auto-targeted-session"; description "Configure auto targeted session parameters for rLFA only"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf teardown-delay { description "Auto targeted session tear down delay"; default "90"; units "seconds"; type uint32 { range "1 .. 300"; } } leaf maximum-sessions { description "Auto targeted maximum sessions"; default "100"; type uint32 { range "1 .. 1000"; } } } leaf preference { description "Route preference"; type uint32; } leaf no-forwarding { description "Do not use LDP ingress routes for forwarding"; type empty; } leaf l2-smart-policy { description "Do not export or import Layer 3 FECs for Layer 2 sessions"; type empty; } leaf track-igp-metric { description "Track the IGP metric"; type empty; } leaf strict-targeted-hellos { description "Do not send targeted hellos to unconfigured neighbors"; type empty; } leaf-list import { description "Import policy"; type policy-algebra; } leaf-list export { description "Export policy"; type policy-algebra; } leaf-list egress-policy { description "Configure LSP egress policy"; type policy-algebra; } leaf-list dod-request-policy { description "Configure DoD label request policy"; type policy-algebra; } container next-hop { description "LDP next-hop control"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container merged { description "Merged next hop"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list policy { description "Merged next-hop policy"; type policy-algebra; } } } leaf mtu-discovery { description "Enable TCP path MTU discovery"; type empty; } leaf no-mtu-discovery { description "Enable TCP path MTU discovery"; type empty; } leaf deaggregate { description "Deaggregate FECs into separate labels"; type empty; } leaf no-deaggregate { description "Deaggregate FECs into separate labels"; type empty; } leaf explicit-null { description "Advertise the EXPLICIT_NULL label for egress FECs"; type empty; } leaf label-withdrawal-delay { description "Delay label withdrawal for FECs to avoid label churn"; default "60"; units "seconds"; type uint32 { range "0 .. 120"; } } container make-before-break { presence "enable make-before-break"; description "Configure make before break"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf timeout { description "Make before break timeout"; default "30"; units "seconds"; type uint32 { range "1 .. 300"; } } leaf switchover-delay { description "Make before break switchover delay"; default "3"; units "seconds"; type uint32 { range "1 .. 300"; } } } container transport-address { description "Address used for TCP sessions"; choice address-choice { case case_1 { leaf router-id { description "Use router ID for TCP connections"; type empty; } } case case_2 { leaf interface { description "Use interface address for TCP connections"; type empty; } } case case_3 { leaf address { description "Use specified address for TCP connections"; type ipaddr; } } } } leaf keepalive-interval { description "Keepalive interval (seconds)"; type uint32 { range "1 .. 65535"; } } leaf keepalive-timeout { description "Keepalive timeout (seconds)"; type uint32 { range "1 .. 65535"; } } list interface { key name; description "Enable LDP on this interface"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable LDP on this interface"; type empty; } } } leaf hello-interval { description "Hello interval (seconds)"; type uint32 { range "1 .. 65535"; } } leaf hold-time { description "Hello hold time (seconds)"; type uint32 { range "1 .. 65535"; } } container link-protection { presence "enable link-protection"; description "Enable link protection to protect interface for link faults only"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable link-protection"; type empty; } } } leaf dynamic-rsvp-lsp { description "Enable setup of dynamic rsvp lsp for link protection"; type empty; } } leaf transport-address { description "Address used for TCP sessions"; type enumeration { enum router-id { description "Use router ID for TCP connections"; } enum interface { description "Use interface address for TCP connections"; } } } leaf allow-subnet-mismatch { description "Allow subnet mismatch for source address in hello packet"; type empty; } leaf no-allow-subnet-mismatch { description "Allow subnet mismatch for source address in hello packet"; type empty; } } list neighbor { key name; description "Configure a remote LDP neighbor"; leaf name { description "Neighbor address"; type ipaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list session { key name; description "Configure session parameters"; leaf name { description "Session destination address"; type ipaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf authentication-key { description "MD5 authentication key"; type string { length "1 .. 126"; } } leaf authentication-algorithm { description "Authentication algorithm name"; default "hmac-sha-1-96"; type enumeration { enum md5 { description "Message Digest 5"; } enum hmac-sha-1-96 { description "Hash-based Message Authentication Code (SHA1) (96 bits)"; } enum aes-128-cmac-96 { description "Cipher-based Message Authentication Code (AES128) (96 bits)"; } } } leaf authentication-key-chain { description "Key chain name"; type string { length "1 .. 128"; } } leaf downstream-on-demand { description "Configure downstream on demand label distribution mode"; type empty; } leaf mtu-discovery { description "Enable TCP path MTU discovery"; type empty; } leaf no-mtu-discovery { description "Enable TCP path MTU discovery"; type empty; } } container session-protection { presence "enable session-protection"; description "Configure session protection"; leaf timeout { description "Session protection timeout"; units "seconds"; type uint16 { range "1 .. 65535"; } } } container igp-synchronization { description "Configure IGP synchronization parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf holddown-interval { description "Time to hold the up notification to the IGPs"; units "seconds"; type uint32 { range "10 .. 60"; } } } container log-updown { description "Logging actions for LSP up/down events"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container trap { description "SNMP traps options"; choice enable-disable { case case_1 { leaf disable { description "Disable LDP LSP up/down trap"; type empty; } } } } } container policing { description "Configure policing for an LDP FEC"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list fec { key name; ordered-by user; description "Forwarding equivalence class"; leaf name { description "Forwarding equivalence class address"; type ipv4prefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ingress-traffic { description "Name of filter to use for policing ingress LDP traffic"; type string { } } leaf transit-traffic { description "Name of filter to use for policing transit LDP traffic"; type string { } } } } container entropy-label { description "Insert entropy label for a LDP FEC"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list ingress-policy { description "Entropy label ingress policy"; type policy-algebra; } } container oam { description "Configure periodic OAM for a LDP FEC"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list ingress-policy { description "OAM ingress policy"; type policy-algebra; } list fec { key name; ordered-by user; description "Forwarding equivalence class"; leaf name { description "Forwarding equivalence class address"; type ipv4prefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice bfd_liveness_detection_type { case case_1 { container bfd-liveness-detection { description "Bidirectional Forwarding Detection (BFD) options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } leaf ecmp { description "Enable equal cost multipath (ECMP) support for BFD"; type empty; } container failure-action { description "Action to take when BFD session goes down"; choice action-choice { case case_1 { leaf remove-route { description "Remove LDP route from the ribs"; type empty; } } case case_2 { leaf remove-nexthop { description "Remove LDP nexthop from the route"; type empty; } } } } leaf holddown-interval { description "Time to hold the session-UP notification to the client"; default "0"; units "milliseconds"; type uint32 { range "0 .. 255000"; } } } } case case_2 { leaf no-bfd-liveness-detection { description "Disable BFD liveness detection"; type empty; } } } container periodic-traceroute { presence "enable periodic-traceroute"; description "Configure periodic traceroute"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf frequency { description "Time between traceroute attempts"; units "minutes"; type uint16 { range "15 .. 120"; } } leaf ttl { description "Maximum time-to-live value"; type uint16 { range "1 .. 255"; } } leaf retries { description "Number of times to resend probe"; type uint16 { range "1 .. 9"; } } leaf wait { description "Time to wait before resending probe"; units "seconds"; type uint16 { range "5 .. 15"; } } leaf paths { description "Maximum number of paths to traverse"; type uint16 { range "1 .. 255"; } } leaf source { description "Source address to use when sending probes"; type ipv4addr; } leaf exp { description "Class-of-service value to use when sending probes"; type uint16 { range "0 .. 7"; } } leaf fanout { description "Maximum number of nexthops to search per node"; type uint16 { range "1 .. 64"; } } leaf disable { description "Disable periodic traceroute for a FEC"; type empty; } } } container bfd-liveness-detection { description "Bidirectional Forwarding Detection (BFD) options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } leaf ecmp { description "Enable equal cost multipath (ECMP) support for BFD"; type empty; } container failure-action { description "Action to take when BFD session goes down"; choice action-choice { case case_1 { leaf remove-route { description "Remove LDP route from the ribs"; type empty; } } case case_2 { leaf remove-nexthop { description "Remove LDP nexthop from the route"; type empty; } } } } leaf holddown-interval { description "Time to hold the session-UP notification to the client"; default "0"; units "milliseconds"; type uint32 { range "0 .. 255000"; } } } container periodic-traceroute { presence "enable periodic-traceroute"; description "Configure periodic traceroute"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf frequency { description "Time between traceroute attempts"; units "minutes"; type uint16 { range "15 .. 120"; } } leaf ttl { description "Maximum time-to-live value"; type uint16 { range "1 .. 255"; } } leaf retries { description "Number of times to resend probe"; type uint16 { range "1 .. 9"; } } leaf wait { description "Time to wait before resending probe"; units "seconds"; type uint16 { range "5 .. 15"; } } leaf paths { description "Maximum number of paths to traverse"; type uint16 { range "1 .. 255"; } } leaf source { description "Source address to use when sending probes"; type ipv4addr; } leaf exp { description "Class-of-service value to use when sending probes"; type uint16 { range "0 .. 7"; } } leaf fanout { description "Maximum number of nexthops to search per node"; type uint16 { range "1 .. 64"; } } } leaf lsp-ping-interval { description "Time interval between LSP ping messages"; default "60"; units "seconds"; type uint16 { range "30 .. 3600"; } } } container targeted-hello { description "Configure targeted hello parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf hello-interval { description "Hello interval (seconds)"; type uint32 { range "1 .. 65535"; } } leaf hold-time { description "Hold interval (seconds)"; type uint32 { range "1 .. 65535"; } } } container p2mp { presence "enable p2mp"; description "Advertise P2MP capability to peers"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list root-address { key name; description "Configure the root address of P2MP LSP"; leaf name { description "Root address of the P2MP LSP"; type ipaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list lsp-id { key name; description "Configure the generic LSP identifier"; leaf name { description "Generic LSP identifier value"; type uint32 { range "1 .. 65535"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list group-address { key name; description "IPv4/Ipv6 group address for mLDP LSP"; leaf name { description "IPv4/Ipv6 group address"; type ipaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list source-address { key name; description "IPv4/Ipv6 source address"; leaf name { description "IPv4/Ipv6 source address for mLDP LSP"; type ipaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } leaf upstream-label-assignment { description "Allow Upstream Label Assignment capability"; type empty; } } grouping juniper-protocols-lmp { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list te-link { key name; ordered-by user; description "Traffic engineering link"; leaf name { description "Name of TE link"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf local-address { description "Address of the local end of the link"; type ipaddr; } leaf remote-address { description "Address of the remote end of the link"; type ipaddr; } leaf remote-id { description "Link ID for the remote end of the link"; type uint32 { range "1 .. 4294967295"; } } leaf te-metric { description "Traffic engineering metric of the link"; type uint32 { range "1 .. 65535"; } } choice enable-disable { case case_1 { leaf disable { description "Disable TE link"; type empty; } } } container ethernet-vlan { presence "enable ethernet-vlan"; description "TE link used for setup of L2 VLAN LSP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list vlan-id-range { description "VLAN id"; type vlan-range; max-elements 1; } } choice resource-option { case case_1 { list interface { key name; ordered-by user; description "Member interface of TE link"; leaf name { description "Interface name"; type interface-device; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf local-address { description "Local address of the resource"; type ipaddr; } leaf remote-address { description "Remote address of the resource"; type ipaddr; } leaf remote-id { description "Interface ID for the remote end of the resource"; type uint32 { range "1 .. 4294967295"; } } choice enable-disable { case case_1 { leaf disable { description "Disable resource on this TE link"; type empty; } } } } } case case_2 { list label-switched-path { key name; ordered-by user; description "Member forwarding adjacency LSP of TE link"; max-elements 1; leaf name { description "Name of label-switched path"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf local-address { description "Local address of the resource"; type ipaddr; } leaf remote-address { description "Remote address of the resource"; type ipaddr; } leaf remote-id { description "Interface ID for the remote end of the resource"; type uint32 { range "1 .. 4294967295"; } } choice enable-disable { case case_1 { leaf disable { description "Disable resource on this TE link"; type empty; } } } } } } } list peer { key name; ordered-by user; description "Define a network or LMP peer"; leaf name { description "Name of peer"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf address { description "Address of peer"; type ipaddr; mandatory true; } container lmp-protocol { presence "enable lmp-protocol"; description "LMP protocol attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf hello-interval { description "Interval between Hello messages"; units "milliseconds"; type uint32 { range "150 .. 21845"; } } leaf hello-dead-interval { description "Delay for control channel shutdown when no Hello received"; units "milliseconds"; type uint32 { range "500 .. 65535"; } } leaf retransmission-interval { description "Minimum time before retransmitting a message"; units "milliseconds"; type uint32 { range "500 .. 300000"; } } leaf retry-limit { description "Number of times to retransmit a message"; type uint32 { range "3 .. 1000"; } } leaf passive { description "Do not send Config messages to peer"; type empty; } } leaf-list control-channel { description "Control channel interfaces by priority"; type interface-name; } list lmp-control-channel { key name; ordered-by user; description "Control channel IDs"; uses lmp_control_channel_type; } leaf-list te-link { description "List of TE links managed by this peer"; type string; } } container traceoptions { description "LMP trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum init { description "Trace initialization events"; } enum show { description "Trace show command servicing"; } enum route-socket { description "Trace route-socket events"; } enum parse { description "Trace parser processing"; } enum process { description "Trace general configuration processing"; } enum server { description "Trace server processing"; } enum routing { description "Trace routing protocols interworking"; } enum packets { description "Trace packet processing"; } enum hello-packets { description "Trace hello packet processing"; } enum state { description "Trace state transitions"; } enum nsr-synchronization { description "Trace mirror and nsr transitions"; } enum all { description "Trace everything"; } } } } } } grouping juniper-protocols-msdp { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf data-encapsulation { description "Set encapsulation of data packets"; type enumeration { enum disable { description "Disable data encapsulation"; } enum enable { description "Enable data encapsulation"; } } } container rib-group { description "Routing table group"; uses rib_group_inet_type; } container active-source-limit { description "Limit the number of active sources accepted"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum { description "Maximum number of active sources accepted"; default "25000"; type uint32 { range "1 .. 1000000"; } } leaf threshold { description "RED threshold for active source acceptance"; default "24000"; type uint32 { range "1 .. 1000000"; } } leaf log-warning { description "Percentage of maximum at which to start generating warnings"; default "100"; type uint32 { range "1 .. 100"; } } leaf log-interval { description "Time between log messages"; type uint32 { range "6 .. 32767"; } } } choice enable-disable { case case_1 { leaf disable { description "Disable MSDP"; type empty; } } } leaf-list export { description "Export policy"; type policy-algebra; } leaf-list import { description "Import policy"; type policy-algebra; } leaf local-address { description "Local address"; type ipv4addr; } container traceoptions { description "Trace options for MSDP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum packets { description "Trace all MSDP packets"; } enum route { description "Trace routing information"; } enum nsr-synchronization { description "Trace NSR synchronization events"; } enum source-active { description "Trace source-active messages"; } enum source-active-request { description "Trace source-active request messages"; } enum source-active-response { description "Trace source-active response messages"; } enum keepalive { description "Trace keepalive messages"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } list peer { key name; ordered-by user; description "Configure an MSDP peer"; leaf name { description "Peer address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable MSDP"; type empty; } } } leaf-list export { description "Export policy"; type policy-algebra; } leaf-list import { description "Import policy"; type policy-algebra; } leaf local-address { description "Local address"; type ipv4addr; } container traceoptions { description "Trace options for MSDP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum packets { description "Trace all MSDP packets"; } enum route { description "Trace routing information"; } enum nsr-synchronization { description "Trace NSR synchronization events"; } enum source-active { description "Trace source-active messages"; } enum source-active-request { description "Trace source-active request messages"; } enum source-active-response { description "Trace source-active response messages"; } enum keepalive { description "Trace keepalive messages"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } container active-source-limit { description "Limit the number of active sources accepted"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum { description "Maximum number of active sources accepted"; default "25000"; type uint32 { range "1 .. 1000000"; } } leaf threshold { description "RED threshold for active source acceptance"; default "24000"; type uint32 { range "1 .. 1000000"; } } leaf log-warning { description "Percentage of maximum at which to start generating warnings"; default "100"; type uint32 { range "1 .. 100"; } } leaf log-interval { description "Time between log messages"; type uint32 { range "6 .. 32767"; } } } leaf keep-alive { description "Time limit for sending out periodic keep alive to peer"; units "seconds"; type uint32 { range "10 .. 60"; } } leaf hold-time { description "Max time to terminating a peer for having not received any message from "; units "seconds"; type uint32 { range "15 .. 150"; } } leaf sa-hold-time { description "Max time for holding a sa message before timing out"; units "seconds"; type uint32 { range "75 .. 300"; } } leaf default-peer { description "Default RPF peer"; type empty; } leaf authentication-key { description "MD5 authentication key"; type string { length "1 .. 126"; } } } leaf keep-alive { description "Time limit for sending out periodic keep alive to peer"; units "seconds"; type uint32 { range "10 .. 60"; } } leaf hold-time { description "Max time to terminating a peer for having not received any message from "; units "seconds"; type uint32 { range "15 .. 150"; } } leaf sa-hold-time { description "Max time for holding a sa message before timing out"; units "seconds"; type uint32 { range "75 .. 300"; } } list source { key name; ordered-by user; description "Configure parameters for each source"; leaf name { description "Source address or prefix"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container active-source-limit { description "Limit the number of active sources accepted"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum { description "Maximum number of active sources accepted"; default "25000"; type uint32 { range "1 .. 1000000"; } } leaf threshold { description "RED threshold for active source acceptance"; default "24000"; type uint32 { range "1 .. 1000000"; } } leaf log-warning { description "Percentage of maximum at which to start generating warnings"; default "100"; type uint32 { range "1 .. 100"; } } leaf log-interval { description "Time between log messages"; type uint32 { range "6 .. 32767"; } } } } list group { key name; ordered-by user; description "Configure MSDP peer groups"; leaf name { description "MSDP peer group name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf mode { description "MSDP group source-active flooding mode"; default "standard"; type enumeration { enum standard { description "Use standard MSDP source-active flooding rules"; } enum mesh-group { description "Group peers are mesh group members"; } } } choice enable-disable { case case_1 { leaf disable { description "Disable MSDP"; type empty; } } } leaf-list export { description "Export policy"; type policy-algebra; } leaf-list import { description "Import policy"; type policy-algebra; } leaf local-address { description "Local address"; type ipv4addr; } container traceoptions { description "Trace options for MSDP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum packets { description "Trace all MSDP packets"; } enum route { description "Trace routing information"; } enum nsr-synchronization { description "Trace NSR synchronization events"; } enum source-active { description "Trace source-active messages"; } enum source-active-request { description "Trace source-active request messages"; } enum source-active-response { description "Trace source-active response messages"; } enum keepalive { description "Trace keepalive messages"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } list peer { key name; ordered-by user; description "Configure an MSDP peer"; leaf name { description "Peer address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable MSDP"; type empty; } } } leaf-list export { description "Export policy"; type policy-algebra; } leaf-list import { description "Import policy"; type policy-algebra; } leaf local-address { description "Local address"; type ipv4addr; } container traceoptions { description "Trace options for MSDP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum packets { description "Trace all MSDP packets"; } enum route { description "Trace routing information"; } enum nsr-synchronization { description "Trace NSR synchronization events"; } enum source-active { description "Trace source-active messages"; } enum source-active-request { description "Trace source-active request messages"; } enum source-active-response { description "Trace source-active response messages"; } enum keepalive { description "Trace keepalive messages"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } container active-source-limit { description "Limit the number of active sources accepted"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum { description "Maximum number of active sources accepted"; default "25000"; type uint32 { range "1 .. 1000000"; } } leaf threshold { description "RED threshold for active source acceptance"; default "24000"; type uint32 { range "1 .. 1000000"; } } leaf log-warning { description "Percentage of maximum at which to start generating warnings"; default "100"; type uint32 { range "1 .. 100"; } } leaf log-interval { description "Time between log messages"; type uint32 { range "6 .. 32767"; } } } leaf keep-alive { description "Time limit for sending out periodic keep alive to peer"; units "seconds"; type uint32 { range "10 .. 60"; } } leaf hold-time { description "Max time to terminating a peer for having not received any message from "; units "seconds"; type uint32 { range "15 .. 150"; } } leaf sa-hold-time { description "Max time for holding a sa message before timing out"; units "seconds"; type uint32 { range "75 .. 300"; } } leaf default-peer { description "Default RPF peer"; type empty; } leaf authentication-key { description "MD5 authentication key"; type string { length "1 .. 126"; } } } } } grouping juniper-protocols-mstp { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable MSTP"; type empty; } } } leaf bpdu-destination-mac-address { description "Destination MAC address in the spanning tree BPDUs"; type enumeration { enum provider-bridge-group { description "802.1ad provider bridge group address"; } } } leaf configuration-name { description "Configuration name (part of MST configuration identifier)"; type string { length "1 .. 32"; } } leaf revision-level { description "Revision level (part of MST configuration identifier)"; type uint16; } leaf max-hops { description "Maximum number of hops"; type uint16 { range "1 .. 255"; } } leaf max-age { description "Maximum age of received protocol bpdu"; units "seconds"; type uint16 { range "6 .. 40"; } } leaf hello-time { description "Time interval between configuration BPDUs"; units "seconds"; type uint16 { range "1 .. 10"; } } leaf forward-delay { description "Time spent in listening or learning state"; units "seconds"; type uint16 { range "4 .. 30"; } } leaf system-identifier { description "Sytem identifier to represent this node"; type mac-unicaset; } container traceoptions { description "Tracing options for debugging protocol operation"; uses stp-trace-options; } leaf bridge-priority { description "Priority of the bridge (in increments of 4k - 0,4k,8k,..60k)"; type string { } } leaf backup-bridge-priority { description "Priority of the bridge (in increments of 4k - 4k,8k,..60k)"; type string { } } leaf bpdu-block-on-edge { description "Block BPDU on all interfaces configured as edge (BPDU Protect)"; type empty; } leaf vpls-flush-on-topology-change { description "Enable VPLS MAC flush on root protected CE interface receving topology change"; type empty; } leaf priority-hold-time { description "Hold time before switching to primary priority when core domain becomes up"; units "seconds"; type uint16 { range "1 .. 255"; } } list system-id { key name; ordered-by user; description "System ID to IP mapping"; uses system-id-ip-map; } list interface { key name; description "Interface options"; uses stp-interface; } list msti { key name; description "Per-MSTI options"; leaf name { description "(null)"; type int32 { range "1 .. 4094"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bridge-priority { description "Priority of the bridge (in increments of 4k - 0,4k,8k,..60k)"; type string { } } leaf backup-bridge-priority { description "Priority of the bridge (in increments of 4k - 4k,8k,..60k)"; type string { } } leaf-list vlan { description "VLAN ID or VLAN ID range [1..4094]"; type string; } list interface { key name; description "Interface options"; uses stp-interface; } } } grouping juniper-protocols-mvpn { description "BGP-MVPN configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for BGP-MVPN"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum error { description "Trace errors"; } enum nlri { description "Trace MVPN advertisements"; } enum tunnel { description "Trace provider tunnel events"; } enum umh { description "Trace Upstream Multicast Hop (UMH) events"; } enum intra-as-ad { description "Trace MVPN intra-AS auto discovery routes"; } enum inter-as-ad { description "Trace MVPN inter-AS auto discovery routes"; } enum spmsi-ad { description "Trace MVPN SPMSI auto discovery routes"; } enum leaf-ad { description "Trace MVPN leaf auto discovery routes"; } enum source-active { description "Trace MVPN source active routes"; } enum cmcast-join { description "Trace MVPN c-multicast join routes"; } enum mdt-safi-ad { description "Trace MVPN MDT SAFI auto discovery routes"; } enum mvpn-limit { description "Trace MVPN spmsi and cmcast limit events"; } enum nsr-synchronization { description "Trace NSR synchronization events"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } container family { description "BGP-MVPN address family"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container any { presence "enable any"; description "BGP-MVPN properties for all families"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable all families"; type empty; } } container inet { presence "enable inet"; description "IPv4 BGP-MVPN properties"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container autodiscovery-only { description "Use MVPN exclusively for PE router autodiscovery"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container intra-as { description "Intra-AS autodiscovery options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf inclusive { description "Inclusive provider tunnel autodiscovery"; type empty; mandatory true; } presence "enable intra-as"; } } leaf disable { description "Disable family IPv4"; type empty; } } container inet6 { presence "enable inet6"; description "IPv6 BGP-MVPN properties"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable family IPv6"; type empty; } } } choice sender-receiver-site-choice { case case_1 { leaf receiver-site { description "MVPN instance has sites only with multicast receivers"; type empty; } } case case_2 { leaf sender-site { description "MVPN instance has sites only with multicast sources"; type empty; } } } leaf unicast-umh-election { description "Upstream Multicast Hop election based on unicast route preference"; type empty; } leaf cmcast-joins-limit-inet { description "Maximum number of cmcast entries for v4"; type uint32 { range "0 .. 1024"; } } leaf cmcast-joins-limit-inet6 { description "Maximum number of cmcast entries for v6"; type uint32 { range "0 .. 1024"; } } container mvpn-mode { description "MVPN mode of operation"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice mode { case case_1 { container rpt-spt { presence "enable rpt-spt"; description "MVPN works in multicast RPT and SPT mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf spt-switch-timer { description "Timeout before a PE router switches between RPT and SPT"; units "seconds"; type uint32 { range "0 .. 60"; } } } } case case_2 { container spt-only { presence "enable spt-only"; description "MVPN works in multicast SPT only mode (default mode)"; } } } } container route-target { description "Configure route-targets for MVPN routes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container import-target { description "Target communities used when importing routes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container unicast { presence "enable unicast"; description "Use the same target community as configured for unicast"; choice receiver-sender-target-choice { case case_1 { leaf receiver { description "Target community used when importing receiver site routes"; type empty; } } case case_2 { leaf sender { description "Target community used when importing sender site routes"; type empty; } } } } container target { presence "enable target"; description "Target community"; leaf target-value { description "(null)"; type string { } } choice receiver-sender-target-choice { case case_1 { leaf receiver { description "Target community used when importing receiver site routes"; type empty; } } case case_2 { leaf sender { description "Target community used when importing sender site routes"; type empty; } } } } } container export-target { description "Target communities used when exporting routes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf unicast { description "Use the same target community as configured for unicast"; type empty; } leaf target { description "Target community"; type string { } } } } container mvpn-join-load-balance { description "MVPN Join Load Balancing Algorithm"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice algorithm { case case_1 { container bytewise-xor-hash { presence "enable bytewise-xor-hash"; description "Upstream selection using bytewise XOR hash"; } } } } } grouping juniper-protocols-mvrp { description "MVRP Configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Tracing options for MVRP"; uses mrp-trace-options; } leaf join-timer { description "Join timer interval"; default "200"; units "milliseconds"; type uint16 { range "100 .. 500"; } } leaf leave-timer { description "Leave timer interval"; default "800"; units "milliseconds"; type uint16 { range "300 .. 1000"; } } leaf leaveall-timer { description "Leaveall timer interval"; default "10"; units "seconds"; type uint16 { range "10 .. 60"; } } leaf no-dynamic-vlan { description "Disable dynamic VLAN creation"; type empty; } leaf no-attribute-length-in-pdu { description "No attribute length while sending pdu "; type empty; } leaf bpdu-destination-mac-address { description "Destination MAC address in the MVRP BPDUs"; type enumeration { enum provider-bridge-group { description "802.1ad provider bridge group address"; } } } list interface { key name; ordered-by user; description "Configure interface options"; leaf name { description "Interface name"; type interface-device; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf join-timer { description "Join timer interval"; units "milliseconds"; type uint16 { range "100 .. 500"; } } leaf leave-timer { description "Leave timer interval"; units "milliseconds"; type uint16 { range "300 .. 1000"; } } leaf leaveall-timer { description "Leaveall timer interval"; units "seconds"; type uint16 { range "10 .. 60"; } } leaf point-to-point { description "Port is point to point"; type empty; } leaf registration { description "Registration mode"; default "normal"; type enumeration { enum normal { description "Normal registration mode"; } enum restricted { description "Restricted registration mode"; } enum forbidden { description "Forbidden registration mode"; } } } } } grouping juniper-protocols-openflow { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list switch { key name; ordered-by user; description "OpenFlow switch"; max-elements 1; leaf name { description "Switch name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container default-action { description "Action for packets that not have a matching flow entry"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice drop-pktin { case case_1 { leaf drop { description "Drop all packets that do not have a matching flow entry"; type empty; } } case case_2 { leaf packet-in { description "Send packets to client if no matching flow entry"; type empty; } } } } list interfaces { key name; ordered-by user; description "Interfaces configured for use with Openflow"; leaf name { description "Interface name"; type interface-name; } leaf port-id { description "Openflow port ID"; type int32 { range "1 .. 32640"; } } } leaf purge-flow-timer { description "Purge timer value for invalid flows"; units "seconds"; type uint32 { range "0 .. 300"; } } container controller { description "OpenFlow controller's IP address, port and protocol"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container protocol { description "Protocol type for controller connection"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container tcp { description "Set protocol type to 'TCP' (default)"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port { description "Controller's port number (default 6633)"; type int32 { range "1024 .. 65535"; } } } } leaf role { description "Controller role"; type enumeration { enum equal { description "Set role to 'equal'"; } } } leaf address { description "Controller's IPv4 address"; type ipaddr; mandatory true; } presence "enable controller"; leaf id { description "Controller id"; type uint32; } } } container traceoptions { description "OpenFlow switch daemon trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Tracing flag parameters"; leaf name { description "(null)"; type enumeration { enum switch { description "Trace openflow switch events"; } enum configuration { description "Trace openflow configuration events"; } enum flow { description "Trace openflow flow events"; } enum filter { description "Trace openflow filter events"; } enum function { description "Trace openflow function entry/exit events"; } enum packet-io { description "Trace openflow packet in/out events"; } enum statistics { description "Trace openflow statistics events"; } enum interface { description "Trace openflow interface events"; } enum packets { description "Trace openflow packets"; } enum barrier { description "Trace openflow barrier events"; } enum nh { description "Trace openflow next-hop events"; } enum group { description "Trace openflow group events"; } enum all { description "Trace everything"; } } } } } } grouping juniper-protocols-ospf { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable OSPF"; type empty; } } } container traceoptions { description "Trace options for OSPF"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum spf { description "Trace SPF calculations"; } enum error { description "Trace errored packets"; } enum event { description "Trace OSPF state machine events"; } enum packet-dump { description "Dump the contents of selected packet types"; } enum flooding { description "Trace LSA flooding"; } enum lsa-analysis { description "Trace LSA analysis"; } enum packets { description "Trace all OSPF packets"; } enum hello { description "Trace hello packets"; } enum database-description { description "Trace database description packets"; } enum lsa-request { description "Trace LSA request packets"; } enum lsa-update { description "Trace LSA update packets"; } enum lsa-ack { description "Trace LSA acknowledgment packets"; } enum ldp-synchronization { description "Trace synchronization between OSPF and LDP"; } enum on-demand { description "Trace demand circuit extensions"; } enum nsr-synchronization { description "Trace NSR synchronization events"; } enum graceful-restart { description "Trace graceful restart"; } enum restart-signaling { description "Trace restart signaling"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } list topology { key name; ordered-by user; description "Topology parameters"; leaf name { description "Topology name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable this topology"; type empty; } leaf topology-id { description "Topology identifier"; type uint8 { range "32 .. 127"; } } leaf overload { description "Set the overload mode (repel transit traffic)"; type empty; } leaf rib-group { description "Routing table group for importing routes"; type string; } container spf-options { description "Configure options for SPF"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf delay { description "Time to wait before running an SPF"; units "milliseconds"; type uint32 { range "50 .. 8000"; } } leaf holddown { description "Time to hold down before running an SPF"; units "milliseconds"; type uint32 { range "2000 .. 20000"; } } leaf rapid-runs { description "Number of maximum rapid SPF runs before holddown"; type uint32 { range "1 .. 10"; } } leaf no-ignore-our-externals { description "Do not ignore self-generated external and NSSA LSAs"; type empty; } } container backup-spf-options { description "Configure options for backup SPF"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Do not run backup SPF"; type empty; } leaf no-install { description "Do not install backup nexthops into the RIB"; type empty; } leaf downstream-paths-only { description "Use only downstream backup paths"; type empty; } } leaf prefix-export-limit { description "Maximum number of prefixes that can be exported"; type uint32 { range "0 .. 4294967295"; } } } container spf-options { description "Configure options for SPF"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf delay { description "Time to wait before running an SPF"; units "milliseconds"; type uint32 { range "50 .. 8000"; } } leaf holddown { description "Time to hold down before running an SPF"; units "milliseconds"; type uint32 { range "2000 .. 20000"; } } leaf rapid-runs { description "Number of maximum rapid SPF runs before holddown"; type uint32 { range "1 .. 10"; } } leaf no-ignore-our-externals { description "Do not ignore self-generated external and NSSA LSAs"; type empty; } } container backup-spf-options { description "Configure options for backup SPF"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Do not run backup SPF"; type empty; } leaf no-install { description "Do not install backup nexthops into the RIB"; type empty; } leaf downstream-paths-only { description "Use only downstream backup paths"; type empty; } } leaf prefix-export-limit { description "Maximum number of prefixes that can be exported"; type uint32 { range "0 .. 4294967295"; } } leaf rib-group { description "Routing table group for importing OSPF routes"; type string; } container overload { presence "enable overload"; description "Set the overload mode (repel transit traffic)"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf timeout { description "Time after which overload mode is reset"; units "seconds"; type uint32 { range "60 .. 1800"; } } } container database-protection { presence "enable database-protection"; description "Configure database protection attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum-lsa { description "Maximum allowed non self-generated LSAs"; type uint32 { range "1 .. 1000000"; } mandatory true; } leaf warning-only { description "Emit only a warning when LSA maximum limit is exceeded"; type empty; } leaf warning-threshold { description "Percentage of LSA maximum above which to trigger warning"; units "percent"; type uint8 { range "30 .. 100"; } } leaf ignore-count { description "Maximum number of times to go into ignore state"; type uint8 { range "1 .. 32"; } } leaf ignore-time { description "Time to stay in ignore state and ignore all neighbors"; units "seconds"; type uint16 { range "30 .. 3600"; } } leaf reset-time { description "Time after which the ignore count gets reset to zero"; units "seconds"; type uint32 { range "60 .. 86400"; } } } container graceful-restart { description "Configure graceful restart attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable OSPF graceful restart capability"; type empty; } } } leaf restart-duration { description "Time for all neighbors to become full"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf notify-duration { description "Time to send all max-aged grace LSAs"; units "seconds"; type uint32 { range "1 .. 3600"; } } container helper-disable { presence "enable helper-disable"; description "Disable graceful restart helper capability"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice disable-choices { case case_1 { leaf standard { description "Disable helper-mode for rfc3623 based GR"; type empty; } } case case_2 { leaf restart-signaling { description "Disable helper mode for restart-signaling "; type empty; } } case case_3 { leaf both { description "Disable helper mode for both the types of GR"; type empty; } } } } leaf no-strict-lsa-checking { description "Do not abort graceful helper mode upon LSA changes"; type empty; } } container traffic-engineering { presence "enable traffic-engineering"; description "Configure traffic engineering attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-topology { description "Disable dissemination of TE link-state topology information"; type empty; } leaf multicast-rpf-routes { description "Install routes for multicast RPF checks into inet.2"; type empty; } leaf ignore-lsp-metrics { description "Ignore label-switched path metrics when doing shortcuts"; type empty; } container shortcuts { presence "enable shortcuts"; description "Use label-switched paths as next hops, if possible"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf lsp-metric-into-summary { description "Advertise LSP metric into summary LSAs"; type empty; } } leaf advertise-unnumbered-interfaces { description "Advertise unnumbered interfaces"; type empty; } leaf credibility-protocol-preference { description "TED protocol credibility follows protocol preference"; type empty; } } leaf route-type-community { description "Specify BGP extended community value to encode OSPF route type"; type enumeration { enum iana { description "BGP extended community value used is 0x0306"; } enum vendor { description "Vendor BGP extended community value used is 0x8000"; } } } container domain-id { description "Configure domain ID"; choice domain_id_or_disable { case case_1 { leaf domain-id { description "Domain ID"; type string; } } case case_2 { leaf disable { description "Disable domain ID"; type empty; } } } } choice domain_vpn_tag_or_disable { case case_1 { leaf domain-vpn-tag { description "Domain VPN tag for external LSA"; type uint32 { range "0 .. 4294967295"; } } } case case_2 { leaf no-domain-vpn-tag { description "Disable domain VPN tag"; type empty; } } } leaf preference { description "Preference of internal routes"; type uint32; } leaf external-preference { description "Preference of external routes"; type uint32; } leaf-list export { description "Export policy"; type policy-algebra; } leaf-list import { description "Import policy (for external routes or setting priority)"; type policy-algebra; } leaf reference-bandwidth { description "Bandwidth for calculating metric defaults"; type string; } leaf lsa-refresh-interval { description "LSA refresh interval (minutes)"; default "50"; type uint32 { range "25 .. 50"; } } leaf no-rfc-1583 { description "Disable RFC1583 compatibility"; type empty; } leaf forwarding-address-to-broadcast { description "Set forwarding address in Type 5 LSA in broadcast network"; type empty; } choice nssa-abr-option { case case_1 { leaf no-nssa-abr { description "Disable full NSSA functionality at ABR"; type empty; } } } container sham-link { presence "enable sham-link"; description "Configure parameters for sham links"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf local { description "Local sham link endpoint address"; type ipaddr; } } list area { key name; ordered-by user; description "Configure an OSPF area"; leaf name { description "Area ID"; type areaid; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice stub-option { case case_1 { container stub { presence "enable stub"; description "Configure a stub area"; leaf default-metric { description "Metric for the default route in this stub area"; type uint32 { range "1 .. 16777215"; } } leaf summaries { description "Flood summary LSAs into this stub area"; type empty; } leaf no-summaries { description "Flood summary LSAs into this stub area"; type empty; } } } case case_2 { container nssa { presence "enable nssa"; description "Configure a not-so-stubby area"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container default-lsa { presence "enable default-lsa"; description "Configure a default LSA"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default-metric { description "Metric for the default route in this area"; type uint32 { range "1 .. 16777215"; } } leaf metric-type { description "External metric type for the default type 7 LSA"; type uint32 { range "1 .. 2"; } } leaf type-7 { description "Flood type 7 default LSA if no-summaries is configured"; type empty; } } leaf summaries { description "Flood summary LSAs into this NSSA area"; type empty; } leaf no-summaries { description "Flood summary LSAs into this NSSA area"; type empty; } list area-range { key name; ordered-by user; description "Configure NSSA area ranges"; leaf name { description "Range to summarize NSSA routes in this area"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf restrict { description "Restrict advertisement of this area range"; type empty; } leaf exact { description "Enforce exact match for advertisement of this area range"; type empty; } container override-metric { presence "enable override-metric"; description "Override the dynamic metric for this area-range"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf metric { description "Metric value"; type uint32 { range "1 .. 16777215"; } mandatory true; } leaf metric-type { description "Set the metric type for the override metric"; default "1"; type uint32 { range "1 .. 2"; } } } } } } } list area-range { key name; ordered-by user; description "Configure area ranges"; leaf name { description "Range to summarize routes in this area"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf restrict { description "Restrict advertisement of this area range"; type empty; } leaf exact { description "Enforce exact match for advertisement of this area range"; type empty; } leaf override-metric { description "Override the dynamic metric for this area-range"; type uint32 { range "1 .. 16777215"; } } } leaf-list network-summary-export { description "Export policy for Type 3 Summary LSAs"; type policy-algebra; } leaf-list network-summary-import { description "Import policy for Type 3 Summary LSAs"; type policy-algebra; } leaf-list inter-area-prefix-export { description "Export policy for Inter Area Prefix LSAs"; type policy-algebra; } leaf-list inter-area-prefix-import { description "Import policy for Inter Area Prefix LSAs"; type policy-algebra; } list virtual-link { key "neighbor-id transit-area"; ordered-by user; description "Configure virtual links"; leaf neighbor-id { description "Router ID of a virtual neighbor"; type ipv4addr; } leaf transit-area { description "Transit area in common with virtual neighbor"; type areaid; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable this virtual link"; type empty; } } } leaf retransmit-interval { description "Retransmission interval (seconds)"; type uint32 { range "1 .. 65535"; } } leaf transit-delay { description "Transit delay (seconds)"; type uint32 { range "1 .. 65535"; } } leaf hello-interval { description "Hello interval (seconds)"; type uint32 { range "1 .. 255"; } } leaf dead-interval { description "Dead interval (seconds)"; type uint32 { range "1 .. 65535"; } } choice auth { case case_1 { container authentication { uses juniper-ospf-authentication; } } } leaf demand-circuit { description "Interface functions as a demand circuit"; type empty; } leaf flood-reduction { description "Enable flood reduction"; type empty; } leaf no-neighbor-down-notification { description "Don't inform other protocols about neighbor down events"; type empty; } leaf ipsec-sa { description "IPSec security association name"; type string { length "1 .. 32"; } } list topology { key name; ordered-by user; description "Topology specific attributes"; leaf name { description "Topology name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable this topology"; type empty; } leaf metric { description "Topology metric"; type uint16 { range "1 .. 65535"; } } container bandwidth-based-metrics { description "Configure bandwidth based metrics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list bandwidth { key name; description "Bandwidth threshold"; leaf name { description "(null)"; type string; } leaf metric { description "Metric associated with specified bandwidth"; type uint16 { range "1 .. 65535"; } mandatory true; } } } } } list sham-link-remote { key name; ordered-by user; description "Configure parameters for remote sham link endpoint"; leaf name { description "Remote sham link endpoint address"; type ipaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf metric { description "Sham link metric"; type uint16 { range "1 .. 65535"; } } leaf ipsec-sa { description "IPSec security association name"; type string { length "1 .. 32"; } } leaf demand-circuit { description "Interface functions as a demand circuit"; type empty; } leaf flood-reduction { description "Enable flood reduction"; type empty; } list topology { key name; ordered-by user; description "Topology specific attributes"; leaf name { description "Topology name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable this topology"; type empty; } leaf metric { description "Topology metric"; type uint16 { range "1 .. 65535"; } } container bandwidth-based-metrics { description "Configure bandwidth based metrics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list bandwidth { key name; description "Bandwidth threshold"; leaf name { description "(null)"; type string; } leaf metric { description "Metric associated with specified bandwidth"; type uint16 { range "1 .. 65535"; } mandatory true; } } } } } list interface { key name; ordered-by user; description "Include an interface in this area"; leaf name { description "Interface name"; type ipv4addr-or-interface; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable OSPF on this interface"; type empty; } } } leaf interface-type { description "Type of interface"; type enumeration { enum nbma { description "Nonbroadcast multiaccess"; } enum p2mp { description "Point-to-multipoint NBMA"; } enum p2p { description "Point-to-point"; } enum p2mp-over-lan { description "Point-to-multipoint over LAN mode"; } } } choice protection-type { case case_1 { leaf link-protection { description "Protect interface from link faults only"; type empty; } } case case_2 { leaf node-link-protection { description "Protect interface from both link and node faults"; type empty; } } } leaf no-eligible-backup { description "Not eligible to backup traffic from protected interfaces"; type empty; } container passive { presence "enable passive"; description "Do not run OSPF, but advertise it"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traffic-engineering { description "Advertise TE link information"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf remote-node-id { description "Remote address of the link"; type ipaddr; } leaf remote-node-router-id { description "TE Router-ID of the remote node"; type ipv4addr; } } } leaf secondary { description "Treat interface as secondary"; type empty; } leaf own-router-lsa { description "Generate a separate router LSA for this interface"; type empty; } container bandwidth-based-metrics { description "Configure bandwidth based metrics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list bandwidth { key name; description "Bandwidth threshold"; leaf name { description "(null)"; type string; } leaf metric { description "Metric associated with specified bandwidth"; type uint16 { range "1 .. 65535"; } mandatory true; } } } leaf metric { description "Interface metric"; type uint16 { range "1 .. 65535"; } } leaf te-metric { description "Traffic engineering metric"; type uint32 { range "1 .. 4294967295"; } } leaf priority { description "Designated router priority"; type uint32 { range "0 .. 255"; } } container ldp-synchronization { description "Advertise maximum metric until LDP is operational"; uses ldp-sync-obj; } leaf retransmit-interval { description "Retransmission interval (seconds)"; type uint32 { range "1 .. 65535"; } } leaf transit-delay { description "Transit delay (seconds)"; type uint32 { range "1 .. 65535"; } } leaf hello-interval { description "Hello interval (seconds)"; type uint32 { range "1 .. 255"; } } leaf dead-interval { description "Dead interval (seconds)"; type uint32 { range "1 .. 65535"; } } choice auth { case case_1 { container authentication { uses juniper-ospf-authentication; } } } leaf demand-circuit { description "Interface functions as a demand circuit"; type empty; } leaf flood-reduction { description "Enable flood reduction"; type empty; } leaf no-neighbor-down-notification { description "Don't inform other protocols about neighbor down events"; type empty; } leaf ipsec-sa { description "IPSec security association name"; type string { length "1 .. 32"; } } list topology { key name; ordered-by user; description "Topology specific attributes"; leaf name { description "Topology name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable this topology"; type empty; } leaf metric { description "Topology metric"; type uint16 { range "1 .. 65535"; } } container bandwidth-based-metrics { description "Configure bandwidth based metrics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list bandwidth { key name; description "Bandwidth threshold"; leaf name { description "(null)"; type string; } leaf metric { description "Metric associated with specified bandwidth"; type uint16 { range "1 .. 65535"; } mandatory true; } } } } container bfd-liveness-detection { description "Bidirectional Forwarding Detection options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } container authentication { description "Authentication options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf key-chain { description "Key chain name"; type string; } leaf algorithm { description "Algorithm name"; type enumeration { enum simple-password { description "Simple password"; } enum keyed-md5 { description "Keyed message Digest 5"; } enum meticulous-keyed-md5 { description "Meticulous keyed message Digest 5"; } enum keyed-sha-1 { description "Keyed secure hash algorithm (SHA1) "; } enum meticulous-keyed-sha-1 { description "Meticulous keyed secure hash algorithm (SHA1) "; } } } leaf loose-check { description "Verify authentication only if authentication is negotiated"; type empty; } } leaf full-neighbors-only { description "Setup BFD sessions only to Full neighbors"; type empty; } } leaf dynamic-neighbors { description "Learn neighbors dynamically on a p2mp interface"; type empty; } list neighbor { key name; ordered-by user; description "NBMA neighbor"; leaf name { description "Address of neighbor"; type ipaddr; } leaf eligible { description "Eligible to be DR on an NBMA network"; type empty; } } leaf poll-interval { description "Poll interval for NBMA interfaces"; type uint32 { range "1 .. 65535"; } } leaf no-interface-state-traps { description "Do not send interface state change traps"; type empty; } } leaf no-context-identifier-advertisement { description "Disable context identifier advertisments in this area"; type empty; } list context-identifier { key name; ordered-by user; description "Configure context identifier in support of edge protection"; leaf name { description "Context identifier"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list label-switched-path { key name; ordered-by user; description "Configuration for advertisement of a label-switched path"; leaf name { description "Name of label-switched path to be advertised"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable OSPF on this label-switched path"; type empty; } } } leaf metric { description "Interface metric"; type uint16 { range "1 .. 65535"; } } list topology { key name; ordered-by user; description "Topology specific attributes"; leaf name { description "Topology name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable this topology"; type empty; } leaf metric { description "Topology metric"; type uint16 { range "1 .. 65535"; } } container bandwidth-based-metrics { description "Configure bandwidth based metrics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list bandwidth { key name; description "Bandwidth threshold"; leaf name { description "(null)"; type string; } leaf metric { description "Metric associated with specified bandwidth"; type uint16 { range "1 .. 65535"; } mandatory true; } } } } } list peer-interface { key name; ordered-by user; description "Configuration for peer interface"; leaf name { description "Name of peer interface"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable OSPF on this control peer"; type empty; } } } leaf retransmit-interval { description "Retransmission interval (seconds)"; type uint32 { range "1 .. 65535"; } } leaf transit-delay { description "Transit delay (seconds)"; type uint32 { range "1 .. 65535"; } } leaf hello-interval { description "Hello interval (seconds)"; type uint32 { range "1 .. 255"; } } leaf dead-interval { description "Dead interval (seconds)"; type uint32 { range "1 .. 65535"; } } choice auth { case case_1 { container authentication { uses juniper-ospf-authentication; } } } leaf demand-circuit { description "Interface functions as a demand circuit"; type empty; } leaf flood-reduction { description "Enable flood reduction"; type empty; } leaf no-neighbor-down-notification { description "Don't inform other protocols about neighbor down events"; type empty; } } } } grouping juniper-protocols-pgm { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "PGM trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum init { description "Trace initialization events"; } enum show { description "Trace show command servicing"; } enum route-socket { description "Trace route-socket events"; } enum parse { description "Trace parser processing"; } enum state { description "Trace state transitions"; } enum packets { description "Trace packet processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } } grouping juniper-protocols-pim { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container family { description "Local address family"; container any { presence "enable any"; description "Default properties for all address families"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable all families"; type empty; } } container inet { presence "enable inet"; description "IPv4 specific properties"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable PIMv4 on all interfaces"; type empty; } } } } container inet6 { presence "enable inet6"; description "IPv6 specific properties"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable PIMv6 on all interfaces"; type empty; } } } } } choice enable-disable { case case_1 { leaf disable { description "Disable PIM"; type empty; } } } container nonstop-routing { description "Configure PIM nonstop-routing attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable non-stop routing for PIM"; type empty; } } } } container traceoptions { description "Trace options for PIM"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum route { description "Trace routing information"; } enum packets { description "Trace all PIM packets"; } enum hello { description "Trace hello packets"; } enum register { description "Trace register/register-stop messages"; } enum join { description "Trace join/prune/graft/graft-ack messages"; } enum prune { description "Trace join/prune/graft/graft-ack messages"; } enum graft { description "Trace join/prune/graft/graft-ack messages"; } enum bootstrap { description "Trace bootstrap/RP/auto-RP messages"; } enum rp { description "Trace bootstrap/RP/auto-RP messages"; } enum autorp { description "Trace bootstrap/RP/auto-RP messages"; } enum assert { description "Trace assert messages"; } enum mdt { description "Trace messages related to multicast data tunnels"; } enum nsr-synchronization { description "Trace NSR synchronization events"; } enum bidirectional-df-election { description "Trace bidirectional PIM DF election events"; } enum mofrr { description "Trace Multicast only Fast Re-Route messages"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } container filter { description "Filter to apply to this flag"; uses pim_filter_obj; } } } container dense-groups { description "Dense mode groups for sparse-dense mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf dynamic-reject { description "Reject dynamic autorp negative dense-mode prefixes learnt from network"; type empty; } list pim-dense-group-type { key name; ordered-by user; description "(null)"; leaf name { description "Group address or range to forward in dense mode"; type ipprefix; } choice dense-group-flags { case case_1 { leaf reject { description "Do not include prefix as dense mode; force sparse mode"; type empty; } } case case_2 { leaf announce { description "Advertise as negative prefix in auto-RP announce messages"; type empty; } } } } } leaf-list tunnel-devices { description "Tunnel devices to be used for creating mt interfaces"; type interface-device; } container rpf-selection { description "Select RPF neighbor"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "IP prefix of multicast group"; leaf name { description "IP prefix of group"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container wildcard-source { presence "enable wildcard-source"; description "Select RPF for (*,g) and unspecified (s,g) joins"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf next-hop { description "Next-hop address"; type ipaddr; mandatory true; } } list source { key name; ordered-by user; description "IP prefix of one or more multicast sources"; leaf name { description "IP prefix of source"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf next-hop { description "Next-hop address"; type ipaddr; mandatory true; } } } list prefix-list { key name; ordered-by user; description "Multicast group prefix list"; leaf name { description "Name of prefix list to match against"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container wildcard-source { presence "enable wildcard-source"; description "Select RPF for (*,g) and unspecified (s,g) joins"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf next-hop { description "Next-hop address"; type ipaddr; mandatory true; } } list source { key name; ordered-by user; description "IP prefix of one or more multicast sources"; leaf name { description "IP prefix of source"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf next-hop { description "Next-hop address"; type ipaddr; mandatory true; } } } } container mvpn { presence "enable mvpn"; description "PIM MVPN control-plane options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container family { description "PIM MVPN address family"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container inet { description "IPv4 PIM MVPN specific properties"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container autodiscovery { description "PE router autodiscovery options for SSM MDTs"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf inet-mdt { description "MDT-SAFI PE autodiscovery for SSM MDTs"; type empty; } } leaf disable { description "Disable family IPv4"; type empty; } } container inet6 { description "IPv6 PIM MVPN specific properties"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } container rib-group { description "Routing table group"; uses rib_group_type; } leaf-list import { description "PIM sparse import join policy"; type policy-algebra; } leaf-list export { description "PIM sparse export join policy"; type policy-algebra; } container mldp-inband-signalling { presence "enable mldp-inband-signalling"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list policy { description "PIM MLDP join translation filter policy"; type policy-algebra; } } leaf assert-timeout { description "Set assert timeout"; default "180"; type uint32 { range "5 .. 210"; } } leaf assert-robust-count { description "Number of assert messages an assert winner sends in one cycle"; default "2"; type uint32 { range "1 .. 5"; } } leaf join-prune-timeout { description "Set join/prune timeout"; default "210"; type uint32 { range "210 .. 420"; } } container spt-threshold { description "Set shortest-path-tree threshold policy"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list infinity { description "Apply policy to always remain on shared tree"; type policy-algebra; } } container sglimit { description "Set limit on number of (S,G) states "; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list family { key name; ordered-by user; description "Protocol family"; leaf name { description "(null)"; type enumeration { enum inet { description "IPv4 family"; } enum inet6 { description "IPv6 family"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum { description "Maximum limit above which additional entries are not accepted"; type uint32 { range "1 .. 65535"; } } leaf threshold { description "Percentage of maximum at which to start generating warnings"; type uint32 { range "1 .. 100"; } } leaf log-interval { description "Time between successive log messages"; type uint32 { range "1 .. 65535"; } } } leaf maximum { description "Maximum limit above which additional entries are not accepted"; type uint32 { range "1 .. 65535"; } } leaf threshold { description "Percentage of maximum at which to start generating warnings"; type uint32 { range "1 .. 100"; } } leaf log-interval { description "Time between successive log messages"; type uint32 { range "1 .. 65535"; } } } container rp { description "Router's rendezvous point properties"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bootstrap-priority { description "Eligibility to be the bootstrap router (IPv4 only)"; type uint32 { range "0 .. 255"; } } leaf-list bootstrap-import { description "Bootstrap import policy (IPv4 only)"; type policy-algebra; } leaf-list bootstrap-export { description "Bootstrap export policy (IPv4 only)"; type policy-algebra; } container bootstrap { description "Bootstrap properties"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container family { description "Bootstrap address family"; container inet { description "IPv4 bootstrap properties"; uses pim_bootstrap_options_type; } container inet6 { description "IPv6 bootstrap properties"; uses pim_bootstrap_options_type; } } } container register-limit { description "Set limit on incoming registers that create (S,G) state"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list family { key name; ordered-by user; description "Protocol family"; leaf name { description "(null)"; type enumeration { enum inet { description "IPv4 family"; } enum inet6 { description "IPv6 family"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum { description "Maximum limit above which additional entries are not accepted"; type uint32 { range "1 .. 65535"; } } leaf threshold { description "Percentage of maximum at which to start generating warnings"; type uint32 { range "1 .. 100"; } } leaf log-interval { description "Time between successive log messages"; type uint32 { range "1 .. 65535"; } } } leaf maximum { description "Maximum limit above which additional entries are not accepted"; type uint32 { range "1 .. 65535"; } } leaf threshold { description "Percentage of maximum at which to start generating warnings"; type uint32 { range "1 .. 100"; } } leaf log-interval { description "Time between successive log messages"; type uint32 { range "1 .. 65535"; } } } container group-rp-mapping { description "Group-rp-mapping"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list family { key name; ordered-by user; description "Protocol family"; leaf name { description "(null)"; type enumeration { enum inet { description "IPv4 family"; } enum inet6 { description "IPv6 family"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum { description "Maximum limit above which additional entries are not accepted"; type uint32 { range "1 .. 65535"; } } leaf threshold { description "Percentage of maximum at which to start generating warnings"; type uint32 { range "1 .. 100"; } } leaf log-interval { description "Time between successive log messages"; type uint32 { range "1 .. 65535"; } } } leaf maximum { description "Maximum limit above which additional entries are not accepted"; type uint32 { range "1 .. 65535"; } } leaf threshold { description "Percentage of maximum at which to start generating warnings"; type uint32 { range "1 .. 100"; } } leaf log-interval { description "Time between successive log messages"; type uint32 { range "1 .. 65535"; } } } leaf-list rp-register-policy { description "RP policy applied to incoming register messages"; type policy-algebra; } leaf-list dr-register-policy { description "DR policy applied to outgoing register messages"; type policy-algebra; } container local { description "Router's local RP properties"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf address { description "Local RP address (IPv4 only)"; type ipv4addr; } choice enable-disable { case case_1 { leaf disable { description "Disable this RP (IPv4 only)"; type empty; } } } leaf priority { description "Router's priority for becoming an RP (IPv4 only)"; type uint32 { range "0 .. 255"; } } leaf hold-time { description "How long neighbor considers this router to be up, in seconds (IPv4 only)"; type uint32 { range "0 .. 255"; } } list group-ranges { key name; ordered-by user; description "Group address range for which this router can be an RP (IPv4 only)"; leaf name { description "(null)"; type ipv4prefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf override { description "Static RP mapping will take precedence over dynamic"; type empty; } container family { description "Local RP address family"; container inet { description "IPv4 local RP properties"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf address { description "Local RP address"; type ipv4addr; mandatory true; } presence "enable inet"; choice enable-disable { case case_1 { leaf disable { description "Disable this RP"; type empty; } } } leaf priority { description "Router's priority for becoming an RP"; type uint32 { range "0 .. 255"; } } leaf hold-time { description "How long neighbor considers this router to be up, in seconds"; type uint32 { range "0 .. 255"; } } list group-ranges { key name; ordered-by user; description "Group address range for which this router can be an RP"; leaf name { description "(null)"; type ipv4prefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf override { description "Static RP mapping will take precedence over dynamic"; type empty; } container anycast-pim { description "Attributes for IPv4 anycast PIM"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container rp-set { description "Rendezvous points belonging to anycast RP set"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list address { key name; ordered-by user; description "IPv4 address of one or more remote anycast RPs"; leaf name { description "IPv4 address of remote anycast RP"; type ipaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf forward-msdp-sa { description "Forward SAs learned from MSDP to this RP"; type empty; } } } leaf local-address { description "Local address for replicating register messages to other RPs"; type ipaddr; } } } container inet6 { description "IPv6 local RP properties"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf address { description "Local RP address"; type ipv6addr; mandatory true; } presence "enable inet6"; choice enable-disable { case case_1 { leaf disable { description "Disable this RP"; type empty; } } } leaf priority { description "Router's priority for becoming an RP"; type uint32 { range "0 .. 255"; } } leaf hold-time { description "How long neighbor considers this router to be up, in seconds"; type uint32 { range "0 .. 255"; } } list group-ranges { key name; ordered-by user; description "Group address range for which this router can be an RP"; leaf name { description "(null)"; type ipv6prefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf override { description "Static RP mapping will take precedence over dynamic"; type empty; } container anycast-pim { description "Attributes for IPv6 anycast PIM"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container rp-set { description "Rendezvous points belonging to anycast RP set"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list address { key name; ordered-by user; description "IPv6 address of one or more remote anycast RPs"; leaf name { description "IPv6 address of remote anycast RP"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } leaf local-address { description "Local address for replicating register messages to other RPs"; type ipv6addr; } } } } } container embedded-rp { presence "enable embedded-rp"; description "Set embedded-RP mode (IPv6 only)"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group-ranges { key name; ordered-by user; description "Group address range of RP"; uses pim_rp_group_range_type; } leaf maximum-rps { description "Maximum number of embedded RPs"; default "100"; type uint32 { range "1 .. 500"; } } } container auto-rp { description "Set auto-RP mode (IPv4 only)"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice autorp-mode { case case_1 { leaf discovery { description "Listen for auto-RP discovery messages"; type empty; } } case case_2 { leaf announce { description "Transmit auto-RP announcement messages"; type empty; } } case case_3 { leaf mapping { description "Transmit auto-RP mapping messages"; type empty; } } } leaf mapping-agent-election { description "Consider higher-addressed mapping agents as authoritative"; type empty; } leaf no-mapping-agent-election { description "Consider higher-addressed mapping agents as authoritative"; type empty; } } container static { description "Configure static PIM RPs"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list address { key name; ordered-by user; description "RP address"; leaf name { description "IP address of RP"; type ipaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "PIM version of RP"; type uint32 { range "1 .. 2"; } } list group-ranges { key name; ordered-by user; description "Group address range of RP"; uses pim_rp_group_range_type; } leaf override { description "Static RP mapping will take precedence over dynamic"; type empty; } } } container bidirectional { description "Configure PIM bidirectional-mode RPs"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list address { key name; ordered-by user; description "RP address"; leaf name { description "IP address of RP"; type ipaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf priority { description "Router's priority for becoming an RP"; type uint32 { range "0 .. 255"; } } leaf hold-time { description "How long neighbor considers this router to be up"; units "seconds"; type uint32 { range "0 .. 255"; } } list group-ranges { key name; ordered-by user; description "Group address range of RP"; uses pim_rp_group_range_type; } } } leaf register-probe-time { description "Register probe time"; default "5"; units "seconds"; type uint32 { range "5 .. 60"; } } } list interface { key name; ordered-by user; description "PIM interface options"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container family { description "Local address family"; container any { presence "enable any"; description "Default properties for all families"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable all families"; type empty; } } container inet { presence "enable inet"; description "IPv4 specific properties"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container bfd-liveness-detection { description "Bidirectional Forwarding Detection options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } container authentication { description "Authentication options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf key-chain { description "Key chain name"; type string; } leaf algorithm { description "Algorithm name"; type enumeration { enum simple-password { description "Simple password"; } enum keyed-md5 { description "Keyed message Digest 5"; } enum meticulous-keyed-md5 { description "Meticulous keyed message Digest 5"; } enum keyed-sha-1 { description "Keyed secure hash algorithm (SHA1) "; } enum meticulous-keyed-sha-1 { description "Meticulous keyed secure hash algorithm (SHA1) "; } } } leaf loose-check { description "Verify authentication only if authentication is negotiated"; type empty; } } } choice enable-disable { case case_1 { leaf disable { description "Disable PIMv4 on this interface"; type empty; } } } } container inet6 { presence "enable inet6"; description "IPv6 specific properties"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container bfd-liveness-detection { description "Bidirectional Forwarding Detection options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } container authentication { description "Authentication options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf key-chain { description "Key chain name"; type string; } leaf algorithm { description "Algorithm name"; type enumeration { enum simple-password { description "Simple password"; } enum keyed-md5 { description "Keyed message Digest 5"; } enum meticulous-keyed-md5 { description "Meticulous keyed message Digest 5"; } enum keyed-sha-1 { description "Keyed secure hash algorithm (SHA1) "; } enum meticulous-keyed-sha-1 { description "Meticulous keyed secure hash algorithm (SHA1) "; } } } leaf loose-check { description "Verify authentication only if authentication is negotiated"; type empty; } } } choice enable-disable { case case_1 { leaf disable { description "Disable PIMv6 on this interface"; type empty; } } } } } choice enable-disable { case case_1 { leaf disable { description "Disable PIM on this interface"; type empty; } } } container bidirectional { description "PIM bidirectional mode properties"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container df-election { description "Bidir designated forwarder properties"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf robustness-count { description "Election robustness count"; type uint32 { range "1 .. 10"; } } leaf offer-period { description "Election offer message period"; units "milliseconds"; type uint32 { range "100 .. 10000"; } } leaf backoff-period { description "Election backoff period"; units "milliseconds"; type uint32 { range "100 .. 65535"; } } } } leaf mode { description "Mode of interface"; type enumeration { enum dense { description "Dense mode"; } enum sparse { description "Sparse mode"; } enum sparse-dense { description "Sparse-dense mode"; } enum bidirectional-sparse { description "Bidirectional-sparse mode"; } enum bidirectional-sparse-dense { description "Bidirectional-sparse-dense mode"; } } } leaf priority { description "Hello option DR priority"; type uint32 { range "0 .. 4294967295"; } } leaf version { description "Force PIM version"; type uint32 { range "1 .. 2"; } } leaf hello-interval { description "Hello interval"; units "seconds"; type uint32 { range "0 .. 255"; } } leaf-list neighbor-policy { description "PIM neighbor policy applied to incoming hello messages"; type policy-algebra; } leaf accept-remote-source { description "Accept traffic from remote source"; type empty; } leaf dual-dr { description "PIM Dual DR"; type empty; } leaf reset-tracking-bit { description "Clear tracking-bit in PIM Hello LAN Prune Delay Option"; type empty; } leaf propagation-delay { description "Propagation delay value"; default "500"; units "milliseconds"; type uint32 { range "250 .. 2000"; } } leaf override-interval { description "Override interval value"; default "2000"; units "milliseconds"; type uint32 { range "500 .. 6000"; } } } container graceful-restart { description "Configure graceful restart attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable PIM graceful restart capability"; type empty; } } } leaf restart-duration { description "Maximum time for graceful restart to finish (seconds)"; units "seconds"; type uint32 { range "30 .. 300"; } } leaf no-bidirectional-mode { description "Disable PIM graceful restart for bidirectional mode"; type empty; } } container join-load-balance { presence "enable join-load-balance"; description "Configure PIM join load balancing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf automatic { description "Enable automatic PIM join load balancing"; type empty; } } leaf standby-path-creation-delay { description "Amount of time to wait before creating standby path"; units "seconds"; type uint32 { range "1 .. 300"; } } leaf idle-standby-path-switchover-delay { description "Amount of time to wait before switching over to idle standby path"; units "seconds"; type uint32 { range "1 .. 300"; } } leaf dr-election-on-p2p { description "Enable DR election on Point-to-Point Interfaces"; type empty; } leaf no-wildcard-register-stop { description "Disable sending of wildcard register stop message"; type empty; } leaf nexthop-hold-time { description "Nexthop hold time in milliseconds"; units "milliseconds"; type uint32 { range "1 .. 1000"; } } leaf mpls-internet-multicast { description "Enable support for Internet Multicast over MPLS"; type empty; } container join-make-before-break { description "Enable PIM Join Make-Before-Break during RPF neighbor change"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable Make-Before-Break for PIM RPF neighbor change"; type empty; } } } } leaf reset-tracking-bit { description "Clear tracking-bit in PIM Hello LAN Prune Delay Option"; type empty; } leaf propagation-delay { description "Propagation delay value"; default "500"; units "milliseconds"; type uint32 { range "250 .. 2000"; } } leaf override-interval { description "Override interval value"; default "2000"; units "milliseconds"; type uint32 { range "500 .. 6000"; } } container default-vpn-source { presence "enable default-vpn-source"; description "Let all VRFs use master loopback address for mt interfaces"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interface-name { description "Master loopback interface name"; type interface-unit; } } } grouping juniper-protocols-protection-group { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container ethernet-aps { description "Ethernet APS configuration"; uses juniper-protocols-protection-group-eaps; } container traceoptions { description "Tracing options for debugging protocol operation"; uses erp-trace-options; } leaf restore-interval { description "Wait to restore interval"; default "5"; units "minutes"; type uint32 { range "5 .. 12"; } } leaf guard-interval { description "Guard timer interval in 10ms steps"; default "500"; units "milliseconds"; type uint32 { range "10 .. 2000"; } } leaf hold-interval { description "Hold off timer interval in 100ms steps"; default "0"; units "milliseconds"; type uint32 { range "0 .. 10000"; } } list ethernet-ring { key name; ordered-by user; description "Ethernet ring"; uses juniper-protocols-protection-group-ethernet-ring; } } grouping erp-trace-options { description "Trace options for Ethernet Ring Protocol"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum events { description "Trace events to the protocol state machine"; } enum pdu { description "Trace R-APS PDU reception and transmission"; } enum timers { description "Trace protocol timers"; } enum state-machine { description "Trace R-APS state machine"; } enum periodic-packet-management { description "Trace periodic packet management state and events"; } enum config { description "Trace protocol configuration"; } enum normal { description "Trace protocol general log messages"; } enum debug { description "Trace protocol debug log messages"; } enum all { description "Trace all"; } } } } container file { description "Trace file options"; uses trace_file_type; } } grouping juniper-protocols-protection-group-eaps { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list profile { key name; description "(null)"; uses juniper-protocols-protection-group-eaps-profile; } } grouping juniper-protocols-protection-group-eaps-profile { description "Ethernet APS profile"; leaf name { description "Profile name"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf protocol { description "Protocol value"; type enumeration { enum ccm { description "Use CCM packets for protection."; } enum G.8031 { description "Use G.8031 packets for protection."; } } mandatory true; } leaf revert-time { description "Reversion time in minutes, 0 would mean no reversion"; default "4"; units "minutes"; type uint32 { range "0 .. 15"; } } leaf hold-time { description "Hold time in seconds"; default "0"; units "milli seconds"; type uint32 { range "0 .. 10000"; } } leaf local-request { description "Local APS request"; type enumeration { enum lockout { description "Lockout protection"; } } } } grouping juniper-protocols-protection-group-ethernet-ring { description "Ethernet Ring protection group configuration"; leaf name { description "Name of Ethernet Ring protection group"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf node-id { description "Node ID of the protection group, by default bridge's MAC"; type mac-unicaset; } leaf ring-protection-link-owner { description "Ring protection link owner flag, one ring should have only one node as a ring protection link owner"; type empty; } leaf restore-interval { description "Wait to restore interval applicable only on RPL owner"; units "minutes"; type uint32 { range "5 .. 12"; } } leaf guard-interval { description "Guard timer interval in 10ms"; default "500"; units "milliseconds"; type uint32 { range "10 .. 2000"; } } leaf hold-interval { description "Hold off timer interval in 100ms steps"; default "0"; units "milliseconds"; type uint32 { range "0 .. 10000"; } } leaf non-revertive { description "Non-revertive mode of operation"; type empty; } leaf wait-to-block-interval { description "Wait to block interval"; default "5"; units "seconds"; type uint32 { range "5 .. 10"; } } leaf major-ring-name { description "Name of major-ring to which this sub-ring node attached"; type string { length "1 .. 32"; } } leaf propagate-tc { description "Enable Topology Change Propagation to major-ring from the sub-ring"; type empty; } leaf compatibility-version { description "G.8032 compatibility version"; default "2"; type uint32 { range "1 .. 2"; } } leaf ring-id { description "Ethernet Ring ID of protection group"; default "1"; type uint32 { range "1 .. 239"; } } leaf non-vc-mode { description "Node is operating in non virtual channel mode"; type empty; } leaf dot1p-priority { description "IEEE 802.1p priority of transmitted R-APS"; default "0"; type uint32 { range "0 .. 7"; } } container east-interface { description "East interface configuration"; uses erp-interface; } container west-interface { description "West interface configuration"; uses erp-interface; } leaf control-vlan { description "Dedicated VLAN identifier - VLAN id or VLAN name"; type string; } container data-channel { description "Ring instance data channel"; uses erp-data-channel; } } grouping erp-data-channel { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list vlan { description "VLAN ID or VLAN ID range [1..4094]"; type string; } } grouping erp-interface { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container control-channel { presence "enable control-channel"; description "Control channel of ring port"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf vlan { description "Dedicated VLAN identifier"; type uint16 { range "1 .. 4094"; } } leaf control-channel-name { description "(null)"; type interface-name; mandatory true; } } leaf ring-protection-link-end { description "Port is connecting to ring protection link"; type empty; } leaf interface-none { description "Port is not used"; type empty; } } grouping juniper-protocols-rip { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for RIP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum auth { description "Trace RIP authentication"; } enum error { description "Trace RIP errors"; } enum expiration { description "Trace RIP route expiration processing"; } enum holddown { description "Trace RIP hold-down processing"; } enum packets { description "Trace all RIP packets"; } enum request { description "Trace RIP information packets"; } enum trigger { description "Trace RIP triggered updates"; } enum update { description "Trace RIP update packets"; } enum nsr-synchronization { description "Trace NSR synchronization events"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } container filter { description "Filter to apply to this flag"; uses rip_filter_obj; } } } container rib-group { description "Routing table group for importing RIP routes"; uses rib_group_inet_type; } leaf metric-in { description "Metric value to add to incoming routes"; type uint32 { range "1 .. 15"; } } container send { description "Configure RIP send options"; choice send-opts { case case_1 { leaf broadcast { description "Broadcast RIPv2 packets (RIPv1 compatible)"; type empty; } } case case_2 { leaf multicast { description "Multicast RIPv2 packets"; type empty; } } case case_3 { leaf none { description "Do not send RIP updates"; type empty; } } case case_4 { leaf version-1 { description "Broadcast RIPv1 packets"; type empty; } } } } container receive { description "Configure RIP receive options"; choice receive-opts { case case_1 { leaf both { description "Accept both RIPv1 and RIPv2 packets"; type empty; } } case case_2 { leaf none { description "Do not receive RIP packets"; type empty; } } case case_3 { leaf version-1 { description "Accept RIPv1 packets only"; type empty; } } case case_4 { leaf version-2 { description "Accept only RIPv2 packets"; type empty; } } } } leaf check-zero { description "Check reserved fields on incoming RIPv2 packets"; type empty; } leaf no-check-zero { description "Check reserved fields on incoming RIPv2 packets"; type empty; } leaf message-size { description "Number of route entries per update message"; type uint32 { range "25 .. 255"; } } leaf-list import { description "Import policy"; type policy-algebra; } leaf holddown { description "Hold-down time"; units "seconds"; type uint32 { range "10 .. 180"; } } leaf route-timeout { description "Delay before routes time out"; units "seconds"; type uint32 { range "30 .. 360"; } } leaf update-interval { description "Interval between regular route updates"; units "seconds"; type uint32 { range "10 .. 60"; } } leaf authentication-type { description "Authentication type"; type enumeration { enum none { description "No authentication"; } enum simple { description "Simple password authentication"; } enum md5 { description "MD5 authentication"; } } } leaf authentication-key { description "Authentication key (password)"; type unreadable; } list group { key name; ordered-by user; description "Instance configuration"; leaf name { description "Group name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf route-timeout { description "Delay before routes time out"; units "seconds"; type uint32 { range "30 .. 360"; } } leaf update-interval { description "Interval between regular route updates"; units "seconds"; type uint32 { range "10 .. 60"; } } leaf preference { description "Preference of routes learned by this group"; type uint32; } leaf metric-out { description "Default metric of exported routes"; type uint32 { range "1 .. 15"; } } leaf-list export { description "Export policy"; type policy-algebra; } leaf-list import { description "Import policy"; type policy-algebra; } leaf demand-circuit { description "Enable demand circuit on this interface"; type empty; } leaf max-retrans-time { description "Maximum time to re-transmit a message in demand-circuit"; type uint32 { range "5 .. 180"; } } container bfd-liveness-detection { description "Bidirectional Forwarding Detection options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } container authentication { description "Authentication options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf key-chain { description "Key chain name"; type string; } leaf algorithm { description "Algorithm name"; type enumeration { enum simple-password { description "Simple password"; } enum keyed-md5 { description "Keyed message Digest 5"; } enum meticulous-keyed-md5 { description "Meticulous keyed message Digest 5"; } enum keyed-sha-1 { description "Keyed secure hash algorithm (SHA1) "; } enum meticulous-keyed-sha-1 { description "Meticulous keyed secure hash algorithm (SHA1) "; } } } leaf loose-check { description "Verify authentication only if authentication is negotiated"; type empty; } } } list neighbor { key name; ordered-by user; description "Neighbor configuration"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf route-timeout { description "Delay before routes time out"; units "seconds"; type uint32 { range "30 .. 360"; } } leaf update-interval { description "Interval between regular route updates"; units "seconds"; type uint32 { range "10 .. 60"; } } leaf interface-type { description "Interface type for the neighbor"; type enumeration { enum p2mp { description "Point-to-multipoint link"; } } } leaf dynamic-peers { description "Learn peers dynamically on a p2mp interface"; type empty; } list peer { key name; ordered-by user; description "P2MP peer"; leaf name { description "Address of peer"; type ipaddr; } } leaf metric-in { description "Metric value to add to incoming routes"; type uint32 { range "1 .. 15"; } } container send { description "Configure RIP send options"; choice send-opts { case case_1 { leaf broadcast { description "Broadcast RIPv2 packets (RIPv1 compatible)"; type empty; } } case case_2 { leaf multicast { description "Multicast RIPv2 packets"; type empty; } } case case_3 { leaf none { description "Do not send RIP updates"; type empty; } } case case_4 { leaf version-1 { description "Broadcast RIPv1 packets"; type empty; } } } } container receive { description "Configure RIP receive options"; choice receive-opts { case case_1 { leaf both { description "Accept both RIPv1 and RIPv2 packets"; type empty; } } case case_2 { leaf none { description "Do not receive RIP packets"; type empty; } } case case_3 { leaf version-1 { description "Accept RIPv1 packets only"; type empty; } } case case_4 { leaf version-2 { description "Accept only RIPv2 packets"; type empty; } } } } leaf demand-circuit { description "Enable demand circuit on this interface"; type empty; } leaf max-retrans-time { description "Maximum time to re-transmit a msg in demand-circuit"; type uint32 { range "5 .. 180"; } } leaf check-zero { description "Check reserved fields on incoming RIPv1 packets"; type empty; } leaf no-check-zero { description "Check reserved fields on incoming RIPv1 packets"; type empty; } leaf any-sender { description "Disable strict checks on sender address"; type empty; } leaf message-size { description "Number of route entries per update message"; type uint32 { range "25 .. 255"; } } leaf-list import { description "Import policy"; type policy-algebra; } leaf authentication-type { description "Authentication type"; type enumeration { enum none { description "No authentication"; } enum simple { description "Simple password authentication"; } enum md5 { description "MD5 authentication"; } } } leaf authentication-key { description "Authentication key (password)"; type unreadable; } container bfd-liveness-detection { description "Bidirectional Forwarding Detection options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } container authentication { description "Authentication options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf key-chain { description "Key chain name"; type string; } leaf algorithm { description "Algorithm name"; type enumeration { enum simple-password { description "Simple password"; } enum keyed-md5 { description "Keyed message Digest 5"; } enum meticulous-keyed-md5 { description "Meticulous keyed message Digest 5"; } enum keyed-sha-1 { description "Keyed secure hash algorithm (SHA1) "; } enum meticulous-keyed-sha-1 { description "Meticulous keyed secure hash algorithm (SHA1) "; } } } leaf loose-check { description "Verify authentication only if authentication is negotiated"; type empty; } } } } } container graceful-restart { presence "enable graceful-restart"; description "RIP graceful restart options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable graceful restart"; type empty; } } } leaf restart-time { description "Time after which RIP is declared out of restart"; type uint32 { range "1 .. 600"; } } } } grouping juniper-protocols-ripng { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for RIPng"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum error { description "Trace RIPng errors"; } enum expiration { description "Trace RIPng route expiration processing"; } enum holddown { description "Trace RIPng hold-down processing"; } enum packets { description "Trace all RIPng packets"; } enum request { description "Trace RIPng information packets"; } enum trigger { description "Trace RIPng triggered updates"; } enum update { description "Trace RIPng update packets"; } enum nsr-synchronization { description "Trace NSR synchronization events"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } leaf metric-in { description "Metric value to add to incoming routes"; type uint32 { range "1 .. 15"; } } container send { description "Configure RIPng send options"; choice send-opts { case case_1 { leaf none { description "Do not send RIPng updates"; type empty; } } } } container receive { description "Configure RIPng receive options"; choice receive-opts { case case_1 { leaf none { description "Do not receive RIPng packets"; type empty; } } } } leaf-list import { description "Import policy"; type policy-algebra; } leaf holddown { description "Hold-down time"; units "seconds"; type uint32 { range "10 .. 180"; } } leaf route-timeout { description "Delay before routes time out"; units "seconds"; type uint32 { range "30 .. 360"; } } leaf update-interval { description "Interval between regular route updates"; units "seconds"; type uint32 { range "10 .. 60"; } } list group { key name; ordered-by user; description "Instance configuration"; leaf name { description "Group name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf route-timeout { description "Delay before routes time out"; units "seconds"; type uint32 { range "30 .. 360"; } } leaf update-interval { description "Interval between regular route updates"; units "seconds"; type uint32 { range "10 .. 60"; } } leaf preference { description "Preference of routes learned by this group"; type uint32; } leaf metric-out { description "Default metric of exported routes"; type uint32 { range "1 .. 15"; } } leaf-list export { description "Export policy"; type policy-algebra; } leaf-list import { description "Import policy"; type policy-algebra; } list neighbor { key name; ordered-by user; description "Neighbor configuration"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf route-timeout { description "Delay before routes time out"; units "seconds"; type uint32 { range "30 .. 360"; } } leaf update-interval { description "Interval between regular route updates"; units "seconds"; type uint32 { range "10 .. 60"; } } leaf metric-in { description "Metric value to add to incoming routes"; type uint32 { range "1 .. 15"; } } container send { description "Configure RIPng send options"; choice send-opts { case case_1 { leaf none { description "Do not send RIPng updates"; type empty; } } } } container receive { description "Configure RIPng receive options"; choice receive-opts { case case_1 { leaf none { description "Do not receive RIPng packets"; type empty; } } } } leaf-list import { description "Import policy"; type policy-algebra; } } } container graceful-restart { presence "enable graceful-restart"; description "RIPng graceful restart options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable graceful restart"; type empty; } } } leaf restart-time { description "Time after which RIPng is declared out of restart"; type uint32 { range "1 .. 600"; } } } } grouping juniper-protocols-router-discovery { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable router discovery"; type empty; } } } container traceoptions { description "Trace options for router discovery"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } } } list interface { key name; ordered-by user; description "Interfaces on which to configure router discovery"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf max-advertisement-interval { description "Maximum time before sending advertisements"; units "seconds"; type uint32 { range "4 .. 1800"; } } leaf min-advertisement-interval { description "Minimum time before sending advertisements"; units "seconds"; type uint32 { range "3 .. 1800"; } } leaf lifetime { description "How long addresses in advertisements are valid"; units "seconds"; type uint32 { range "3 .. 9000"; } } } list address { key name; ordered-by user; description "IP addresses to include in advertisements"; leaf name { description "IP addresses to include in router advertisements"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf advertise { description "Advertise the IP address in advertisements"; type empty; } leaf ignore { description "Do not advertise the IP address in advertisements"; type empty; } leaf broadcast { description "Include IP address only in broadcast advertisements"; type empty; } leaf multicast { description "Include IP address only in multicast advertisements"; type empty; } leaf ineligible { description "IP address can never become a default router"; type empty; } leaf priority { description "Preference of the address to become a default router"; type int32; } } } grouping juniper-protocols-stp { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable STP"; type empty; } } } leaf bpdu-destination-mac-address { description "Destination MAC address in the spanning tree BPDUs"; type enumeration { enum provider-bridge-group { description "802.1ad provider bridge group address"; } } } leaf bridge-priority { description "Priority of the bridge (in increments of 4k - 0,4k,8k,..60k)"; type string { } } leaf backup-bridge-priority { description "Priority of the bridge (in increments of 4k - 4k,8k,..60k)"; type string { } } leaf max-age { description "Maximum age of received protocol bpdu"; units "seconds"; type uint16 { range "6 .. 40"; } } leaf hello-time { description "Time interval between configuration BPDUs"; units "seconds"; type uint16 { range "1 .. 10"; } } leaf forward-delay { description "Time spent in listening or learning state"; units "seconds"; type uint16 { range "4 .. 30"; } } leaf system-identifier { description "Sytem identifier to represent this node"; type mac-unicaset; } container traceoptions { description "Tracing options for debugging protocol operation"; uses stp-trace-options; } leaf vpls-flush-on-topology-change { description "Enable VPLS MAC flush on root protected CE interface receving topology change"; type empty; } leaf priority-hold-time { description "Hold time before switching to primary priority when core domain becomes up"; units "seconds"; type uint16 { range "1 .. 255"; } } list system-id { key name; ordered-by user; description "System ID to IP mapping"; uses system-id-ip-map; } list interface { key name; description "Interface options"; uses stp-interface; } leaf extended-system-id { description "Extended system identifier"; type uint16 { range "0 .. 4095"; } } leaf force-version { description "Force protocol version"; type enumeration { enum stp { description "Spanning tree protocol"; } } } leaf bpdu-block-on-edge { description "Block BPDU on all interfaces configured as edge (BPDU Protect)"; type empty; } } grouping juniper-protocols-vgd { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "OVSDB trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Tracing flag parameters"; leaf name { description "(null)"; type enumeration { enum interface { description "Trace OVSDB daemon interface events"; } enum configuration { description "Trace OVSDB daemon configuration events"; } enum core { description "Trace OVSDB daemon core events"; } enum l2-client { description "Trace OVSDB daemon l2-client events"; } enum ovs-client { description "Trace OVSDB daemon ovs-client events"; } enum function { description "Trace OVSDB daemon function events"; } enum netconf-client { description "Trace OVSDB daemon netconf-client events"; } enum all { description "Trace everything"; } } } } } list interfaces { key name; ordered-by user; description "Interfaces configured to be controlled by OVSDB"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list controller { key name; ordered-by user; description "Controller's IP address and port"; leaf name { description "Controller's IPv4 address"; type ipaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container protocol { description "Protocol type for controller connection"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container tcp { description "Set protocol type to 'TCP'"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port { description "Controller's port number"; type int32 { range "1024 .. 65535"; } } } container ssl { description "Set protocol type to 'SSL' (default)"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port { description "Controller's port number"; type int32 { range "1024 .. 65535"; } } } } leaf maximum-backoff-duration { description "Maximum duration to wait between connection attempts"; units "milliseconds"; type uint32 { range "1000 .. 4294967295"; } } leaf inactivity-probe-duration { description "Maximum idle duration before sending inactivity probe"; units "milliseconds"; type uint32; } } } grouping juniper-protocols-vstp { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable VSTP"; type empty; } } } leaf force-version { description "Force protocol version"; type enumeration { enum stp { description "Spanning tree protocol"; } } } leaf bpdu-block-on-edge { description "Block BPDU on all interfaces configured as edge (BPDU Protect)"; type empty; } leaf vpls-flush-on-topology-change { description "Enable VPLS MAC flush on root protected CE interface receving topology change"; type empty; } leaf priority-hold-time { description "Hold time before switching to primary priority when core domain becomes up"; units "seconds"; type uint16 { range "1 .. 255"; } } list system-id { key name; ordered-by user; description "System ID to IP mapping"; uses system-id-ip-map; } list interface { key name; description "Interface options"; uses stp-interface; } list vlan { key name; description "VLAN spanning tree options"; leaf name { description "VLAN identifier"; type uint16 { range "1 .. 4094"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bridge-priority { description "Priority of the bridge (in increments of 4k - 0,4k,8k,..60k)"; type string { } } leaf backup-bridge-priority { description "Priority of the bridge (in increments of 4k - 4k,8k,..60k)"; type string { } } leaf max-age { description "Maximum age of received protocol bpdu"; units "seconds"; type uint16 { range "6 .. 40"; } } leaf hello-time { description "Time interval between configuration BPDUs"; units "seconds"; type uint16 { range "1 .. 10"; } } leaf forward-delay { description "Time spent in listening or learning state"; units "seconds"; type uint16 { range "4 .. 30"; } } leaf system-identifier { description "Sytem identifier to represent this node"; type mac-unicaset; } container traceoptions { description "Tracing options for debugging protocol operation"; uses stp-trace-options; } list interface { key name; description "Interface options"; uses stp-interface; } } } grouping juniper-radius { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options related to RADIUS servers"; uses radius-traceoptions; } list servers { key name; ordered-by user; description "RADIUS server configuration"; uses juniper-radius-server; } list network-elements { key name; ordered-by user; description "Network element configuration"; uses juniper-radius-network-element; } list network-element-groups { key name; ordered-by user; description "Network element group configuration"; uses juniper-radius-network-element-group; } } grouping juniper-radius-network-element { description "Network element configuration"; leaf name { description "Network element name"; type string { length "1 .. 31"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list server { key name; ordered-by user; description "RADIUS server and its priority"; leaf name { description "RADIUS server name"; type string { length "1 .. 31"; } } leaf priority { description "Server priority"; default "1"; type uint32 { range "1 .. 2"; } } } leaf algorithm { description "Server selection algorithm"; default "direct"; type enumeration { enum direct { description "Direct algorithm"; } enum round-robin { description "Round-robin algorithm"; } } } leaf maximum-pending-reqs-limit { description "Maximum number of pending requests queued to the network-element"; type uint32 { range "512 .. 8192"; } } leaf pending-queue-watermark { description "Watermark in percentage at which flow-control for pending queue of this network-element is turned on"; type uint32 { range "1 .. 99"; } } leaf pending-queue-watermark-abate { description "Watermark in percentage at which flow-control for pending queue of this network-element is turned off"; type uint32 { range "1 .. 99"; } } } grouping juniper-radius-network-element-group { description "Network element group configuration"; leaf name { description "Network element group name"; type string { length "1 .. 31"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list network-element { key name; ordered-by user; description "Specify the network-elements in this group"; max-elements 4; leaf name { description "Network element name"; type string { length "1 .. 31"; } } leaf mandatory { description "This network-element must respond to the request"; type empty; } } leaf broadcast { description "Send the request to all network-elements in the group"; type empty; } } grouping juniper-radius-server { description "RADIUS server configuration"; leaf name { description "Name to identify the server"; type string { length "1 .. 31"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf address { description "RADIUS server address"; type ipv4addr; mandatory true; } leaf port { description "RADIUS server authentication port number"; default "1812"; type uint16 { range "1 .. 65535"; } } leaf accounting-port { description "RADIUS server accounting port number"; default "1813"; type uint16 { range "1 .. 65535"; } } leaf dynamic-request-port { description "RADIUS client dynamic request port number"; default "3799"; type uint16 { range "1 .. 65535"; } } leaf secret { description "Shared secret with RADIUS server"; type string { length "1 .. 63"; } mandatory true; } leaf accounting-secret { description "Shared secret with RADIUS server for accounting"; type string { length "1 .. 63"; } } leaf allow-dynamic-requests { description "Allows dynamic-requests to be received from the radius server"; type empty; } leaf dynamic-request-secret { description "Shared secret with RADIUS client for dynamic-requests"; type string { length "1 .. 63"; } } leaf timeout { description "Request timeout period"; default "3"; units "seconds"; type uint32 { range "1 .. 90"; } } leaf retry { description "Retry attempts"; default "3"; type uint32 { range "1 .. 10"; } } container dead-criteria { description "Dead server detection criteria"; leaf retries { description "Number of retransmits before marking the server dead"; type uint16 { range "10 .. 65535"; } mandatory true; } presence "enable dead-criteria"; leaf interval { description "Interval during which the number of retries are tracked"; units "seconds"; type uint16 { range "5 .. 300"; } mandatory true; } } leaf revert-interval { description "Rervert-interval period"; default "300"; units "seconds"; type uint32 { range "0 .. 4294967295"; } } container source-interface { description "Source interface from which RADIUS packets will be sent"; leaf interface-name { description "Interface name"; type interface-name; mandatory true; } presence "enable source-interface"; leaf ipv4-address { description "Source IPv4 address to be used"; type ipv4addr; } } } grouping juniper-routing-instance { description "Routing instance"; leaf name { description "Routing instance name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf description { description "Text description of routing instance"; type string { } } leaf vlan-model { description "Subscriber vlan-model in L2Wholesale framework"; type enumeration { enum one-to-one { description "Customer VLAN model (1:1)"; } } } leaf vtep-source-interface { description "Source layer-3 IFL for VXLAN"; type interface-unit; } leaf-list remote-vtep-list { description "Configure static remote VXLAN tunnel endpoints"; type ipaddr; max-elements 1024; } leaf instance-role { description "Primary role of L2Backhaul-vpn router"; type enumeration { enum access { description "Role of Access/Aggregation router"; } enum nni { description "Role of Provider network interfacing router"; } } } leaf instance-type { description "Type of routing instance"; type enumeration { enum forwarding { description "Forwarding instance"; } enum vrf { description "Virtual routing forwarding instance"; } enum no-forwarding { description "Nonforwarding instance"; } enum l2vpn { description "Layer 2 VPN routing instance"; } enum vpls { description "VPLS routing instance"; } enum virtual-switch { description "Virtual switch routing instance"; } enum l2backhaul-vpn { description "L2Backhaul/L2Wholesale routing instance"; } enum virtual-router { description "Virtual routing instance"; } enum layer2-control { description "Layer 2 control protocols"; } enum mpls-internet-multicast { description "Internet Multicast over MPLS routing instance"; } enum evpn { description "EVPN routing instance"; } } } choice vrf-propagate-ttl-or-no-vrf-propagate-ttl { case case_1 { leaf no-vrf-propagate-ttl { description "Disable TTL propagation from IP to MPLS (on push) and MPLS to IP (on pop)"; type empty; } } case case_2 { leaf vrf-propagate-ttl { description "Enable TTL propagation from IP to MPLS (on push) and MPLS to IP (on pop)"; type empty; } } } container egress-protection { description "Egress instance protection"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf protector { description "Enable Edge Protector functionality for this VPN"; type empty; } container context-identifier { description "Context identifier"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf context-id { description "IP address"; type ipv4addr; } } } choice vlan_choice { case case_1 { leaf vlan-id { description "IEEE 802.1q VLAN identifier for bridging domain"; type string; } } case case_2 { container vlan-tags { presence "enable vlan-tags"; description "IEEE 802.1q VLAN tags for bridging domain"; leaf outer { description "[tpid.]vlan-id, tpid format is 0xNNNN and is optional"; type string { } mandatory true; } leaf inner { description "[tpid.]vlan-id, tpid format is 0xNNNN and is optional"; type string { } } } } } container system { description "System parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container services { description "System services"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container dhcp-local-server { description "Dynamic Host Configuration Protocol server configuration"; uses jdhcp-local-server-type; } container dhcp-proxy-client { description "Dynamic Host Configuration Protocol Proxy client configuration"; uses jdhcp-proxy-client-type; } container static-subscribers { description "Static Subscriber Client configuration"; uses jsscd-static-subscribers-type; } } } container access { description "Network access configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container address-assignment { description "Address assignment configuration"; uses address-assignment-type; } leaf address-protection { description "Initiate Duplicate Address Protection"; type empty; } } container access-profile { description "Access profile for this instance"; leaf access-profile-name { description "Profile name"; type string; } } list interface { key name; description "Interface name for this routing instance"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice mode { case case_1 { leaf any { description "Interface used for both unicast and multicast traffic"; type empty; } } case case_2 { leaf unicast { description "Interface used for unicast traffic only"; type empty; } } case case_3 { leaf multicast { description "Interface used for multicast traffic only"; type empty; } } } leaf primary { description "Preferred multicast vt interface for the routing-instance"; type empty; } } leaf routing-interface { description "Routing interface name for this routing-instance"; type interface-unit; } container vxlan { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ovsdb-managed { description "Managed remotely via VXLAN OVSDB Controller"; type empty; } leaf vni { description "VXLAN identifier"; type uint32 { range "1 .. 16777214"; } mandatory true; } presence "enable vxlan"; leaf multicast-group { description "Multicast group registered for VXLAN segment"; type ipv4addr; } leaf encapsulate-inner-vlan { description "Retain inner VLAN in the packet"; type empty; } leaf decapsulate-accept-inner-vlan { description "Accept VXLAN packets with inner VLAN"; type empty; } leaf unreachable-vtep-aging-timer { description "Unreachable VXLAN tunnel endpoint removal timer"; units "seconds"; type uint16 { range "300 .. 1800"; } } leaf ingress-node-replication { description "Enable ingress node replication"; type empty; } } leaf l3-interface { description "L3 interface name for this routing-instance"; type interface-unit; } leaf no-local-switching { description "Disable local switching within CE-facing interfaces"; type empty; } leaf qualified-bum-pruning-mode { description "Enable BUM pruning for VPLS instance"; type empty; } leaf no-irb-layer-2-copy { description "Disable transmission of layer-2 copy of packets of irb routing-interface"; type empty; } container route-distinguisher { description "Route distinguisher for this instance"; leaf rd-type { description "Number in (16 bit:32 bit) or (32 bit 'L':16 bit) or (IP address:16 bit) format"; type string { } } } container l2vpn-id { description "Layer-2 vpn-id for this instance"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf community { description "L2VPN ID community for FEC129 VPLS/VPWS with BGP auto-discovery"; type string { } } } container provider-tunnel { description "Provider tunnel configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice tunnel-type { case case_1 { container rsvp-te { description "RSVP-TE point-to-multipoint LSP for flooding"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice static-or-dynamic { case case_1 { leaf static-lsp { description "Name of point-to-multipoint LSP"; type string { } } } case case_2 { container label-switched-path-template { description "Template for dynamic point-to-multipoint LSP parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice dynamic-template { case case_1 { leaf template-name { description "Name of point-to-multipoint LSP template"; type string { } } } case case_2 { leaf default-template { description "Use default parameters"; type empty; } } } } } } } } case case_2 { container ldp-p2mp { presence "enable ldp-p2mp"; description "LDP point-to-multipoint LSP for flooding"; } } case case_3 { container ingress-replication { description "Ingress Replication Tunnel"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf create-new-ucast-tunnel { description "Create new unicast tunnel for ingress replication"; type empty; } container label-switched-path { presence "enable label-switched-path"; description "Point-to-point LSP unicast tunnel"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container label-switched-path-template { description "Template for dynamic point-to-point LSP parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice dynamic-template { case case_1 { leaf template-name { description "Name of point-to-point LSP template"; type string { } } } case case_2 { leaf default-template { description "Use default parameters"; type empty; } } } } } } } case case_4 { container pim-asm { description "PIM-SM provider tunnel"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf group-address { description "PIM-SM provider tunnel group address"; type ipv4addr; } } } case case_5 { container pim-ssm { description "PIM-SSM provider tunnel"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf group-address { description "PIM-SSM provider tunnel group address"; type ipv4addr; } } } } container selective { description "Selective tunnels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf tunnel-limit { description "Maximum number of selective tunnels"; type uint32 { range "0 .. 1024"; } } leaf leaf-tunnel-limit-inet { description "Maximum number of selective leaf tunnels for v4"; type uint32 { range "0 .. 1024"; } } leaf leaf-tunnel-limit-inet6 { description "Maximum number of selective leaf tunnels for v6"; type uint32 { range "0 .. 1024"; } } container wildcard-group-inet { description "IPv4 wilcard group matching any group address"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container wildcard-source { presence "enable wildcard-source"; description "Use Selective-Tunnel for wildcard-source (*,G) joins"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold-rate { description "Data threshold to create new tunnel"; units "kilobits"; type uint32 { range "0 .. 1000000"; } } choice tunnel-type { case case_1 { container ingress-replication { description "Ingress Replication Tunnel"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf create-new-ucast-tunnel { description "Create new unicast tunnel for ingress replication"; type empty; } container label-switched-path { presence "enable label-switched-path"; description "Point-to-point LSP unicast tunnel"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container label-switched-path-template { description "Template for dynamic point-to-point LSP parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice dynamic-template { case case_1 { leaf template-name { description "Name of point-to-point LSP template"; type string { } } } case case_2 { leaf default-template { description "Use default parameters"; type empty; } } } } } } } case case_2 { container rsvp-te { description "RSVP-TE point-to-multipoint LSP for flooding"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice static-or-dynamic { case case_1 { leaf static-lsp { description "Name of point-to-multipoint LSP"; type string { } } } case case_2 { container label-switched-path-template { description "Template for dynamic point-to-multipoint LSP parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice dynamic-template { case case_1 { leaf template-name { description "Name of point-to-multipoint LSP template"; type string { } } } case case_2 { leaf default-template { description "Use default parameters"; type empty; } } } } } } } } case case_3 { container ldp-p2mp { presence "enable ldp-p2mp"; description "LDP point-to-multipoint LSP for flooding"; } } case case_4 { container pim-ssm { description "PIM-SSM provider tunnel"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf group-range { description "PIM-SSM provider tunnel group range"; type ipv4prefix; } } } } } } container wildcard-group-inet6 { description "IPv6 wilcard group matching any group address"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container wildcard-source { presence "enable wildcard-source"; description "Use Selective-Tunnel for wildcard-source (*,G) joins"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold-rate { description "Data threshold to create new tunnel"; units "kilobits"; type uint32 { range "0 .. 1000000"; } } choice tunnel-type { case case_1 { container ingress-replication { description "Ingress Replication Tunnel"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf create-new-ucast-tunnel { description "Create new unicast tunnel for ingress replication"; type empty; } container label-switched-path { presence "enable label-switched-path"; description "Point-to-point LSP unicast tunnel"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container label-switched-path-template { description "Template for dynamic point-to-point LSP parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice dynamic-template { case case_1 { leaf template-name { description "Name of point-to-point LSP template"; type string { } } } case case_2 { leaf default-template { description "Use default parameters"; type empty; } } } } } } } case case_2 { container rsvp-te { description "RSVP-TE point-to-multipoint LSP for flooding"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice static-or-dynamic { case case_1 { leaf static-lsp { description "Name of point-to-multipoint LSP"; type string { } } } case case_2 { container label-switched-path-template { description "Template for dynamic point-to-multipoint LSP parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice dynamic-template { case case_1 { leaf template-name { description "Name of point-to-multipoint LSP template"; type string { } } } case case_2 { leaf default-template { description "Use default parameters"; type empty; } } } } } } } } case case_3 { container ldp-p2mp { presence "enable ldp-p2mp"; description "LDP point-to-multipoint LSP for flooding"; } } case case_4 { container pim-ssm { description "PIM-SSM provider tunnel"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf group-range { description "PIM-SSM provider tunnel group range"; type ipv4prefix; } } } } } } list group { key name; ordered-by user; description "IP prefix of multicast group"; leaf name { description "IP prefix of group"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container wildcard-source { presence "enable wildcard-source"; description "Use Selective-Tunnel for wildcard-source (*,G) joins"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold-rate { description "Data threshold to create new tunnel"; units "kilobits"; type uint32 { range "0 .. 1000000"; } } choice tunnel-type { case case_1 { container ingress-replication { description "Ingress Replication Tunnel"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf create-new-ucast-tunnel { description "Create new unicast tunnel for ingress replication"; type empty; } container label-switched-path { presence "enable label-switched-path"; description "Point-to-point LSP unicast tunnel"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container label-switched-path-template { description "Template for dynamic point-to-point LSP parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice dynamic-template { case case_1 { leaf template-name { description "Name of point-to-point LSP template"; type string { } } } case case_2 { leaf default-template { description "Use default parameters"; type empty; } } } } } } } case case_2 { container rsvp-te { description "RSVP-TE point-to-multipoint LSP for flooding"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice static-or-dynamic { case case_1 { leaf static-lsp { description "Name of point-to-multipoint LSP"; type string { } } } case case_2 { container label-switched-path-template { description "Template for dynamic point-to-multipoint LSP parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice dynamic-template { case case_1 { leaf template-name { description "Name of point-to-multipoint LSP template"; type string { } } } case case_2 { leaf default-template { description "Use default parameters"; type empty; } } } } } } } } case case_3 { container ldp-p2mp { presence "enable ldp-p2mp"; description "LDP point-to-multipoint LSP for flooding"; } } case case_4 { container pim-ssm { description "PIM-SSM provider tunnel"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf group-range { description "PIM-SSM provider tunnel group range"; type ipv4prefix; } } } } } list source { key name; ordered-by user; description "IP prefix of one or more multicast sources"; leaf name { description "IP prefix of source"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice tunnel-type { case case_1 { container ingress-replication { description "Ingress Replication Tunnel"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf create-new-ucast-tunnel { description "Create new unicast tunnel for ingress replication"; type empty; } container label-switched-path { presence "enable label-switched-path"; description "Point-to-point LSP unicast tunnel"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container label-switched-path-template { description "Template for dynamic point-to-point LSP parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice dynamic-template { case case_1 { leaf template-name { description "Name of point-to-point LSP template"; type string { } } } case case_2 { leaf default-template { description "Use default parameters"; type empty; } } } } } } } case case_2 { container rsvp-te { description "RSVP-TE point-to-multipoint LSP for flooding"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice static-or-dynamic { case case_1 { leaf static-lsp { description "Name of point-to-multipoint LSP"; type string { } } } case case_2 { container label-switched-path-template { description "Template for dynamic point-to-multipoint LSP parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice dynamic-template { case case_1 { leaf template-name { description "Name of point-to-multipoint LSP template"; type string { } } } case case_2 { leaf default-template { description "Use default parameters"; type empty; } } } } } } } } case case_3 { container pim-ssm { description "PIM-SSM provider tunnel"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf group-range { description "PIM-SSM provider tunnel group range"; type ipv4prefix; } } } case case_4 { container ldp-p2mp { presence "enable ldp-p2mp"; description "LDP point-to-multipoint LSP for flooding"; } } } leaf threshold-rate { description "Data threshold to create new tunnel"; units "kilobits"; type uint32 { range "0 .. 1000000"; } } } } } container mdt { description "Data MDT tunnels for PIM MVPN"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container threshold { description "Threshold for creation of multicast tunnels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "IP prefix of multicast group"; leaf name { description "IP prefix of group"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list source { key name; ordered-by user; description "IP prefix of one or more multicast sources "; leaf name { description "IP prefix of source"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf rate { description "Data threshold to create new tunnel"; units "kilobits"; type uint32 { range "10 .. 1000000"; } } } } } leaf data-mdt-reuse { description "Allow multiple customer streams to be transmitted over one data tunnel "; type empty; } leaf tunnel-limit { description "Maximum multicast data tunnels"; type uint32 { range "0 .. 8192"; } } leaf group-range { description "Group address range for multicast data tunnels"; type ipprefix; } } container family { presence "enable family"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container inet { presence "enable inet"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice tunnel-type { case case_1 { container rsvp-te { description "RSVP-TE point-to-multipoint LSP for flooding"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice static-or-dynamic { case case_1 { leaf static-lsp { description "Name of point-to-multipoint LSP"; type string { } } } case case_2 { container label-switched-path-template { description "Template for dynamic point-to-multipoint LSP parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice dynamic-template { case case_1 { leaf template-name { description "Name of point-to-multipoint LSP template"; type string { } } } case case_2 { leaf default-template { description "Use default parameters"; type empty; } } } } } } } } case case_2 { container ldp-p2mp { presence "enable ldp-p2mp"; description "LDP point-to-multipoint LSP for flooding"; } } case case_3 { container ingress-replication { description "Ingress Replication Tunnel"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf create-new-ucast-tunnel { description "Create new unicast tunnel for ingress replication"; type empty; } container label-switched-path { presence "enable label-switched-path"; description "Point-to-point LSP unicast tunnel"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container label-switched-path-template { description "Template for dynamic point-to-point LSP parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice dynamic-template { case case_1 { leaf template-name { description "Name of point-to-point LSP template"; type string { } } } case case_2 { leaf default-template { description "Use default parameters"; type empty; } } } } } } } case case_4 { container pim-asm { description "PIM-SM provider tunnel"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf group-address { description "PIM-SM provider tunnel group address"; type ipv4addr; } leaf tunnel-source { description "Source address for the provider space mGRE tunnel"; type ipv4addr; } } } case case_5 { container pim-ssm { description "PIM-SSM provider tunnel"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf group-address { description "PIM-SSM provider tunnel group address"; type ipv4addr; } leaf tunnel-source { description "Source address for the provider space mGRE tunnel"; type ipv4addr; } } } } } container inet6 { presence "enable inet6"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice tunnel-type { case case_1 { container rsvp-te { description "RSVP-TE point-to-multipoint LSP for flooding"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice static-or-dynamic { case case_1 { leaf static-lsp { description "Name of point-to-multipoint LSP"; type string { } } } case case_2 { container label-switched-path-template { description "Template for dynamic point-to-multipoint LSP parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice dynamic-template { case case_1 { leaf template-name { description "Name of point-to-multipoint LSP template"; type string { } } } case case_2 { leaf default-template { description "Use default parameters"; type empty; } } } } } } } } case case_2 { container ldp-p2mp { presence "enable ldp-p2mp"; description "LDP point-to-multipoint LSP for flooding"; } } case case_3 { container ingress-replication { description "Ingress Replication Tunnel"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf create-new-ucast-tunnel { description "Create new unicast tunnel for ingress replication"; type empty; } container label-switched-path { presence "enable label-switched-path"; description "Point-to-point LSP unicast tunnel"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container label-switched-path-template { description "Template for dynamic point-to-point LSP parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice dynamic-template { case case_1 { leaf template-name { description "Name of point-to-point LSP template"; type string { } } } case case_2 { leaf default-template { description "Use default parameters"; type empty; } } } } } } } case case_4 { container pim-asm { description "PIM-SM provider tunnel"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf group-address { description "PIM-SM provider tunnel group address"; type ipv4addr; } } } case case_5 { container pim-ssm { description "PIM-SSM provider tunnel"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf group-address { description "PIM-SSM provider tunnel group address"; type ipv4addr; } } } } } } } leaf-list vrf-import { description "Import policy for VRF instance RIBs"; type policy-algebra; } leaf-list vrf-export { description "Export policy for VRF instance RIBs"; type policy-algebra; } container vrf-target { description "VRF target community configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf community { description "Target community to use in import and export"; type string { } } leaf import { description "Target community to use when filtering on import"; type string { } } leaf export { description "Target community to use when marking routes on export"; type string { } } leaf auto { description "Auto derive import and export target community from BGP AS & L2"; type empty; } } leaf no-vrf-advertise { description "Don't advertise this instance to remote PEs"; type empty; } container vrf-advertise-selective { presence "enable vrf-advertise-selective"; description "Override no-vrf-advertise knob for the specified address family"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container family { description "Protocol family to be selectively advertised"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf inet-mvpn { description "IPv4 MVPN Address Family"; type empty; } leaf inet6-mvpn { description "IPv6 MVPN Address Family"; type empty; } } } container vrf-table-label { presence "enable vrf-table-label"; description "Advertise a single VPN label for all routes in the VRF"; leaf source-class-usage { description "Enable source class usage"; type empty; } } container routing-options { description "Protocol-independent routing option configuration"; uses juniper-routing-options; } container forwarding-options { description "Forwarding options configuration"; uses juniper-forwarding-options; } container multicast-snooping-options { description "Multicast snooping option configuration"; uses juniper-multicast-snooping-options; } container igmp-snooping-options { description "IGMP snooping option configuration"; uses juniper-igmp-snooping-options; } container mld-snooping-options { description "MLD snooping option configuration"; uses juniper-mld-snooping-options; } container protocols { description "Routing protocol configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container bgp { description "BGP options"; uses juniper-protocols-bgp; } container ospf { description "OSPF configuration"; uses juniper-protocols-ospf; } container ospf3 { description "OSPF3 configuration"; list realm { key name; ordered-by user; description "OSPFv3 realm configuration"; leaf name { description "OSPFv3 realm name"; type enumeration { enum ipv6-unicast { description "IPv6 unicast realm"; } enum ipv6-multicast { description "IPv6 multicast realm"; } enum ipv4-unicast { description "IPv4 unicast realm"; } enum ipv4-multicast { description "IPv4 multicast realm"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable OSPF"; type empty; } } } container traceoptions { description "Trace options for OSPF"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum spf { description "Trace SPF calculations"; } enum error { description "Trace errored packets"; } enum event { description "Trace OSPF state machine events"; } enum packet-dump { description "Dump the contents of selected packet types"; } enum flooding { description "Trace LSA flooding"; } enum lsa-analysis { description "Trace LSA analysis"; } enum packets { description "Trace all OSPF packets"; } enum hello { description "Trace hello packets"; } enum database-description { description "Trace database description packets"; } enum lsa-request { description "Trace LSA request packets"; } enum lsa-update { description "Trace LSA update packets"; } enum lsa-ack { description "Trace LSA acknowledgment packets"; } enum ldp-synchronization { description "Trace synchronization between OSPF and LDP"; } enum on-demand { description "Trace demand circuit extensions"; } enum nsr-synchronization { description "Trace NSR synchronization events"; } enum graceful-restart { description "Trace graceful restart"; } enum restart-signaling { description "Trace restart signaling"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } list topology { key name; ordered-by user; description "Topology parameters"; leaf name { description "Topology name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable this topology"; type empty; } leaf topology-id { description "Topology identifier"; type uint8 { range "32 .. 127"; } } leaf overload { description "Set the overload mode (repel transit traffic)"; type empty; } leaf rib-group { description "Routing table group for importing routes"; type string; } container spf-options { description "Configure options for SPF"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf delay { description "Time to wait before running an SPF"; units "milliseconds"; type uint32 { range "50 .. 8000"; } } leaf holddown { description "Time to hold down before running an SPF"; units "milliseconds"; type uint32 { range "2000 .. 20000"; } } leaf rapid-runs { description "Number of maximum rapid SPF runs before holddown"; type uint32 { range "1 .. 10"; } } leaf no-ignore-our-externals { description "Do not ignore self-generated external and NSSA LSAs"; type empty; } } container backup-spf-options { description "Configure options for backup SPF"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Do not run backup SPF"; type empty; } leaf no-install { description "Do not install backup nexthops into the RIB"; type empty; } leaf downstream-paths-only { description "Use only downstream backup paths"; type empty; } } leaf prefix-export-limit { description "Maximum number of prefixes that can be exported"; type uint32 { range "0 .. 4294967295"; } } } container spf-options { description "Configure options for SPF"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf delay { description "Time to wait before running an SPF"; units "milliseconds"; type uint32 { range "50 .. 8000"; } } leaf holddown { description "Time to hold down before running an SPF"; units "milliseconds"; type uint32 { range "2000 .. 20000"; } } leaf rapid-runs { description "Number of maximum rapid SPF runs before holddown"; type uint32 { range "1 .. 10"; } } leaf no-ignore-our-externals { description "Do not ignore self-generated external and NSSA LSAs"; type empty; } } container backup-spf-options { description "Configure options for backup SPF"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Do not run backup SPF"; type empty; } leaf no-install { description "Do not install backup nexthops into the RIB"; type empty; } leaf downstream-paths-only { description "Use only downstream backup paths"; type empty; } } leaf prefix-export-limit { description "Maximum number of prefixes that can be exported"; type uint32 { range "0 .. 4294967295"; } } leaf rib-group { description "Routing table group for importing OSPF routes"; type string; } container overload { presence "enable overload"; description "Set the overload mode (repel transit traffic)"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf timeout { description "Time after which overload mode is reset"; units "seconds"; type uint32 { range "60 .. 1800"; } } } container database-protection { presence "enable database-protection"; description "Configure database protection attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum-lsa { description "Maximum allowed non self-generated LSAs"; type uint32 { range "1 .. 1000000"; } mandatory true; } leaf warning-only { description "Emit only a warning when LSA maximum limit is exceeded"; type empty; } leaf warning-threshold { description "Percentage of LSA maximum above which to trigger warning"; units "percent"; type uint8 { range "30 .. 100"; } } leaf ignore-count { description "Maximum number of times to go into ignore state"; type uint8 { range "1 .. 32"; } } leaf ignore-time { description "Time to stay in ignore state and ignore all neighbors"; units "seconds"; type uint16 { range "30 .. 3600"; } } leaf reset-time { description "Time after which the ignore count gets reset to zero"; units "seconds"; type uint32 { range "60 .. 86400"; } } } container graceful-restart { description "Configure graceful restart attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable OSPF graceful restart capability"; type empty; } } } leaf restart-duration { description "Time for all neighbors to become full"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf notify-duration { description "Time to send all max-aged grace LSAs"; units "seconds"; type uint32 { range "1 .. 3600"; } } container helper-disable { presence "enable helper-disable"; description "Disable graceful restart helper capability"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice disable-choices { case case_1 { leaf standard { description "Disable helper-mode for rfc3623 based GR"; type empty; } } case case_2 { leaf restart-signaling { description "Disable helper mode for restart-signaling "; type empty; } } case case_3 { leaf both { description "Disable helper mode for both the types of GR"; type empty; } } } } leaf no-strict-lsa-checking { description "Do not abort graceful helper mode upon LSA changes"; type empty; } } container traffic-engineering { presence "enable traffic-engineering"; description "Configure traffic engineering attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-topology { description "Disable dissemination of TE link-state topology information"; type empty; } leaf multicast-rpf-routes { description "Install routes for multicast RPF checks into inet.2"; type empty; } leaf ignore-lsp-metrics { description "Ignore label-switched path metrics when doing shortcuts"; type empty; } container shortcuts { presence "enable shortcuts"; description "Use label-switched paths as next hops, if possible"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf lsp-metric-into-summary { description "Advertise LSP metric into summary LSAs"; type empty; } } leaf advertise-unnumbered-interfaces { description "Advertise unnumbered interfaces"; type empty; } leaf credibility-protocol-preference { description "TED protocol credibility follows protocol preference"; type empty; } } leaf route-type-community { description "Specify BGP extended community value to encode OSPF route type"; type enumeration { enum iana { description "BGP extended community value used is 0x0306"; } enum vendor { description "Vendor BGP extended community value used is 0x8000"; } } } container domain-id { description "Configure domain ID"; choice domain_id_or_disable { case case_1 { leaf domain-id { description "Domain ID"; type string; } } case case_2 { leaf disable { description "Disable domain ID"; type empty; } } } } choice domain_vpn_tag_or_disable { case case_1 { leaf domain-vpn-tag { description "Domain VPN tag for external LSA"; type uint32 { range "0 .. 4294967295"; } } } case case_2 { leaf no-domain-vpn-tag { description "Disable domain VPN tag"; type empty; } } } leaf preference { description "Preference of internal routes"; type uint32; } leaf external-preference { description "Preference of external routes"; type uint32; } leaf-list export { description "Export policy"; type policy-algebra; } leaf-list import { description "Import policy (for external routes or setting priority)"; type policy-algebra; } leaf reference-bandwidth { description "Bandwidth for calculating metric defaults"; type string; } leaf lsa-refresh-interval { description "LSA refresh interval (minutes)"; default "50"; type uint32 { range "25 .. 50"; } } leaf no-rfc-1583 { description "Disable RFC1583 compatibility"; type empty; } leaf forwarding-address-to-broadcast { description "Set forwarding address in Type 5 LSA in broadcast network"; type empty; } choice nssa-abr-option { case case_1 { leaf no-nssa-abr { description "Disable full NSSA functionality at ABR"; type empty; } } } container sham-link { presence "enable sham-link"; description "Configure parameters for sham links"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf local { description "Local sham link endpoint address"; type ipaddr; } } list area { key name; ordered-by user; description "Configure an OSPF area"; leaf name { description "Area ID"; type areaid; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice stub-option { case case_1 { container stub { presence "enable stub"; description "Configure a stub area"; leaf default-metric { description "Metric for the default route in this stub area"; type uint32 { range "1 .. 16777215"; } } leaf summaries { description "Flood summary LSAs into this stub area"; type empty; } leaf no-summaries { description "Flood summary LSAs into this stub area"; type empty; } } } case case_2 { container nssa { presence "enable nssa"; description "Configure a not-so-stubby area"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container default-lsa { presence "enable default-lsa"; description "Configure a default LSA"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default-metric { description "Metric for the default route in this area"; type uint32 { range "1 .. 16777215"; } } leaf metric-type { description "External metric type for the default type 7 LSA"; type uint32 { range "1 .. 2"; } } leaf type-7 { description "Flood type 7 default LSA if no-summaries is configured"; type empty; } } leaf summaries { description "Flood summary LSAs into this NSSA area"; type empty; } leaf no-summaries { description "Flood summary LSAs into this NSSA area"; type empty; } list area-range { key name; ordered-by user; description "Configure NSSA area ranges"; leaf name { description "Range to summarize NSSA routes in this area"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf restrict { description "Restrict advertisement of this area range"; type empty; } leaf exact { description "Enforce exact match for advertisement of this area range"; type empty; } container override-metric { presence "enable override-metric"; description "Override the dynamic metric for this area-range"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf metric { description "Metric value"; type uint32 { range "1 .. 16777215"; } mandatory true; } leaf metric-type { description "Set the metric type for the override metric"; default "1"; type uint32 { range "1 .. 2"; } } } } } } } list area-range { key name; ordered-by user; description "Configure area ranges"; leaf name { description "Range to summarize routes in this area"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf restrict { description "Restrict advertisement of this area range"; type empty; } leaf exact { description "Enforce exact match for advertisement of this area range"; type empty; } leaf override-metric { description "Override the dynamic metric for this area-range"; type uint32 { range "1 .. 16777215"; } } } leaf-list network-summary-export { description "Export policy for Type 3 Summary LSAs"; type policy-algebra; } leaf-list network-summary-import { description "Import policy for Type 3 Summary LSAs"; type policy-algebra; } leaf-list inter-area-prefix-export { description "Export policy for Inter Area Prefix LSAs"; type policy-algebra; } leaf-list inter-area-prefix-import { description "Import policy for Inter Area Prefix LSAs"; type policy-algebra; } list virtual-link { key "neighbor-id transit-area"; ordered-by user; description "Configure virtual links"; leaf neighbor-id { description "Router ID of a virtual neighbor"; type ipv4addr; } leaf transit-area { description "Transit area in common with virtual neighbor"; type areaid; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable this virtual link"; type empty; } } } leaf retransmit-interval { description "Retransmission interval (seconds)"; type uint32 { range "1 .. 65535"; } } leaf transit-delay { description "Transit delay (seconds)"; type uint32 { range "1 .. 65535"; } } leaf hello-interval { description "Hello interval (seconds)"; type uint32 { range "1 .. 255"; } } leaf dead-interval { description "Dead interval (seconds)"; type uint32 { range "1 .. 65535"; } } choice auth { case case_1 { container authentication { uses juniper-ospf-authentication; } } } leaf demand-circuit { description "Interface functions as a demand circuit"; type empty; } leaf flood-reduction { description "Enable flood reduction"; type empty; } leaf no-neighbor-down-notification { description "Don't inform other protocols about neighbor down events"; type empty; } leaf ipsec-sa { description "IPSec security association name"; type string { length "1 .. 32"; } } list topology { key name; ordered-by user; description "Topology specific attributes"; leaf name { description "Topology name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable this topology"; type empty; } leaf metric { description "Topology metric"; type uint16 { range "1 .. 65535"; } } container bandwidth-based-metrics { description "Configure bandwidth based metrics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list bandwidth { key name; description "Bandwidth threshold"; leaf name { description "(null)"; type string; } leaf metric { description "Metric associated with specified bandwidth"; type uint16 { range "1 .. 65535"; } mandatory true; } } } } } list sham-link-remote { key name; ordered-by user; description "Configure parameters for remote sham link endpoint"; leaf name { description "Remote sham link endpoint address"; type ipaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf metric { description "Sham link metric"; type uint16 { range "1 .. 65535"; } } leaf ipsec-sa { description "IPSec security association name"; type string { length "1 .. 32"; } } leaf demand-circuit { description "Interface functions as a demand circuit"; type empty; } leaf flood-reduction { description "Enable flood reduction"; type empty; } list topology { key name; ordered-by user; description "Topology specific attributes"; leaf name { description "Topology name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable this topology"; type empty; } leaf metric { description "Topology metric"; type uint16 { range "1 .. 65535"; } } container bandwidth-based-metrics { description "Configure bandwidth based metrics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list bandwidth { key name; description "Bandwidth threshold"; leaf name { description "(null)"; type string; } leaf metric { description "Metric associated with specified bandwidth"; type uint16 { range "1 .. 65535"; } mandatory true; } } } } } list interface { key name; ordered-by user; description "Include an interface in this area"; leaf name { description "Interface name"; type ipv4addr-or-interface; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable OSPF on this interface"; type empty; } } } leaf interface-type { description "Type of interface"; type enumeration { enum nbma { description "Nonbroadcast multiaccess"; } enum p2mp { description "Point-to-multipoint NBMA"; } enum p2p { description "Point-to-point"; } enum p2mp-over-lan { description "Point-to-multipoint over LAN mode"; } } } choice protection-type { case case_1 { leaf link-protection { description "Protect interface from link faults only"; type empty; } } case case_2 { leaf node-link-protection { description "Protect interface from both link and node faults"; type empty; } } } leaf no-eligible-backup { description "Not eligible to backup traffic from protected interfaces"; type empty; } container passive { presence "enable passive"; description "Do not run OSPF, but advertise it"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traffic-engineering { description "Advertise TE link information"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf remote-node-id { description "Remote address of the link"; type ipaddr; } leaf remote-node-router-id { description "TE Router-ID of the remote node"; type ipv4addr; } } } leaf secondary { description "Treat interface as secondary"; type empty; } leaf own-router-lsa { description "Generate a separate router LSA for this interface"; type empty; } container bandwidth-based-metrics { description "Configure bandwidth based metrics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list bandwidth { key name; description "Bandwidth threshold"; leaf name { description "(null)"; type string; } leaf metric { description "Metric associated with specified bandwidth"; type uint16 { range "1 .. 65535"; } mandatory true; } } } leaf metric { description "Interface metric"; type uint16 { range "1 .. 65535"; } } leaf te-metric { description "Traffic engineering metric"; type uint32 { range "1 .. 4294967295"; } } leaf priority { description "Designated router priority"; type uint32 { range "0 .. 255"; } } container ldp-synchronization { description "Advertise maximum metric until LDP is operational"; uses ldp-sync-obj; } leaf retransmit-interval { description "Retransmission interval (seconds)"; type uint32 { range "1 .. 65535"; } } leaf transit-delay { description "Transit delay (seconds)"; type uint32 { range "1 .. 65535"; } } leaf hello-interval { description "Hello interval (seconds)"; type uint32 { range "1 .. 255"; } } leaf dead-interval { description "Dead interval (seconds)"; type uint32 { range "1 .. 65535"; } } choice auth { case case_1 { container authentication { uses juniper-ospf-authentication; } } } leaf demand-circuit { description "Interface functions as a demand circuit"; type empty; } leaf flood-reduction { description "Enable flood reduction"; type empty; } leaf no-neighbor-down-notification { description "Don't inform other protocols about neighbor down events"; type empty; } leaf ipsec-sa { description "IPSec security association name"; type string { length "1 .. 32"; } } list topology { key name; ordered-by user; description "Topology specific attributes"; leaf name { description "Topology name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable this topology"; type empty; } leaf metric { description "Topology metric"; type uint16 { range "1 .. 65535"; } } container bandwidth-based-metrics { description "Configure bandwidth based metrics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list bandwidth { key name; description "Bandwidth threshold"; leaf name { description "(null)"; type string; } leaf metric { description "Metric associated with specified bandwidth"; type uint16 { range "1 .. 65535"; } mandatory true; } } } } container bfd-liveness-detection { description "Bidirectional Forwarding Detection options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } container authentication { description "Authentication options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf key-chain { description "Key chain name"; type string; } leaf algorithm { description "Algorithm name"; type enumeration { enum simple-password { description "Simple password"; } enum keyed-md5 { description "Keyed message Digest 5"; } enum meticulous-keyed-md5 { description "Meticulous keyed message Digest 5"; } enum keyed-sha-1 { description "Keyed secure hash algorithm (SHA1) "; } enum meticulous-keyed-sha-1 { description "Meticulous keyed secure hash algorithm (SHA1) "; } } } leaf loose-check { description "Verify authentication only if authentication is negotiated"; type empty; } } leaf full-neighbors-only { description "Setup BFD sessions only to Full neighbors"; type empty; } } leaf dynamic-neighbors { description "Learn neighbors dynamically on a p2mp interface"; type empty; } list neighbor { key name; ordered-by user; description "NBMA neighbor"; leaf name { description "Address of neighbor"; type ipaddr; } leaf eligible { description "Eligible to be DR on an NBMA network"; type empty; } } leaf poll-interval { description "Poll interval for NBMA interfaces"; type uint32 { range "1 .. 65535"; } } leaf no-interface-state-traps { description "Do not send interface state change traps"; type empty; } } leaf no-context-identifier-advertisement { description "Disable context identifier advertisments in this area"; type empty; } list context-identifier { key name; ordered-by user; description "Configure context identifier in support of edge protection"; leaf name { description "Context identifier"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list label-switched-path { key name; ordered-by user; description "Configuration for advertisement of a label-switched path"; leaf name { description "Name of label-switched path to be advertised"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable OSPF on this label-switched path"; type empty; } } } leaf metric { description "Interface metric"; type uint16 { range "1 .. 65535"; } } list topology { key name; ordered-by user; description "Topology specific attributes"; leaf name { description "Topology name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable this topology"; type empty; } leaf metric { description "Topology metric"; type uint16 { range "1 .. 65535"; } } container bandwidth-based-metrics { description "Configure bandwidth based metrics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list bandwidth { key name; description "Bandwidth threshold"; leaf name { description "(null)"; type string; } leaf metric { description "Metric associated with specified bandwidth"; type uint16 { range "1 .. 65535"; } mandatory true; } } } } } list peer-interface { key name; ordered-by user; description "Configuration for peer interface"; leaf name { description "Name of peer interface"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable OSPF on this control peer"; type empty; } } } leaf retransmit-interval { description "Retransmission interval (seconds)"; type uint32 { range "1 .. 65535"; } } leaf transit-delay { description "Transit delay (seconds)"; type uint32 { range "1 .. 65535"; } } leaf hello-interval { description "Hello interval (seconds)"; type uint32 { range "1 .. 255"; } } leaf dead-interval { description "Dead interval (seconds)"; type uint32 { range "1 .. 65535"; } } choice auth { case case_1 { container authentication { uses juniper-ospf-authentication; } } } leaf demand-circuit { description "Interface functions as a demand circuit"; type empty; } leaf flood-reduction { description "Enable flood reduction"; type empty; } leaf no-neighbor-down-notification { description "Don't inform other protocols about neighbor down events"; type empty; } } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable OSPF"; type empty; } } } container traceoptions { description "Trace options for OSPF"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum spf { description "Trace SPF calculations"; } enum error { description "Trace errored packets"; } enum event { description "Trace OSPF state machine events"; } enum packet-dump { description "Dump the contents of selected packet types"; } enum flooding { description "Trace LSA flooding"; } enum lsa-analysis { description "Trace LSA analysis"; } enum packets { description "Trace all OSPF packets"; } enum hello { description "Trace hello packets"; } enum database-description { description "Trace database description packets"; } enum lsa-request { description "Trace LSA request packets"; } enum lsa-update { description "Trace LSA update packets"; } enum lsa-ack { description "Trace LSA acknowledgment packets"; } enum ldp-synchronization { description "Trace synchronization between OSPF and LDP"; } enum on-demand { description "Trace demand circuit extensions"; } enum nsr-synchronization { description "Trace NSR synchronization events"; } enum graceful-restart { description "Trace graceful restart"; } enum restart-signaling { description "Trace restart signaling"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } list topology { key name; ordered-by user; description "Topology parameters"; leaf name { description "Topology name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable this topology"; type empty; } leaf topology-id { description "Topology identifier"; type uint8 { range "32 .. 127"; } } leaf overload { description "Set the overload mode (repel transit traffic)"; type empty; } leaf rib-group { description "Routing table group for importing routes"; type string; } container spf-options { description "Configure options for SPF"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf delay { description "Time to wait before running an SPF"; units "milliseconds"; type uint32 { range "50 .. 8000"; } } leaf holddown { description "Time to hold down before running an SPF"; units "milliseconds"; type uint32 { range "2000 .. 20000"; } } leaf rapid-runs { description "Number of maximum rapid SPF runs before holddown"; type uint32 { range "1 .. 10"; } } leaf no-ignore-our-externals { description "Do not ignore self-generated external and NSSA LSAs"; type empty; } } container backup-spf-options { description "Configure options for backup SPF"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Do not run backup SPF"; type empty; } leaf no-install { description "Do not install backup nexthops into the RIB"; type empty; } leaf downstream-paths-only { description "Use only downstream backup paths"; type empty; } } leaf prefix-export-limit { description "Maximum number of prefixes that can be exported"; type uint32 { range "0 .. 4294967295"; } } } container spf-options { description "Configure options for SPF"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf delay { description "Time to wait before running an SPF"; units "milliseconds"; type uint32 { range "50 .. 8000"; } } leaf holddown { description "Time to hold down before running an SPF"; units "milliseconds"; type uint32 { range "2000 .. 20000"; } } leaf rapid-runs { description "Number of maximum rapid SPF runs before holddown"; type uint32 { range "1 .. 10"; } } leaf no-ignore-our-externals { description "Do not ignore self-generated external and NSSA LSAs"; type empty; } } container backup-spf-options { description "Configure options for backup SPF"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Do not run backup SPF"; type empty; } leaf no-install { description "Do not install backup nexthops into the RIB"; type empty; } leaf downstream-paths-only { description "Use only downstream backup paths"; type empty; } } leaf prefix-export-limit { description "Maximum number of prefixes that can be exported"; type uint32 { range "0 .. 4294967295"; } } leaf rib-group { description "Routing table group for importing OSPF routes"; type string; } container overload { presence "enable overload"; description "Set the overload mode (repel transit traffic)"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf timeout { description "Time after which overload mode is reset"; units "seconds"; type uint32 { range "60 .. 1800"; } } } container database-protection { presence "enable database-protection"; description "Configure database protection attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum-lsa { description "Maximum allowed non self-generated LSAs"; type uint32 { range "1 .. 1000000"; } mandatory true; } leaf warning-only { description "Emit only a warning when LSA maximum limit is exceeded"; type empty; } leaf warning-threshold { description "Percentage of LSA maximum above which to trigger warning"; units "percent"; type uint8 { range "30 .. 100"; } } leaf ignore-count { description "Maximum number of times to go into ignore state"; type uint8 { range "1 .. 32"; } } leaf ignore-time { description "Time to stay in ignore state and ignore all neighbors"; units "seconds"; type uint16 { range "30 .. 3600"; } } leaf reset-time { description "Time after which the ignore count gets reset to zero"; units "seconds"; type uint32 { range "60 .. 86400"; } } } container graceful-restart { description "Configure graceful restart attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable OSPF graceful restart capability"; type empty; } } } leaf restart-duration { description "Time for all neighbors to become full"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf notify-duration { description "Time to send all max-aged grace LSAs"; units "seconds"; type uint32 { range "1 .. 3600"; } } container helper-disable { presence "enable helper-disable"; description "Disable graceful restart helper capability"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice disable-choices { case case_1 { leaf standard { description "Disable helper-mode for rfc3623 based GR"; type empty; } } case case_2 { leaf restart-signaling { description "Disable helper mode for restart-signaling "; type empty; } } case case_3 { leaf both { description "Disable helper mode for both the types of GR"; type empty; } } } } leaf no-strict-lsa-checking { description "Do not abort graceful helper mode upon LSA changes"; type empty; } } container traffic-engineering { presence "enable traffic-engineering"; description "Configure traffic engineering attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-topology { description "Disable dissemination of TE link-state topology information"; type empty; } leaf multicast-rpf-routes { description "Install routes for multicast RPF checks into inet.2"; type empty; } leaf ignore-lsp-metrics { description "Ignore label-switched path metrics when doing shortcuts"; type empty; } container shortcuts { presence "enable shortcuts"; description "Use label-switched paths as next hops, if possible"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf lsp-metric-into-summary { description "Advertise LSP metric into summary LSAs"; type empty; } } leaf advertise-unnumbered-interfaces { description "Advertise unnumbered interfaces"; type empty; } leaf credibility-protocol-preference { description "TED protocol credibility follows protocol preference"; type empty; } } leaf route-type-community { description "Specify BGP extended community value to encode OSPF route type"; type enumeration { enum iana { description "BGP extended community value used is 0x0306"; } enum vendor { description "Vendor BGP extended community value used is 0x8000"; } } } container domain-id { description "Configure domain ID"; choice domain_id_or_disable { case case_1 { leaf domain-id { description "Domain ID"; type string; } } case case_2 { leaf disable { description "Disable domain ID"; type empty; } } } } choice domain_vpn_tag_or_disable { case case_1 { leaf domain-vpn-tag { description "Domain VPN tag for external LSA"; type uint32 { range "0 .. 4294967295"; } } } case case_2 { leaf no-domain-vpn-tag { description "Disable domain VPN tag"; type empty; } } } leaf preference { description "Preference of internal routes"; type uint32; } leaf external-preference { description "Preference of external routes"; type uint32; } leaf-list export { description "Export policy"; type policy-algebra; } leaf-list import { description "Import policy (for external routes or setting priority)"; type policy-algebra; } leaf reference-bandwidth { description "Bandwidth for calculating metric defaults"; type string; } leaf lsa-refresh-interval { description "LSA refresh interval (minutes)"; default "50"; type uint32 { range "25 .. 50"; } } leaf no-rfc-1583 { description "Disable RFC1583 compatibility"; type empty; } leaf forwarding-address-to-broadcast { description "Set forwarding address in Type 5 LSA in broadcast network"; type empty; } choice nssa-abr-option { case case_1 { leaf no-nssa-abr { description "Disable full NSSA functionality at ABR"; type empty; } } } container sham-link { presence "enable sham-link"; description "Configure parameters for sham links"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf local { description "Local sham link endpoint address"; type ipaddr; } } list area { key name; ordered-by user; description "Configure an OSPF area"; leaf name { description "Area ID"; type areaid; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice stub-option { case case_1 { container stub { presence "enable stub"; description "Configure a stub area"; leaf default-metric { description "Metric for the default route in this stub area"; type uint32 { range "1 .. 16777215"; } } leaf summaries { description "Flood summary LSAs into this stub area"; type empty; } leaf no-summaries { description "Flood summary LSAs into this stub area"; type empty; } } } case case_2 { container nssa { presence "enable nssa"; description "Configure a not-so-stubby area"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container default-lsa { presence "enable default-lsa"; description "Configure a default LSA"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default-metric { description "Metric for the default route in this area"; type uint32 { range "1 .. 16777215"; } } leaf metric-type { description "External metric type for the default type 7 LSA"; type uint32 { range "1 .. 2"; } } leaf type-7 { description "Flood type 7 default LSA if no-summaries is configured"; type empty; } } leaf summaries { description "Flood summary LSAs into this NSSA area"; type empty; } leaf no-summaries { description "Flood summary LSAs into this NSSA area"; type empty; } list area-range { key name; ordered-by user; description "Configure NSSA area ranges"; leaf name { description "Range to summarize NSSA routes in this area"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf restrict { description "Restrict advertisement of this area range"; type empty; } leaf exact { description "Enforce exact match for advertisement of this area range"; type empty; } container override-metric { presence "enable override-metric"; description "Override the dynamic metric for this area-range"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf metric { description "Metric value"; type uint32 { range "1 .. 16777215"; } mandatory true; } leaf metric-type { description "Set the metric type for the override metric"; default "1"; type uint32 { range "1 .. 2"; } } } } } } } list area-range { key name; ordered-by user; description "Configure area ranges"; leaf name { description "Range to summarize routes in this area"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf restrict { description "Restrict advertisement of this area range"; type empty; } leaf exact { description "Enforce exact match for advertisement of this area range"; type empty; } leaf override-metric { description "Override the dynamic metric for this area-range"; type uint32 { range "1 .. 16777215"; } } } leaf-list network-summary-export { description "Export policy for Type 3 Summary LSAs"; type policy-algebra; } leaf-list network-summary-import { description "Import policy for Type 3 Summary LSAs"; type policy-algebra; } leaf-list inter-area-prefix-export { description "Export policy for Inter Area Prefix LSAs"; type policy-algebra; } leaf-list inter-area-prefix-import { description "Import policy for Inter Area Prefix LSAs"; type policy-algebra; } list virtual-link { key "neighbor-id transit-area"; ordered-by user; description "Configure virtual links"; leaf neighbor-id { description "Router ID of a virtual neighbor"; type ipv4addr; } leaf transit-area { description "Transit area in common with virtual neighbor"; type areaid; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable this virtual link"; type empty; } } } leaf retransmit-interval { description "Retransmission interval (seconds)"; type uint32 { range "1 .. 65535"; } } leaf transit-delay { description "Transit delay (seconds)"; type uint32 { range "1 .. 65535"; } } leaf hello-interval { description "Hello interval (seconds)"; type uint32 { range "1 .. 255"; } } leaf dead-interval { description "Dead interval (seconds)"; type uint32 { range "1 .. 65535"; } } choice auth { case case_1 { container authentication { uses juniper-ospf-authentication; } } } leaf demand-circuit { description "Interface functions as a demand circuit"; type empty; } leaf flood-reduction { description "Enable flood reduction"; type empty; } leaf no-neighbor-down-notification { description "Don't inform other protocols about neighbor down events"; type empty; } leaf ipsec-sa { description "IPSec security association name"; type string { length "1 .. 32"; } } list topology { key name; ordered-by user; description "Topology specific attributes"; leaf name { description "Topology name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable this topology"; type empty; } leaf metric { description "Topology metric"; type uint16 { range "1 .. 65535"; } } container bandwidth-based-metrics { description "Configure bandwidth based metrics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list bandwidth { key name; description "Bandwidth threshold"; leaf name { description "(null)"; type string; } leaf metric { description "Metric associated with specified bandwidth"; type uint16 { range "1 .. 65535"; } mandatory true; } } } } } list sham-link-remote { key name; ordered-by user; description "Configure parameters for remote sham link endpoint"; leaf name { description "Remote sham link endpoint address"; type ipaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf metric { description "Sham link metric"; type uint16 { range "1 .. 65535"; } } leaf ipsec-sa { description "IPSec security association name"; type string { length "1 .. 32"; } } leaf demand-circuit { description "Interface functions as a demand circuit"; type empty; } leaf flood-reduction { description "Enable flood reduction"; type empty; } list topology { key name; ordered-by user; description "Topology specific attributes"; leaf name { description "Topology name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable this topology"; type empty; } leaf metric { description "Topology metric"; type uint16 { range "1 .. 65535"; } } container bandwidth-based-metrics { description "Configure bandwidth based metrics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list bandwidth { key name; description "Bandwidth threshold"; leaf name { description "(null)"; type string; } leaf metric { description "Metric associated with specified bandwidth"; type uint16 { range "1 .. 65535"; } mandatory true; } } } } } list interface { key name; ordered-by user; description "Include an interface in this area"; leaf name { description "Interface name"; type ipv4addr-or-interface; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable OSPF on this interface"; type empty; } } } leaf interface-type { description "Type of interface"; type enumeration { enum nbma { description "Nonbroadcast multiaccess"; } enum p2mp { description "Point-to-multipoint NBMA"; } enum p2p { description "Point-to-point"; } enum p2mp-over-lan { description "Point-to-multipoint over LAN mode"; } } } choice protection-type { case case_1 { leaf link-protection { description "Protect interface from link faults only"; type empty; } } case case_2 { leaf node-link-protection { description "Protect interface from both link and node faults"; type empty; } } } leaf no-eligible-backup { description "Not eligible to backup traffic from protected interfaces"; type empty; } container passive { presence "enable passive"; description "Do not run OSPF, but advertise it"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traffic-engineering { description "Advertise TE link information"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf remote-node-id { description "Remote address of the link"; type ipaddr; } leaf remote-node-router-id { description "TE Router-ID of the remote node"; type ipv4addr; } } } leaf secondary { description "Treat interface as secondary"; type empty; } leaf own-router-lsa { description "Generate a separate router LSA for this interface"; type empty; } container bandwidth-based-metrics { description "Configure bandwidth based metrics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list bandwidth { key name; description "Bandwidth threshold"; leaf name { description "(null)"; type string; } leaf metric { description "Metric associated with specified bandwidth"; type uint16 { range "1 .. 65535"; } mandatory true; } } } leaf metric { description "Interface metric"; type uint16 { range "1 .. 65535"; } } leaf te-metric { description "Traffic engineering metric"; type uint32 { range "1 .. 4294967295"; } } leaf priority { description "Designated router priority"; type uint32 { range "0 .. 255"; } } container ldp-synchronization { description "Advertise maximum metric until LDP is operational"; uses ldp-sync-obj; } leaf retransmit-interval { description "Retransmission interval (seconds)"; type uint32 { range "1 .. 65535"; } } leaf transit-delay { description "Transit delay (seconds)"; type uint32 { range "1 .. 65535"; } } leaf hello-interval { description "Hello interval (seconds)"; type uint32 { range "1 .. 255"; } } leaf dead-interval { description "Dead interval (seconds)"; type uint32 { range "1 .. 65535"; } } choice auth { case case_1 { container authentication { uses juniper-ospf-authentication; } } } leaf demand-circuit { description "Interface functions as a demand circuit"; type empty; } leaf flood-reduction { description "Enable flood reduction"; type empty; } leaf no-neighbor-down-notification { description "Don't inform other protocols about neighbor down events"; type empty; } leaf ipsec-sa { description "IPSec security association name"; type string { length "1 .. 32"; } } list topology { key name; ordered-by user; description "Topology specific attributes"; leaf name { description "Topology name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable this topology"; type empty; } leaf metric { description "Topology metric"; type uint16 { range "1 .. 65535"; } } container bandwidth-based-metrics { description "Configure bandwidth based metrics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list bandwidth { key name; description "Bandwidth threshold"; leaf name { description "(null)"; type string; } leaf metric { description "Metric associated with specified bandwidth"; type uint16 { range "1 .. 65535"; } mandatory true; } } } } container bfd-liveness-detection { description "Bidirectional Forwarding Detection options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } container authentication { description "Authentication options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf key-chain { description "Key chain name"; type string; } leaf algorithm { description "Algorithm name"; type enumeration { enum simple-password { description "Simple password"; } enum keyed-md5 { description "Keyed message Digest 5"; } enum meticulous-keyed-md5 { description "Meticulous keyed message Digest 5"; } enum keyed-sha-1 { description "Keyed secure hash algorithm (SHA1) "; } enum meticulous-keyed-sha-1 { description "Meticulous keyed secure hash algorithm (SHA1) "; } } } leaf loose-check { description "Verify authentication only if authentication is negotiated"; type empty; } } leaf full-neighbors-only { description "Setup BFD sessions only to Full neighbors"; type empty; } } leaf dynamic-neighbors { description "Learn neighbors dynamically on a p2mp interface"; type empty; } list neighbor { key name; ordered-by user; description "NBMA neighbor"; leaf name { description "Address of neighbor"; type ipaddr; } leaf eligible { description "Eligible to be DR on an NBMA network"; type empty; } } leaf poll-interval { description "Poll interval for NBMA interfaces"; type uint32 { range "1 .. 65535"; } } leaf no-interface-state-traps { description "Do not send interface state change traps"; type empty; } } leaf no-context-identifier-advertisement { description "Disable context identifier advertisments in this area"; type empty; } list context-identifier { key name; ordered-by user; description "Configure context identifier in support of edge protection"; leaf name { description "Context identifier"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list label-switched-path { key name; ordered-by user; description "Configuration for advertisement of a label-switched path"; leaf name { description "Name of label-switched path to be advertised"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable OSPF on this label-switched path"; type empty; } } } leaf metric { description "Interface metric"; type uint16 { range "1 .. 65535"; } } list topology { key name; ordered-by user; description "Topology specific attributes"; leaf name { description "Topology name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable this topology"; type empty; } leaf metric { description "Topology metric"; type uint16 { range "1 .. 65535"; } } container bandwidth-based-metrics { description "Configure bandwidth based metrics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list bandwidth { key name; description "Bandwidth threshold"; leaf name { description "(null)"; type string; } leaf metric { description "Metric associated with specified bandwidth"; type uint16 { range "1 .. 65535"; } mandatory true; } } } } } list peer-interface { key name; ordered-by user; description "Configuration for peer interface"; leaf name { description "Name of peer interface"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable OSPF on this control peer"; type empty; } } } leaf retransmit-interval { description "Retransmission interval (seconds)"; type uint32 { range "1 .. 65535"; } } leaf transit-delay { description "Transit delay (seconds)"; type uint32 { range "1 .. 65535"; } } leaf hello-interval { description "Hello interval (seconds)"; type uint32 { range "1 .. 255"; } } leaf dead-interval { description "Dead interval (seconds)"; type uint32 { range "1 .. 65535"; } } choice auth { case case_1 { container authentication { uses juniper-ospf-authentication; } } } leaf demand-circuit { description "Interface functions as a demand circuit"; type empty; } leaf flood-reduction { description "Enable flood reduction"; type empty; } leaf no-neighbor-down-notification { description "Don't inform other protocols about neighbor down events"; type empty; } } } } container rip { description "RIP options"; uses juniper-protocols-rip; } container ripng { description "RIPng options"; uses juniper-protocols-ripng; } container isis { description "IS-IS configuration"; uses juniper-protocols-isis; } container esis { description "ES-IS configuration"; uses juniper-protocols-esis; } choice l2vpn_or_vpls_or_evpn { case case_1 { container l2vpn { description "Layer 2 VPN configuration"; uses juniper-protocols-l2vpn; } } case case_2 { container vpls { description "VPLS configuration"; uses juniper-protocols-l2vpn; } } case case_3 { container evpn { description "EVPN configuration"; uses juniper-protocols-l2vpn; } } } container pim { description "PIM configuration"; uses juniper-protocols-pim; } container amt { description "AMT relay configuration"; uses juniper-protocols-amt; } container ldp { description "LDP configuration"; uses juniper-protocols-ldp; } container router-discovery { description "ICMP router discovery options"; uses juniper-protocols-router-discovery; } container msdp { description "MSDP configuration"; uses juniper-protocols-msdp; } container mvpn { description "BGP-MVPN configuration"; uses juniper-protocols-mvpn; } container igmp-snooping { description "IGMP snooping configuration"; uses juniper-ri-protocols-igmp-snooping; } container mld-snooping { description "MLD snooping configuration"; uses juniper-ri-protocols-mld-snooping; } container pim-snooping { description "PIM snooping configuration"; uses juniper-protocols-pim-snooping; } container rstp { description "RSTP configuration"; uses juniper-protocols-stp; } container mstp { description "MSTP configuration"; uses juniper-protocols-mstp; } container vstp { description "VSTP configuration"; uses juniper-protocols-vstp; } container mvrp { description "MVRP configuration"; uses juniper-protocols-mvrp; } } container bridge-domains { description "Bridge domain configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list domain { key name; description "(null)"; uses juniper-bridge-domains; } } container switch-options { description "L2 options for routing-instance of type virtual-switch"; uses juniper-routing-instance-switch-options; } leaf layer3-domain-identifier { description "Layer3 domain identifier"; type uint32 { range "2 .. 8192"; } } leaf l2-domain-id-for-l3 { description "Layer2 domain identifier for L3"; type uint32 { range "2 .. 4095"; } } container vlans { description "VLAN configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list vlan { key name; description "Virtual LAN"; uses vlan-types; } } } grouping juniper-igmp-snooping-options { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf use-p2mp-lsp { description "P2MP will be used to forward traffic instead of PW"; type empty; } } grouping juniper-mld-snooping-options { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf use-p2mp-lsp { description "P2MP will be used to forward traffic instead of PW"; type empty; } } grouping juniper-protocols-l2vpn { description "Layer 2 VPN, VPLS or EVPN configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for Layer 2 VPNs"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum error { description "Trace errors"; } enum topology { description "Trace Layer 2 VPN, VPLS and EVPN topology changes"; } enum nlri { description "Trace Layer 2 VPN, VPLS and EVPN remote site advertisements"; } enum connections { description "Trace Layer 2 VPN and VPLS connections"; } enum automatic-site { description "Trace VPLS automatic site state"; } enum oam { description "Trace OAM messages"; } enum mac-database { description "Trace MAC route database in a EVPN instance"; } enum egress-protection { description "Trace Edge Protection messages"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } leaf encapsulation-type { description "Encapsulation type for VPN"; type enumeration { enum atm-aal5 { description "ATM AAL/5 encapsulation"; } enum atm-cell { description "ATM port promiscuous mode cell encapsulation"; } enum atm-cell-port-mode { description "ATM port promiscuous mode cell encapsulation"; } enum atm-cell-vp-mode { description "ATM VP promiscuous mode cell encapsulation"; } enum atm-cell-vc-mode { description "ATM non-promiscuous cell encapsulation"; } enum frame-relay { description "Frame Relay encapsulation"; } enum ppp { description "PPP encapsulation"; } enum cisco-hdlc { description "Cisco-compatible HDLC encapsulation"; } enum ethernet-vlan { description "Ethernet VLAN encapsulation"; } enum ethernet { description "Ethernet encapsulation"; } enum interworking { description "Layer 2.5 interworking VPN"; } enum frame-relay-port-mode { description "Frame Relay port mode encapsulation"; } enum satop-t1 { description "SATOP-T1 based Layer 2 VPN"; } enum satop-e1 { description "SATOP-E1 based Layer 2 VPN"; } enum satop-t3 { description "SATOP-T3 based Layer 2 VPN"; } enum satop-e3 { description "SATOP-E3 based Layer 2 VPN"; } enum cesop { description "CESOP based Layer 2 VPN"; } } } choice cword { case case_1 { leaf control-word { description "Add control word to the Layer 2 encapsulation"; type empty; } } case case_2 { leaf no-control-word { description "Disables control word on the Layer 2 encapsulation"; type empty; } } } leaf site-range { description "Maximum site identifier in this VPLS domain"; type uint32 { range "1 .. 65534"; } } leaf bum-hashing { description "Enable BUM hashing feature in the instance"; type empty; } leaf enable-mac-move-action { description "Enable VPLS loop prevention feature in the instance"; type empty; } leaf label-block-size { description "Label block size for this VPLS instance"; type enumeration { enum 2 { description "Label block size of 2"; } enum 4 { description "Label block size of 4"; } enum 8 { description "Label block size of 8"; } enum 16 { description "Label block size of 16"; } } } container mac-table-size { description "Size of MAC address forwarding table"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf limit { description "Maximum number of MAC addresses"; type uint32 { range "16 .. 1048575"; } } leaf packet-action { description "Action when MAC limit is reached"; type enumeration { enum drop { description "Drop packets and do not learn. Default is forward"; } } } } container interface-mac-limit { description "Maximum MAC address learned per interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf limit { description "Maximum number of MAC addresses per interface"; type uint32 { range "1 .. 131071"; } } leaf packet-action { description "Action when MAC limit is reached"; type enumeration { enum none { description "Forward the packet"; } enum drop { description "Drop packets and do not learn. Default is forward"; } enum log { description "Do not drop the packet but generate an alarm, an SNMP trap or a system log entry"; } enum shutdown { description "Disable the interface and generate an alarm, an SNMP trap or a system log entry"; } enum drop-and-log { description "Drop the packet and generate an alarm, an SNMP trap or a system log entry"; } } } } leaf mac-table-aging-time { description "Delay for discarding MAC address if no updates are received"; units "seconds"; type uint32 { range "10 .. 1000000"; } } leaf no-mac-learning { description "Disable dynamic MAC address learning"; type empty; } leaf mac-statistics { description "Enable MAC address statistics"; type empty; } list interface { key name; ordered-by user; description "Interface that connect this site to the VPN"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container interface-mac-limit { description "Maximum number of MAC addresses learned on the interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf limit { description "Maximum number of MAC addresses per interface"; type uint32 { range "1 .. 131071"; } } leaf packet-action { description "Action when MAC limit is reached"; type enumeration { enum none { description "Forward the packet"; } enum drop { description "Drop packets and do not learn. Default is forward"; } enum log { description "Do not drop the packet but generate an alarm, an SNMP trap or a system log entry"; } enum shutdown { description "Disable the interface and generate an alarm, an SNMP trap or a system log entry"; } enum drop-and-log { description "Drop the packet and generate an alarm, an SNMP trap or a system log entry"; } } } } leaf action-priority { description "Blocking priority of this interface on mac move detection"; type uint32 { range "0 .. 7"; } } leaf remote-site-id { description "Site identifier associated with this interface"; type uint32 { range "1 .. 65534"; } } leaf target-attachment-identifier { description "FEC 129 VPWS target attachment identifier"; type string { } } leaf flow-label-transmit { description "Advertise capability to push Flow Label in transmit direction to remote PE"; type empty; } leaf flow-label-receive { description "Advertise capability to push Flow Label in receive direction to remote PE"; type empty; } leaf encapsulation-type { description "Encapsulation type for VPN"; type enumeration { enum atm-aal5 { description "ATM AAL/5 encapsulation"; } enum atm-cell { description "ATM port promiscuous mode cell encapsulation"; } enum atm-cell-port-mode { description "ATM port promiscuous mode cell encapsulation"; } enum atm-cell-vp-mode { description "ATM VP promiscuous mode cell encapsulation"; } enum atm-cell-vc-mode { description "ATM non-promiscuous cell encapsulation"; } enum frame-relay { description "Frame Relay encapsulation"; } enum ppp { description "PPP encapsulation"; } enum cisco-hdlc { description "Cisco-compatible HDLC encapsulation"; } enum ethernet-vlan { description "Ethernet VLAN encapsulation"; } enum ethernet { description "Ethernet encapsulation"; } enum interworking { description "Layer 2.5 interworking VPN"; } enum frame-relay-port-mode { description "Frame Relay port mode encapsulation"; } enum satop-t1 { description "SATOP-T1 based Layer 2 VPN"; } enum satop-e1 { description "SATOP-E1 based Layer 2 VPN"; } enum satop-t3 { description "SATOP-T3 based Layer 2 VPN"; } enum satop-e3 { description "SATOP-E3 based Layer 2 VPN"; } enum cesop { description "CESOP based Layer 2 VPN"; } } } leaf ignore-encapsulation-mismatch { description "Allow different encapsulation types on local and remote end"; type empty; } leaf mtu { description "MTU to be advertised to the remote end"; type uint16 { range "512 .. 65535"; } } leaf ignore-mtu-mismatch { description "Allow different MTU values on local and remote end"; type empty; } choice cword { case case_1 { leaf control-word { description "Adds control-word to the Layer 2 encapsulation"; type empty; } } case case_2 { leaf no-control-word { description "Disables control-word to the Layer 2 encapsulation"; type empty; } } } leaf pseudowire-status-tlv { description "Send pseudowire status TLV"; type empty; } container oam { description "OAM Configuration for VPN"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ping-interval { description "Time interval between ping messages"; default "60"; units "seconds"; type uint16 { range "30 .. 3600"; } } container bfd-liveness-detection { description "Bidirectional Forwarding Detection (BFD) options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } } } leaf community { description "Community associated with this interface"; type string; } list static-mac { key name; ordered-by user; description "Static MAC addresses assigned to this interface"; leaf name { description "MAC address"; type mac-addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list vlan-id { key name; ordered-by user; description "VLAN ID of learning VLAN"; leaf name { description "Learning VLAN"; type uint32 { range "0 .. 4094"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } leaf no-mac-learning { description "Disable dynamic MAC address learning"; type empty; } leaf description { description "Text description"; type string; } } choice tunnel-services-choice { case case_1 { container tunnel-services { description "Use tunnel services for this VPLS instance"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list devices { description "Tunnel services devices to use for this VPLS instance"; type interface-device; } leaf primary { description "Primary tunnel services device to use for VPLS instance"; type interface-device; } } } case case_2 { leaf no-tunnel-services { description "Do not use tunnel services for this VPLS instance"; type empty; } } } list site { key name; ordered-by user; description "Sites connected to this provider equipment"; leaf name { description "Name of Layer 2 VPN or VPLS site"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice site-identifier-mode { case case_1 { leaf site-identifier { description "Layer 2 VPN or VPLS site identifier (unique in the VPN)"; type uint32 { range "1 .. 65534"; } } } case case_2 { container automatic-site-id { presence "enable automatic-site-id"; description "Enable automatic assignment of site identifier"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf startup-wait-time { description "Time to wait at startup before claming a site identifier (seconds)"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf new-site-wait-time { description "Time to wait before claiming a site identifier"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf collision-detect-time { description "Time to wait for detecting a collision"; units "seconds"; type uint32 { range "1 .. 3600"; } } container reclaim-wait-time { presence "enable reclaim-wait-time"; description "Time to wait for reclaiming a site identifier"; leaf minimum { description "Minimum wait time"; units "milliseconds"; type uint32; mandatory true; } leaf maximum { description "Maximum wait time"; units "milliseconds"; type uint32; mandatory true; } } } } } leaf source-attachment-identifier { description "FEC 129 VPWS source attachment identifier"; type string { } } leaf flow-label-transmit { description "Advertise capability to push Flow Label in transmit direction to remote PE"; type empty; } leaf flow-label-receive { description "Advertise capability to push Flow Label in receive direction to remote PE"; type empty; } leaf encapsulation-type { description "Encapsulation type for VPN"; type enumeration { enum atm-aal5 { description "ATM AAL/5 encapsulation"; } enum atm-cell { description "ATM port promiscuous mode cell encapsulation"; } enum atm-cell-port-mode { description "ATM port promiscuous mode cell encapsulation"; } enum atm-cell-vp-mode { description "ATM VP promiscuous mode cell encapsulation"; } enum atm-cell-vc-mode { description "ATM non-promiscuous cell encapsulation"; } enum frame-relay { description "Frame Relay encapsulation"; } enum ppp { description "PPP encapsulation"; } enum cisco-hdlc { description "Cisco-compatible HDLC encapsulation"; } enum ethernet-vlan { description "Ethernet VLAN encapsulation"; } enum ethernet { description "Ethernet encapsulation"; } enum interworking { description "Layer 2.5 interworking VPN"; } enum frame-relay-port-mode { description "Frame Relay port mode encapsulation"; } enum satop-t1 { description "SATOP-T1 based Layer 2 VPN"; } enum satop-e1 { description "SATOP-E1 based Layer 2 VPN"; } enum satop-t3 { description "SATOP-T3 based Layer 2 VPN"; } enum satop-e3 { description "SATOP-E3 based Layer 2 VPN"; } enum cesop { description "CESOP based Layer 2 VPN"; } } } leaf ignore-encapsulation-mismatch { description "Allow different encapsulation types on local and remote end"; type empty; } choice cword { case case_1 { leaf control-word { description "Adds control-word to the Layer 2 encapsulation"; type empty; } } case case_2 { leaf no-control-word { description "Disables control-word to the Layer 2 encapsulation"; type empty; } } } leaf pseudowire-status-tlv { description "Send pseudowire status TLV"; type empty; } container oam { description "OAM Configuration for VPN"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ping-interval { description "Time interval between ping messages"; default "60"; units "seconds"; type uint16 { range "30 .. 3600"; } } container bfd-liveness-detection { description "Bidirectional Forwarding Detection (BFD) options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } } } leaf community { description "Community associated with this site"; type string; } container multi-homing { presence "enable multi-homing"; description "Enable multi-homing functionality for this site"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf hold-time { description "Enable multi-homing non-designated forwarder hold time (seconds)"; units "seconds"; type uint32 { range "1 .. 18000"; } } } leaf site-preference { description "Layer 2 VPN or VPLS site preference"; type string; } leaf hot-standby { description "Keep backup pseudowire in continuous standby mode and ready for traffic forwarding"; type empty; } leaf mtu { description "MTU to be advertised to the remote end"; type uint16 { range "512 .. 65535"; } } leaf ignore-mtu-mismatch { description "Allow different MTU values on local and remote end"; type empty; } list mesh-group { key name; ordered-by user; description "Mesh-groups that are part of this site"; leaf name { description "Mesh-group name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container active-interface { description "Configure interface to designate as active"; choice interface_name { case case_1 { leaf any { description "One configured interface is designated active at random"; type empty; } } case case_2 { leaf primary { description "Interface to designate as active if it is operational"; type interface-name; } } } } leaf best-site { description "Activates best-site functionality for this instance"; type empty; } list interface { key name; ordered-by user; description "Interface that connect this site to the VPN"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container interface-mac-limit { description "Maximum number of MAC addresses learned on the interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf limit { description "Maximum number of MAC addresses per interface"; type uint32 { range "1 .. 131071"; } } leaf packet-action { description "Action when MAC limit is reached"; type enumeration { enum none { description "Forward the packet"; } enum drop { description "Drop packets and do not learn. Default is forward"; } enum log { description "Do not drop the packet but generate an alarm, an SNMP trap or a system log entry"; } enum shutdown { description "Disable the interface and generate an alarm, an SNMP trap or a system log entry"; } enum drop-and-log { description "Drop the packet and generate an alarm, an SNMP trap or a system log entry"; } } } } leaf action-priority { description "Blocking priority of this interface on mac move detection"; type uint32 { range "0 .. 7"; } } leaf remote-site-id { description "Site identifier associated with this interface"; type uint32 { range "1 .. 65534"; } } leaf target-attachment-identifier { description "FEC 129 VPWS target attachment identifier"; type string { } } leaf flow-label-transmit { description "Advertise capability to push Flow Label in transmit direction to remote PE"; type empty; } leaf flow-label-receive { description "Advertise capability to push Flow Label in receive direction to remote PE"; type empty; } leaf encapsulation-type { description "Encapsulation type for VPN"; type enumeration { enum atm-aal5 { description "ATM AAL/5 encapsulation"; } enum atm-cell { description "ATM port promiscuous mode cell encapsulation"; } enum atm-cell-port-mode { description "ATM port promiscuous mode cell encapsulation"; } enum atm-cell-vp-mode { description "ATM VP promiscuous mode cell encapsulation"; } enum atm-cell-vc-mode { description "ATM non-promiscuous cell encapsulation"; } enum frame-relay { description "Frame Relay encapsulation"; } enum ppp { description "PPP encapsulation"; } enum cisco-hdlc { description "Cisco-compatible HDLC encapsulation"; } enum ethernet-vlan { description "Ethernet VLAN encapsulation"; } enum ethernet { description "Ethernet encapsulation"; } enum interworking { description "Layer 2.5 interworking VPN"; } enum frame-relay-port-mode { description "Frame Relay port mode encapsulation"; } enum satop-t1 { description "SATOP-T1 based Layer 2 VPN"; } enum satop-e1 { description "SATOP-E1 based Layer 2 VPN"; } enum satop-t3 { description "SATOP-T3 based Layer 2 VPN"; } enum satop-e3 { description "SATOP-E3 based Layer 2 VPN"; } enum cesop { description "CESOP based Layer 2 VPN"; } } } leaf ignore-encapsulation-mismatch { description "Allow different encapsulation types on local and remote end"; type empty; } leaf mtu { description "MTU to be advertised to the remote end"; type uint16 { range "512 .. 65535"; } } leaf ignore-mtu-mismatch { description "Allow different MTU values on local and remote end"; type empty; } choice cword { case case_1 { leaf control-word { description "Adds control-word to the Layer 2 encapsulation"; type empty; } } case case_2 { leaf no-control-word { description "Disables control-word to the Layer 2 encapsulation"; type empty; } } } leaf pseudowire-status-tlv { description "Send pseudowire status TLV"; type empty; } container oam { description "OAM Configuration for VPN"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ping-interval { description "Time interval between ping messages"; default "60"; units "seconds"; type uint16 { range "30 .. 3600"; } } container bfd-liveness-detection { description "Bidirectional Forwarding Detection (BFD) options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } } } leaf community { description "Community associated with this interface"; type string; } list static-mac { key name; ordered-by user; description "Static MAC addresses assigned to this interface"; leaf name { description "MAC address"; type mac-addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list vlan-id { key name; ordered-by user; description "VLAN ID of learning VLAN"; leaf name { description "Learning VLAN"; type uint32 { range "0 .. 4094"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } leaf no-mac-learning { description "Disable dynamic MAC address learning"; type empty; } leaf description { description "Text description"; type string; } } } leaf community { description "Community associated with this VPLS instance"; type string; } leaf vpls-id { description "Identifier for this VPLS instance"; type string; } leaf mtu { description "MTU to be advertised to the remote end"; type uint16 { range "512 .. 65535"; } } leaf ignore-mtu-mismatch { description "Allow different MTU values on local and remote end"; type empty; } container mac-flush { presence "enable mac-flush"; description "Enables mac-flush processing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf any-interface { description "Send mac-flush when any AC interface goes down"; type empty; } leaf any-spoke { description "Send mac-flush when any spoke pseudo wire goes down"; type empty; } leaf propagate { description "Propagate mac-flush to the core"; type empty; } } leaf ignore-encapsulation-mismatch { description "Allow different encapsulation types on local and remote end"; type empty; } leaf pseudowire-status-tlv { description "Send pseudowire status TLV"; type empty; } list neighbor { key name; ordered-by user; description "Neighbor for this VPLS instance"; leaf name { description "Neighbor ID"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container static { presence "enable static"; description "Configuration of static vpls"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf incoming-label { description "VPLS incoming static label [1000000 - 1048575] or [29696 - 41983]"; type uint32; mandatory true; } leaf outgoing-label { description "VPLS outgoing static label"; type uint32 { range "16 .. 1048575"; } mandatory true; } } container associate-profile { description "Associate profile options for dynamic IFL"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf profile-name { description "Associated profile name"; type string { length "1 .. 81"; } mandatory true; } presence "enable associate-profile"; leaf profile-variable-set { description "Associate dynamic variable set with the profile"; type string { length "1 .. 81"; } } } leaf psn-tunnel-endpoint { description "Endpoint of the transport tunnel on the remote PE"; type ipv4addr; } leaf community { description "Community associated with this neighbor"; type string; } leaf encapsulation-type { description "Encapsulation type for VPN"; type enumeration { enum ethernet-vlan { description "Ethernet VLAN encapsulation"; } enum ethernet { description "Ethernet encapsulation"; } } } leaf ignore-encapsulation-mismatch { description "Allow different encapsulation types on local and remote end"; type empty; } leaf pseudowire-status-tlv { description "Send pseudowire status TLV"; type empty; } leaf switchover-delay { description "Pseudowire switchover delay "; default "10000"; units "milliseconds"; type uint32 { range "0 .. 180000"; } } leaf revert-time { description "Enable pseudowire redundancy reversion (seconds)"; units "seconds"; type uint32 { range "0 .. 600"; } } leaf connection-protection { description "End-2-end protection via OAM failure detection"; type empty; } list backup-neighbor { key name; ordered-by user; description "Configuration of redundant l2circuit"; leaf name { description "Neighbor ID"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container static { presence "enable static"; description "Configuration of static vpls"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf incoming-label { description "VPLS incoming static label [1000000 - 1048575] or [29696 - 41983]"; type uint32; mandatory true; } leaf outgoing-label { description "VPLS outgoing static label"; type uint32 { range "16 .. 1048575"; } mandatory true; } } leaf community { description "Community associated with this Layer 2 circuit"; type string; } leaf psn-tunnel-endpoint { description "Endpoint of the transport tunnel on the remote PE"; type ipv4addr; } leaf standby { description "Keep backup pseudowire in continuous standby"; type empty; } } container oam { description "OAM Configuration for VPN"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ping-interval { description "Time interval between ping messages"; default "60"; units "seconds"; type uint16 { range "30 .. 3600"; } } container bfd-liveness-detection { description "Bidirectional Forwarding Detection (BFD) options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } } } } leaf flow-label-transmit { description "Advertise capability to push Flow Label in transmit direction to remote PE"; type empty; } leaf flow-label-receive { description "Advertise capability to pop Flow Label in receive direction to remote PE"; type empty; } container associate-profile { description "Associate profile options for dynamic IFL"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf profile-name { description "Associated profile name"; type string { length "1 .. 81"; } mandatory true; } presence "enable associate-profile"; leaf profile-variable-set { description "Associate dynamic variable set with the profile"; type string { length "1 .. 81"; } } } list mesh-group { key name; description "Mesh-group under this VPLS instance"; leaf name { description "Mesh-group name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container associate-profile { description "Associate profile options for dynamic IFL"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf profile-name { description "Associated profile name"; type string { length "1 .. 81"; } mandatory true; } presence "enable associate-profile"; leaf profile-variable-set { description "Associate dynamic variable set with the profile"; type string { length "1 .. 81"; } } } choice peer-as-choice { case case_1 { container peer-as { description "Autonomous system of the peer"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf all { description "Include peers from all autonomous systems"; type empty; } } } } leaf vpls-id { description "LDP VPLS Identifier for this mesh-group"; type string; } leaf-list vrf-import { description "Import policy for VPLS instance mesh-group"; type policy-algebra; } leaf-list vrf-export { description "Export policy for VPLS instance mesh-group"; type policy-algebra; } container vrf-target { description "VPLS mesh-group target community configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf community { description "Target community to use in import and export"; type string { } } leaf import { description "Target community to use when filtering on import"; type string { } } leaf export { description "Target community to use when marking routes on export"; type string { } } } container mac-flush { presence "enable mac-flush"; description "Enables mac-flush processing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf any-interface { description "Send mac-flush when any AC interface goes down"; type empty; } leaf any-spoke { description "Send mac-flush when any spoke pseudo wire goes down"; type empty; } leaf propagate { description "Propagate mac-flush to the core"; type empty; } } leaf local-switching { description "Allow local-switching within interfaces in this mesh-group"; type empty; } list neighbor { key name; ordered-by user; description "Neighbor belonging to this mesh-group"; leaf name { description "Neighbor ID"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container static { presence "enable static"; description "Configuration of static vpls"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf incoming-label { description "VPLS incoming static label [1000000 - 1048575] or [29696 - 41983]"; type uint32; mandatory true; } leaf outgoing-label { description "VPLS outgoing static label"; type uint32 { range "16 .. 1048575"; } mandatory true; } } container associate-profile { description "Associate profile options for dynamic IFL"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf profile-name { description "Associated profile name"; type string { length "1 .. 81"; } mandatory true; } presence "enable associate-profile"; leaf profile-variable-set { description "Associate dynamic variable set with the profile"; type string { length "1 .. 81"; } } } leaf psn-tunnel-endpoint { description "Endpoint of the transport tunnel on the remote PE"; type ipv4addr; } leaf community { description "Community associated with this neighbor"; type string; } leaf encapsulation-type { description "Encapsulation type for VPN"; type enumeration { enum ethernet-vlan { description "Ethernet VLAN encapsulation"; } enum ethernet { description "Ethernet encapsulation"; } } } leaf ignore-encapsulation-mismatch { description "Allow different encapsulation types on local and remote end"; type empty; } leaf pseudowire-status-tlv { description "Send pseudowire status TLV"; type empty; } leaf switchover-delay { description "Pseudowire switchover delay "; default "10000"; units "milliseconds"; type uint32 { range "0 .. 180000"; } } leaf revert-time { description "Enable pseudowire redundancy reversion (seconds)"; units "seconds"; type uint32 { range "0 .. 600"; } } leaf connection-protection { description "End-2-end protection via OAM failure detection"; type empty; } list backup-neighbor { key name; ordered-by user; description "Configuration of redundant l2circuit"; leaf name { description "Neighbor ID"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container static { presence "enable static"; description "Configuration of static vpls"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf incoming-label { description "VPLS incoming static label [1000000 - 1048575] or [29696 - 41983]"; type uint32; mandatory true; } leaf outgoing-label { description "VPLS outgoing static label"; type uint32 { range "16 .. 1048575"; } mandatory true; } } leaf community { description "Community associated with this Layer 2 circuit"; type string; } leaf psn-tunnel-endpoint { description "Endpoint of the transport tunnel on the remote PE"; type ipv4addr; } leaf standby { description "Keep backup pseudowire in continuous standby"; type empty; } } container oam { description "OAM Configuration for VPN"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ping-interval { description "Time interval between ping messages"; default "60"; units "seconds"; type uint16 { range "30 .. 3600"; } } container bfd-liveness-detection { description "Bidirectional Forwarding Detection (BFD) options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } } } leaf-list vpls-id-list { description "LDP VPLS Identifier list for this neighbor"; type uint32 { range "1 .. 4294967295"; } } } container route-distinguisher { description "Route distinguisher for this mesh-group"; leaf rd-type { description "Number in (16 bit:32 bit) or (32 bit 'L':16 bit) or (IP address:16 bit) format"; type string { } } } } leaf connectivity-type { description "Specify type of interface sufficient to bring vpls connection up"; type enumeration { enum ce { description "CE interface is required"; } enum irb { description "IRB interface is sufficient"; } enum permanent { description "Pseudowire permanently up"; } } } container oam { description "OAM Configuration for VPN"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ping-interval { description "Time interval between ping messages"; default "60"; units "seconds"; type uint16 { range "30 .. 3600"; } } container bfd-liveness-detection { description "Bidirectional Forwarding Detection (BFD) options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } } container control-channel { description "Supported control channel type "; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice action-choice { case case_1 { leaf pwe3-control-word { description "For BGP based PW send oam packets with control word, with 0001b as first nibble"; type empty; } } case case_2 { leaf router-alert-label { description "For BGP based PW send oam packets with router alert label"; type empty; } } case case_3 { leaf pw-label-ttl-1 { description "For BGP based PW send oam packets with MPLS pw label TTL = 1"; type empty; } } } } } container multi-homing { description "Multi-homing configuration for FEC129 VPLS"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf peer-active { description "Keep CE interfaces in up state when all BGP peers go down"; type empty; } list site { key name; description "Sites connected to this provider equipment"; leaf name { description "Name of Layer 2 VPN or VPLS site"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf identifier { description "Layer 2 VPN or VPLS multi-homing identifier"; type uint16 { range "1 .. 65534"; } } leaf preference { description "Layer 2 VPN or VPLS multi-homing preference"; type string; } container active-interface { description "Configure interface to designate as active"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice interface_name { case case_1 { leaf any { description "One configured interface is designated active at random"; type empty; } } case case_2 { leaf primary { description "Interface to designate as active if it is operational"; type interface-name; } } } } list interface { key name; ordered-by user; description "Interface that connects this site to the VPN"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf preference { description "Layer 2 VPN or VPLS multi-homing preference for the interface"; type uint16 { range "1 .. 65535"; } } } leaf peer-active { description "Keep CE interfaces in up state when all BGP peers go down"; type empty; } } } leaf designated-forwarder-election-hold-time { description "Time to wait before electing a DF(seconds)"; units "seconds"; type uint32 { range "1 .. 1800"; } } leaf encapsulation { description "Encapsulation type for EVPN"; type enumeration { enum vxlan { description "VXLAN encapsulation"; } } } choice extended-attributes { case case_1 { leaf-list extended-vlan-list { description "List of VLAN identifiers that are to be EVPN extended"; type vlan-range; } } case case_2 { leaf-list extended-vni-list { description "List of VNI identifiers (1..16777214) or all, that are to be EVPN extended"; type string; } } } container vni-options { description "VNI options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list vni { key name; description "Per-vni options"; leaf name { description "(null)"; type int32 { range "1 .. 16777214"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container vrf-target { description "VRF target community configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf export { description "Target community to use when marking routes on export"; type string { } } } } } leaf multicast-mode { description "Multicast mode for EVPN"; default "ingress-replication"; type enumeration { enum ingress-replication { description "Ingress Replication"; } } } leaf default-gateway { description "Default gateway mode"; type enumeration { enum advertise { description "Advertise IRB MACs with default gateway community"; } enum no-gateway-community { description "Advertise IRB MACs without default gateway community"; } enum do-not-advertise { description "Do not advertise IRB MACs"; } } } } grouping juniper-protocols-pim-snooping { description "PIM snooping options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for PIM Snooping"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum packets { description "Trace all PIM packets"; } enum hello { description "Trace hello packets"; } enum join { description "Trace join messages"; } enum prune { description "Trace prune messages"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } leaf no-dr-flood { description "Disable default flooding of multicast data on the PIM designated router port"; type empty; } list vlan { key name; ordered-by user; description "Vlan options"; leaf name { description "Vlan_id of the learning-domain"; type uint32 { range "0 .. 1023"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-dr-flood { description "Disable default flooding of multicast data on the PIM DR port"; type empty; } } } grouping juniper-ri-protocols-igmp-snooping { description "IGMP snooping options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for IGMP Snooping"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum packets { description "Trace all IGMP packets"; } enum query { description "Trace IGMP membership query messages"; } enum report { description "Trace membership report messages"; } enum leave { description "Trace leave group messages (IGMPv2 only)"; } enum group { description "Trace group operations"; } enum client-notification { description "Trace notifications"; } enum host-notification { description "Trace host notifications"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } leaf query-interval { description "When to send host query messages"; default "125"; units "seconds"; type uint32 { range "1 .. 1024"; } } leaf query-response-interval { description "How long to wait for a host query response"; default "10"; units "seconds"; type string { } } leaf query-last-member-interval { description "When to send group query messages"; default "1"; units "seconds"; type string { } } leaf robust-count { description "Expected packet loss on a subnet"; default "2"; type uint32 { range "2 .. 10"; } } leaf learn-pim-router { description "Learn PIM router interfaces from PIM hellos"; type empty; } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } container proxy { presence "enable proxy"; description "Enable proxy mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-address { description "Source IP address to use for proxy"; type ipv4addr; } } list interface { key name; ordered-by user; description "Interface options for IGMP"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf multicast-router-interface { description "Enabling multicast-router-interface on the interface"; type empty; } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } leaf host-only-interface { description "Enable interfaces to be treated as host-side interfaces"; type empty; } leaf group-limit { description "Maximum number of (source,group) per interface"; type uint16 { range "1 .. 65535"; } } container static { description "Static group or source membership"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "IP multicast group address"; leaf name { description "IP multicast group address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list source { key name; ordered-by user; description "IP multicast source address"; leaf name { description "Source address of IP multicast data"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } list qualified-vlan { key name; ordered-by user; description "VLAN options for qualified-learning"; leaf name { description "VLAN ID of the learning-domain"; type uint32 { range "0 .. 1023"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf query-interval { description "When to send host query messages"; units "seconds"; type uint32 { range "1 .. 1024"; } } leaf query-response-interval { description "How long to wait for a host query response"; units "seconds"; type string { } } leaf query-last-member-interval { description "When to send group query messages"; units "seconds"; type string { } } leaf robust-count { description "Expected packet loss on a subnet"; type uint32 { range "2 .. 10"; } } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } container proxy { presence "enable proxy"; description "Enable proxy mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-address { description "Source IP address to use for proxy"; type ipv4addr; } } list interface { key name; ordered-by user; description "Interface options for IGMP"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf multicast-router-interface { description "Enabling multicast-router-interface on the interface"; type empty; } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } leaf host-only-interface { description "Enable interfaces to be treated as host-side interfaces"; type empty; } leaf group-limit { description "Maximum number of (source,group) per interface"; type uint16 { range "1 .. 65535"; } } container static { description "Static group or source membership"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "IP multicast group address"; leaf name { description "IP multicast group address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list source { key name; ordered-by user; description "IP multicast source address"; leaf name { description "Source address of IP multicast data"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } } list vlan { key name; ordered-by user; description "Vlan options"; leaf name { description "Vlan"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf query-interval { description "When to send host query messages"; units "seconds"; type uint32 { range "1 .. 1024"; } } leaf query-response-interval { description "How long to wait for a host query response"; units "seconds"; type string { } } leaf query-last-member-interval { description "When to send group query messages"; units "seconds"; type string { } } leaf robust-count { description "Expected packet loss on a subnet"; type uint32 { range "2 .. 10"; } } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } container proxy { presence "enable proxy"; description "Enable proxy mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-address { description "Source IP address to use for proxy"; type ipv4addr; } } list interface { key name; ordered-by user; description "Interface options for IGMP"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf multicast-router-interface { description "Enabling multicast-router-interface on the interface"; type empty; } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } leaf host-only-interface { description "Enable interfaces to be treated as host-side interfaces"; type empty; } leaf group-limit { description "Maximum number of (source,group) per interface"; type uint16 { range "1 .. 65535"; } } container static { description "Static group or source membership"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "IP multicast group address"; leaf name { description "IP multicast group address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list source { key name; ordered-by user; description "IP multicast source address"; leaf name { description "Source address of IP multicast data"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } list qualified-vlan { key name; ordered-by user; description "VLAN options for qualified-learning"; leaf name { description "VLAN ID of the learning-domain"; type uint32 { range "0 .. 1023"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf query-interval { description "When to send host query messages"; units "seconds"; type uint32 { range "1 .. 1024"; } } leaf query-response-interval { description "How long to wait for a host query response"; units "seconds"; type string { } } leaf query-last-member-interval { description "When to send group query messages"; units "seconds"; type string { } } leaf robust-count { description "Expected packet loss on a subnet"; type uint32 { range "2 .. 10"; } } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } container proxy { presence "enable proxy"; description "Enable proxy mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-address { description "Source IP address to use for proxy"; type ipv4addr; } } list interface { key name; ordered-by user; description "Interface options for IGMP"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf multicast-router-interface { description "Enabling multicast-router-interface on the interface"; type empty; } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } leaf host-only-interface { description "Enable interfaces to be treated as host-side interfaces"; type empty; } leaf group-limit { description "Maximum number of (source,group) per interface"; type uint16 { range "1 .. 65535"; } } container static { description "Static group or source membership"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "IP multicast group address"; leaf name { description "IP multicast group address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list source { key name; ordered-by user; description "IP multicast source address"; leaf name { description "Source address of IP multicast data"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } } } } grouping juniper-ri-protocols-mld-snooping { description "MLD snooping options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for MLD Snooping"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum packets { description "Trace all MLD packets"; } enum query { description "Trace MLD membership query messages"; } enum report { description "Trace membership report messages"; } enum leave { description "Trace leave group messages (MLDv2 only)"; } enum group { description "Trace group operations"; } enum client-notification { description "Trace notifications"; } enum host-notification { description "Trace host notifications"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } leaf query-interval { description "When to send host query messages"; default "125"; units "seconds"; type uint32 { range "1 .. 1024"; } } leaf query-response-interval { description "How long to wait for a host query response"; default "10"; units "seconds"; type string { } } leaf query-last-member-interval { description "When to send group query messages"; default "1"; units "seconds"; type string { } } leaf robust-count { description "Expected packet loss on a subnet"; default "2"; type uint32 { range "2 .. 10"; } } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } container proxy { presence "enable proxy"; description "Enable proxy mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-address { description "Source IP address to use for proxy"; type ipv6addr; mandatory true; } } list interface { key name; ordered-by user; description "Interface options for MLD"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf multicast-router-interface { description "Enabling multicast-router-interface on the interface"; type empty; } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } leaf host-only-interface { description "Enable interfaces to be treated as host-side interfaces"; type empty; } leaf group-limit { description "Maximum number of (source,group) per interface"; type uint16 { range "1 .. 65535"; } } container static { description "Static group or source membership"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "IP multicast group address"; leaf name { description "IP multicast group address"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list source { key name; ordered-by user; description "IP multicast source address"; leaf name { description "Source address of IP multicast data"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } list qualified-vlan { key name; ordered-by user; description "VLAN options for qualified-learning"; leaf name { description "VLAN ID of the learning-domain"; type uint32 { range "0 .. 1023"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf query-interval { description "When to send host query messages"; units "seconds"; type uint32 { range "1 .. 1024"; } } leaf query-response-interval { description "How long to wait for a host query response"; units "seconds"; type string { } } leaf query-last-member-interval { description "When to send group query messages"; units "seconds"; type string { } } leaf robust-count { description "Expected packet loss on a subnet"; type uint32 { range "2 .. 10"; } } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } container proxy { presence "enable proxy"; description "Enable proxy mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-address { description "Source IP address to use for proxy"; type ipv6addr; mandatory true; } } list interface { key name; ordered-by user; description "Interface options for MLD"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf multicast-router-interface { description "Enabling multicast-router-interface on the interface"; type empty; } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } leaf host-only-interface { description "Enable interfaces to be treated as host-side interfaces"; type empty; } leaf group-limit { description "Maximum number of (source,group) per interface"; type uint16 { range "1 .. 65535"; } } container static { description "Static group or source membership"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "IP multicast group address"; leaf name { description "IP multicast group address"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list source { key name; ordered-by user; description "IP multicast source address"; leaf name { description "Source address of IP multicast data"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } } list vlan { key name; ordered-by user; description "Vlan options"; leaf name { description "Vlan of the bridge-domain"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf query-interval { description "When to send host query messages"; units "seconds"; type uint32 { range "1 .. 1024"; } } leaf query-response-interval { description "How long to wait for a host query response"; units "seconds"; type string { } } leaf query-last-member-interval { description "When to send group query messages"; units "seconds"; type string { } } leaf robust-count { description "Expected packet loss on a subnet"; type uint32 { range "2 .. 10"; } } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } container proxy { presence "enable proxy"; description "Enable proxy mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-address { description "Source IP address to use for proxy"; type ipv6addr; mandatory true; } } list interface { key name; ordered-by user; description "Interface options for MLD"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf multicast-router-interface { description "Enabling multicast-router-interface on the interface"; type empty; } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } leaf host-only-interface { description "Enable interfaces to be treated as host-side interfaces"; type empty; } leaf group-limit { description "Maximum number of (source,group) per interface"; type uint16 { range "1 .. 65535"; } } container static { description "Static group or source membership"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "IP multicast group address"; leaf name { description "IP multicast group address"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list source { key name; ordered-by user; description "IP multicast source address"; leaf name { description "Source address of IP multicast data"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } list qualified-vlan { key name; ordered-by user; description "VLAN options for qualified-learning"; leaf name { description "VLAN ID of the learning-domain"; type uint32 { range "0 .. 1023"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf query-interval { description "When to send host query messages"; units "seconds"; type uint32 { range "1 .. 1024"; } } leaf query-response-interval { description "How long to wait for a host query response"; units "seconds"; type string { } } leaf query-last-member-interval { description "When to send group query messages"; units "seconds"; type string { } } leaf robust-count { description "Expected packet loss on a subnet"; type uint32 { range "2 .. 10"; } } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } container proxy { presence "enable proxy"; description "Enable proxy mode"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-address { description "Source IP address to use for proxy"; type ipv6addr; mandatory true; } } list interface { key name; ordered-by user; description "Interface options for MLD"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf multicast-router-interface { description "Enabling multicast-router-interface on the interface"; type empty; } leaf immediate-leave { description "Enable immediate group leave on interfaces"; type empty; } leaf host-only-interface { description "Enable interfaces to be treated as host-side interfaces"; type empty; } leaf group-limit { description "Maximum number of (source,group) per interface"; type uint16 { range "1 .. 65535"; } } container static { description "Static group or source membership"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "IP multicast group address"; leaf name { description "IP multicast group address"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list source { key name; ordered-by user; description "IP multicast source address"; leaf name { description "Source address of IP multicast data"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } } } } grouping juniper-routing-instance-switch-options { description "Bridge options for the routing instance"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container mac-table-size { description "Size of MAC address forwarding table"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf limit { description "Maximum number of MAC addresses"; type uint32 { range "16 .. 1048575"; } } leaf packet-action { description "Action when MAC limit is reached"; type enumeration { enum drop { description "Drop packets and do not learn. Default is forward"; } } } } container interface-mac-limit { description "Maximum MAC address learned per interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf limit { description "Maximum number of MAC addresses per interface"; type uint32 { range "1 .. 131071"; } } leaf packet-action { description "Action when MAC limit is reached"; type enumeration { enum none { description "Forward the packet"; } enum drop { description "Drop packets and do not learn. Default is forward"; } enum log { description "Do not drop the packet but generate an alarm, an SNMP trap or a system log entry"; } enum shutdown { description "Disable the interface and generate an alarm, an SNMP trap or a system log entry"; } enum drop-and-log { description "Drop the packet and generate an alarm, an SNMP trap or a system log entry"; } } } } leaf mac-table-aging-time { description "Delay for discarding MAC address if no updates are received"; units "seconds"; type uint32 { range "10 .. 1000000"; } } leaf no-mac-learning { description "Disable dynamic MAC address learning"; type empty; } leaf mac-statistics { description "Enable MAC address statistics"; type empty; } leaf service-id { description "Service ID required if multi-chassis AE is part of a bridge-domain"; type uint32 { range "1 .. 65535"; } } leaf ovsdb-managed { description "All vxlan bridge domains in routing instance are remote managed"; type empty; } list interface { key name; ordered-by user; description "Interface that connect this site to the VPN"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container interface-mac-limit { description "Maximum number of MAC addresses learned on the interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf limit { description "Maximum number of MAC addresses per interface"; type uint32 { range "1 .. 131071"; } } leaf packet-action { description "Action when MAC limit is reached"; type enumeration { enum none { description "Forward the packet"; } enum drop { description "Drop packets and do not learn. Default is forward"; } enum log { description "Do not drop the packet but generate an alarm, an SNMP trap or a system log entry"; } enum shutdown { description "Disable the interface and generate an alarm, an SNMP trap or a system log entry"; } enum drop-and-log { description "Drop the packet and generate an alarm, an SNMP trap or a system log entry"; } } } } leaf action-priority { description "Blocking priority of this interface on mac move detection"; type uint32 { range "0 .. 7"; } } leaf remote-site-id { description "Site identifier associated with this interface"; type uint32 { range "1 .. 65534"; } } leaf target-attachment-identifier { description "FEC 129 VPWS target attachment identifier"; type string { } } leaf flow-label-transmit { description "Advertise capability to push Flow Label in transmit direction to remote PE"; type empty; } leaf flow-label-receive { description "Advertise capability to push Flow Label in receive direction to remote PE"; type empty; } leaf encapsulation-type { description "Encapsulation type for VPN"; type enumeration { enum atm-aal5 { description "ATM AAL/5 encapsulation"; } enum atm-cell { description "ATM port promiscuous mode cell encapsulation"; } enum atm-cell-port-mode { description "ATM port promiscuous mode cell encapsulation"; } enum atm-cell-vp-mode { description "ATM VP promiscuous mode cell encapsulation"; } enum atm-cell-vc-mode { description "ATM non-promiscuous cell encapsulation"; } enum frame-relay { description "Frame Relay encapsulation"; } enum ppp { description "PPP encapsulation"; } enum cisco-hdlc { description "Cisco-compatible HDLC encapsulation"; } enum ethernet-vlan { description "Ethernet VLAN encapsulation"; } enum ethernet { description "Ethernet encapsulation"; } enum interworking { description "Layer 2.5 interworking VPN"; } enum frame-relay-port-mode { description "Frame Relay port mode encapsulation"; } enum satop-t1 { description "SATOP-T1 based Layer 2 VPN"; } enum satop-e1 { description "SATOP-E1 based Layer 2 VPN"; } enum satop-t3 { description "SATOP-T3 based Layer 2 VPN"; } enum satop-e3 { description "SATOP-E3 based Layer 2 VPN"; } enum cesop { description "CESOP based Layer 2 VPN"; } } } leaf ignore-encapsulation-mismatch { description "Allow different encapsulation types on local and remote end"; type empty; } leaf mtu { description "MTU to be advertised to the remote end"; type uint16 { range "512 .. 65535"; } } leaf ignore-mtu-mismatch { description "Allow different MTU values on local and remote end"; type empty; } choice cword { case case_1 { leaf control-word { description "Adds control-word to the Layer 2 encapsulation"; type empty; } } case case_2 { leaf no-control-word { description "Disables control-word to the Layer 2 encapsulation"; type empty; } } } leaf pseudowire-status-tlv { description "Send pseudowire status TLV"; type empty; } container oam { description "OAM Configuration for VPN"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ping-interval { description "Time interval between ping messages"; default "60"; units "seconds"; type uint16 { range "30 .. 3600"; } } container bfd-liveness-detection { description "Bidirectional Forwarding Detection (BFD) options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } } } leaf community { description "Community associated with this interface"; type string; } list static-mac { key name; ordered-by user; description "Static MAC addresses assigned to this interface"; leaf name { description "MAC address"; type mac-addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list vlan-id { key name; ordered-by user; description "VLAN ID of learning VLAN"; leaf name { description "Learning VLAN"; type uint32 { range "0 .. 4094"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } leaf no-mac-learning { description "Disable dynamic MAC address learning"; type empty; } leaf description { description "Text description"; type string; } } container voip { description "Voice-over-IP configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list interface { key name; ordered-by user; description "Enable voice over IP on this port"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf vlan { description "VLAN for voice over IP"; type string { } mandatory true; } leaf forwarding-class { description "Forwarding class"; type string { } } } } container unknown-unicast-forwarding { description "Set interface for forwarding of unknown unicast packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list vlan { key name; description "VLAN for the unknown unicast packets"; leaf name { description "VLAN name or VLAN Tag (1..4095)"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interface { description "Interface to send unknown unicast packets for the VLAN"; type interface-name; } } } list authentication-whitelist { key name; ordered-by user; description "MAC authentication-whitelist configuration needed to bypass Authentication"; leaf name { description "MAC addresses to bypass authentication"; type mac-addr-prefix; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf vlan-assignment { description "VLAN name or 802.1q tag for the MAC address"; type string { } } leaf bridge-domain-assignment { description "Bridge-domain name or 802.1q tag for the MAC address"; type string { } } leaf interface { description "Interface on which authentication is bypassed"; type interface-name; } } } grouping juniper-routing-options { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf med-igp-update-interval { description "Delay (in minutes) in updating MED IGP for bgp groups with 'delay-med-update' "; type uint32 { range "10 .. 600"; } } container bmp { presence "enable bmp"; description "BGP Monitoring Protocol (BMP) configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf authentication-key { description "MD5 authentication key"; type string { length "1 .. 126"; } } leaf authentication-algorithm { description "Authentication algorithm name"; default "hmac-sha-1-96"; type enumeration { enum md5 { description "Message Digest 5"; } enum hmac-sha-1-96 { description "Hash-based Message Authentication Code (SHA1) (96 bits)"; } enum aes-128-cmac-96 { description "Cipher-based Message Authentication Code (AES128) (96 bits)"; } } } leaf authentication-key-chain { description "Key chain name"; type string { length "1 .. 128"; } } container hold-down { presence "enable hold-down"; leaf hold-down-time { description "Prevent re-establishment for this time"; units "seconds"; type uint32 { range "30 .. 65535"; } mandatory true; } leaf flaps { description "Number of flaps before damping"; type uint32 { range "2 .. 10"; } mandatory true; } leaf period { description "Time period for flaps"; units "seconds"; type uint32 { range "30 .. 65535"; } mandatory true; } } leaf initiation-message { description "User string sent with the initiation message"; type string { length "1 .. 255"; } } leaf local-address { description "Address of local end of BMP session"; type ipaddr; } leaf local-port { description "Local port for listening"; type uint32 { range "1024 .. 65535"; } } leaf connection-mode { description "Specify active or passive"; type enumeration { enum active { description "Initiate the connection"; } enum passive { description "Listen for the connection"; } } } leaf priority { description "Relative dispatch priority"; type enumeration { enum low { description "Lowest priority"; } enum medium { description "Medium priority"; } enum high { description "Highest priority"; } } } leaf monitor { description "Enable/Disable monitoring"; type enumeration { enum enable { description "Enable monitoring of BGP peer(s)"; } enum disable { description "Disable monitoring of BGP peer(s)"; } } } container route-monitoring { description "Control route monitoring settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf none { description "Do not send route montoring messages"; type empty; } container pre-policy { presence "enable pre-policy"; description "Send pre policy route montoring messages"; leaf exclude-non-feasible { description "Exclude looped routes, etc"; type empty; } } container post-policy { presence "enable post-policy"; description "Send post policy route montoring messages"; leaf exclude-non-eligible { description "Exclude unresolved routes, etc."; type empty; } } } leaf station-address { description "Address/name of monitoring station"; type ipaddr; mandatory true; } leaf station-port { description "Port of monitoring station"; type uint32 { range "1 .. 65535"; } mandatory true; } leaf statistics-timeout { description "Periodicity of statistics reports (default 1 hour)"; units "seconds"; type uint32 { range "15 .. 65535"; } } container traceoptions { description "Trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Trace flag information"; leaf name { description "(null)"; type enumeration { enum packets { description "Trace all messages"; } enum up { description "Trace up messages"; } enum down { description "Trace down messages"; } enum statistics { description "Trace statistics messages"; } enum route-monitoring { description "Trace route monitoring messages"; } enum event { description "Trace major events, station establishment, errors, events"; } enum error { description "Trace error conditions"; } enum write { description "Trace writing of messages"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } list station { key name; description "Define a BMP station"; leaf name { description "Station name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf authentication-key { description "MD5 authentication key"; type string { length "1 .. 126"; } } leaf authentication-algorithm { description "Authentication algorithm name"; type enumeration { enum md5 { description "Message Digest 5"; } enum hmac-sha-1-96 { description "Hash-based Message Authentication Code (SHA1) (96 bits)"; } enum aes-128-cmac-96 { description "Cipher-based Message Authentication Code (AES128) (96 bits)"; } } } leaf authentication-key-chain { description "Key chain name"; type string { length "1 .. 128"; } } container hold-down { presence "enable hold-down"; leaf hold-down-time { description "Prevent re-establishment for this time"; units "seconds"; type uint32 { range "30 .. 65535"; } mandatory true; } leaf flaps { description "Number of flaps before damping"; type uint32 { range "2 .. 10"; } mandatory true; } leaf period { description "Time period for flaps"; units "seconds"; type uint32 { range "30 .. 65535"; } mandatory true; } } leaf initiation-message { description "User string sent with the initiation message"; type string { length "1 .. 255"; } } leaf local-address { description "Address of local end of BMP session"; type ipaddr; } leaf local-port { description "Local port for listening"; type uint32 { range "1024 .. 65535"; } } leaf connection-mode { description "Specify active or passive"; type enumeration { enum active { description "Initiate the connection"; } enum passive { description "Listen for the connection"; } } } leaf priority { description "Relative dispatch priority"; type enumeration { enum low { description "Lowest priority"; } enum medium { description "Medium priority"; } enum high { description "Highest priority"; } } } leaf monitor { description "Enable/Disable monitoring"; type enumeration { enum enable { description "Enable monitoring of BGP peer(s)"; } enum disable { description "Disable monitoring of BGP peer(s)"; } } } container route-monitoring { description "Control route monitoring settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf none { description "Do not send route montoring messages"; type empty; } container pre-policy { presence "enable pre-policy"; description "Send pre policy route montoring messages"; leaf exclude-non-feasible { description "Exclude looped routes, etc"; type empty; } } container post-policy { presence "enable post-policy"; description "Send post policy route montoring messages"; leaf exclude-non-eligible { description "Exclude unresolved routes, etc."; type empty; } } } leaf station-address { description "Address/name of monitoring station"; type ipaddr; } leaf station-port { description "Port of monitoring station"; type uint32 { range "1 .. 65535"; } } leaf statistics-timeout { description "Statistics message timer, 15-65535, or 0 for no messages"; units "seconds"; type uint32 { range "0 .. 65535"; } } container traceoptions { description "Trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Trace flag information"; leaf name { description "(null)"; type enumeration { enum packets { description "Trace all messages"; } enum up { description "Trace up messages"; } enum down { description "Trace down messages"; } enum statistics { description "Trace statistics messages"; } enum route-monitoring { description "Trace route monitoring messages"; } enum event { description "Trace major events, station establishment, errors, events"; } enum error { description "Trace error conditions"; } enum write { description "Trace writing of messages"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } } leaf memory-limit { description "Memory Limit to close BMP (default 10 MB)"; units "bytes"; type uint32 { range "1048576 .. 52428800"; } } } leaf bgp-orf-cisco-mode { description "Using BGP ORF capability code 130 and Prefix ORF type 128"; type empty; } container ppm { presence "enable ppm"; description "Set periodic packet management properties"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-delegate-processing { description "Disable PPM sessions distribution"; type empty; } leaf no-inline-processing { description "Disable PPM session inline distribution"; type empty; } } leaf no-bfd-triggered-local-repair { description "Disable bfd triggered local repair"; type empty; } container source-routing { description "Source-routing options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ip { description "Enable IP Source Routing"; type empty; } leaf ipv6 { description "Enable Type 0 RouteHeader processing"; type empty; } } choice chained-multi-family-lookup-or-no-chained-multi-family-lookup { } container admin-groups-extended-range { description "Extended administrative groups range"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum { description "Minimum value of the range for extended administrative groups"; type uint32 { range "32 .. 4294967295"; } mandatory true; } presence "enable admin-groups-extended-range"; leaf maximum { description "Maximum value of the range for extended administrative groups"; type uint32 { range "32 .. 4294967295"; } mandatory true; } } list admin-groups-extended { key name; ordered-by user; description "Extended administrative groups"; leaf name { description "Group name (Maximum length 64)"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf group-value { description "Group id"; type uint32 { range "32 .. 4294967295"; } } } container traceoptions { description "Global routing protocol trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum parse { description "Trace configuration parsing"; } enum regex-parse { description "Trace regular-expression parsing"; } enum config-internal { description "Trace configuration internals"; } enum nsr-synchronization { description "Trace nonstop routing synchronization events"; } enum condition-manager { description "Trace condition manager events"; } enum graceful-restart { description "Trace Graceful Restart events"; } enum session { description "Trace Session ID allocations/deallocations"; } enum hfrr-fsm { description "Host FRR FSM events tracing"; } enum hfrr-route { description "Host FRR route events tracing"; } enum statistics-id-group { description "Trace Statistics ID Group operations"; } enum route-record { description "Trace route-record server-side events"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf disable { description "Disable this trace flag"; type empty; } } } container options { description "Miscellaneous options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container syslog { description "Set system logging level"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container level { description "Logging level"; leaf emergency { description "Emergency level"; type empty; } leaf alert { description "Alert level"; type empty; } leaf critical { description "Critical level"; type empty; } leaf error { description "Error level"; type empty; } leaf warning { description "Warning level"; type empty; } leaf notice { description "Notice level"; type empty; } leaf info { description "Informational level"; type empty; } leaf debug { description "Debugging level"; type empty; } } leaf upto { description "Log up to a particular logging level"; type enumeration { enum emergency { description "Emergency level"; } enum alert { description "Alert level"; } enum critical { description "Critical level"; } enum error { description "Error level"; } enum warning { description "Warning level"; } enum notice { description "Notice level"; } enum info { description "Informational level"; } enum debug { description "Debugging level"; } } } } leaf mark { description "Periodically mark the trace file"; units "seconds"; type int32; } } container graceful-restart { presence "enable graceful-restart"; description "Graceful or hitless routing restart options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable graceful restart"; type empty; } } } leaf restart-duration { description "Maximum time for which router is in graceful restart"; type uint32 { range "120 .. 900"; } } } leaf nonstop-routing { description "Enable nonstop routing"; type empty; } container interface-routes { description "Define routing table groups for interface routes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container rib-group { description "Routing table group"; uses rib_group_type; } list family { key name; ordered-by user; description "Address family"; leaf name { description "(null)"; type enumeration { enum inet { description "IPv4 family"; } enum inet6 { description "IPv6 family"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list import { description "Import policy"; type policy-algebra; } container export { description "Control exportability of local routes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf point-to-point { description "Make point-to-point routes exportable"; type empty; } leaf lan { description "Make LAN routes exportable"; type empty; } } } } list rib { key name; ordered-by user; description "Routing table options"; leaf name { description "Routing table name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container static { description "Static routes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf rib-group { description "Routing table group"; type string; } container defaults { description "Global route options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf retain { description "Always keep route in forwarding table"; type empty; } leaf no-retain { description "Always keep route in forwarding table"; type empty; } leaf install { description "Install route into forwarding table"; type empty; } leaf no-install { description "Install route into forwarding table"; type empty; } leaf readvertise { description "Mark route as eligible to be readvertised"; type empty; } leaf no-readvertise { description "Mark route as eligible to be readvertised"; type empty; } leaf resolve { description "Allow resolution of indirectly connected next hops"; type empty; } leaf no-resolve { description "Allow resolution of indirectly connected next hops"; type empty; } leaf longest-match { description "Always use longest prefix match to resolve next hops"; type empty; } leaf no-longest-match { description "Always use longest prefix match to resolve next hops"; type empty; } choice passive_flag { case case_1 { leaf active { description "Remove inactive route from forwarding table"; type empty; } } case case_2 { leaf passive { description "Retain inactive route in forwarding table"; type empty; } } } container metric { description "Metric value"; uses rib_static_metric_type; } container metric2 { description "Metric value 2"; uses rib_static_metric_type; } container metric3 { description "Metric value 3"; uses rib_static_metric_type; } container metric4 { description "Metric value 4"; uses rib_static_metric_type; } container tag { description "Tag string"; uses rib_static_metric_type; } container tag2 { description "Tag string 2"; uses rib_static_metric_type; } container preference { description "Preference value"; uses rib_static_metric_type; } container preference2 { description "Preference value 2"; uses rib_static_metric_type; } container color { description "Color (preference) value"; uses rib_static_metric_type; } container color2 { description "Color (preference) value 2"; uses rib_static_metric_type; } leaf-list community { description "BGP community identifier"; type community; } container as-path { description "Autonomous system path"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf path { description "Autonomous system path"; type string; } leaf origin { description "(null)"; type enumeration { enum igp { description "Path originated in the local IGP"; } enum egp { description "Path originated in another AS"; } enum incomplete { description "Path was learned by some other means"; } } } leaf atomic-aggregate { description "Add ATOMIC_AGGREGATE path attribute to route"; type empty; } container aggregator { presence "enable aggregator"; description "Add AGGREGATOR path attribute to route"; } leaf as-number { description " Autonomous system number in plain number or 'higher 16bits'.'Lower 16 bits' (asdot notation) format"; type string { } } leaf address { description "Address of BGP system that formed the route"; type ipv4addr; } } } list route { key name; ordered-by user; description "Static route"; leaf name { description "(null)"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice next_hop { case case_1 { leaf-list next-hop { description "Next hop to destination"; type ipaddr-or-interface; } } case case_2 { leaf reject { description "Drop packets to destination; send ICMP unreachables"; type empty; } } case case_3 { leaf discard { description "Drop packets to destination; send no ICMP unreachables"; type empty; } } case case_4 { leaf receive { description "Install a receive route for the destination"; type empty; } } case case_5 { leaf next-table { description "Next hop to another table"; type string; } } } list qualified-next-hop { key name; ordered-by user; description "Next hop with qualifiers"; uses qualified_nh_obj; } list lsp-next-hop { key name; ordered-by user; description "LSP next hop"; uses lsp_nh_obj; } list static-lsp-next-hop { key name; ordered-by user; description "Static LSP next hop"; uses lsp_nh_obj; } list p2mp-lsp-next-hop { key name; ordered-by user; description "Point-to-multipoint LSP next hop"; max-elements 1; uses lsp_nh_obj; } leaf backup-pe-group { description "Multicast source redundancy group"; type string; } container bfd-liveness-detection { description "Bidirectional Forwarding Detection (BFD) options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } container authentication { description "Authentication options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf key-chain { description "Key chain name"; type string; } leaf algorithm { description "Algorithm name"; type enumeration { enum simple-password { description "Simple password"; } enum keyed-md5 { description "Keyed message Digest 5"; } enum meticulous-keyed-md5 { description "Meticulous keyed message Digest 5"; } enum keyed-sha-1 { description "Keyed secure hash algorithm (SHA1) "; } enum meticulous-keyed-sha-1 { description "Meticulous keyed secure hash algorithm (SHA1) "; } } } leaf loose-check { description "Verify authentication only if authentication is negotiated"; type empty; } } leaf neighbor { description "BFD neighbor address"; type ipaddr; } leaf local-address { description "BFD local address (for multihop only)"; type ipaddr; } leaf holddown-interval { description "Time to hold the session-UP notification to the client"; units "milliseconds"; type uint32 { range "0 .. 255000"; } } leaf minimum-receive-ttl { description "Minimum receive TTL below which to drop"; type uint8 { range "1 .. 255"; } } } leaf retain { description "Always keep route in forwarding table"; type empty; } leaf no-retain { description "Always keep route in forwarding table"; type empty; } leaf install { description "Install route into forwarding table"; type empty; } leaf no-install { description "Install route into forwarding table"; type empty; } leaf readvertise { description "Mark route as eligible to be readvertised"; type empty; } leaf no-readvertise { description "Mark route as eligible to be readvertised"; type empty; } leaf resolve { description "Allow resolution of indirectly connected next hops"; type empty; } leaf no-resolve { description "Allow resolution of indirectly connected next hops"; type empty; } leaf longest-match { description "Always use longest prefix match to resolve next hops"; type empty; } leaf no-longest-match { description "Always use longest prefix match to resolve next hops"; type empty; } choice passive_flag { case case_1 { leaf active { description "Remove inactive route from forwarding table"; type empty; } } case case_2 { leaf passive { description "Retain inactive route in forwarding table"; type empty; } } } container metric { description "Metric value"; uses rib_static_metric_type; } container metric2 { description "Metric value 2"; uses rib_static_metric_type; } container metric3 { description "Metric value 3"; uses rib_static_metric_type; } container metric4 { description "Metric value 4"; uses rib_static_metric_type; } container tag { description "Tag string"; uses rib_static_metric_type; } container tag2 { description "Tag string 2"; uses rib_static_metric_type; } container preference { description "Preference value"; uses rib_static_metric_type; } container preference2 { description "Preference value 2"; uses rib_static_metric_type; } container color { description "Color (preference) value"; uses rib_static_metric_type; } container color2 { description "Color (preference) value 2"; uses rib_static_metric_type; } leaf-list community { description "BGP community identifier"; type community; } container as-path { description "Autonomous system path"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf path { description "Autonomous system path"; type string; } leaf origin { description "(null)"; type enumeration { enum igp { description "Path originated in the local IGP"; } enum egp { description "Path originated in another AS"; } enum incomplete { description "Path was learned by some other means"; } } } leaf atomic-aggregate { description "Add ATOMIC_AGGREGATE path attribute to route"; type empty; } container aggregator { presence "enable aggregator"; description "Add AGGREGATOR path attribute to route"; } leaf as-number { description " Autonomous system number in plain number or 'higher 16bits'.'Lower 16 bits' (asdot notation) format"; type string { } } leaf address { description "Address of BGP system that formed the route"; type ipv4addr; } } } list iso-route { key name; ordered-by user; description "ISO family static route"; leaf name { description "(null)"; type isoprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice next_hop { case case_1 { leaf-list next-hop { description "Next hop to destination"; type ipaddr-or-interface; } } case case_2 { leaf reject { description "Drop packets to destination; send ICMP unreachables"; type empty; } } case case_3 { leaf discard { description "Drop packets to destination; send no ICMP unreachables"; type empty; } } case case_4 { leaf receive { description "Install a receive route for the destination"; type empty; } } case case_5 { leaf next-table { description "Next hop to another table"; type string; } } } list qualified-next-hop { key name; ordered-by user; description "Next hop with qualifiers"; uses qualified_nh_obj; } list lsp-next-hop { key name; ordered-by user; description "LSP next hop"; uses lsp_nh_obj; } list static-lsp-next-hop { key name; ordered-by user; description "Static LSP next hop"; uses lsp_nh_obj; } list p2mp-lsp-next-hop { key name; ordered-by user; description "Point-to-multipoint LSP next hop"; max-elements 1; uses lsp_nh_obj; } leaf backup-pe-group { description "Multicast source redundancy group"; type string; } container bfd-liveness-detection { description "Bidirectional Forwarding Detection (BFD) options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } container authentication { description "Authentication options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf key-chain { description "Key chain name"; type string; } leaf algorithm { description "Algorithm name"; type enumeration { enum simple-password { description "Simple password"; } enum keyed-md5 { description "Keyed message Digest 5"; } enum meticulous-keyed-md5 { description "Meticulous keyed message Digest 5"; } enum keyed-sha-1 { description "Keyed secure hash algorithm (SHA1) "; } enum meticulous-keyed-sha-1 { description "Meticulous keyed secure hash algorithm (SHA1) "; } } } leaf loose-check { description "Verify authentication only if authentication is negotiated"; type empty; } } leaf neighbor { description "BFD neighbor address"; type ipaddr; } leaf local-address { description "BFD local address (for multihop only)"; type ipaddr; } leaf holddown-interval { description "Time to hold the session-UP notification to the client"; units "milliseconds"; type uint32 { range "0 .. 255000"; } } leaf minimum-receive-ttl { description "Minimum receive TTL below which to drop"; type uint8 { range "1 .. 255"; } } } leaf retain { description "Always keep route in forwarding table"; type empty; } leaf no-retain { description "Always keep route in forwarding table"; type empty; } leaf install { description "Install route into forwarding table"; type empty; } leaf no-install { description "Install route into forwarding table"; type empty; } leaf readvertise { description "Mark route as eligible to be readvertised"; type empty; } leaf no-readvertise { description "Mark route as eligible to be readvertised"; type empty; } leaf resolve { description "Allow resolution of indirectly connected next hops"; type empty; } leaf no-resolve { description "Allow resolution of indirectly connected next hops"; type empty; } leaf longest-match { description "Always use longest prefix match to resolve next hops"; type empty; } leaf no-longest-match { description "Always use longest prefix match to resolve next hops"; type empty; } choice passive_flag { case case_1 { leaf active { description "Remove inactive route from forwarding table"; type empty; } } case case_2 { leaf passive { description "Retain inactive route in forwarding table"; type empty; } } } container metric { description "Metric value"; uses rib_static_metric_type; } container metric2 { description "Metric value 2"; uses rib_static_metric_type; } container metric3 { description "Metric value 3"; uses rib_static_metric_type; } container metric4 { description "Metric value 4"; uses rib_static_metric_type; } container tag { description "Tag string"; uses rib_static_metric_type; } container tag2 { description "Tag string 2"; uses rib_static_metric_type; } container preference { description "Preference value"; uses rib_static_metric_type; } container preference2 { description "Preference value 2"; uses rib_static_metric_type; } container color { description "Color (preference) value"; uses rib_static_metric_type; } container color2 { description "Color (preference) value 2"; uses rib_static_metric_type; } leaf-list community { description "BGP community identifier"; type community; } container as-path { description "Autonomous system path"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf path { description "Autonomous system path"; type string; } leaf origin { description "(null)"; type enumeration { enum igp { description "Path originated in the local IGP"; } enum egp { description "Path originated in another AS"; } enum incomplete { description "Path was learned by some other means"; } } } leaf atomic-aggregate { description "Add ATOMIC_AGGREGATE path attribute to route"; type empty; } container aggregator { presence "enable aggregator"; description "Add AGGREGATOR path attribute to route"; } leaf as-number { description " Autonomous system number in plain number or 'higher 16bits'.'Lower 16 bits' (asdot notation) format"; type string { } } leaf address { description "Address of BGP system that formed the route"; type ipv4addr; } } } list route-target-filter { key name; ordered-by user; description "Route-target-filter route"; leaf name { description "(null)"; type string { length "1 .. 47"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list neighbor { description "BGP peers for filter"; type ipaddr; } leaf-list group { description "BGP groups for filter"; type string; } leaf local { description "Locally originated filter"; type empty; } } } list martians { key address; ordered-by user; description "Invalid routes"; uses martian_type; } container aggregate { description "Coalesced routes"; uses rib_aggregate_type; } container generate { description "Route of last resort"; uses rib_aggregate_type; } choice maximum-paths-type { case case_1 { container maximum-paths { description "Maximum number of paths"; leaf limit { description "Maximum number of paths"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable maximum-paths"; choice log_type { case case_1 { leaf threshold { description "Percentage of limit at which to start generating warnings"; type uint32 { range "1 .. 100"; } } } case case_2 { leaf log-only { description "Generate warning messages only"; type empty; } } } leaf log-interval { description "Minimum interval between log messages"; units "seconds"; type uint32 { range "5 .. 86400"; } } } } } container maximum-prefixes { description "Maximum number of prefixes"; leaf limit { description "Maximum number of prefixes"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable maximum-prefixes"; choice log_type { case case_1 { leaf threshold { description "Percentage of limit at which to start generating warnings"; type uint32 { range "1 .. 100"; } } } case case_2 { leaf log-only { description "Generate warning messages only"; type empty; } } } leaf log-interval { description "Minimum interval between log messages"; units "seconds"; type uint32 { range "5 .. 86400"; } } } container multipath { presence "enable multipath"; description "Protocol-independent load balancing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container vpn-unequal-cost { presence "enable vpn-unequal-cost"; description "Include VPN routes with unequal IGP metrics"; leaf equal-external-internal { description "Include external and internal VPN routes"; type empty; } } leaf as-path-compare { description "Compare AS path sequences in addition to AS path length"; type empty; } } container protect { description "Protocol-independent protection"; leaf core { description "Protect against unreachability to service-edge router"; type empty; } } container label { presence "enable label"; description "Label processing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list allocation { description "Label allocation policy"; type policy-algebra; } leaf-list substitution { description "Label substitution policy"; type policy-algebra; } } container access { description "Access routes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list route { key name; ordered-by user; description "Access route"; leaf name { description "IP address of destination"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list next-hop { description "Next hop to destination"; type ipaddr-or-interface; } list qualified-next-hop { key name; ordered-by user; description "Next hop with qualifiers"; uses qualified_nh_obj; } leaf metric { description "Metric value"; type uint32 { range "1 .. 255"; } } leaf preference { description "Preference value"; type uint32; } leaf tag { description "Tag string"; type uint32; } } } container access-internal { description "Access-internal routes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list route { key name; ordered-by user; description "Access-internal route"; leaf name { description "IP address and optional prefix length of destination"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list next-hop { description "Next hop to destination"; type ipaddr-or-interface; } list qualified-next-hop { key name; ordered-by user; description "Next hop with qualifiers"; uses qualified_nh_obj; } } } container bgp-static { description "Routes for BGP static advertisements"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list route { key name; ordered-by user; description "BGP-static route"; leaf name { description "IP address and optional prefix length of destination"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container metric { description "Metric value"; uses rib_static_metric_type; } container metric2 { description "Metric value 2"; uses rib_static_metric_type; } container metric3 { description "Metric value 3"; uses rib_static_metric_type; } container metric4 { description "Metric value 4"; uses rib_static_metric_type; } container tag { description "Tag string"; uses rib_static_metric_type; } container tag2 { description "Tag string 2"; uses rib_static_metric_type; } container preference { description "Preference value"; uses rib_static_metric_type; } container preference2 { description "Preference value 2"; uses rib_static_metric_type; } container color { description "Color (preference) value"; uses rib_static_metric_type; } container color2 { description "Color (preference) value 2"; uses rib_static_metric_type; } leaf-list community { description "BGP community identifier"; type community; } container as-path { description "Autonomous system path"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf path { description "Autonomous system path"; type string; } leaf origin { description "(null)"; type enumeration { enum igp { description "Path originated in the local IGP"; } enum egp { description "Path originated in another AS"; } enum incomplete { description "Path was learned by some other means"; } } } leaf atomic-aggregate { description "Add ATOMIC_AGGREGATE path attribute to route"; type empty; } container aggregator { presence "enable aggregator"; description "Add AGGREGATOR path attribute to route"; } leaf as-number { description " Autonomous system number in plain number or 'higher 16bits'.'Lower 16 bits' (asdot notation) format"; type string { } } leaf address { description "Address of BGP system that formed the route"; type ipv4addr; } } } } } container static { description "Static routes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf rib-group { description "Routing table group"; type string; } container defaults { description "Global route options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf retain { description "Always keep route in forwarding table"; type empty; } leaf no-retain { description "Always keep route in forwarding table"; type empty; } leaf install { description "Install route into forwarding table"; type empty; } leaf no-install { description "Install route into forwarding table"; type empty; } leaf readvertise { description "Mark route as eligible to be readvertised"; type empty; } leaf no-readvertise { description "Mark route as eligible to be readvertised"; type empty; } leaf resolve { description "Allow resolution of indirectly connected next hops"; type empty; } leaf no-resolve { description "Allow resolution of indirectly connected next hops"; type empty; } leaf longest-match { description "Always use longest prefix match to resolve next hops"; type empty; } leaf no-longest-match { description "Always use longest prefix match to resolve next hops"; type empty; } choice passive_flag { case case_1 { leaf active { description "Remove inactive route from forwarding table"; type empty; } } case case_2 { leaf passive { description "Retain inactive route in forwarding table"; type empty; } } } container metric { description "Metric value"; uses rib_static_metric_type; } container metric2 { description "Metric value 2"; uses rib_static_metric_type; } container metric3 { description "Metric value 3"; uses rib_static_metric_type; } container metric4 { description "Metric value 4"; uses rib_static_metric_type; } container tag { description "Tag string"; uses rib_static_metric_type; } container tag2 { description "Tag string 2"; uses rib_static_metric_type; } container preference { description "Preference value"; uses rib_static_metric_type; } container preference2 { description "Preference value 2"; uses rib_static_metric_type; } container color { description "Color (preference) value"; uses rib_static_metric_type; } container color2 { description "Color (preference) value 2"; uses rib_static_metric_type; } leaf-list community { description "BGP community identifier"; type community; } container as-path { description "Autonomous system path"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf path { description "Autonomous system path"; type string; } leaf origin { description "(null)"; type enumeration { enum igp { description "Path originated in the local IGP"; } enum egp { description "Path originated in another AS"; } enum incomplete { description "Path was learned by some other means"; } } } leaf atomic-aggregate { description "Add ATOMIC_AGGREGATE path attribute to route"; type empty; } container aggregator { presence "enable aggregator"; description "Add AGGREGATOR path attribute to route"; } leaf as-number { description " Autonomous system number in plain number or 'higher 16bits'.'Lower 16 bits' (asdot notation) format"; type string { } } leaf address { description "Address of BGP system that formed the route"; type ipv4addr; } } } list route { key name; ordered-by user; description "Static route"; leaf name { description "(null)"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice next_hop { case case_1 { leaf-list next-hop { description "Next hop to destination"; type ipaddr-or-interface; } } case case_2 { leaf reject { description "Drop packets to destination; send ICMP unreachables"; type empty; } } case case_3 { leaf discard { description "Drop packets to destination; send no ICMP unreachables"; type empty; } } case case_4 { leaf receive { description "Install a receive route for the destination"; type empty; } } case case_5 { leaf next-table { description "Next hop to another table"; type string; } } } list qualified-next-hop { key name; ordered-by user; description "Next hop with qualifiers"; uses qualified_nh_obj; } list lsp-next-hop { key name; ordered-by user; description "LSP next hop"; uses lsp_nh_obj; } list static-lsp-next-hop { key name; ordered-by user; description "Static LSP next hop"; uses lsp_nh_obj; } list p2mp-lsp-next-hop { key name; ordered-by user; description "Point-to-multipoint LSP next hop"; max-elements 1; uses lsp_nh_obj; } leaf backup-pe-group { description "Multicast source redundancy group"; type string; } container bfd-liveness-detection { description "Bidirectional Forwarding Detection (BFD) options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } container authentication { description "Authentication options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf key-chain { description "Key chain name"; type string; } leaf algorithm { description "Algorithm name"; type enumeration { enum simple-password { description "Simple password"; } enum keyed-md5 { description "Keyed message Digest 5"; } enum meticulous-keyed-md5 { description "Meticulous keyed message Digest 5"; } enum keyed-sha-1 { description "Keyed secure hash algorithm (SHA1) "; } enum meticulous-keyed-sha-1 { description "Meticulous keyed secure hash algorithm (SHA1) "; } } } leaf loose-check { description "Verify authentication only if authentication is negotiated"; type empty; } } leaf neighbor { description "BFD neighbor address"; type ipaddr; } leaf local-address { description "BFD local address (for multihop only)"; type ipaddr; } leaf holddown-interval { description "Time to hold the session-UP notification to the client"; units "milliseconds"; type uint32 { range "0 .. 255000"; } } leaf minimum-receive-ttl { description "Minimum receive TTL below which to drop"; type uint8 { range "1 .. 255"; } } } leaf retain { description "Always keep route in forwarding table"; type empty; } leaf no-retain { description "Always keep route in forwarding table"; type empty; } leaf install { description "Install route into forwarding table"; type empty; } leaf no-install { description "Install route into forwarding table"; type empty; } leaf readvertise { description "Mark route as eligible to be readvertised"; type empty; } leaf no-readvertise { description "Mark route as eligible to be readvertised"; type empty; } leaf resolve { description "Allow resolution of indirectly connected next hops"; type empty; } leaf no-resolve { description "Allow resolution of indirectly connected next hops"; type empty; } leaf longest-match { description "Always use longest prefix match to resolve next hops"; type empty; } leaf no-longest-match { description "Always use longest prefix match to resolve next hops"; type empty; } choice passive_flag { case case_1 { leaf active { description "Remove inactive route from forwarding table"; type empty; } } case case_2 { leaf passive { description "Retain inactive route in forwarding table"; type empty; } } } container metric { description "Metric value"; uses rib_static_metric_type; } container metric2 { description "Metric value 2"; uses rib_static_metric_type; } container metric3 { description "Metric value 3"; uses rib_static_metric_type; } container metric4 { description "Metric value 4"; uses rib_static_metric_type; } container tag { description "Tag string"; uses rib_static_metric_type; } container tag2 { description "Tag string 2"; uses rib_static_metric_type; } container preference { description "Preference value"; uses rib_static_metric_type; } container preference2 { description "Preference value 2"; uses rib_static_metric_type; } container color { description "Color (preference) value"; uses rib_static_metric_type; } container color2 { description "Color (preference) value 2"; uses rib_static_metric_type; } leaf-list community { description "BGP community identifier"; type community; } container as-path { description "Autonomous system path"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf path { description "Autonomous system path"; type string; } leaf origin { description "(null)"; type enumeration { enum igp { description "Path originated in the local IGP"; } enum egp { description "Path originated in another AS"; } enum incomplete { description "Path was learned by some other means"; } } } leaf atomic-aggregate { description "Add ATOMIC_AGGREGATE path attribute to route"; type empty; } container aggregator { presence "enable aggregator"; description "Add AGGREGATOR path attribute to route"; } leaf as-number { description " Autonomous system number in plain number or 'higher 16bits'.'Lower 16 bits' (asdot notation) format"; type string { } } leaf address { description "Address of BGP system that formed the route"; type ipv4addr; } } } list iso-route { key name; ordered-by user; description "ISO family static route"; leaf name { description "(null)"; type isoprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice next_hop { case case_1 { leaf-list next-hop { description "Next hop to destination"; type ipaddr-or-interface; } } case case_2 { leaf reject { description "Drop packets to destination; send ICMP unreachables"; type empty; } } case case_3 { leaf discard { description "Drop packets to destination; send no ICMP unreachables"; type empty; } } case case_4 { leaf receive { description "Install a receive route for the destination"; type empty; } } case case_5 { leaf next-table { description "Next hop to another table"; type string; } } } list qualified-next-hop { key name; ordered-by user; description "Next hop with qualifiers"; uses qualified_nh_obj; } list lsp-next-hop { key name; ordered-by user; description "LSP next hop"; uses lsp_nh_obj; } list static-lsp-next-hop { key name; ordered-by user; description "Static LSP next hop"; uses lsp_nh_obj; } list p2mp-lsp-next-hop { key name; ordered-by user; description "Point-to-multipoint LSP next hop"; max-elements 1; uses lsp_nh_obj; } leaf backup-pe-group { description "Multicast source redundancy group"; type string; } container bfd-liveness-detection { description "Bidirectional Forwarding Detection (BFD) options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } container authentication { description "Authentication options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf key-chain { description "Key chain name"; type string; } leaf algorithm { description "Algorithm name"; type enumeration { enum simple-password { description "Simple password"; } enum keyed-md5 { description "Keyed message Digest 5"; } enum meticulous-keyed-md5 { description "Meticulous keyed message Digest 5"; } enum keyed-sha-1 { description "Keyed secure hash algorithm (SHA1) "; } enum meticulous-keyed-sha-1 { description "Meticulous keyed secure hash algorithm (SHA1) "; } } } leaf loose-check { description "Verify authentication only if authentication is negotiated"; type empty; } } leaf neighbor { description "BFD neighbor address"; type ipaddr; } leaf local-address { description "BFD local address (for multihop only)"; type ipaddr; } leaf holddown-interval { description "Time to hold the session-UP notification to the client"; units "milliseconds"; type uint32 { range "0 .. 255000"; } } leaf minimum-receive-ttl { description "Minimum receive TTL below which to drop"; type uint8 { range "1 .. 255"; } } } leaf retain { description "Always keep route in forwarding table"; type empty; } leaf no-retain { description "Always keep route in forwarding table"; type empty; } leaf install { description "Install route into forwarding table"; type empty; } leaf no-install { description "Install route into forwarding table"; type empty; } leaf readvertise { description "Mark route as eligible to be readvertised"; type empty; } leaf no-readvertise { description "Mark route as eligible to be readvertised"; type empty; } leaf resolve { description "Allow resolution of indirectly connected next hops"; type empty; } leaf no-resolve { description "Allow resolution of indirectly connected next hops"; type empty; } leaf longest-match { description "Always use longest prefix match to resolve next hops"; type empty; } leaf no-longest-match { description "Always use longest prefix match to resolve next hops"; type empty; } choice passive_flag { case case_1 { leaf active { description "Remove inactive route from forwarding table"; type empty; } } case case_2 { leaf passive { description "Retain inactive route in forwarding table"; type empty; } } } container metric { description "Metric value"; uses rib_static_metric_type; } container metric2 { description "Metric value 2"; uses rib_static_metric_type; } container metric3 { description "Metric value 3"; uses rib_static_metric_type; } container metric4 { description "Metric value 4"; uses rib_static_metric_type; } container tag { description "Tag string"; uses rib_static_metric_type; } container tag2 { description "Tag string 2"; uses rib_static_metric_type; } container preference { description "Preference value"; uses rib_static_metric_type; } container preference2 { description "Preference value 2"; uses rib_static_metric_type; } container color { description "Color (preference) value"; uses rib_static_metric_type; } container color2 { description "Color (preference) value 2"; uses rib_static_metric_type; } leaf-list community { description "BGP community identifier"; type community; } container as-path { description "Autonomous system path"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf path { description "Autonomous system path"; type string; } leaf origin { description "(null)"; type enumeration { enum igp { description "Path originated in the local IGP"; } enum egp { description "Path originated in another AS"; } enum incomplete { description "Path was learned by some other means"; } } } leaf atomic-aggregate { description "Add ATOMIC_AGGREGATE path attribute to route"; type empty; } container aggregator { presence "enable aggregator"; description "Add AGGREGATOR path attribute to route"; } leaf as-number { description " Autonomous system number in plain number or 'higher 16bits'.'Lower 16 bits' (asdot notation) format"; type string { } } leaf address { description "Address of BGP system that formed the route"; type ipv4addr; } } } list route-target-filter { key name; ordered-by user; description "Route-target-filter route"; leaf name { description "(null)"; type string { length "1 .. 47"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list neighbor { description "BGP peers for filter"; type ipaddr; } leaf-list group { description "BGP groups for filter"; type string; } leaf local { description "Locally originated filter"; type empty; } } } list martians { key address; ordered-by user; description "Invalid routes"; uses martian_type; } container aggregate { description "Coalesced routes"; uses rib_aggregate_type; } container generate { description "Route of last resort"; uses rib_aggregate_type; } choice maximum-paths-type { case case_1 { container maximum-paths { description "Maximum number of paths"; leaf limit { description "Maximum number of paths"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable maximum-paths"; choice log_type { case case_1 { leaf threshold { description "Percentage of limit at which to start generating warnings"; type uint32 { range "1 .. 100"; } } } case case_2 { leaf log-only { description "Generate warning messages only"; type empty; } } } leaf log-interval { description "Minimum interval between log messages"; units "seconds"; type uint32 { range "5 .. 86400"; } } } } } container maximum-prefixes { description "Maximum number of prefixes"; leaf limit { description "Maximum number of prefixes"; type uint32 { range "1 .. 4294967295"; } mandatory true; } presence "enable maximum-prefixes"; choice log_type { case case_1 { leaf threshold { description "Percentage of limit at which to start generating warnings"; type uint32 { range "1 .. 100"; } } } case case_2 { leaf log-only { description "Generate warning messages only"; type empty; } } } leaf log-interval { description "Minimum interval between log messages"; units "seconds"; type uint32 { range "5 .. 86400"; } } } container multipath { presence "enable multipath"; description "Protocol-independent load balancing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container vpn-unequal-cost { presence "enable vpn-unequal-cost"; description "Include VPN routes with unequal IGP metrics"; leaf equal-external-internal { description "Include external and internal VPN routes"; type empty; } } leaf as-path-compare { description "Compare AS path sequences in addition to AS path length"; type empty; } } container protect { description "Protocol-independent protection"; leaf core { description "Protect against unreachability to service-edge router"; type empty; } } container label { presence "enable label"; description "Label processing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list allocation { description "Label allocation policy"; type policy-algebra; } leaf-list substitution { description "Label substitution policy"; type policy-algebra; } } container access { description "Access routes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list route { key name; ordered-by user; description "Access route"; leaf name { description "IP address of destination"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list next-hop { description "Next hop to destination"; type ipaddr-or-interface; } list qualified-next-hop { key name; ordered-by user; description "Next hop with qualifiers"; uses qualified_nh_obj; } leaf metric { description "Metric value"; type uint32 { range "1 .. 255"; } } leaf preference { description "Preference value"; type uint32; } leaf tag { description "Tag string"; type uint32; } } } container access-internal { description "Access-internal routes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list route { key name; ordered-by user; description "Access-internal route"; leaf name { description "IP address and optional prefix length of destination"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list next-hop { description "Next hop to destination"; type ipaddr-or-interface; } list qualified-next-hop { key name; ordered-by user; description "Next hop with qualifiers"; uses qualified_nh_obj; } } } container bgp-static { description "Routes for BGP static advertisements"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list route { key name; ordered-by user; description "BGP-static route"; leaf name { description "IP address and optional prefix length of destination"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container metric { description "Metric value"; uses rib_static_metric_type; } container metric2 { description "Metric value 2"; uses rib_static_metric_type; } container metric3 { description "Metric value 3"; uses rib_static_metric_type; } container metric4 { description "Metric value 4"; uses rib_static_metric_type; } container tag { description "Tag string"; uses rib_static_metric_type; } container tag2 { description "Tag string 2"; uses rib_static_metric_type; } container preference { description "Preference value"; uses rib_static_metric_type; } container preference2 { description "Preference value 2"; uses rib_static_metric_type; } container color { description "Color (preference) value"; uses rib_static_metric_type; } container color2 { description "Color (preference) value 2"; uses rib_static_metric_type; } leaf-list community { description "BGP community identifier"; type community; } container as-path { description "Autonomous system path"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf path { description "Autonomous system path"; type string; } leaf origin { description "(null)"; type enumeration { enum igp { description "Path originated in the local IGP"; } enum egp { description "Path originated in another AS"; } enum incomplete { description "Path was learned by some other means"; } } } leaf atomic-aggregate { description "Add ATOMIC_AGGREGATE path attribute to route"; type empty; } container aggregator { presence "enable aggregator"; description "Add AGGREGATOR path attribute to route"; } leaf as-number { description " Autonomous system number in plain number or 'higher 16bits'.'Lower 16 bits' (asdot notation) format"; type string { } } leaf address { description "Address of BGP system that formed the route"; type ipv4addr; } } } } list rib-groups { key name; ordered-by user; description "Group of routing tables"; uses rpd_rib_group_type; } leaf route-record { description "Enable route recording"; type empty; } container localized-fib { presence "enable localized-fib"; description "Localize vrf routing-instance routes to specific FPC hardware"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list fpc-slot { description "Local FPC list"; type uint32; } } leaf router-id { description "Router identifier"; type ipv4addr; } leaf route-distinguisher-id { description "Identifier used in route distinguishers for routing instances"; type ipv4addr; } container autonomous-system { description "Autonomous system number"; leaf as-number { description " Autonomous system number in plain number or 'higher 16bits'.'Lower 16 bits' (asdot notation) format"; type string { } mandatory true; } presence "enable autonomous-system"; leaf loops { description "Maximum number of times this AS can be in an AS path"; type int32 { range "1 .. 10"; } } leaf asdot-notation { description "Use AS-Dot notation to display true 4 byte AS numbers"; type empty; } container independent-domain { presence "enable independent-domain"; description "Independent autonomous-system domain from master instance"; leaf no-attrset { description "Do not tunnel ce bgp attributes across provider network"; type empty; } } } container confederation { description "Confederation autonomous system number"; leaf confederation-as { description " Autonomous system number in plain number or 'higher 16bits'.'Lower 16 bits' (asdot notation) format"; type string { } mandatory true; } presence "enable confederation"; leaf-list members { description " Autonomous system number in plain number or 'higher 16bits'.'Lower 16 bits' (asdot notation) format"; type string; } } list interface { key name; ordered-by user; description "Direct/Host route FRR protection"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf arp-prefix-limit { description "Max ARP/Host FRR routes allowed"; type uint32 { range "1 .. 10000"; } } leaf supplementary-blackout-timer { description "ARP plimit blackout timer = kernel ARP timeout + supplementary-blackout-timer minutes."; type uint32 { range "1 .. 15"; } } choice protection-type { case case_1 { leaf link-protection { description "Protect interface from link faults only"; type empty; } } } } container host-fast-reroute { presence "enable host-fast-reroute"; description "Host Fast Re-route global values. Applies to all host FRR profiles."; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf global-arp-prefix-limit { description "Max ARP/Host FRR routes allowed per protected IFL"; type uint32 { range "1 .. 10000"; } } leaf global-supplementary-blackout-timer { description "ARP plimit global blackout timer = kernel ARP timeout + global-supplementary-blackout-timer minutes."; type uint32 { range "1 .. 15"; } } } container forwarding-table { uses forwarding-table-type; } container resolution { presence "enable resolution"; description "Route next-hop resolution options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list tracefilter { description "Filter policy"; type policy-algebra; } container traceoptions { description "Trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum event { description "Event processing"; } enum flash { description "Flash processing"; } enum kernel { description "Kernel communication"; } enum indirect { description "Indirect next-hop addition, change, or deletion"; } enum task { description "Task or job processing"; } enum igp-frr { description "IGP triggered FRR events"; } enum igp-frr-extensive { description "IGP triggered FRR Extensive events"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } list rib { key name; ordered-by user; description "Routing table resolution options"; leaf name { description "Routing table name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list resolution-ribs { description "Routing tables to use for resolution"; type string; } leaf-list import { description "Import policy"; type policy-algebra; } } } container multicast { description "Global multicast options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Global multicast trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum parse { description "Trace configuration parsing"; } enum config-internal { description "Trace configuration internals"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf disable { description "Disable this trace flag"; type empty; } } } list scope { key name; ordered-by user; description "Multicast address scope"; leaf name { description "Name to identify multicast address scope"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf prefix { description "Administratively scoped address"; type ipprefix; mandatory true; } leaf-list interface { description "Interface on which to configure scoping"; type interface-name; } } leaf-list scope-policy { description "Scoping policy"; type policy-algebra; } list flow-map { key name; ordered-by user; description "Multicast flow map configuration"; leaf name { description "Name of the flow map"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list policy { description "Policy for matched flows"; type policy-algebra; } container bandwidth { presence "enable bandwidth"; description "Bandwidth properties for matched flows"; leaf bandwidth-value { description "Static or default bandwidth for the matched flows"; units "bps"; type string; } leaf adaptive { description "Auto-sense bandwidth for matched flows"; type empty; } } leaf-list redundant-sources { description "Redundant source addresses"; type ipaddr; } container forwarding-cache { description "Forwarding cache properties for matched flows"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container timeout { description "Timeout properties for matched flows"; choice timeout_choice { case case_1 { leaf timeout-value { description "Timeout for forwarding cache entry"; units "minutes"; type uint32 { range "1 .. 720"; } } } case case_2 { container never { presence "enable never"; description "Forwarding cache entries never time out"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf non-discard-entry-only { description "Apply only to non-discard entries"; type empty; } } } } } } } leaf-list ssm-groups { description "Source-specific multicast group ranges"; type ipprefix; } leaf asm-override-ssm { description "Allow ASM state for SSM group ranges"; type empty; } leaf-list rpf-check-policy { description "Disable RPF check for a source group pair"; type policy-algebra; } container pim-to-igmp-proxy { description "PIM-to-IGMP proxy"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list upstream-interface { description "Upstream interface list"; type interface-name; max-elements 2; } } container pim-to-mld-proxy { description "PIM-to-MLD proxy"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list upstream-interface { description "Upstream interface list"; type interface-name; max-elements 2; } } container forwarding-cache { description "Multicast forwarding cache"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf allow-maximum { description "Allow maximum of global and family level threshold values for suppress and reuse"; type empty; } list family { key name; ordered-by user; description "Protocol family"; leaf name { description "Protocol family"; type enumeration { enum inet { description "IPv4 family"; } enum inet6 { description "IPv6 family"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container threshold { presence "enable threshold"; description "Multicast forwarding cache suppress threshold"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf suppress { description "Suppress threshold"; type uint32 { range "1 .. 200000"; } mandatory true; } leaf reuse { description "Reuse threshold"; type uint32 { range "1 .. 200000"; } } leaf log-warning { description "Percentage at which to start generating warnings"; type uint32 { range "1 .. 100"; } } } } container threshold { description "Threshold"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf suppress { description "Suppress threshold"; type uint32 { range "1 .. 200000"; } mandatory true; } presence "enable threshold"; leaf reuse { description "Reuse threshold"; type uint32 { range "1 .. 200000"; } } leaf log-warning { description "Percentage at which to start generating warnings"; type uint32 { range "1 .. 100"; } } } leaf timeout { description "Forwarding cache entry timeout in minutes"; type uint32 { range "1 .. 720"; } } } list interface { key name; ordered-by user; description "Multicast interface options"; uses multicast_interface_options_type; } list ssm-map { key name; ordered-by user; description "SSM map definitions"; leaf name { description "SSM map name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list policy { description "Policy for matching group"; type policy-algebra; } leaf-list source { description "One or more source addresses"; type ipaddr; } } container stream-protection { presence "enable stream-protection"; description "Multicast only Fast Re-Route"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf mofrr-primary-path-selection-by-routing { description "Multicast only Fast Re-Route primary path by Routing"; type empty; } leaf mofrr-disjoint-upstream-only { description "Multicast only Fast Re-Route disjoint upstream only"; type empty; } leaf mofrr-no-backup-join { description "Multicast only Fast Re-Route no backup join"; type empty; } leaf mofrr-asm-starg { description "Multicast only Fast Re-Route asm (*,G)"; type empty; } leaf-list policy { description "MoFRR Policy"; type policy-algebra; } } list backup-pe-group { key name; ordered-by user; description "Backup PE group definitions"; leaf name { description "PE group name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list backups { description "One or more IP addresses"; type ipaddr; max-elements 8; } leaf local-address { description "Address to be used as local-address for this group"; type ipaddr; mandatory true; } } leaf omit-wildcard-address { description "Omit wildcard source/group fields in SPMSI AD NLRI"; type empty; } leaf local-address { description "Local address for PIM and MVPN sessions"; type ipv4addr; } container igmp-aux-oif { presence "enable igmp-aux-oif"; description "Add an aux OIF to an IGMP host"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list request { key name; ordered-by user; description "Request to add an aux oif"; leaf name { description "Request number"; type uint8 { range "0 .. 9"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf host { description "Host address"; type ipv4addr; } leaf interface { description "Host interface name"; type interface-name; } leaf group { description "Multicast group address"; type ipv4addr; } leaf source { description "Multicast source address"; type ipv4addr; } leaf aux-oif { description "Aux OIF name"; type interface-name; } leaf enable-composite-nh { description "Enable composite NH support"; type empty; } } } container mld-aux-oif { presence "enable mld-aux-oif"; description "Add an aux OIF to an MLD host"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list request { key name; ordered-by user; description "Request to add an aux oif"; leaf name { description "Request number"; type uint8 { range "0 .. 9"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf host { description "Host address"; type ipv6addr; } leaf interface { description "Host interface name"; type interface-name; } leaf group { description "Multicast group address"; type ipv6addr; } leaf source { description "Multicast source address"; type ipv6addr; } leaf aux-oif { description "Aux OIF name"; type interface-name; } leaf enable-composite-nh { description "Enable composite NH support"; type empty; } } } container v4-xmit-streams { presence "enable v4-xmit-streams"; description "Configure IPv4 fast and slow multicast streams"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-port { description "Slow streams UDP source port"; default "2000"; type uint16 { range "2000 .. 65535"; } } leaf destination-port { description "Slow streams UDP destination port"; default "2001"; type uint16 { range "2000 .. 65535"; } } leaf ttl { description "Slow streams time-to-live"; default "10"; type uint8 { range "1 .. 32"; } } leaf packet-interval { description "Slow streams packet interval"; default "10"; units "seconds"; type uint32 { range "10 .. 120"; } } list interface { key name; ordered-by user; description "Interface options for IPv4 multicast slow streams"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "Destination address"; leaf name { description "Destination address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf group-count { description "Number of groups"; default "1"; type uint32 { range "1 .. 512"; } } list source { key name; ordered-by user; description "Sender address"; leaf name { description "Sender address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-count { description "Number of senders"; default "1"; type uint32 { range "1 .. 1024"; } } } } } list stream { key name; ordered-by user; description "Add an IPv4 multicast fast stream"; leaf name { description "Stream number"; type uint8 { range "0 .. 9"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interface { description "Interface to send on"; type interface-name; } leaf group { description "Destination address"; type ipv4addr; } leaf source { description "Sender's address"; type ipv4addr; } leaf source-port { description "UDP source port"; type uint16 { range "2000 .. 65535"; } } leaf destination-port { description "UDP destination port"; type uint16 { range "2000 .. 65535"; } } leaf ttl { description "Time-to-live"; type uint8 { range "1 .. 32"; } } leaf payload-size { description "Payload size (bytes)"; type int32 { range "1 .. 1400"; } } leaf pps { description "Packets/sec to send"; type int32 { range "1 .. 10000"; } } } } container v6-xmit-streams { presence "enable v6-xmit-streams"; description "Configure IPv6 multicast streams"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf destination-port { description "Slow streams UDP destination port"; default "2001"; type uint16 { range "2000 .. 65535"; } } leaf ttl { description "Slow streams time-to-live"; default "10"; type uint8 { range "1 .. 32"; } } leaf packet-interval { description "Slow streams packet interval"; default "10"; units "seconds"; type uint32 { range "10 .. 120"; } } list interface { key name; ordered-by user; description "Interface options for IPv6 multicast slow streams"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "Destination address"; leaf name { description "Destination address"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf group-count { description "Number of groups"; default "1"; type uint32 { range "1 .. 512"; } } list source { key name; ordered-by user; description "Sender address"; leaf name { description "Sender address"; type ipv6addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-count { description "Number of senders"; default "1"; type uint32 { range "1 .. 1024"; } } } } } list stream { key name; ordered-by user; description "Add an IPv6 multicast fast stream"; leaf name { description "Stream number"; type uint8 { range "0 .. 9"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interface { description "Interface to send on"; type interface-name; } leaf group { description "Destination address"; type ipv6addr; } leaf source { description "Sender's address"; type ipv6addr; } leaf destination-port { description "Destination port"; type uint16 { range "2000 .. 65535"; } } leaf ttl { description "Time-to-live"; type uint8 { range "1 .. 32"; } } leaf payload-size { description "Payload size (bytes)"; type int32 { range "1 .. 1400"; } } leaf pps { description "Packets/sec to send"; type int32 { range "1 .. 10000"; } } } } } leaf-list instance-import { description "Import policy for instance RIBs"; type policy-algebra; } leaf-list instance-export { description "Export policy for instance RIBs"; type policy-algebra; } container auto-export { presence "enable auto-export"; description "Export routes between routing instances"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable auto-export"; type empty; } } } container traceoptions { description "Trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum export { description "Export processing"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } container family { container inet { description "IPv4 parameters"; uses export-af-obj; } container inet6 { description "IPv6 parameters"; uses export-af-obj; } container iso { description "ISO parameters"; uses export-af-obj; } } } container dynamic-tunnels { description "Dynamic tunnel definitions"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum kernel { description "Trace kernel communication"; } enum tunnel { description "Trace tunnel addition, change, or deletion"; } enum task { description "Trace task or job processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } list dynamic-tunnel { key name; ordered-by user; description "(null)"; uses dynamic_tunnel_type; } } container flow { description "Locally defined flow routing information"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf firewall-install-disable { description "Disable installing flowspec firewall filters in dfwd "; type empty; } container validation { description "Flow route validation options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options"; uses flow-dep-traceoptions; } } list route { key name; ordered-by user; description "Flow route"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container match { description "Flow definition"; uses flow-route-qualifier; } container then { description "Actions to take for this flow"; uses flow-route-op; } } leaf term-order { description "Term evaluation order for flow routes"; type enumeration { enum legacy { description "Legacy term order (default)"; } enum standard { description "RFC compliant term order"; } } } } container logical-system-mux { description "Logical system control daemon information"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum debug { description "Trace debug-level lrmuxd activities"; } enum parse { description "Trace configuration parsing"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } } container topologies { description "Define routing topologies"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list family { key name; ordered-by user; description "Address family"; leaf name { description "(null)"; type enumeration { enum inet { description "IPv4 family"; } enum inet6 { description "IPv6 family"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list topology { key name; ordered-by user; description "Topology information"; leaf name { description "Topology name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } container backup-selection { presence "enable backup-selection"; description "Backup selection options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list destination { key name; description "IP/IPv6 prefix for which backup selection policy is configured"; leaf name { description "IP/IPv6 address (and optional prefix length)"; type ipprefix-mandatory; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list interface { key name; description "Primary nexthop interface for which backup selection policy is configured"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container admin-group { description "Administrative group policies for backup-selection"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list exclude { description "Do not use interface if any admin group available"; type string; } leaf-list include-all { description "Use interface if admin groups available entirely"; type string; } leaf-list include-any { description "Use interface if any admin group is available"; type string; } leaf-list preference { description "Administrative groups in descending preference order"; type string; } } leaf srlg { description "Evaluate Shared Risk Link Group(SRLG) characteristics for backup selection"; default "loose"; type enumeration { enum loose { description "Loose SRLG"; } enum strict { description "Strict SRLG"; } } } leaf protection-type { description "Type of protection to be considered"; type enumeration { enum link { description "Protect the primary interface from link faults only"; } enum node { description "Protect the primary interface from node faults only"; } enum node-link { description "Protect the primary interface from either link or node faults; prefer node protection"; } } } leaf downstream-paths-only { description "Choose only the downstream nodes for backup"; type empty; } leaf bandwidth-greater-equal-primary { description "Use backup nexthop only if bandwidth is >= bandwidth of primary nexthop"; type empty; } container node { description "Node ID based policies for backup selection"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list exclude { description "List of nodes to be exclued"; type ipv4addr; } leaf-list preference { description "List of nodes in the descending order of preference"; type ipv4addr; } } container node-tag { description "Node tag policies"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list exclude { description "The set of node tags to be excluded"; type uint32; } leaf-list preference { description "The set of node tags in the descending order of preference"; type uint32; } } leaf root-metric { description "Root metric"; type enumeration { enum lowest { description "Choose lowest root metric"; } enum highest { description "Choose highest root metric"; } } } leaf dest-metric { description "Destination metric"; type enumeration { enum lowest { description "Choose lowest destination metric"; } enum highest { description "Choose highest destination metric"; } } } leaf-list metric-order { description "Metric evaluation order"; type enumeration { enum root { description "(null)"; } enum dest { description "(null)"; } } max-elements 2; } leaf-list evaluation-order { description "Interface policy criteria evaluation order"; type enumeration { enum admin-group { description "Administrative Group/Link Color"; } enum srlg { description "SRLG"; } enum bandwidth { description "Bandwidth"; } enum protection-type { description "Type of protection"; } enum node { description "Node"; } enum node-tag { description "Node tag"; } enum metric { description "Metric related parameters"; } } } } } } container fate-sharing { description "Fate-sharing links or nodes database"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list group { key name; ordered-by user; description "Group of objects sharing common characteristics"; leaf name { description "Name of object groups sharing the same fate"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf cost { description "Cost value"; type uint32 { range "1 .. 65535"; } } list from { key name; description "(null)"; uses fate_sharing_links; } } } container validation { description "Define Route validation"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for route validation"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum error { description "Trace errored packets"; } enum packets { description "Trace all I/O packets"; } enum keepalive { description "Trace keepalive packets"; } enum update { description "Trace update packets"; } enum nsr-synchronization { description "Trace NSR synchronization events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } leaf-list notification-rib { description "Define routing tables that get notified upon validation state change"; type string; } list group { key name; description "Define a group of sessions"; leaf name { description "Group name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf max-sessions { description "Maximum connected session in this group"; type uint32 { range "1 .. 63"; } } list session { key name; description "Configure a session"; leaf name { description "(null)"; type ipaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for route validation"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum error { description "Trace errored packets"; } enum packets { description "Trace all I/O packets"; } enum keepalive { description "Trace keepalive packets"; } enum update { description "Trace update packets"; } enum state { description "Trace state transitions"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } leaf refresh-time { description "Interval between keepalive packet transmissions"; units "seconds"; type uint32 { range "1 .. 1800"; } } leaf hold-time { description "Time after which the session is declared down."; units "seconds"; type uint32 { range "10 .. 3600"; } } leaf record-lifetime { description "Lifetime of route validation records"; units "seconds"; type uint32 { range "60 .. 604800"; } } leaf preference { description "Preference for session establishment"; type uint32 { range "1 .. 255"; } } leaf port { description "Portnumber to connect"; type uint16 { range "1 .. 65535"; } } leaf local-address { description "(null)"; type ipaddr; } } } container static { description "Define static route validation record"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list record { key name; description "Static route validation record"; leaf name { description "(null)"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list maximum-length { key name; ordered-by user; description "(null)"; leaf name { description "Maximum prefix-length for route validation record"; type uint32 { range "1 .. 128"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list origin-autonomous-system { key name; ordered-by user; description "(null)"; leaf name { description "Legitimate Origin Autonomous System"; type uint32; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf validation-state { description "Validation state for route validation record"; type enumeration { enum invalid { description "Invalid route validation state"; } enum valid { description "Valid route validation state"; } } } } } } } } } grouping dynamic_tunnel_type { description "Dynamic tunnel definition"; leaf name { description "Tunnel name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-address { description "Tunnel source address"; type ipaddr; } choice tunnel-type { case case_1 { list rsvp-te { key name; ordered-by user; description "RSVP-TE point-to-point LSP"; leaf name { description "Configure multiple entries for RSVP tunnel"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container label-switched-path-template { description "Template for dynamic point-to-point LSP parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice dynamic-template { case case_1 { leaf template-name { description "Name of point-to-point LSP template"; type string { } } } case case_2 { leaf default-template { description "Use default parameters"; type empty; } } } } list destination-networks { key name; ordered-by user; description "Create tunnels for routes in these destination networks"; uses network_type; } } } case case_2 { leaf gre { description "Generic routing encapsulation type for IPv4"; type empty; } } } list destination-networks { key name; ordered-by user; description "Create tunnels for routes in these destination networks"; uses network_type; } } grouping export-af-obj { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable auto-export for address family"; type empty; } } } container unicast { description "Unicast routing information"; uses export-subaf-obj; } container multicast { description "Multicast routing information"; uses export-subaf-obj; } container flow { description "Flow routing information"; uses export-subaf-obj; } } grouping export-subaf-obj { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable instance export"; type empty; } } } leaf rib-group { description "Auxiliary rib-group of additional RIBs to consider"; type string; } } grouping fate_sharing_links { leaf name { description "Router ID or LAN interface address"; type ipv4addr; } leaf to { description "Point-to-point links"; type ipv4addr; } } grouping flow-dep-traceoptions { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum resolution { description "Trace flow to unicast route resolution"; } enum flash { description "Trace flash processing"; } enum route { description "Trace routing information"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum policy { description "Trace policy processing"; } enum task { description "Trace routing protocol task processing"; } enum timer { description "Trace routing protocol timer processing"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } container filter { presence "enable filter"; description "Filter to apply to tracing"; leaf match-on { description "Argument on which to match"; type enumeration { enum prefix { description "Filter based on prefix"; } enum route-attribute { description "Filter based on route attributes"; } } mandatory true; } leaf-list policy { description "Filter policy"; type policy-algebra; } } } } grouping flow-route-op { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf community { description "Name of BGP community"; type string; } choice flow_op_action { case case_1 { leaf accept { description "Allow traffic through"; type empty; } } case case_2 { leaf discard { description "Discard all traffic for this flow"; type empty; } } case case_3 { leaf rate-limit { description "Rate in bits/sec to limit the flow traffic"; type string; } } } leaf routing-instance { description "Redirect to instance identified via Route Target community"; type string { } } leaf sample { description "Sample traffic that matches this flow"; type empty; } leaf next-term { description "Continue the filter evaluation after matching this flow"; type empty; } } grouping flow-route-qualifier { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf destination { description "Destination prefix for this traffic flow"; type ipprefix; } leaf source { description "Source prefix for this traffic flow"; type ipprefix; } leaf-list protocol { description "IP protocol value"; type string; } leaf-list port { description "(null)"; type string; } leaf-list destination-port { description "(null)"; type string; } leaf-list source-port { description "(null)"; type string; } leaf-list icmp-type { description "ICMP message type"; type string; } leaf-list icmp-code { description "ICMP message code"; type string; } leaf-list tcp-flags { description "TCP flags"; type string; } leaf-list packet-length { description "Packet length (0-65535)"; type policy-algebra; } leaf-list dscp { description "Differentiated Services (DiffServ) code point (DSCP) (0-63)"; type policy-algebra; } leaf-list fragment { description "(null)"; type enumeration { enum dont-fragment { description "Don't Fragment flag is set"; } enum not-a-fragment { description "Not a fragment"; } enum is-fragment { description "Fragmented packet"; } enum first-fragment { description "First fragment"; } enum last-fragment { description "Last fragment"; } } } } grouping juniper-sampling-options { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable sampling"; type empty; } } } container traceoptions { description "Traffic sampling trace options"; uses sampling_traceoptions_type; } leaf sample-once { description "Sample the packet for active-monitoring only once"; type empty; } leaf pre-rewrite-tos { description "Sample the packet retaining tos value before normalization"; type empty; } container input { description "Traffic Sampling data acquisition"; uses sampling_input_type; } container family { description "Address family of packets to sample"; container inet { description "Sample IPv4 packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable sampling family inet"; type empty; } } } container output { description "Traffic sampling data disposition"; uses sampling_instance_inet_global_output_type; } } container inet6 { description "Sample IPv6 packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable sampling family inet6"; type empty; } } } container output { description "Traffic sampling data disposition"; uses sampling_family_inet6_output_type; } } container mpls { description "Sample mpls packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable sampling family mpls"; type empty; } } } container output { description "Traffic sampling data disposition"; uses sampling_instance_mpls_output_type; } } } list instance { key name; ordered-by user; description "Instance of sampling parameters"; leaf name { description "Name for sampling instance"; type string; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable sampling instance"; type empty; } } } container input { description "Traffic Sampling data acquisition"; uses sampling_instance_input_type; } container family { description "Address family of packets to sample"; container inet { description "Sample IPv4 packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable instance family inet"; type empty; } } } container output { description "Traffic sampling data disposition"; uses sampling_instance_inet_output_type; } } container inet6 { description "Sample IPv6 packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable instance family inet6"; type empty; } } } container output { description "Traffic sampling data disposition"; uses sampling_instance_inet6_output_type; } } container mpls { description "Sample mpls packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable instance family mpls"; type empty; } } } container output { description "Traffic sampling data disposition"; uses sampling_instance_mpls_output_type; } } container vpls { description "Sample vpls packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable instance family vpls"; type empty; } } } container output { description "Traffic sampling data disposition"; uses sampling_instance_vpls_output_type; } } } } container jflow-service { description "Jflow service configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Jflow service trace options"; uses jflow_service_traceoptions; } } container route-record { description "Sampling route record configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Sampling route record trace options"; uses route_record_traceoptions; } } } grouping jflow_service_traceoptions { description "Traceoptions for jflow-service"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Area of jflow-service to enable debuging output"; leaf name { description "(null)"; type enumeration { enum parse { description "Trace parsing code"; } enum rtsock { description "Trace rtsock code"; } enum sm { description "Trace State machine code"; } enum all { description "Trace all area of jflow-service code"; } } } } } grouping juniper-services-captive-portal { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf authentication-profile-name { description "Access profile name to use for authentication"; type string { length "1 .. 64"; } } container traceoptions { description "Trace options for CAPTIVE PORTAL"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum dot1x-debug { description "Trace dot1x events"; } enum parse { description "Trace configuration parsing"; } enum esw-if { description "Trace ESW Interactions"; } enum config-internal { description "Trace configuration internals"; } enum normal { description "Trace normal events"; } enum general { description "Trace general events"; } enum state { description "Trace state transitions"; } enum task { description "Trace task processing"; } enum timer { description "Trace task timer processing"; } enum all { description "Trace everything"; } enum dot1x-ipc { description "Trace dot1x IPC interactions"; } enum dot1x-event { description "Trace dot1x events"; } } } leaf disable { description "Disable this trace flag"; type empty; } } } list interface { key name; description "Captive Portal interface specific options"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf supplicant { description "Set supplicant mode for this interface"; type enumeration { enum single { description "Allow multiple clients; authenticate first client only"; } enum single-secure { description "Allow and authenticate only a single client"; } enum multiple { description "Allow multiple clients; authenticate each individually"; } } } leaf retries { description "Number of retries after which port is placed into wait state"; type uint32 { range "1 .. 10"; } } leaf quiet-period { description "Time to wait after an authentication failure"; units "seconds"; type uint32 { range "0 .. 65535"; } } leaf server-timeout { description "Authentication server timeout interval"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf session-expiry { description "Session Expiry Timeout"; units "seconds"; type uint32 { range "1 .. 65535"; } } } leaf secure-authentication { description "Set secure authentication using encrypted HTTPS or insecure authentication using plain-text HTTP"; default "http"; type enumeration { enum http { description "Insecure plain-text HTTP will be used for Captive Portal authentication, username and password can be sniffed"; } enum https { description "Encrypted HTTPS will be used for Captive Portal authentication"; } } } container custom-options { presence "enable custom-options"; description "Captive Portal html user interface customization options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf header-logo { description "Path to logo image file"; type string { length "1 .. 255"; } } leaf header-bgcolor { description "Background color of the html header in hex html format"; type string { length 7; } } leaf header-text-color { description "Text color of the html header in hex html format"; type string { length 7; } } leaf header-message { description "Message to be displayed in the html header"; type string { length "1 .. 2047"; } } leaf banner-message { description "Terms and Conditions of usage message"; type string { length "1 .. 2047"; } } leaf form-header-message { description "Message to be displayed in the login form header"; type string { length "1 .. 255"; } } leaf form-header-bgcolor { description "Background color of the login form header in hex html format"; type string { length 7; } } leaf form-header-text-color { description "Text color of the login form header in hex html format"; type string { length 7; } } leaf form-submit-label { description "Label to be displayed for the login form submit button"; type string { length "1 .. 255"; } } leaf form-reset-label { description "Label to be displayed for the login form reset button"; type string { length "1 .. 255"; } } leaf footer-message { description "Message to be displayed in the html footer"; type string { length "1 .. 2047"; } } leaf footer-bgcolor { description "Background color of the html footer in hex html format"; type string { length 7; } } leaf footer-text-color { description "Text color of the footer in hex html format"; type string { length 7; } } leaf post-authentication-url { description "Post authentication redirection URL"; type string { length "1 .. 255"; } } } } grouping juniper-system { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container autoinstallation { presence "enable autoinstallation"; description "Autoinstallation configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list interfaces { key name; ordered-by user; description "Interfaces to perform autoinstallation"; leaf name { description "Name of interface"; type interface-wildcard; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bootp { description "Enable BOOTP/DHCP during autoinstallation"; type empty; } leaf rarp { description "Enable RARP during autoinstallation"; type empty; } leaf slarp { description "Enable SLARP during autoinstallation"; type empty; } } list configuration-servers { key name; ordered-by user; description "Servers to retrieve configuration files from"; leaf name { description "URL of configuration server"; type string; } leaf password { description "Password for authentication with the configuration server"; type unreadable; } } container usb { presence "enable usb"; description "USB Autoinstallation process"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable Autoinstallation process"; type empty; } } } } } leaf host-name { description "Hostname for this router"; type string { length "1 .. 255"; } } leaf auto-snapshot { description "Enable auto-snapshot when boots from alternate slice"; type empty; } leaf domain-name { description "Domain name for this router"; type string { } } leaf-list domain-search { description "List of domain names to search"; type string; } leaf no-hidden-commands { description "Deny hidden commands for all users except root"; type empty; } container backup-router { description "IPv4 router to use while booting"; leaf address { description "Address of router to use while booting"; type ipv4addr; mandatory true; } presence "enable backup-router"; leaf-list destination { description "Destination network reachable through the router"; type ipv4prefix; } } container inet6-backup-router { description "IPv6 router to use while booting"; leaf address { description "Address of router to use while booting"; type ipv6addr; mandatory true; } presence "enable inet6-backup-router"; leaf-list destination { description "Destination network reachable through the router"; type ipv6prefix; } } leaf time-zone { description "Time zone name or POSIX-compliant time zone string"; default "UTC"; units "/ or "; type string { } } leaf use-imported-time-zones { description "Use locally generated time-zone database"; type empty; } leaf switchover-on-routing-crash { description "On failure, switch mastership to other Routing Engine"; type empty; } leaf default-address-selection { description "Use system address for locally originated traffic"; type empty; } leaf nd-maxmcast-solicit { description "Set Maximum multicast solicit"; type int32; } leaf nd-retrasmit-timer { description "Set retransmit timer"; type int32; } leaf no-neighbor-learn { description "Disable neighbor address learning"; type empty; } leaf no-multicast-echo { description "Disable ICMP echo on multicast addresses"; type empty; } leaf no-redirects { description "Disable ICMP redirects"; type empty; } leaf no-redirects-ipv6 { description "Disable IPV6 ICMP redirects"; type empty; } leaf nd-override-preferred-src { description "Do not use preferred source address for unnumbered interface as the source of NA/NS"; type empty; } leaf no-ping-record-route { description "Do not insert IP address in ping replies"; type empty; } leaf no-ping-time-stamp { description "Do not insert time stamp in ping replies"; type empty; } choice to-dump-on-panic { } leaf dump-device { description "Device to record memory snapshots on operating system failure"; type enumeration { enum boot-device { description "Use boot device for software failure memory snapshots"; } enum usb { description "Use device connected to USB port for software failure memory snapshots"; } enum compact-flash { description "Use the compact flash for software failure memory snapshots"; } enum removable-compact-flash { description "Use the removable compact flash for software failure memory snapshots"; } } } container arp { presence "enable arp"; description "ARP settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf aging-timer { description "Change the ARP aging time value"; units "minutes"; type int32 { range "1 .. 240"; } } container interfaces { description "Logical interface on which to specify ARP aging timer"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list arp-interface { key name; description "(null)"; uses arp-interface-type; } } leaf passive-learning { description "ARP passive learning"; type empty; } leaf purging { description "ARP purging when link goes down"; type empty; } leaf gratuitous-arp-on-ifup { description "Gratuitous ARP announcement on interface up"; type empty; } leaf gratuitous-arp-delay { description "Delay gratuitous ARP request"; type int32; } } leaf saved-core-files { description "Number of saved core files per executable"; default "5"; type uint32 { range "1 .. 10"; } } leaf saved-core-context { description "Save context information for core files"; type empty; } leaf no-saved-core-context { description "Save context information for core files"; type empty; } container kernel-replication { presence "enable kernel-replication"; description "Kernel replication"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf mirror-flash-on-disk { description "Mirror contents of the flash drive onto hard drive"; type empty; } container internet-options { description "Tunable options for Internet operation"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container icmpv4-rate-limit { description "Rate-limiting parameters for ICMPv4 messages"; leaf packet-rate { description "ICMP rate-limiting packets earned per second"; default "1000"; type uint32; } leaf bucket-size { description "ICMP rate-limiting maximum bucket size"; default "5"; units "seconds"; type uint32; } } container icmpv6-rate-limit { description "Rate-limiting parameters for ICMPv6 messages"; leaf packet-rate { description "ICMPv6 rate-limiting packets earned per second"; default "1000"; type uint32; } leaf bucket-size { description "ICMPv6 rate-limiting maximum bucket size"; default "5"; units "seconds"; type uint32; } } leaf path-mtu-discovery { description "Enable Path MTU discovery on TCP connections"; type empty; } leaf no-path-mtu-discovery { description "Enable Path MTU discovery on TCP connections"; type empty; } leaf gre-path-mtu-discovery { description "Enable path MTU discovery for GRE tunnels"; type empty; } leaf no-gre-path-mtu-discovery { description "Enable path MTU discovery for GRE tunnels"; type empty; } leaf ipip-path-mtu-discovery { description "Enable path MTU discovery for IP-IP tunnels"; type empty; } leaf no-ipip-path-mtu-discovery { description "Enable path MTU discovery for IP-IP tunnels"; type empty; } container source-port { description "Source port selection parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf upper-limit { description "Specify upper limit of source port selection range"; type uint32 { range "5000 .. 65535"; } } } leaf source-quench { description "React to incoming ICMP Source Quench messages"; type empty; } leaf no-source-quench { description "React to incoming ICMP Source Quench messages"; type empty; } leaf tcp-mss { description "Maximum value of TCP MSS for IPV4 traffic"; units "bytes"; type uint32 { range "64 .. 65535"; } } leaf tcp-drop-synfin-set { description "Drop TCP packets that have both SYN and FIN flags"; type empty; } leaf no-tcp-rfc1323 { description "Disable RFC 1323 TCP extensions"; type empty; } leaf no-tcp-rfc1323-paws { description "Disable RFC 1323 Protection Against Wrapped Sequence Number extension"; type empty; } leaf ipv6-reject-zero-hop-limit { description "Enable dropping IPv6 packets with zero hop-limit"; type empty; } leaf no-ipv6-reject-zero-hop-limit { description "Enable dropping IPv6 packets with zero hop-limit"; type empty; } leaf ipv6-duplicate-addr-detection-transmits { description "IPv6 Duplicate address detection transmits"; default "3"; type uint32 { range "0 .. 20"; } } leaf ipv6-path-mtu-discovery { description "Enable IPv6 Path MTU discovery"; type empty; } leaf no-ipv6-path-mtu-discovery { description "Enable IPv6 Path MTU discovery"; type empty; } leaf ipv6-path-mtu-discovery-timeout { description "IPv6 Path MTU Discovery timeout"; default "10"; units "minutes"; type uint32 { range "5 .. 71582788"; } } leaf no-tcp-reset { description "Do not send RST TCP packet for packets sent to non-listening ports"; type enumeration { enum drop-tcp-with-syn-only { description "Drop only those TCP Packets with SYN bit"; } enum drop-all-tcp { description "Drop all TCP Packets"; } } } } leaf-list authentication-order { description "(null)"; type enumeration { enum radius { description "Remote Authentication Dial-In User Service"; } enum tacplus { description "TACACS+ authentication services"; } enum password { description "Traditional password authentication"; } } } container location { description "Location of the system, in various forms"; uses location-type; } container ports { description "Craft interface RS-232 ports"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container console { description "Console port"; uses tty_port_object; } container auxiliary { description "Auxiliary port"; uses tty_port_object; } } container diag-port-authentication { description "Authentication for the diagnostic port"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf plain-text-password-value { description "Plain text password"; type string; } leaf encrypted-password { description "Encrypted password string"; type string { length "1 .. 128"; } } } container pic-console-authentication { description "Authentication for the console port on PICs"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf plain-text-password-value { description "Plain text password"; type string; } leaf encrypted-password { description "Encrypted password string"; type string { length "1 .. 128"; } } } container root-authentication { description "Authentication information for the root login"; uses authentication-object; } list name-server { key name; ordered-by user; description "DNS name servers"; uses nameserver-object; } list radius-server { key name; ordered-by user; description "RADIUS server configuration"; uses radius-server-object; } container dynamic-profile-options { description "Dynamic profile options"; uses dynamic-profile-option-object; } list tacplus-server { key name; ordered-by user; description "TACACS+ server configuration"; uses tacplus-server-object; } container radius-options { description "RADIUS options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf password-protocol { description "Specify password protocol used in RADIUS packets"; type enumeration { enum mschap-v2 { description "MSCHAP version 2"; } } } leaf enhanced-accounting { description "Include authentication method, remote port and user-privileges in 'login' accounting"; type empty; } container attributes { description "Configure RADIUS attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf nas-ip-address { description "Value of NAS-IP-Address in outgoing RADIUS packets"; type ipaddr; } } } container tacplus-options { description "TACACS+ options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf service-name { description "TACACS+ service name"; type string; } choice cmd-attribute { case case_1 { leaf no-cmd-attribute-value { description "In start/stop requests, set 'cmd' attribute value to empty string"; type empty; } } case case_2 { leaf exclude-cmd-attribute { description "In start/stop requests, do not include 'cmd' attribute"; type empty; } } } leaf enhanced-accounting { description "Include authentication method, remote port and user-privileges in 'login' accounting"; type empty; } leaf timestamp-and-timezone { description "In start/stop accounting packets, include 'start-time', 'stop-time' and 'timezone' attributes"; type empty; } } container accounting { description "System accounting configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list events { description "Events to be logged"; type enumeration { enum login { description "Login session"; } enum change-log { description "Configuration changes"; } enum interactive-commands { description "Commands"; } } } leaf enhanced-avs-max { description "No. of AV pairs each of which can store a max of 250 Bytes"; default "7"; type int32 { range "7 .. 15"; } } container traceoptions { description "Trace options for system accounting"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum all { description "Trace all operations"; } enum events { description "Trace accounting events and their processing"; } enum config { description "Trace configuration processing"; } enum radius { description "Trace RADIUS processing"; } } } } } container destination { description "Destination for system accounting records"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { presence "enable radius"; description "Configure RADIUS accounting"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list server { key name; ordered-by user; description "RADIUS accounting server configuration"; uses radius-server-object; } } container tacplus { presence "enable tacplus"; description "Send TACACS+ accounting records"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list server { key name; ordered-by user; description "TACACS+ server configuration"; uses tacplus-server-object; } } } } leaf allow-v4mapped-packets { description "Allow processing for packets with V4 mapped address"; type empty; } leaf allow-6pe-traceroute { description "Allow IPv4-mapped v6 address in tag icmp6 TTL expired packet"; type empty; } leaf donot-disable-ip6op-ondad { description "Do not disable IP operation on interface, if DAD fails on EUI-64 link local address "; type empty; } container scripts { description "Scripting mechanisms"; uses scripts_type; } container login { description "Names, login classes, and passwords for users"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf announcement { description "System announcement message (displayed after login)"; type string { length "1 .. 2048"; } } leaf message { description "System login message"; type string { length "1 .. 2048"; } } container retry-options { description "Configure password retry options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf tries-before-disconnect { description "Number of times user is allowed to try password"; default "3"; type uint32 { range "2 .. 10"; } } leaf backoff-threshold { description "Number of password failures before delay is introduced"; default "2"; type uint32 { range "1 .. 3"; } } leaf backoff-factor { description "Delay factor after 'backoff-threshold' password failures"; default "5"; type uint32 { range "5 .. 10"; } } leaf minimum-time { description "Minimum total connection time if all attempts fail"; default "20"; type uint32 { range "20 .. 60"; } } leaf maximum-time { description "Maximum time the connection will remain for user to enter username and password"; default "120"; type uint32 { range "20 .. 300"; } } leaf lockout-period { description "Amount of time user account is locked after 'tries-before-disconnect' failures"; units "minutes"; type uint32 { range "1 .. 43200"; } } } list class { key name; description "Login class"; uses login-class-object; } list user { key name; description "Username"; uses login-user-object; } container password { description "Password configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-length { description "Minimum password length for all users"; type int32 { range "6 .. 20"; } } leaf maximum-length { description "Maximum password length for all users"; type int32 { range "20 .. 128"; } } leaf change-type { description "Password change type"; type enumeration { enum character-sets { description "Count number of character type"; } enum set-transitions { description "Count changes in character type"; } } } leaf minimum-changes { description "Minimum number of changes in password"; type int32; } leaf minimum-numerics { description "Minimum number of numeric class characters in password"; type int32 { range "1 .. 128"; } } leaf minimum-upper-cases { description "Minimum number of upper-case class characters in password"; type int32 { range "1 .. 128"; } } leaf minimum-lower-cases { description "Minimum number of lower-case class characters in password"; type int32 { range "1 .. 128"; } } leaf minimum-punctuations { description "Minimum number of punctuation class characters in password"; type int32 { range "1 .. 128"; } } leaf format { description "Encryption method to use for password"; type enumeration { enum sha1 { description "Secure Hash Algorithm 1"; } enum sha256 { description "Secure Hash Algorithm 256 ($5$)"; } enum sha512 { description "Secure Hash Algorithm 512 ($6$)"; } enum md5 { description "Message Digest 5"; } } } } container deny-sources { description "Sources from which logins are denied"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list address { description "IPv4/IPv6 addresses, prefix length optional, or hostnames"; type ipprefix-optional; } } } list static-host-mapping { key name; ordered-by user; description "Static hostname database mapping"; leaf name { description "Fully qualified name of system"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list inet { description "IP address"; type ipv4addr; } leaf-list inet6 { description "IPv6 address"; type ipv6addr; } leaf sysid { description "ISO/IS-IS system identifier"; type sysid; } leaf-list alias { description "Hostname alias"; type string; } } container services { presence "enable services"; description "System services"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container finger { presence "enable finger"; description "Allow finger requests from remote systems"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf connection-limit { description "Maximum number of allowed connections"; default "75"; type uint32 { range "1 .. 250"; } } leaf rate-limit { description "Maximum number of connections per minute"; default "150"; type uint32 { range "1 .. 250"; } } } container ftp { presence "enable ftp"; description "Allow FTP file transfers"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf connection-limit { description "Maximum number of allowed connections"; default "75"; type uint32 { range "1 .. 250"; } } leaf rate-limit { description "Maximum number of connections per minute"; default "150"; type uint32 { range "1 .. 250"; } } leaf-list authentication-order { description "(null)"; type enumeration { enum radius { description "Remote Authentication Dial-In User Service"; } enum tacplus { description "TACACS+ authentication services"; } enum password { description "Traditional password authentication"; } } } } container ssh { presence "enable ssh"; description "Allow ssh access"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list authentication-order { description "(null)"; type enumeration { enum radius { description "Remote Authentication Dial-In User Service"; } enum tacplus { description "TACACS+ authentication services"; } enum password { description "Traditional password authentication"; } } } leaf root-login { description "Configure root access via ssh"; type enumeration { enum allow { description "Allow root access via ssh"; } enum deny { description "Do not allow root access via ssh"; } enum deny-password { description "Allow for non-password-based authentication methods only"; } } } leaf no-passwords { description "Disables ssh password based authentication"; type empty; } leaf no-public-keys { description "Disables ssh public key based authentication"; type empty; } choice tcp_forwarding_choices { case case_1 { leaf tcp-forwarding { description "Allow forwarding TCP connections via SSH"; type empty; } } case case_2 { leaf no-tcp-forwarding { description "Do not allow forwarding TCP connections via SSH"; type empty; } } } leaf-list protocol-version { description "Specify ssh protocol versions supported"; type enumeration { enum v1 { description "Version 1 ssh protocol"; } enum v2 { description "Version 2 ssh protocol"; } } } leaf max-sessions-per-connection { description "Maximum number of sessions per single SSH connection"; type int32 { range "1 .. 65535"; } } leaf max-pre-authentication-packets { description "Maximum number of pre-authentication SSH packets per single SSH connection"; type int32 { range "20 .. 2147483647"; } } leaf-list ciphers { description "Specify the ciphers allowed for protocol version 2"; type enumeration { enum 3des-cbc { description "Tripple DES in CBC mode"; } enum aes128-cbc { description "128-bit AES with Cipher Block Chaining"; } enum aes192-cbc { description "192-bit AES with Cipher Block Chaining"; } enum aes256-cbc { description "256-bit AES with Cipher Block Chaining"; } enum aes128-ctr { description "128-bit AES with Counter Mode"; } enum aes192-ctr { description "192-bit AES with Counter Mode"; } enum aes256-ctr { description "256-bit AES with Counter Mode"; } enum aes128-gcm@openssh.com { description "128-bit AES with Galois/Counter Mode"; } enum aes256-gcm@openssh.com { description "256-bit AES with Galois/Counter Mode"; } enum chacha20-poly1305@openssh.com { description "ChaCha20 stream cipher and Poly1305 MAC"; } enum arcfour128 { description "128-bit RC4 with Cipher Block Chaining "; } enum arcfour256 { description "256-bit RC4 with Cipher Block Chaining "; } enum arcfour { description "128-bit RC4 with Cipher Block Chaining "; } enum blowfish-cbc { description "128-bit Blowfish with Cipher Block Chaining "; } enum cast128-cbc { description "128-bit CAST with Cipher Block Chaining "; } } } leaf-list macs { description "Message Authentication Code algorithms allowed (SSHv2)"; type enumeration { enum hmac-md5 { description "Hash-based MAC using Message-Digest 5 (MD5)"; } enum hmac-md5-etm@openssh.com { description "Hash-based Encrypt-then-MAC using Message-Digest 5 (MD5)"; } enum hmac-sha1 { description "Hash-based MAC using Secure Hash Algorithm (SHA1)"; } enum hmac-sha1-etm@openssh.com { description "Hash-based Encrypt-then-MAC using Secure Hash Algorithm (SHA1)"; } enum umac-64@openssh.com { description "UMAC-64 algorithm specified in RFC4418"; } enum umac-128@openssh.com { description "UMAC-128 algorithm specified in RFC4418"; } enum umac-64-etm@openssh.com { description "Encrypt-then-MAC using UMAC-64 algorithm specified in RFC4418"; } enum umac-128-etm@openssh.com { description "Encrypt-then-MAC using UMAC-128 algorithm specified in RFC4418"; } enum hmac-sha2-256 { description "Hash-based MAC using Secure Hash Algorithm (SHA2)"; } enum hmac-sha2-256-etm@openssh.com { description "Hash-based Encrypt-then-Mac using Secure Hash Algorithm (SHA2)"; } enum hmac-sha2-512 { description "Hash-based MAC using Secure Hash Algorithm (SHA2)"; } enum hmac-sha2-512-etm@openssh.com { description "Hash-based Encrypt-then-Mac using Secure Hash Algorithm (SHA2)"; } enum hmac-ripemd160 { description "Hash-based MAC using RIPEMD"; } enum hmac-ripemd160-etm@openssh.com { description "Hash-based Encrypt-then-MAC using RIPEMD"; } enum hmac-sha1-96 { description "96-bits of Hash-based MAC using SHA1"; } enum hmac-sha1-96-etm@openssh.com { description "96-bits of Hash-based Encrypt-then-MAC using SHA1"; } enum hmac-md5-96 { description "96-bits of Hash-based MAC using MD5"; } enum hmac-md5-96-etm@openssh.com { description "96-bits of Hash-based Encrypt-then-MAC using MD5"; } } } leaf-list key-exchange { description "Specify ssh key-exchange for Diffie-Hellman keys"; type enumeration { enum curve25519-sha256 { description "The EC Diffie-Hellman on Curve25519 with SHA2-256 hash"; } enum ecdh-sha2-nistp256 { description "The EC Diffie-Hellman on nistp256 with SHA2-256"; } enum ecdh-sha2-nistp384 { description "The EC Diffie-Hellman on nistp384 with SHA2-384"; } enum ecdh-sha2-nistp521 { description "The EC Diffie-Hellman on nistp521 with SHA2-512"; } enum group-exchange-sha2 { description "The RFC 4419 group exchange with SHA2-256 hash"; } enum group-exchange-sha1 { description "The RFC 4419 group exchange with SHA1 hash"; } enum dh-group14-sha1 { description "The RFC 4253 mandated group14 with SHA1 hash"; } enum dh-group1-sha1 { description "The RFC 4253 mandated group1 with SHA1 hash"; } } } leaf client-alive-count-max { description "Threshold of missing client-alive responses that triggers a disconnect"; type uint32 { range "1 .. 255"; } } leaf client-alive-interval { description "Frequency of client-alive requests"; units "seconds"; type uint32 { range "0 .. 65535"; } } container hostkey-algorithm { presence "enable hostkey-algorithm"; description "Specify permissible SSH host-key algorithms"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice ssh-dss-choice { case case_1 { leaf no-ssh-dss { description "Disallow generation of 1024-bit DSA host-key"; type empty; } } case case_2 { container ssh-dss { presence "enable ssh-dss"; description "Allow generation of 1024-bit DSA host-key"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice allow-deny { } } } } choice ssh-rsa-choice { case case_1 { leaf no-ssh-rsa { description "Disallow generation of RSA host-key"; type empty; } } case case_2 { container ssh-rsa { presence "enable ssh-rsa"; description "Allow generation of RSA host-key"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice allow-deny { } } } } choice ssh-ecdsa-choice { case case_1 { leaf no-ssh-ecdsa { description "Disallow generation of ECDSA host-key"; type empty; } } case case_2 { container ssh-ecdsa { presence "enable ssh-ecdsa"; description "Allow generation of ECDSA host-key"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice allow-deny { } } } } choice ssh-ed25519-choice { case case_1 { leaf no-ssh-ed25519 { description "Disallow generation of ED25519 host-key"; type empty; } } case case_2 { leaf ssh-ed25519 { description "Allow generation of ED25519 host-key"; type empty; } } } } leaf connection-limit { description "Maximum number of allowed connections"; default "75"; type uint32 { range "1 .. 250"; } } leaf rate-limit { description "Maximum number of connections per minute"; default "150"; type uint32 { range "1 .. 250"; } } } container telnet { presence "enable telnet"; description "Allow telnet login"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf connection-limit { description "Maximum number of allowed connections"; default "75"; type uint32 { range "1 .. 250"; } } leaf rate-limit { description "Maximum number of connections per minute"; default "150"; type uint32 { range "1 .. 250"; } } leaf-list authentication-order { description "(null)"; type enumeration { enum radius { description "Remote Authentication Dial-In User Service"; } enum tacplus { description "TACACS+ authentication services"; } enum password { description "Traditional password authentication"; } } } } container xnm-clear-text { presence "enable xnm-clear-text"; description "Allow clear text-based JUNOScript connections"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf connection-limit { description "Maximum number of allowed connections"; default "75"; type uint32 { range "1 .. 250"; } } leaf rate-limit { description "Maximum number of connections per minute"; default "150"; type uint32 { range "1 .. 250"; } } } container xnm-ssl { presence "enable xnm-ssl"; description "Allow SSL-based JUNOScript connections"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf local-certificate { description "Name of local X.509 certificate to use"; type string; mandatory true; } leaf ssl-renegotiation { description "Allow SSL renegotiation"; type empty; } leaf no-ssl-renegotiation { description "Allow SSL renegotiation"; type empty; } leaf connection-limit { description "Maximum number of allowed connections"; default "75"; type uint32 { range "1 .. 250"; } } leaf rate-limit { description "Maximum number of connections per minute"; default "150"; type uint32 { range "1 .. 250"; } } } container netconf { description "Allow NETCONF connections"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container ssh { presence "enable ssh"; description "Allow NETCONF over SSH"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf connection-limit { description "Maximum number of allowed connections"; default "75"; type uint32 { range "1 .. 250"; } } leaf rate-limit { description "Maximum number of connections per minute"; default "150"; type uint32 { range "1 .. 250"; } } leaf port { description "Service port number"; type int32 { range "1 .. 65535"; } } } container traceoptions { description "NETCONF trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum all { description "Log the entire communication"; } enum incoming { description "Log all incoming data"; } enum outgoing { description "Log all outgoing data"; } } } } leaf on-demand { description "Enable on-demand tracing"; type empty; } } } container tftp-server { presence "enable tftp-server"; description "Enable TFTP file transfers"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf connection-limit { description "Maximum number of allowed connections"; default "75"; type uint32 { range "1 .. 250"; } } leaf rate-limit { description "Maximum number of connections per minute"; default "150"; type uint32 { range "1 .. 250"; } } } container flow-tap-dtcp { description "Configure DTCP-based Flow-tap service"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container ssh { presence "enable ssh"; description "Allow flow-tap-dtcp service over SSH"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf connection-limit { description "Maximum number of allowed connections"; default "75"; type uint32 { range "1 .. 250"; } } leaf rate-limit { description "Maximum number of connections per minute"; default "150"; type uint32 { range "1 .. 250"; } } } } container reverse { description "Allow connections to device connected to the AUX port"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container telnet { presence "enable telnet"; description "Allow reverse telnet connections (over AUX port)"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port { description "Port number to accept reverse telnet connections"; default "2900"; type int32 { range "1 .. 65535"; } } } container ssh { presence "enable ssh"; description "Allow reverse SSH connections (over AUX port)"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port { description "Port number to accept reverse SSH connections"; default "2901"; type int32 { range "1 .. 65535"; } } } } container dns { presence "enable dns"; description "Enable Name server"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf max-cache-ttl { description "Max TTL for cached responses"; default "604800"; units "seconds"; type uint32 { range "0 .. 604800"; } } leaf max-ncache-ttl { description "Max TTL for cached negative responses"; default "10800"; units "seconds"; type uint32 { range "0 .. 604800"; } } container traceoptions { description "DNS server trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } } leaf debug-level { description "Debug level"; default "0"; type uint32 { range "0 .. 99"; } } list category { key name; description "Logging category"; leaf name { description "(null)"; type enumeration { enum default { description "Categories where no specific configuration"; } enum general { description "General infomation"; } enum database { description "Messages relating to the databases"; } enum security { description "Approval and denial of requests"; } enum config { description "Configuraion file parsing and processing"; } enum resolver { description "DNS resolution"; } enum xfer-in { description "Zone transfers the server is receiving"; } enum xfer-out { description "Zone transfers the server is sending"; } enum notify { description "The NOTIFY protocol"; } enum client { description "Processing of client requests"; } enum unmatched { description "Messages named was unable to determine the class"; } enum network { description "Network options"; } enum update { description "Dynamic updates"; } enum update-security { description "Approval and denial of update requests"; } enum queries { description "DNS query"; } enum dispatch { description "Dispatching of incoming packets to the server"; } enum dnssec { description "DNSSEC and TSIG protocol processing"; } enum lame-servers { description "Lame servers"; } enum delegation-only { description "Delegation only"; } enum edns-disabled { description "Log query using plain DNS"; } } } } } list forwarders { key name; ordered-by user; description "Server IPs to DNS query will be forwarded"; leaf name { description "IP address"; type ipaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container dnssec { presence "enable dnssec"; description "Configure DNSSEC"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable { description "Disable DNSSEC"; type empty; } container trusted-keys { presence "enable trusted-keys"; description "Trusted keys"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list key { key name; ordered-by user; description "Trusted key"; leaf name { description "Trusted key"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } list dlv { key "domain trusted-anchor"; ordered-by user; description "Configure DLV (DNS Lookaside Validation)"; leaf domain { description "Name of the domain"; type string; } leaf trusted-anchor { description "Trusted DLV anchor"; type string; } } list secure-domains { key name; ordered-by user; description "Domains for which only signed responses are accepted"; leaf name { description "Domain name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } container service-deployment { description "Configuration for Service Deployment (SDXD) management application"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf local-certificate { description "Name of local X.509 certificate to use"; type string { length "1 .. 1024"; } } leaf source-address { description "Local IPv4 address to be used as source address for traffic to SDX"; type ipv4addr; } list servers { key name; ordered-by user; description "Service deployment system configuration"; max-elements 3; leaf name { description "IPv4 address of SDX server"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port { description "TCP port of SDX server"; type uint16; } leaf user { description "Username used by SDX when logging into the router"; type string; } container security-options { description "Specify mechanism to secure the connection"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice protocol { case case_1 { leaf tls { description "Use TLS for transport layer security"; type empty; } } case case_2 { leaf ssl3 { description "Use SSLv3 for transport layer security"; type empty; } } } } } container traceoptions { description "Service deployment daemon trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Tracing options"; leaf name { description "(null)"; type enumeration { enum beep { description "Trace BEEP protocol events"; } enum profile { description "Trace BEEP profile events"; } enum application { description "Trace application events"; } enum io { description "Trace I/O activities"; } enum all { description "Trace everything"; } } } } } } container outbound-ssh { description "Initiate outbound SSH connection"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Outbound SSH trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum configuration { description "Trace configuration events"; } enum connectivity { description "Trace TCP connection handling"; } enum all { description "Trace everything"; } } } } } list client { key name; ordered-by user; description "Define a device initiated SSH connection"; leaf name { description "Client application identifier"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf device-id { description "Unique ID used by client to identify this device"; type string; mandatory true; } leaf secret { description "Shared secret between client and this device"; type unreadable; } container keep-alive { presence "enable keep-alive"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf retry { description "Maximum number of connection attempts"; default "3"; type uint32; } leaf timeout { description "Timeout value for conection attempts"; default "15"; type uint32; } } leaf reconnect-strategy { description "Strategy used to reconnect to a server"; default "in-order"; type enumeration { enum sticky { description "Attempt to reconnect to the server last connected to"; } enum in-order { description "Attempt to reconnect to the first server configured"; } } } leaf services { description "The subsystem(s) that can be invoked"; type enumeration { enum netconf { description "Enable invoking NETCONF sub-system"; } } } list servers { key name; ordered-by user; description "Client application servers"; leaf name { description "Client address to connect to"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port { description "Client port to connect to"; type uint16; } leaf retry { description "Maximum number of connection attempts"; default "3"; type uint32; } leaf timeout { description "Timeout value for conection attempts"; default "15"; type uint32; } } } } container rest { description "Allow RPC execution over HTTP(S) connection"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container http { presence "enable http"; description "Unencrypted HTTP connection settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port { description "Port number to accept HTTP connections"; default "3000"; type uint32 { range "1024 .. 65535"; } } leaf-list addresses { description "List of addresses to listen for incoming connections"; type ipv4addr; } } container https { description "Encrypted HTTPS connections"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port { description "Port number to accept HTTPS connections"; default "3443"; type uint32 { range "1024 .. 65535"; } } leaf-list addresses { description "List of addresses to listen for incoming connections"; type ipv4addr; } leaf server-certificate { description "Local certificate identifier"; type string { } mandatory true; } presence "enable https"; leaf-list cipher-list { description "List of allowed cipher suites in order of preference"; type enumeration { enum rsa-with-rc4-128-md5 { description "RSA, 128bit rc4, md5 hash"; } enum rsa-with-rc4-128-sha { description "RSA, 128bit rc4, sha hash"; } enum rsa-with-3des-ede-cbc-sha { description "RSA, 3des ede/cbc, sha hash"; } enum dhe-rsa-with-3des-ede-cbc-sha { description "DHE/rsa, 3es/ede cbc, sha hash"; } enum rsa-with-aes-128-cbc-sha { description "RSA, 128 bit aes/cbc, sha hash"; } enum dhe-rsa-with-aes-128-cbc-sha { description "DHE/rsa, 128 bit aes/cbc, sha hash"; } enum rsa-with-aes-256-cbc-sha { description "RSA, 256 bit aes/cbc, sha hash"; } enum dhe-rsa-with-aes-256-cbc-sha { description "DHE/rsa, 256 bit aes/cbc, sha hash"; } enum ecdhe-rsa-with-rc4-128-sha { description "ECDHE/rsa, 128 bit rc4, sha hash"; } enum ecdhe-rsa-with-3des-ede-cbc-sha { description "ECDHE/rsa, 128bit 3des ede/cbc sha hash"; } enum ecdhe-rsa-with-aes-128-cbc-sha { description "ECDHE/rsa, 128 bit aes/cbc, sha hash"; } enum ecdhe-rsa-with-aes-256-cbc-sha { description "ECDHE/rsa, 256 bit aes/cbc, sha hash"; } enum rsa-with-aes-128-cbc-sha256 { description "RSA, 128 bit aes/cbc, sha256 hash "; } enum rsa-with-aes-256-cbc-sha256 { description "RSA, 256 bit aes/cbc, sha256 hash"; } enum dhe-rsa-with-aes-128-cbc-sha256 { description "DHE/rsa, 128 bit aes/cbc, sha256 hash"; } enum dhe-rsa-with-aes-256-cbc-sha256 { description "DHE/rsa, 256 bit aes/cbc, sha256 hash"; } enum rsa-with-aes-128-gcm-sha256 { description "RSA, 128 bit aes/gcm, sha256 hash"; } enum rsa-with-aes-256-gcm-sha384 { description "RSA, 256 bit aes/gcm, sha384 hash"; } enum dhe-rsa-with-aes-128-gcm-sha256 { description "DHE/rsa, 128 bit aes/gcm, sha256 hash"; } enum dhe-rsa-with-aes-256-gcm-sha384 { description "DHE/rsa, 256 bit aes/gcm, sha384 hash"; } enum ecdhe-rsa-with-aes-128-cbc-sha256 { description "ECDHE/rsa, 128 bit aes/cbc, sha256 hash"; } enum ecdhe-rsa-with-aes-256-cbc-sha384 { description "ECDHE/rsa, 256 bit aes/cbc, sha384 hash"; } enum ecdhe-rsa-with-aes-128-gcm-sha256 { description "ECDHE/rsa, 128 bit aes/gcm, sha256 hash"; } enum ecdhe-rsa-with-aes-256-gcm-sha384 { description "ECDHE/rsa, 256 bit aes/gcm, sha384 hash"; } } } container mutual-authentication { description "Enable TLS mutual authentication"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf certificate-authority { description "Certificate authority profile"; type string { } } } } container control { description "Control of the rest-api process"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list allowed-sources { description "List of allowed source IP addresses"; type ipv4addr; } leaf connection-limit { description "Maximum number of simultaneous connections"; default "64"; type int32 { range "1 .. 1024"; } } } container traceoptions { description "Trace options for rest-api service"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf flag { description "Area to enable tracing"; type enumeration { enum lighttpd { description "Enable tracing for lighttpd"; } enum juise { description "Enable tracing for JUISE"; } enum all { description "Enable all traces"; } } } } leaf enable-explorer { description "Enable REST API explorer tool"; type empty; } } container dhcp-local-server { description "Dynamic Host Configuration Protocol server configuration"; uses jdhcp-local-server-type; } container database-replication { description "Database replication configuration"; uses bdbrepd-type; } container web-management { description "Web management configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf management-url { description "URL path for web management access"; type string; } container http { presence "enable http"; description "Unencrypted HTTP connection settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port { description "TCP port for incoming HTTP connections"; default "80"; type uint16 { range "1 .. 65535"; } } leaf-list interface { description "Interfaces that accept HTTP access"; type interface-name; } } container https { presence "enable https"; description "Encrypted HTTPS connections"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port { description "TCP port for incoming HTTPS connections"; default "443"; type uint16 { range "1 .. 65535"; } } choice certificate-choice { case case_1 { leaf local-certificate { description "X.509 certificate to use (from configuration)"; type string; } } case case_2 { leaf pki-local-certificate { description "X.509 certificate to use (from PKI local store)"; type string { } } } case case_3 { leaf system-generated-certificate { description "X.509 certificate generated automatically by system"; type empty; } } } leaf-list interface { description "Interfaces that accept HTTPS access"; type interface-name; } } container control { description "Control of the web management process"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf max-threads { description "Maximum simultaneous threads to handle requests"; default "5"; type uint32 { range "0 .. 16"; } } } container session { description "Session parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf idle-timeout { description "Default timeout of web-management sessions"; default "1440"; units "minutes"; type uint32 { range "1 .. 1440"; } } leaf session-limit { description "Maximum number of web-management sessions to allow"; type uint32 { range "1 .. 1024"; } } } } container packet-triggered-subscribers { description "Packet Triggered Subscribers configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber-idle-timeout { description "Subscriber idle timeout"; default "30"; type int32 { range "30 .. 44640"; } } leaf subscriber-packet-idle-timeout { description "Subscriber packet idle timeout"; default "30"; type int32 { range "15 .. 1440"; } } container traceoptions { description "Packet Triggered Subscribers trace options"; uses jptspd-traceoptions-type; } list partition { key name; ordered-by user; description "Packet Triggered Subscriber partition definition"; leaf name { description "Packet Triggered Subscriber partition name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf diameter-instance { description "Packet Triggered Subscriber diameter instance"; type string { length "1 .. 63"; } mandatory true; } leaf destination-realm { description "Packet Triggered Subscriber destination realm"; type string { length "1 .. 63"; } mandatory true; } leaf destination-host { description "Packet Triggered Subscriber destination host"; type string { length "1 .. 63"; } mandatory true; } } list partition-diameter-jgx { key name; ordered-by user; description "Packet Triggered Subscriber partition definition"; leaf name { description "Packet Triggered Subscriber partition name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf diameter-instance { description "Packet Triggered Subscriber diameter instance"; type string { length "1 .. 63"; } mandatory true; } leaf destination-realm { description "Packet Triggered Subscriber destination realm"; type string { length "1 .. 63"; } mandatory true; } leaf destination-host { description "Packet Triggered Subscriber destination host"; type string { length "1 .. 63"; } mandatory true; } } list partition-radius { key name; ordered-by user; description "Packet Triggered Subscriber partition definition"; leaf name { description "Packet Triggered Subscriber partition name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf accounting-port { description "Radius listening port number"; default "1813"; type uint16 { range "1 .. 65535"; } } leaf accounting-shared-secret { description "Radius shared secret"; type unreadable; mandatory true; } leaf accounting-mode { description "Mode"; default "reply"; type enumeration { enum reply { description "Receiving accounting request only"; } enum no-reply { description "Receiving and responding accounting request"; } } } leaf routing-instance { description "Routing instance name"; type string; } leaf accounting-ip-address { description "Radius Accounting IP address"; type ipaddr; } leaf pre-announcement { description "Pre-announcement timeout value in minute"; default "0"; type uint32 { range "0 .. 44640"; } } leaf-list accounting-attribute-type { description "List of standard radius attributes tracked by the radius-partition"; type uint16 { range "1 .. 255"; } } leaf-list accounting-vendor-id { description "List of vendor-id tracked by the radius-partition"; type uint32; } leaf subscriber-service-profile { description "Radius attribute carrying subscriber service profile"; type string { } } leaf subscriber-identification { description "Customize subscriber identification"; type string; } } list subscriber-profile { key name; ordered-by user; description "Packet Triggered Subscriber profile"; leaf name { description "Packet Triggered Subscriber profile name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list enable { key name; ordered-by user; description "Enable services"; leaf name { description "Service"; type string; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf concurrent-data-sessions { description "Number of concurrent data session"; type uint32; } } list disable { key name; ordered-by user; description "Disable services"; leaf name { description "Service"; type string; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container max-data-sessions-per-subscriber { description "Maximum number of concurrent data sessions per subscriber"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf limit { description "Number of sessions"; type uint32; mandatory true; } presence "enable max-data-sessions-per-subscriber"; leaf-list exceed-action { description "Action(s) when specified number of concurrent data session reached"; type enumeration { enum drop { description "Drop session"; } enum syslog { description "Record it in syslog"; } } } } } } container static-subscribers { description "Static Subscriber Client configuration"; uses jsscd-static-subscribers-type; } container local-policy-decision-function { presence "enable local-policy-decision-function"; description "Configuration for Local Policy Decision Function service"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Local Policy Decision Function trace options"; uses lpdf-trace-options-type; } container statistics { presence "enable statistics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list file { key name; ordered-by user; description "Accounting data file configuration"; leaf name { description "Name of file in which to write accounting data"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf size { description "Maximum accounting data file size"; default "262144"; type string; } leaf files { description "Maximum number of files for this profile"; default "10"; type uint32 { range "3 .. 1000"; } } leaf transfer-interval { description "Frequency at which to transfer files to archive sites"; default "30"; units "minutes"; type uint32 { range "5 .. 2880"; } } list archive-sites { key name; ordered-by user; description "List of archive destinations"; leaf name { description "Primary and failover URLs to receive archive files"; type string; } leaf password { description "Password for login into the archive site"; type unreadable; } } } leaf record-type { description "(null)"; default "delta"; type enumeration { enum delta { description "Record delta"; } enum interim { description "Record interim"; } } } list aacl-statistics-profile { key name; ordered-by user; description "Profile for policy decision bulkstats"; leaf name { description "Name of stats profile"; type string { length "1 .. 80"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf file { description "Name of bulkstats file"; type string { length "1 .. 128"; } } leaf record-mode { description "Specify the interim statistics record-mode"; default "interim-full"; type enumeration { enum interim-full { description "Statistics mode full interim"; } enum interim-active-only { description "Statistics mode active interim only"; } } } leaf report-interval { description "Frequency at which to record statistics"; default "15"; units "minutes"; type uint32 { range "5 .. 1440"; } } container aacl-fields { description "List of attributes to be stored in bulkstats file"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf address { description "Address of subscriber"; type empty; } leaf all-fields { description "Choose all aacl-fields"; type empty; } leaf application { description "Application"; type empty; } leaf application-group { description "Application group"; type empty; } leaf input-bytes { description "Input bytes"; type empty; } leaf input-interface { description "Interface of subscriber"; type empty; } leaf input-packets { description "Input packets"; type empty; } leaf ipv6-address { description "IPv6 address"; type empty; } leaf ipv6-prefix-length { description "IPv6 prefix length"; type empty; } leaf mask { description "Mask of subscriber"; type empty; } leaf output-bytes { description "Output bytes"; type empty; } leaf output-packets { description "Output packets"; type empty; } leaf subscriber-name { description "Name of subscriber"; type empty; } leaf timestamp { description "Timestamp of stats record"; type empty; } leaf vrf-name { description "VRF where subscriber resides"; type empty; } } } } } container subscriber-management { description "Subscriber management configuration"; uses smid-type; } container resource-monitor { description "Resource monitor configuration"; uses resource-monitor-type; } container subscriber-management-helper { description "Subscriber management helper configuration"; uses smihelperd-type; } container dhcp { description "Configure DHCP server"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum-lease-time { description "Maximum lease time advertised to clients"; units "seconds"; type string; } leaf default-lease-time { description "Default lease time advertised to clients"; units "seconds"; type string; } leaf domain-name { description "Domain name advertised to clients"; type string { length "1 .. 254"; } } list name-server { key name; ordered-by user; description "Domain name servers available to the client"; leaf name { description "DNS server's IPv4 address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list domain-search { key name; ordered-by user; description "Domain search list used to resolve hostnames"; leaf name { description "DNS search suffix"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list wins-server { key name; ordered-by user; description "NetBIOS name servers"; leaf name { description "WINS server's IPv4 address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list router { key name; ordered-by user; description "Routers advertised to clients"; leaf name { description "Router's IPv4 address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf boot-file { description "Boot filename advertised to clients"; type string; } leaf boot-server { description "Boot server advertised to clients"; type string { } } leaf next-server { description "Next server that clients need to contact"; type ipv4addr; } leaf server-identifier { description "DHCP server identifier advertised to clients"; type ipv4addr; } list option { key name; ordered-by user; description "DHCP option"; leaf name { description "DHCP option identifier code"; type uint32 { range "1 .. 255"; } } choice option-type-choice { case case_1 { leaf flag { description "Boolean flag value"; type enumeration { enum true { description "True value"; } enum false { description "False value"; } enum on { description "On value"; } enum off { description "Off value"; } } } } case case_2 { leaf byte { description "Unsigned 8-bit value"; type uint8; } } case case_3 { leaf short { description "Signed 16-bit numeric value"; type int16; } } case case_4 { leaf unsigned-short { description "Unsigned 16-bit numeric value"; type uint16; } } case case_5 { leaf integer { description "Signed 32-bit numeric value"; type int32; } } case case_6 { leaf unsigned-integer { description "Unsigned 32-bit numeric value"; type uint32; } } case case_7 { leaf string { description "Character string value"; type string { length "1 .. 254"; } } } case case_8 { leaf ip-address { description "IP address value"; type ipv4addr; } } case case_9 { container array { presence "enable array"; description "Array of values"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice option-type-array-choice { case case_1 { leaf-list flag { description "Array of boolean flag values"; type enumeration { enum true { description "True value"; } enum false { description "False value"; } enum on { description "On value"; } enum off { description "Off value"; } } } } case case_2 { leaf-list byte { description "Array of unsigned 8-bit values"; type uint8; } } case case_3 { leaf-list short { description "Array of signed 16-bit numeric values"; type int16; } } case case_4 { leaf-list unsigned-short { description "Array of 16-bit numeric values"; type uint16; } } case case_5 { leaf-list integer { description "Array of signed 32-bit numeric values"; type int32; } } case case_6 { leaf-list unsigned-integer { description "Array of unsigned 32-bit numeric values"; type uint32; } } case case_7 { leaf-list string { description "Array of character string values"; type string { length "1 .. 254"; } } } case case_8 { leaf-list ip-address { description "Array of IP address values"; type ipv4addr; } } } } } case case_10 { leaf byte-stream { description "Stream of unsigned 8-bit values within quotes"; type string; } } } } container sip-server { description "SIP servers to clients"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list name { key name; ordered-by user; description "Names of SIP servers"; leaf name { description "SIP server name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list address { key name; ordered-by user; description "IP addresses of SIP servers"; leaf name { description "SIP server's IPv4 address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } container traceoptions { description "DHCP server trace options"; uses dhcp-traceoptions-type; } list pool { key name; ordered-by user; description "DHCP address pool"; leaf name { description "Logical subnet address/netmask"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container address-range { presence "enable address-range"; description "Range of addresses to choose from"; leaf low { description "Lowest address in the range"; type ipv4addr; mandatory true; } leaf high { description "Highest address in the range"; type ipv4addr; mandatory true; } } list exclude-address { key name; ordered-by user; description "Address to exclude from pool"; leaf name { description "IPv4 address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf maximum-lease-time { description "Maximum lease time advertised to clients"; units "seconds"; type string; } leaf default-lease-time { description "Default lease time advertised to clients"; units "seconds"; type string; } leaf domain-name { description "Domain name advertised to clients"; type string { length "1 .. 254"; } } list name-server { key name; ordered-by user; description "Domain name servers available to the client"; leaf name { description "DNS server's IPv4 address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list domain-search { key name; ordered-by user; description "Domain search list used to resolve hostnames"; leaf name { description "DNS search suffix"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list wins-server { key name; ordered-by user; description "NetBIOS name servers"; leaf name { description "WINS server's IPv4 address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list router { key name; ordered-by user; description "Routers advertised to clients"; leaf name { description "Router's IPv4 address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf boot-file { description "Boot filename advertised to clients"; type string; } leaf boot-server { description "Boot server advertised to clients"; type string { } } leaf next-server { description "Next server that clients need to contact"; type ipv4addr; } leaf server-identifier { description "DHCP server identifier advertised to clients"; type ipv4addr; } list option { key name; ordered-by user; description "DHCP option"; leaf name { description "DHCP option identifier code"; type uint32 { range "1 .. 255"; } } choice option-type-choice { case case_1 { leaf flag { description "Boolean flag value"; type enumeration { enum true { description "True value"; } enum false { description "False value"; } enum on { description "On value"; } enum off { description "Off value"; } } } } case case_2 { leaf byte { description "Unsigned 8-bit value"; type uint8; } } case case_3 { leaf short { description "Signed 16-bit numeric value"; type int16; } } case case_4 { leaf unsigned-short { description "Unsigned 16-bit numeric value"; type uint16; } } case case_5 { leaf integer { description "Signed 32-bit numeric value"; type int32; } } case case_6 { leaf unsigned-integer { description "Unsigned 32-bit numeric value"; type uint32; } } case case_7 { leaf string { description "Character string value"; type string { length "1 .. 254"; } } } case case_8 { leaf ip-address { description "IP address value"; type ipv4addr; } } case case_9 { container array { presence "enable array"; description "Array of values"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice option-type-array-choice { case case_1 { leaf-list flag { description "Array of boolean flag values"; type enumeration { enum true { description "True value"; } enum false { description "False value"; } enum on { description "On value"; } enum off { description "Off value"; } } } } case case_2 { leaf-list byte { description "Array of unsigned 8-bit values"; type uint8; } } case case_3 { leaf-list short { description "Array of signed 16-bit numeric values"; type int16; } } case case_4 { leaf-list unsigned-short { description "Array of 16-bit numeric values"; type uint16; } } case case_5 { leaf-list integer { description "Array of signed 32-bit numeric values"; type int32; } } case case_6 { leaf-list unsigned-integer { description "Array of unsigned 32-bit numeric values"; type uint32; } } case case_7 { leaf-list string { description "Array of character string values"; type string { length "1 .. 254"; } } } case case_8 { leaf-list ip-address { description "Array of IP address values"; type ipv4addr; } } } } } case case_10 { leaf byte-stream { description "Stream of unsigned 8-bit values within quotes"; type string; } } } } container sip-server { description "SIP servers to clients"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list name { key name; ordered-by user; description "Names of SIP servers"; leaf name { description "SIP server name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list address { key name; ordered-by user; description "IP addresses of SIP servers"; leaf name { description "SIP server's IPv4 address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } list static-binding { key name; ordered-by user; description "DHCP client's hardware address"; leaf name { description "Ethernet hardware address belonging to host"; type mac-addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list fixed-address { key name; ordered-by user; description "Possible IP addresses to assign to host"; leaf name { description "IPv4 address"; type ipaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf host-name { description "Hostname for this client"; type string { } } container client-identifier { description "Client identifier option"; choice client-identifier-choice { case case_1 { leaf ascii { description "Client identifier as an ASCII string"; type string; } } case case_2 { leaf hexadecimal { description "Client identifier as a hexadecimal string"; type string { } } } } } leaf domain-name { description "Domain name advertised to clients"; type string { length "1 .. 254"; } } list name-server { key name; ordered-by user; description "Domain name servers available to the client"; leaf name { description "DNS server's IPv4 address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list domain-search { key name; ordered-by user; description "Domain search list used to resolve hostnames"; leaf name { description "DNS search suffix"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list wins-server { key name; ordered-by user; description "NetBIOS name servers"; leaf name { description "WINS server's IPv4 address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list router { key name; ordered-by user; description "Routers advertised to clients"; leaf name { description "Router's IPv4 address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf boot-file { description "Boot filename advertised to clients"; type string; } leaf boot-server { description "Boot server advertised to clients"; type string { } } leaf next-server { description "Next server that clients need to contact"; type ipv4addr; } leaf server-identifier { description "DHCP server identifier advertised to clients"; type ipv4addr; } list option { key name; ordered-by user; description "DHCP option"; leaf name { description "DHCP option identifier code"; type uint32 { range "1 .. 255"; } } choice option-type-choice { case case_1 { leaf flag { description "Boolean flag value"; type enumeration { enum true { description "True value"; } enum false { description "False value"; } enum on { description "On value"; } enum off { description "Off value"; } } } } case case_2 { leaf byte { description "Unsigned 8-bit value"; type uint8; } } case case_3 { leaf short { description "Signed 16-bit numeric value"; type int16; } } case case_4 { leaf unsigned-short { description "Unsigned 16-bit numeric value"; type uint16; } } case case_5 { leaf integer { description "Signed 32-bit numeric value"; type int32; } } case case_6 { leaf unsigned-integer { description "Unsigned 32-bit numeric value"; type uint32; } } case case_7 { leaf string { description "Character string value"; type string { length "1 .. 254"; } } } case case_8 { leaf ip-address { description "IP address value"; type ipv4addr; } } case case_9 { container array { presence "enable array"; description "Array of values"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice option-type-array-choice { case case_1 { leaf-list flag { description "Array of boolean flag values"; type enumeration { enum true { description "True value"; } enum false { description "False value"; } enum on { description "On value"; } enum off { description "Off value"; } } } } case case_2 { leaf-list byte { description "Array of unsigned 8-bit values"; type uint8; } } case case_3 { leaf-list short { description "Array of signed 16-bit numeric values"; type int16; } } case case_4 { leaf-list unsigned-short { description "Array of 16-bit numeric values"; type uint16; } } case case_5 { leaf-list integer { description "Array of signed 32-bit numeric values"; type int32; } } case case_6 { leaf-list unsigned-integer { description "Array of unsigned 32-bit numeric values"; type uint32; } } case case_7 { leaf-list string { description "Array of character string values"; type string { length "1 .. 254"; } } } case case_8 { leaf-list ip-address { description "Array of IP address values"; type ipv4addr; } } } } } case case_10 { leaf byte-stream { description "Stream of unsigned 8-bit values within quotes"; type string; } } } } container sip-server { description "SIP servers to clients"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list name { key name; ordered-by user; description "Names of SIP servers"; leaf name { description "SIP server name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list address { key name; ordered-by user; description "IP addresses of SIP servers"; leaf name { description "SIP server's IPv4 address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } container transport { description "Transport configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } container syslog { description "System logging facility"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container archive { description "Archive file information"; uses archive-object; } list user { key name; ordered-by user; description "Notify a user of the event"; leaf name { description "Name of user to notify"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list contents { key name; description "(null)"; uses syslog-object; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } leaf allow-duplicates { description "Do not suppress the repeated message"; type empty; } } list host { key name; ordered-by user; description "Host to be notified"; leaf name { description "Name of host to notify"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list contents { key name; description "(null)"; uses syslog-object; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } leaf allow-duplicates { description "Do not suppress the repeated message"; type empty; } leaf port { description "Port number"; type uint16; } leaf facility-override { description "Alternate facility for logging to remote host"; type enumeration { enum authorization { description "Authorization system"; } enum daemon { description "Various system processes"; } enum ftp { description "FTP process"; } enum kernel { description "Kernel"; } enum user { description "User processes"; } enum local0 { description "Local logging option number 0"; } enum local1 { description "Local logging option number 1"; } enum local2 { description "Local logging option number 2"; } enum local3 { description "Local logging option number 3"; } enum local4 { description "Local logging option number 4"; } enum local5 { description "Local logging option number 5"; } enum local6 { description "Local logging option number 6"; } enum local7 { description "Local logging option number 7"; } } } leaf log-prefix { description "Prefix for all logging to this host"; type string { } } leaf source-address { description "Use specified address as source address"; type ipaddr; } leaf explicit-priority { description "Include priority and facility in messages"; type empty; } leaf exclude-hostname { description "Exclude hostname field in messages"; type empty; } container structured-data { presence "enable structured-data"; description "Log system message in structured format"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice format { case case_1 { leaf brief { description "Omit English-language text from end of logged message"; type empty; } } } } } leaf allow-duplicates { description "Do not suppress the repeated message for all targets"; type empty; } list file { key name; ordered-by user; description "File in which to log data"; leaf name { description "Name of file in which to log data"; type string { length "1 .. 1024"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list contents { key name; description "(null)"; uses syslog-object; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } leaf allow-duplicates { description "Do not suppress the repeated message"; type empty; } container archive { description "Archive file information"; uses archive-object; } leaf explicit-priority { description "Include priority and facility in messages"; type empty; } container structured-data { presence "enable structured-data"; description "Log system message in structured format"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice format { case case_1 { leaf brief { description "Omit English-language text from end of logged message"; type empty; } } } } } list console { key name; description "Console logging"; leaf name { description "Facility type"; type enumeration { enum any { description "All facilities"; } enum authorization { description "Authorization system"; } enum daemon { description "Various system processes"; } enum ftp { description "FTP process"; } enum ntp { description "NTP process"; } enum security { description "Security related"; } enum kernel { description "Kernel"; } enum user { description "User processes"; } enum dfc { description "Dynamic flow capture"; } enum external { description "Local external applications"; } enum firewall { description "Firewall filtering system"; } enum pfe { description "Packet Forwarding Engine"; } enum conflict-log { description "Configuration conflict log"; } enum change-log { description "Configuration change log"; } enum interactive-commands { description "Commands executed by the UI"; } } } choice level { case case_1 { leaf any { description "All levels"; type empty; } } case case_2 { leaf emergency { description "Panic conditions"; type empty; } } case case_3 { leaf alert { description "Conditions that should be corrected immediately"; type empty; } } case case_4 { leaf critical { description "Critical conditions"; type empty; } } case case_5 { leaf error { description "Error conditions"; type empty; } } case case_6 { leaf warning { description "Warning messages"; type empty; } } case case_7 { leaf notice { description "Conditions that should be handled specially"; type empty; } } case case_8 { leaf info { description "Informational messages"; type empty; } } case case_9 { leaf none { description "No messages"; type empty; } } } } container time-format { presence "enable time-format"; description "Additional information to include in system log timestamp"; leaf year { description "Include year in timestamp"; type empty; } leaf millisecond { description "Include milliseconds in timestamp"; type empty; } } leaf source-address { description "Use specified address as source address"; type ipaddr; } leaf log-rotate-frequency { description "Rotate log frequency"; default "15"; units "minutes"; type uint32 { range "1 .. 59"; } } container server { presence "enable server"; description "Enable syslog server"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list routing-instances { key name; ordered-by user; description "Enable/disable syslog server in routing-instances"; leaf name { description "Routing instance name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container disable { presence "enable disable"; description "Disable syslog server in this routing instance"; } } } } container tracing { description "System wide option for remote tracing"; container destination-override { description "Override tracing destination"; container syslog { description "Send trace messages to remote syslog server"; leaf host { description "IPv4 address of remote syslog server"; type ipv4addr; mandatory true; } presence "enable syslog"; } } } leaf encrypt-configuration-files { description "Encrypt the router configuration files"; type empty; } leaf compress-configuration-files { description "Compress the router configuration files"; type empty; } leaf no-compress-configuration-files { description "Compress the router configuration files"; type empty; } leaf max-configurations-on-flash { description "Number of configuration files stored on flash"; default "3"; type uint32 { range "0 .. 49"; } } leaf max-configuration-rollbacks { description "Number of rollback configuration files"; default "49"; type uint32 { range "0 .. 49"; } } container archival { description "System archival management"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container configuration { description "Automatic configuration uploads to host(s)"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice transfer-method { case case_1 { leaf transfer-interval { description "Frequency at which file transfer happens"; units "minutes"; type uint32 { range "15 .. 2880"; } } } case case_2 { leaf transfer-on-commit { description "Transfer after each commit"; type empty; } } } list archive-sites { key name; ordered-by user; description "List of archive destinations"; leaf name { description "URLs to receive configuration files"; type string; } leaf password { description "Password for login into the archive site"; type unreadable; } } } } container extensions { presence "enable extensions"; description "Configuration for extensions to JUNOS"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list providers { key name; ordered-by user; description "(null)"; leaf name { description "(null)"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list license-type { key name; ordered-by user; description "(null)"; leaf name { description "Type of the license"; type string { } } leaf-list deployment-scope { description "(null)"; type string; } } } container resource-limits { description "Process resource limits"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list process { key name; ordered-by user; description "(null)"; leaf name { description "Process name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container resources { description "Resource limits"; uses resources-type; } } list package { key name; ordered-by user; description "(null)"; leaf name { description "Package name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container resources { description "Resource limits"; uses resources-type; } } } } container license { description "License information for the router"; uses license-object; } container proxy { description "Proxy information for the router"; uses proxy-object; } container commit { description "Configuration commit management"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf fast-synchronize { description "Parallelized commit synchronizing multiple routing-engines"; type empty; } leaf synchronize { description "Synchronize commit on both Routing Engines by default"; type empty; } leaf delta-export { description "Export only delta configuration during commit"; type empty; } container server { description "Commit server (batch commit)"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum-aggregate-pool { description "Maximum number of transactions to aggregate"; type uint32 { range "1 .. 4294967295"; } } leaf maximum-entries { description "Maximum number of transactions allowed in queue"; type uint32; } leaf commit-interval { description "Number of seconds between commits"; type uint32; } leaf days-to-keep-error-logs { description "Number of day to keep error log entries"; type uint32 { range "1 .. 366"; } } container traceoptions { description "Trace options for commit server"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf microsecond-stamp { description "Timestamp with microsecond granularity"; type empty; } } list flag { key name; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum all { description "Trace all operations"; } enum commit-server { description "Trace commit server"; } enum batch { description "Trace file batching"; } enum configuration { description "Reading of configuration"; } } } } } } leaf persist-groups-inheritance { description "Build configuration groups inheritance path"; type empty; } } container fips { description "FIPS configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf level { description "FIPS 140 level"; type int32 { range "0 .. 2"; } } container self-test { description "Configure FIPS self-test execution"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container periodic { description "Configure periodic FIPS self-test"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf start-time { description "Time when the periodic FIPS self-tests are to be executed (hh:mm)"; type string { } } leaf day-of-month { description "Day of the month when FIPS self-tests are to be executed"; type int32 { range "1 .. 31"; } } leaf month { description "The month when FIPS self-tests are to be executed"; type int32 { range "1 .. 12"; } } leaf day-of-week { description "Day of the week when the FIPS self-tests are to be executed (where 1 - Monday, 7 - Sunday)"; type int32 { range "1 .. 7"; } } } } } container configuration-database { description "Configuration database parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container virtual-memory-mapping { description "Virtual memory mapping configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list process { key name; ordered-by user; description "Per process configuration"; leaf name { description "Name of the process"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf fixed-size { description "Fixed memory mapped size"; units "kilobytes"; type uint32 { range "512 .. 696320"; } mandatory true; } leaf page-pooling-size { description "Page pooling memory mapped size"; units "kilobytes"; type uint32 { range "512 .. 696320"; } mandatory true; } leaf page-leak-debug { description "Page leak detection"; type empty; } } } leaf extend-size { description "Extend configuration database upto 1.5G"; type empty; } } container auto-configuration { presence "enable auto-configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Autoconfiguration trace options"; uses autoconf_traceoptions_type; } } container processes { description "Process control"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container routing { description "Routing process"; choice enable-disable { case case_1 { leaf disable { description "Disable routing process"; type empty; } } } leaf failover { description "How to handle failure of routing process"; type enumeration { enum other-routing-engine { description "On failure, switch mastership to other Routing Engine"; } enum alternate-media { description "On failure, reboot off alternate media"; } } } choice mode { case case_1 { leaf force-32-bit { description "Always use 32-bit mode"; type empty; } } case case_2 { leaf force-64-bit { description "Always use 64-bit mode"; type empty; } } case case_3 { leaf auto-64-bit { description "Use 64-bit mode if RE memory is sufficient"; type empty; } } } } container software-forwarding { description "Software forwarding process"; choice enable-disable { case case_1 { leaf disable { description "Disable software forwarding process"; type empty; } } } } container packet-forwarding-engine { description "Packet forwarding engine process"; choice enable-disable { case case_1 { leaf disable { description "Disable packet forwarding engine process"; type empty; } } } } container chassis-control { description "Chassis control process"; choice enable-disable { case case_1 { leaf disable { description "Disable chassis control process"; type empty; } } } leaf failover { description "How to handle failure of chassis control process"; type enumeration { enum alternate-media { description "On failing, reboot off alternate media"; } } } } container service-pics { description "Service PICs process"; choice enable-disable { case case_1 { leaf disable { description "Disable service PICs process"; type empty; } } } leaf failover { description "How to handle failure of service PICs process"; type enumeration { enum other-routing-engine { description "On failure, switch mastership to other Routing Engine"; } enum alternate-media { description "On failure, reboot off alternate media"; } } } } container ntp { description "Network time process"; choice enable-disable { case case_1 { leaf disable { description "Disable network time process"; type empty; } } } leaf failover { description "How to handle failure of network time process"; type enumeration { enum other-routing-engine { description "On failure, switch mastership to other Routing Engine"; } enum alternate-media { description "On failure, reboot off alternate media"; } } } } container watchdog { description "Watchdog timer"; choice enable-disable { case case_1 { leaf enable { description "Enable watchdog timer"; type empty; } } case case_2 { leaf disable { description "Disable watchdog timer"; type empty; } } } leaf timeout { description "Watchdog timer value"; units "seconds"; type uint32 { range "1 .. 3600"; } } } container process-monitor { description "Process health monitor process"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable Process health monitor process"; type empty; } } } container traceoptions { description "Process health monitor trace options"; uses pmond-traceoptions-type; } } container resource-cleanup { description "Resource cleanup process"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable Resource cleanup process"; type empty; } } } container traceoptions { description "Resource cleanup process trace options"; uses res-cleanupd-traceoptions-type; } } container routing-socket-proxy { description "Routing socket proxy process"; choice enable-disable { case case_1 { leaf disable { description "Disable routing socket proxy process"; type empty; } } } leaf failover { description "How to handle failure of routing socket proxy process"; type enumeration { enum other-routing-engine { description "On failure, switch mastership to other Routing Engine"; } enum alternate-media { description "On failure, reboot off alternate media"; } } } } container web-management { description "Web management process"; choice enable-disable { case case_1 { leaf disable { description "Disable web management process"; type empty; } } } leaf failover { description "How to handle failure of web management process"; type enumeration { enum other-routing-engine { description "On failure, switch mastership to other Routing Engine"; } enum alternate-media { description "On failure, reboot off alternate media"; } } } } container named-service { presence "enable named-service"; description "DNS server process"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable dns server process"; type empty; } } } leaf failover { description "How to handle failure of dns server process"; type enumeration { enum other-routing-engine { description "On failure, switch mastership to other Routing Engine"; } enum alternate-media { description "On failure, reboot off alternate media"; } } } } container cfm { description "Ethernet OAM connectivity fault management process"; choice enable-disable { case case_1 { leaf disable { description "Disable CFM process"; type empty; } } } } container general-authentication-service { description "General authentication service process"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable general-authentication service process"; type empty; } } } container traceoptions { description "General authentication service trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum configuration { description "Trace configuration events"; } enum framework { description "Trace authentication framework events"; } enum radius { description "Trace radius authentication events"; } enum local-authentication { description "Trace local authentication events"; } enum ldap { description "Trace ldap authentication events"; } enum address-assignment { description "Trace address-assignment events"; } enum jsrc { description "Trace jsrc events"; } enum gx-plus { description "Trace gx-plus events"; } enum session-db { description "Trace session DB events"; } enum profile-db { description "Trace profile DB events"; } enum lib-stats { description "Trace lib stats events"; } enum user-access { description "Trace subscriber events"; } enum all { description "Trace everything"; } } } } } } container dhcp-service { description "Dynamic Host Configuration Protocol general configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable dhcp service process"; type empty; } } } leaf failover { description "How to handle failure of dhcp service process"; type enumeration { enum other-routing-engine { description "On failure, switch mastership to other Routing Engine"; } enum alternate-media { description "On failure, reboot off alternate media"; } } } container traceoptions { description "Trace options for DHCP"; uses jdhcp-traceoptions-level-type; } container interface-traceoptions { description "Interface trace options for DHCP"; uses jdhcp-interface-traceoptions-level-type; } container dhcp-snooping-file { description "DHCP snooping persistence file, write-interval and timeout"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf location { description "Location of DHCP snooping entries file"; type filename; mandatory true; } presence "enable dhcp-snooping-file"; leaf write-interval { description "Time interval for writing DHCP snooping entries"; units "seconds"; type uint32 { range "60 .. 86400"; } mandatory true; } } container dhcpv6-snooping-file { description "DHCPv6 snooping persistence file and write-interval timeout"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf location { description "Location of DHCPv6 snooping entries file"; type filename; mandatory true; } presence "enable dhcpv6-snooping-file"; leaf write-interval { description "Time interval in seconds for writing DHCPv6 snooping entries"; units "seconds"; type uint32 { range "60 .. 86400"; } mandatory true; } } container ltv-syslog-interval { description "Lease time violation syslog interval"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf syslog-interval { description "Syslog interval in secs"; units "seconds"; type uint32 { range "600 .. 86400"; } } } } container diameter-service { description "Diameter process"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable diameter process"; type empty; } } } container traceoptions { description "Diameter service trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Aread to enabe debugging output"; leaf name { description "(null)"; type enumeration { enum framework { description "Trace Diameter framework"; } enum configuration { description "Trace configuration events"; } enum memory-management { description "Trace memory management events"; } enum daemon { description "Trace daemon level events"; } enum application { description "Trace Diameter application interface"; } enum node { description "Trace Diameter node events"; } enum diameter-instance { description "Trace Diameter instance events"; } enum dne { description "Trace Diameter DNE events"; } enum peer { description "Trace Diameter peer events"; } enum messages { description "Trace Diameter messages"; } enum all { description "Trace everything"; } } } } } } container mac-validation { description "Process mac validation process"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable Process mac validation process"; type empty; } } } container traceoptions { description "Process mac validation trace options"; uses jsavald-traceoptions-type; } } container sbc-configuration-process { description "SBC configuration process"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable SBC configuration process"; type empty; } } } leaf failover { description "How to handle failure of SBC configuration process"; type enumeration { enum other-routing-engine { description "On failure, switch mastership to other Routing Engine"; } enum alternate-media { description "On failure, reboot off alternate media"; } } } container traceoptions { description "SBC configuration process trace options"; uses sbc_traceoptions; } } container sdk-service { description "SDK Service Daemon"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable SDK Service Daemon"; type empty; } } } container traceoptions { description "SDK Service Daemon trace options"; uses ssd-traceoptions-type; } } container app-engine-virtual-machine-management-service { description "App-engine Virtual Machine Management"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable SDK Virtual Machine Management Daemon"; type empty; } } } container traceoptions { description "App-engine virtual machine management trace options"; uses sdk-vmmd-traceoptions-type; } } container app-engine-management-service { description "App-engine Management Daemon"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable SDK Management Daemon"; type empty; } } } container traceoptions { description "App-engine management daemon trace options"; uses sdk-mgmtd-traceoptions-type; } } container datapath-trace-service { description "Datapath Trace process"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable Datapath Trace process"; type empty; } } } container traceoptions { description "DATAPATH Trace process trace options"; uses datapath-traced-traceoptions-type; } } container send { description "Secure Neighbor Discovery Protocol process"; choice enable-disable { case case_1 { leaf disable { description "Disable SEND process"; type empty; } } } } container static-subscribers { description "Static subscribers process"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable static-subscribers process"; type empty; } } } container traceoptions { description "Trace options for Static Subscriber Client"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Operations to include in debugging trace"; leaf name { description "(null)"; type enumeration { enum configuration { description "Configuration operations"; } enum database { description "Database operations"; } enum general { description "Miscellaneous operations"; } enum rtsock { description "Routing socket operations"; } enum statistics { description "Statistics operations"; } enum subscriber { description "Subscriber operations"; } enum gres { description "GRES operations"; } enum authentication { description "Authentication operations"; } enum profile { description "Dynamic Profile operations"; } enum all { description "All operations"; } } } } } } container kernel-offload-service { description "Kernel offload Service"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable Kernel Offload Service"; type empty; } } } container traceoptions { description "Kernel offload service trace options"; uses kod-trace-type; } } list daemon-process { key name; ordered-by user; description "(null)"; uses daemon-process; } container video-monitoring { description "Video Monitoring Process"; choice enable-disable { case case_1 { leaf disable { description "Disable video monitoring process"; type empty; } } } container traceoptions { description "Trace options for VMOND"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } } } container mag-service { description "Intra-Chassis MAG Communication process"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable MAG Service Process"; type empty; } } } container traceoptions { description "Jived trace options"; uses jived-traceoptions-type; } } } container ddos-protection { description "Configure DDOS process"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "DDOS trace options"; uses ddos-traceoptions-type; } container global { description "DDOS global configurations"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-routing-engine { description "Disable Routing Engine policing for all protocols"; type empty; } leaf disable-fpc { description "Disable FPC policing for all protocols"; type empty; } leaf disable-logging { description "Disable event logging for all protocols"; type empty; } leaf flow-detection { description "Enable flow detection for all protocols"; type empty; } leaf violation-report-rate { description "Set the rate of reporting protocol violations for all FPC's"; units "reports per second"; type uint32 { range "1 .. 50000"; } } leaf flow-report-rate { description "Set the rate of reporting flows for all FPC's"; units "reports per second"; type uint32 { range "1 .. 50000"; } } } container protocols { description "DDOS protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container resolve { description "Configure resolve traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all resolve traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } container other { description "Configure all other unclassified resolve packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container ucast-v4 { description "Configure ipv4 unicast resolve packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container mcast-v4 { description "Configure ipv4 multicast resolve packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container ucast-v6 { description "Configure ipv6 unicast resolve packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container mcast-v6 { description "Configure ipv6 multicast resolve packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } } container filter-action { description "Configure filter action traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all filter action traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } container other { description "Configure non v4/v6 firewall action packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container filter-v4 { description "Configure v4 filter action packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container filter-v6 { description "Configure v6 filter action packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } } container dynamic-vlan { description "Configure dynamic vlan exceptions"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all dynamic vlan exceptions"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container ppp { description "Configure PPP control traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all PPP control traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } container unclassified { description "Configure unclassified PPP control traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container lcp { description "Configure Link Control Protocol"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container authentication { description "Configure Authentication Protocol"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container ipcp { description "Configure IP Control Protocol"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container ipv6cp { description "Configure IPv6 Control Protocol"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container mplscp { description "Configure MPLS Control Protocol"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container isis { description "Configure ISIS Protocol"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container echo-req { description "Configure LCP Echo Request"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container echo-rep { description "Configure LCP Echo Reply"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container mlppp-lcp { description "Configure MLPPP LCP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } } container pppoe { description "Configure PPPoE control traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all PPPoE control traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } container padi { description "Configure PPPoE PADI"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container pado { description "Configure PPPoE PADO"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container padr { description "Configure PPPoE PADR"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container pads { description "Configure PPPoE PADS"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container padt { description "Configure PPPoE PADT"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container padm { description "Configure PPPoE PADM"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container padn { description "Configure PPPoE PADN"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } } container dhcpv4 { description "Configure DHCPv4 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all DHCPv4 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } container unclassified { description "Configure unclassified DHCPv4 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container discover { description "Configure DHCPv4 DHCPDISCOVER"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container offer { description "Configure DHCPv4 DHCPOFFER"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container request { description "Configure DHCPv4 DHCPREQUEST"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container decline { description "Configure DHCPv4 DHCPDECLINE"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container ack { description "Configure DHCPv4 DHCPACK"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container nak { description "Configure DHCPv4 DHCPNAK"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container release { description "Configure DHCPv4 DHCPRELEASE"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container inform { description "Configure DHCPv4 DHCPINFORM"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container renew { description "Configure DHCPv4 DHCPRENEW"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container force-renew { description "Configure DHCPv4 DHCPFORCERENEW"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container lease-query { description "Configure DHCPv4 DHCPLEASEQUERY"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container lease-unassigned { description "Configure DHCPv4 DHCPLEASEUNASSIGNED"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container lease-unknown { description "Configure DHCPv4 DHCPLEASEUNKOWN"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container lease-active { description "Configure DHCPv4 DHCPLEASEACTIVE"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container bootp { description "Configure DHCPv4 DHCPBOOTP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container no-message-type { description "Configure DHCPv4 traffic with missing message type"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container bad-packets { description "Configure DHCPv4 traffic with bad format"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } } container dhcpv6 { description "Configure DHCPv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all DHCPv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } container unclassified { description "Configure unclassified DHCPv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container solicit { description "Configure DHCPv6 SOLICIT"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container advertise { description "Configure DHCPv6 ADVERTISE"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container request { description "Configure DHCPv6 REQUEST"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container confirm { description "Configure DHCPv6 CONFIRM"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container renew { description "Configure DHCPv6 RENEW"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container rebind { description "Configure DHCPv6 REBIND"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container reply { description "Configure DHCPv6 REPLY"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container release { description "Configure DHCPv6 RELEASE"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container decline { description "Configure DHCPv6 DECLINE"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container reconfigure { description "Configure DHCPv6 RECONFIGURE"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container information-request { description "Configure DHCPv6 INFORMATION-REQUEST"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container relay-forward { description "Configure DHCPv6 RELAY-FORW"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container relay-reply { description "Configure DHCPv6 RELAY-REPL"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container leasequery { description "Configure DHCPv6 LEASEQUERY"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container leasequery-reply { description "Configure DHCPv6 LEASEQUERY-REPLY"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container leasequery-done { description "Configure DHCPv6 LEASEQUERY-DONE"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container leasequery-data { description "Configure DHCPv6 LEASEQUERY-DATA"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } } container virtual-chassis { description "Configure virtual chassis traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all virtual chassis traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } container unclassified { description "Configure unclassified virtual chassis traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container control-high { description "Configure high priority control traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container control-low { description "Configure low priority control traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container vc-packets { description "Configure all exception packets on vc link"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container vc-ttl-errors { description "Configure ttl errors"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } } container icmp { description "Configure ICMP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all ICMP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container igmp { description "Configure IGMP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all IGMP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container ospf { description "Configure OSPF traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all OSPF traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container rsvp { description "Configure RSVP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all RSVP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container pim { description "Configure PIM traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all PIM traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container rip { description "Configure RIP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all RIP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container ptp { description "Configure PTP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all PTP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container bfd { description "Configure BFD traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all BFD traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container lmp { description "Configure LMP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all LMP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container ldp { description "Configure LDP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all LDP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container msdp { description "Configure MSDP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all MSDP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container bgp { description "Configure BGP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all BGP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container vrrp { description "Configure VRRP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all VRRP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container telnet { description "Configure telnet traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all telnet traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container ftp { description "Configure FTP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all FTP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container ssh { description "Configure SSH traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all SSH traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container snmp { description "Configure SNMP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all SNMP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container ancp { description "Configure ANCP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all ANCP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container igmpv6 { description "Configure IGMPv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all IGMPv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container egpv6 { description "Configure EGPv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all EGPv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container rsvpv6 { description "Configure RSVPv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all RSVPv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container igmpv4v6 { description "Configure IGMPv4-v6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all IGMPv4-v6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container ripv6 { description "Configure RIPv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all RIPv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container bfdv6 { description "Configure BFDv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all BFDv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container lmpv6 { description "Configure LMPv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all LMPv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container ldpv6 { description "Configure LDPv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all LDPv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container msdpv6 { description "Configure MSDPv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all MSDPv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container bgpv6 { description "Configure BGPv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all BGPv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container vrrpv6 { description "Configure VRRPv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all VRRPv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container telnetv6 { description "Configure telnet-v6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all telnet-v6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container ftpv6 { description "Configure FTPv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all FTPv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container sshv6 { description "Configure SSHv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all SSHv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container snmpv6 { description "Configure SNMPv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all SNMPv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container ancpv6 { description "Configure ANCPv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all ANCPv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container ospfv3v6 { description "Configure OSPFv3v6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all OSPFv3v6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container lacp { description "Configure LACP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all LACP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container stp { description "Configure STP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all STP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container esmc { description "Configure ESMC traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all ESMC traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container oam-lfm { description "Configure OAM-LFM traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all OAM-LFM traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container eoam { description "Configure EOAM traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all EOAM traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container lldp { description "Configure LLDP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all LLDP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container mvrp { description "Configure MVRP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all MVRP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container pmvrp { description "Configure PMVRP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all PMVRP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container arp { description "Configure ARP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all ARP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container pvstp { description "Configure PVSTP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all PVSTP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container isis { description "Configure ISIS traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all ISIS traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container pos { description "Configure POS traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all POS traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container mlp { description "Configure MLP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all MLP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } container unclassified { description "Configure unclassified MLP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container lookup { description "Configure MLP lookup request"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container add { description "Configure MLP add request"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container delete { description "Configure MLP delete request"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } } container jfm { description "Configure JFM traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all JFM traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container atm { description "Configure ATM traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all ATM traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container pfe-alive { description "Configure pfe alive traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all pfe alive traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container ttl { description "Configure ttl traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all ttl traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container ip-options { description "Configure ip options traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all ip options traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } container unclassified { description "Configure Unclassified options traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container router-alert { description "Configure Router alert options traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container non-v4v6 { description "Configure Non IPv4/v6 options traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } } container redirect { description "Configure packets to trigger ICMP redirect"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all packets to trigger ICMP redirect"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container mac-host { description "Configure L2-MAC configured 'send-to-host'"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all L2-MAC configured 'send-to-host'"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container tunnel-fragment { description "Configure tunnel fragment"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all tunnel fragment"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container mcast-snoop { description "Configure snooped multicast control traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all snooped multicast control traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } container unclassified { description "Configure unclassified snooped multicast control traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container igmp { description "Configure snooped igmp traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container pim { description "Configure snooped pim traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } } container services { description "Configure services"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all services"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } container packet { description "Configure Service packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container bsdt { description "Configure Test packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } } container demux-autosense { description "Configure demux autosense traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all demux autosense traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container reject { description "Configure packets via 'reject' action"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all packets via 'reject' action"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container tcp-flags { description "Configure packets with tcp flags"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all packets with tcp flags"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } container unclassified { description "Configure TCP packets with other tcp flags"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container initial { description "Configure First packets of TCP connections (SYN & !ACK)"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container established { description "Configure Non-first packets of TCP connections (ACK | RST)"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } } container dtcp { description "Configure dtcp traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all dtcp traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container radius { description "Configure Radius traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all Radius traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } container server { description "Configure Radius server traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container accounting { description "Configure Radius accounting traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container authorization { description "Configure Radius authorization traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } } container ntp { description "Configure NTP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all NTP traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container tacacs { description "Configure TACACS traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all TACACS traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container dns { description "Configure DNS traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all DNS traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container diameter { description "Configure Diameter/Gx+ traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all Diameter/Gx+ traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container ip-fragments { description "Configure IP-Fragments"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all IP-Fragments"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } container first-fragment { description "Configure First IP fragment"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container trail-fragment { description "Configure Trailing IP fragment"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } } container l2tp { description "Configure l2tp traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all l2tp traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } container unclassified { description "Configure unclassified l2tp control traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container sccrq { description "Configure l2tp SCCRQ"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container sccrp { description "Configure l2tp SCCRP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container scccn { description "Configure l2tp SCCCN"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container stopccn { description "Configure l2tp STOPCCN"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container hello { description "Configure l2tp HELLO"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container icrq { description "Configure l2tp ICRQ"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container icrp { description "Configure l2tp ICRP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container iccn { description "Configure l2tp ICCN"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container cdn { description "Configure l2tp CDN"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } } container gre { description "Configure GRE traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all GRE traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container pimv6 { description "Configure PIMv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all PIMv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container icmpv6 { description "Configure ICMPv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all ICMPv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container ndpv6 { description "Configure NDPv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all NDPv6 traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container sample { description "Configure sampled traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all sampled traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } container syslog { description "Configure Syslog sample traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container host { description "Configure Host sample traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container pfe { description "Configure PFE sample traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container tap { description "Configure Tap sample traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container sflow { description "Configure Sflow sample traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } } container fab-probe { description "Configure fab out probe packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all fab out probe packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container unclassified { description "Configure unclassified host-bound traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all unclassified host-bound traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } container other { description "Configure all other unclassified packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container control-v4 { description "Configure unclassified v4 control packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container control-v6 { description "Configure unclassified v6 control packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container host-route-v4 { description "Configure unclassified v4 routing protocol and host packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container host-route-v6 { description "Configure unclassified v6 routing protocol and host packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container control-layer2 { description "Configure unclassified layer2 control packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container fw-host { description "Configure Unclassified send to host fw traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container mcast-copy { description "Configure Unclassified host copy due to multicast routing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } } container rejectv6 { description "Configure packets via 'rejectv6' action"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all packets via 'rejectv6' action"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container l2pt { description "Configure Layer 2 protocol tunneling"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all Layer 2 protocol tunneling"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container tunnel-ka { description "Configure tunnel keepalive packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all tunnel keepalive packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container inline-ka { description "Configure inline keepalive packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all inline keepalive packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container inline-svcs { description "Configure inline services"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all inline services"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container frame-relay { description "Configure frame relay control packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all frame relay control packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } container frf15 { description "Configure Multilink frame relay FRF.15 ctrl packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } container frf16 { description "Configure Multilink frame relay FRF.16 ctrl packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } leaf bypass-aggregate { description "Bypass aggregate policer"; type empty; } leaf priority { description "Priority"; type enumeration { enum high { description "High priority"; } enum medium { description "Medium priority"; } enum low { description "Low priority"; } } } } } container amtv4 { description "Configure AMT v4 control packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all AMT v4 control packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container amtv6 { description "Configure AMT v6 control packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all AMT v6 control packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } container syslog { description "Configure syslog traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container aggregate { description "Configure aggregate for all syslog traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bandwidth { description "Policer bandwidth"; units "packets per second"; type uint32 { range "1 .. 100000"; } } leaf burst { description "Policer burst size"; units "packets"; type uint32 { range "1 .. 100000"; } } leaf recover-time { description "Time for protocol to return to normal"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf disable-routing-engine { description "Turn off policing on routing engine"; type empty; } leaf disable-fpc { description "Turn off policing on all fpc's"; type empty; } leaf disable-logging { description "Disable event logging for protocol violation"; type empty; } leaf flow-detection-mode { description "Flow detection mode for the packet type"; type enumeration { enum automatic { description "Detect flows only when the policer is violated"; } enum on { description "Always detect flows for this packet type"; } enum off { description "Disable flow detection"; } } } container flow-level-bandwidth { description "Bandwidth for flows at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Bandwidth for subscriber flows"; units "packets per second"; type uint32 { range "1 .. 10000"; } } leaf logical-interface { description "Bandwidth for logical interface flows"; units "packets per second"; type uint32 { range "1 .. 30000"; } } leaf physical-interface { description "Bandwidth for physical interface flows"; units "packets per second"; type uint32 { range "1 .. 50000"; } } } container flow-level-detection { description "Specify detection mode at various levels"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify detection mode at subscriber level"; type enumeration { enum automatic { description "Detect flows at subscriber level if needed"; } enum on { description "Always detect flows at subscriber level"; } enum off { description "Do not detect flows at subscriber level"; } } } leaf logical-interface { description "Specify detection mode at logical-interface level"; type enumeration { enum automatic { description "Detect flows at logical-interface level if needed"; } enum on { description "Always detect flows at logical-interface level"; } enum off { description "Do not detect flows at logical-interface level"; } } } leaf physical-interface { description "Specify detection mode at physical-interface level"; type enumeration { enum automatic { description "Detect flows at physical-interface level if needed"; } enum on { description "Always detect flows at physical-interface level"; } enum off { description "Do not detect flows at physical-interface level"; } } } } container flow-level-control { description "Specify how discovered flows are controlled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf subscriber { description "Specify how subscriber flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf logical-interface { description "Specify how logical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } leaf physical-interface { description "Specify how physical-interface flows are controlled"; type enumeration { enum drop { description "Drop all traffic of flows of this level"; } enum keep { description "Keep all traffic of flows of this level"; } enum police { description "Police flows to within the bandwidth of this level"; } } } } leaf no-flow-logging { description "Disable logging of violating flows"; type empty; } leaf timeout-active-flows { description "Allow timeout active violating flows"; type empty; } leaf flow-detect-time { description "Time to determine a flow is bad"; units "seconds"; type uint32 { range "1 .. 60"; } } leaf flow-recover-time { description "Time to return to normal after last violation"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf flow-timeout-time { description "Time to timeout the flow since found"; units "seconds"; type uint32 { range "1 .. 7200"; } } list fpc { key name; ordered-by user; description "Flexible PIC Concentrator parameters"; leaf name { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf disable-fpc { description "Turn off policing on this slot"; type empty; } leaf bandwidth-scale { description "Bandwidth scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } leaf burst-scale { description "Burst scale from 1% to 100%"; units "percent"; type uint32 { range "1 .. 100"; } } } } } } } container packet-triggered-subscribers-partition { description "Packet Triggered Subscribers partition configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf partition-name { description "Packet Triggered Subscribers partition name"; type string { length "1 .. 63"; } } list partition { key name; ordered-by user; description "(null)"; leaf name { description "Packet Triggered Subscribers partition name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list service-set { description "List of service-set name"; type string; } leaf-list service-set-prefix { description "List of service-set prefix name"; type string; } } leaf-list exclude-service-set { description "List of service-set name"; type string; } } container ntp { presence "enable ntp"; description "Network Time Protocol services"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf boot-server { description "Server to query during boot sequence"; type ipaddr; } list authentication-key { key name; ordered-by user; description "Authentication key information"; leaf name { description "Authentication key number"; type uint32; } leaf type { description "Authentication key type"; type enumeration { enum md5 { description "MD5 authentication key"; } } mandatory true; } leaf value { description "Authentication key value"; type unreadable; mandatory true; } } list peer { key name; ordered-by user; description "Peer parameters"; leaf name { description "Name or address of peer"; type ipaddr; } leaf key { description "Authentication key"; type uint32; } leaf version { description "NTP version to use"; type uint32 { range "1 .. 4"; } } leaf prefer { description "Prefer this peer_serv"; type empty; } } list server { key name; ordered-by user; description "Server parameters"; leaf name { description "Name or address of server"; type hostname; } leaf key { description "Authentication key"; type uint32; } leaf version { description "NTP version to use"; type uint32 { range "1 .. 4"; } } leaf prefer { description "Prefer this peer_serv"; type empty; } } list broadcast { key name; ordered-by user; description "Broadcast parameters"; leaf name { description "Broadcast or multicast address to use"; type ipaddr; } leaf routing-instance-name { description "Routing intance name in which interface has address in broadcast subnet"; type string { } } leaf key { description "Authentication key"; type uint32; } leaf version { description "NTP version to use"; type uint32 { range "1 .. 4"; } } leaf ttl { description "TTL value to transmit"; type uint32 { range "1 .. 255"; } } } leaf broadcast-client { description "Listen to broadcast NTP"; type empty; } container multicast-client { presence "enable multicast-client"; description "Listen to multicast NTP"; leaf address { description "Multicast address to listen to"; type ipaddr; } } leaf-list trusted-key { description "List of trusted authentication keys"; type uint32; } list source-address { key name; ordered-by user; description "Source-Address parameters"; leaf name { description "Use specified address as source address"; type ipaddr; } leaf-list routing-instance { description "Routing intance name in which source address is defined"; type string; } } } } grouping authentication-object { description "Authentication method"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf plain-text-password-value { description "Plain text password"; type string; } leaf encrypted-password { description "Encrypted password string"; type string { length "1 .. 128"; } } leaf no-public-keys { description "Disables ssh public key based authentication"; type empty; } list ssh-rsa { key name; ordered-by user; description "Secure shell (ssh) RSA public key string"; leaf name { description "Secure shell (ssh) RSA public key string"; type string { } } leaf from { description "Pattern-list of allowed hosts"; type string { } } } list ssh-dsa { key name; ordered-by user; description "Secure shell (ssh) DSA public key string"; leaf name { description "Secure shell (ssh) DSA public key string"; type string { } } leaf from { description "Pattern-list of allowed hosts"; type string { } } } list ssh-ecdsa { key name; ordered-by user; description "Secure shell (ssh) ECDSA public key string"; leaf name { description "Secure shell (ssh) ECDSA public key string"; type string { } } leaf from { description "Pattern-list of allowed hosts"; type string { } } } list ssh-ed25519 { key name; ordered-by user; description "Secure shell (ssh) ED25519 public key string"; leaf name { description "Secure shell (ssh) EC25519 public key string"; type string { } } leaf from { description "Pattern-list of allowed hosts"; type string { } } } } grouping autoconf_traceoptions_type { description "Trace options for autoconfiguration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Area of autoconfiguration to enable debugging output"; leaf name { description "(null)"; type enumeration { enum configuration { description "Trace configuration"; } enum interfaces { description "Trace interface database"; } enum io { description "Trace interface database"; } enum rtsock { description "Trace routing socket"; } enum ui { description "Trace user interface"; } enum auth { description "Trace VLAN authentication"; } enum all { description "Trace all areas"; } } } } } grouping bdbrepd-type { description "Database replication configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Database replication trace options"; uses bdbrepd-traceoptions-type; } } grouping bdbrepd-traceoptions-type { description "Trace options for Database replication"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Database replication operations to include in debugging trace"; leaf name { description "(null)"; type enumeration { enum database { description "Database operations"; } enum mirror { description "Mirror operations"; } enum replication { description "Database replication operations"; } enum ui { description "User Interface operations"; } enum general { description "Miscellaneous operations"; } enum session-db { description "Session database operations"; } enum server { description "Server operations"; } enum all { description "All operations"; } } } } } grouping daemon-process { leaf name { description "(null)"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable process"; type empty; } } } leaf failover { description "How to handle failure of parameter"; type enumeration { enum other-routing-engine { description "On failing, switch mastership to other routing engine"; } enum alternate-media { description "On failing, reboot off alternate media"; } } } leaf command { description "Path to binary for process"; type string { length "1 .. 1024"; } } } grouping datapath-traced-traceoptions-type { description "Trace options for DATAPATH-TRACED"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Area of DATAPATH Trace process to enable debugging output"; leaf name { description "(null)"; type enumeration { enum datapath-traced-infrastructure { description "Trace datapath-traced infrastructure code"; } enum datapath-traced-server { description "Trace datapath-traced server functionality code"; } enum client-management { description "Trace datapath-traced client management code"; } enum all { description "Trace all areas of datapath-traced code"; } } } } } grouping ddos-traceoptions-type { description "Trace options for DDOS process"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Area of DDOS process to enable debugging output"; leaf name { description "(null)"; type enumeration { enum config { description "Trace configuration code"; } enum events { description "Trace event code"; } enum gres { description "Trace GRES code"; } enum init { description "Trace initialization code"; } enum memory { description "Trace memory management code"; } enum protocol { description "Trace DDOS protocol processing code"; } enum rtsock { description "Trace routing socket code"; } enum signal { description "Trace signal handling code"; } enum state { description "Trace state handling code"; } enum timer { description "Trace timer code"; } enum ui { description "Trace user interface code"; } enum ipc { description "Trace ipc messages"; } enum socket { description "Trace socket messages"; } enum all { description "Trace all areas of code"; } } } } } grouping dhcp-traceoptions-type { description "Trace options for DHCP server"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Area of DHCP server process to enable debugging output"; leaf name { description "(null)"; type enumeration { enum binding { description "Trace bindings code"; } enum config { description "Trace configuration code"; } enum conflict { description "Trace conflict detection code"; } enum event { description "Trace event code"; } enum ifdb { description "Trace interface database code"; } enum io { description "Trace I/O code"; } enum lease { description "Trace lease code"; } enum main { description "Trace main loop code"; } enum misc { description "Trace miscellaneous code"; } enum option { description "Trace option code"; } enum packet { description "Trace packet code"; } enum pool { description "Trace pool code"; } enum protocol { description "Trace protocol code"; } enum relay { description "Trace relay code"; } enum rtsock { description "Trace routing socket code"; } enum scope { description "Trace scope code"; } enum signal { description "Trace signal code"; } enum trace { description "Trace tracing code"; } enum ui { description "Trace user interface code"; } enum all { description "Trace all areas of code"; } } } } } grouping dynamic-profile-option-object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf versioning { description "Enable dynamic profile versioning"; type empty; mandatory true; } } grouping jdhcp-interface-traceoptions-level-type { description "Interface trace options for DHCP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Interface trace categories"; leaf name { description "(null)"; type enumeration { enum state { description "State-transition operations"; } enum packet { description "Packet-decoding operations"; } enum all { description "All operations"; } } } } } grouping jdhcp-traceoptions-level-type { description "Trace options for DHCP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "DHCP operations to include in debugging trace"; leaf name { description "(null)"; type enumeration { enum state { description "State-transition operations"; } enum packet { description "Packet-decoding operations"; } enum all { description "All operations"; } enum database { description "Database operations"; } enum interface { description "Interface operations"; } enum rtsock { description "Routing socket operations"; } enum io { description "I/O operations"; } enum ha { description "High Availability-related operations"; } enum ui { description "User Interface operations"; } enum general { description "Miscellaneous operations"; } enum fwd { description "Firewall process operations"; } enum rpd { description "Routing Protocol process operations"; } enum auth { description "Authentication operations"; } enum profile { description "Profile operations"; } enum session-db { description "Session database operations"; } enum performance { description "Performance measurement operations"; } enum statistics { description "Baseline statistics operations"; } enum liveness-detection { description "Liveness detection operations"; } enum security-persistence { description "Liveness detection operations"; } } } } } grouping jived-traceoptions-type { description "Trace options for process jived"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Area of jived to enable debugging output"; leaf name { description "(null)"; type enumeration { enum error { description "Trace all errors"; } enum warning { description "Trace all info"; } enum debug { description "Trace all debug messages"; } enum detail { description "Trace progress in detail"; } enum all { description "Trace all areas of code"; } } } } } grouping jptspd-traceoptions-type { description "Trace options for Packet Triggered Subscribers"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Operations to include in debugging trace"; leaf name { description "(null)"; type enumeration { enum configuration { description "Configuration operations"; } enum general { description "Miscellaneous operations"; } enum rtsock { description "Routing socket operations"; } enum peer { description "Trace SRC peer events"; } enum pic { description "Trace PIC events"; } enum radius { description "Trace radius passive server"; } enum session { description "Trace session events"; } enum all { description "All operations"; } } } } } grouping jsavald-traceoptions-type { description "Trace options for process mac validation"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Area of process mac validation to enable debugging output"; leaf name { description "(null)"; type enumeration { enum rtsock { description "Trace routing socket operations"; } enum general { description "Trace miscellaneous operations"; } enum firewall { description "Trace firewall (DFWD) operations"; } enum database { description "Trace mac validation database operations"; } enum all { description "Trace all areas of code"; } } } } } grouping juniper-unified-edge-cos-options { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list classifier-profiles { key name; ordered-by user; description "Classifier tables for mobile subscribers (UMTS/EPS)"; max-elements 8001; leaf name { description "Classification table name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf description { description "Text description of classifier profile"; type string; } list qos-class-identifier { key name; ordered-by user; description "QCI mapping to forwarding class and loss priority"; leaf name { description "Qci value"; type uint32 { range "1 .. 9"; } } leaf forwarding-class { description "Forwarding class"; type string { } mandatory true; } leaf loss-priority { description "Loss priority value"; type enumeration { enum low { description "Loss priority low"; } enum high { description "Loss priority high"; } } mandatory true; } } } list gbr-bandwidth-pools { key name; ordered-by user; description "GBR bandwith pools configuration"; max-elements 8001; leaf name { description "GBR Bandwidth pool name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum-bandwidth { description "Bandwidth for pool"; units "mega-bits per second"; type uint32 { range "50000 .. 500000"; } mandatory true; } leaf downgrade-gtp-v1-gbr-bearers { description "Downgrade GTPv1 GBR bearer traffic class to background traffic class"; type empty; } } list resource-threshold-profiles { key name; ordered-by user; description "Resource threshold profiles"; max-elements 8001; leaf name { description "Resource threshold profile name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf description { description "Text description of resource threshold profile"; type string; } container bearers-load { description "Number of bearers load configurations"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container low { description "Low threshold configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf percentage { description "Low threshold"; units "Percentage"; type uint32 { range "1 .. 100"; } mandatory true; } presence "enable low"; leaf priority-level { description "Priority level - default 10"; default "10"; type uint32 { range "1 .. 15"; } } } container high { description "High threshold configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf percentage { description "High threshold"; units "Percentage"; type uint32 { range "1 .. 100"; } mandatory true; } presence "enable high"; leaf priority-level { description "Priority level - default 5"; default "5"; type uint32 { range "1 .. 15"; } } } } container memory { description "Memory load configurations"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container low { description "Low threshold configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf percentage { description "Low threshold"; units "Percentage"; type uint32 { range "1 .. 100"; } mandatory true; } presence "enable low"; leaf priority-level { description "Priority level - default 10"; default "10"; type uint32 { range "1 .. 15"; } } } container high { description "High threshold configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf percentage { description "High threshold"; units "Percentage"; type uint32 { range "1 .. 100"; } mandatory true; } presence "enable high"; leaf priority-level { description "Priority level - default 5"; default "5"; type uint32 { range "1 .. 15"; } } } } container cpu { description "CPU load configurations"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container low { description "Low threshold configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf percentage { description "Low threshold"; units "Percentage"; type uint32 { range "1 .. 100"; } mandatory true; } presence "enable low"; leaf priority-level { description "Priority level - default 10"; default "10"; type uint32 { range "1 .. 15"; } } } container high { description "High threshold configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf percentage { description "High threshold"; units "Percentage"; type uint32 { range "1 .. 100"; } mandatory true; } presence "enable high"; leaf priority-level { description "Priority level - default 5"; default "5"; type uint32 { range "1 .. 15"; } } } } } list cos-policy-profiles { key name; ordered-by user; description "QoS policy profile"; max-elements 8001; leaf name { description "QoS policy profile name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf description { description "Text description of cos policy"; type string; } container default-bearer-qci { description "Default bearer qci value"; leaf qci-value { description "Default bearer qci value"; type uint8 { range "5 .. 9"; } mandatory true; } presence "enable default-bearer-qci"; leaf upgrade { description "Override qci value"; type empty; } leaf reject { description "Reject calls with numerially lower qci"; type empty; } } container allocation-retention-priority { description "ARP local policy"; leaf priority-value { description "ARP policy configuration"; type uint8 { range "1 .. 15"; } } leaf reject { description "Reject calls with higher priority value"; type empty; } } container aggregated-qos-control { description "Aggregated qos control policy"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container maximum-bit-rate-uplink { description "Maximum bit rate uplink"; leaf mbr-uplink { description "(null)"; units "kbps"; type uint32 { range "1 .. 1000000"; } mandatory true; } presence "enable maximum-bit-rate-uplink"; leaf upgrade { description "Override maximum-bit-rate uplink value"; type empty; } leaf reject { description "Reject calls with higher uplink maximum-bit-rate"; type empty; } } container maximum-bit-rate-downlink { description "Maximum bit rate downlink"; leaf mbr-downlink { description "(null)"; units "kbps"; type uint32 { range "1 .. 1000000"; } mandatory true; } presence "enable maximum-bit-rate-downlink"; leaf upgrade { description "Override maximum-bit-rate downlink value"; type empty; } leaf reject { description "Reject calls with higher downlink maximum-bit-rate"; type empty; } } } container pdp-qos-control { description "PDP qos control"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container maximum-bit-rate-uplink { description "Maximum bit rate uplink"; leaf mbr-uplink { description "(null)"; units "kbps"; type uint32 { range "1 .. 256000"; } mandatory true; } presence "enable maximum-bit-rate-uplink"; leaf upgrade { description "Override maximum-bit-rate uplink value"; type empty; } leaf reject { description "Reject calls with higher uplink maximum-bit-rate"; type empty; } } container maximum-bit-rate-downlink { description "Maximum bit rate downlink"; leaf mbr-downlink { description "(null)"; units "kbps"; type uint32 { range "1 .. 256000"; } mandatory true; } presence "enable maximum-bit-rate-downlink"; leaf upgrade { description "Override maximum-bit-rate downlink value"; type empty; } leaf reject { description "Reject calls with higher downlink maximum-bit-rate"; type empty; } } container guaranteed-bit-rate-uplink { description "Guaranteed bit rate uplink"; leaf gbr-uplink { description "(null)"; units "kbps"; type uint32 { range "1 .. 256000"; } mandatory true; } presence "enable guaranteed-bit-rate-uplink"; leaf upgrade { description "Override guaranteed-bit-rate uplink value"; type empty; } leaf reject { description "Reject calls with higher uplink guaranteed-bit-rate"; type empty; } } container guaranteed-bit-rate-downlink { description "Guaranteed bit rate downlink"; leaf gbr-downlink { description "(null)"; units "kbps"; type uint32 { range "1 .. 256000"; } mandatory true; } presence "enable guaranteed-bit-rate-downlink"; leaf upgrade { description "Override guaranteed-bit-rate downlink value"; type empty; } leaf reject { description "Reject calls with higher downlink guaranteed-bit-rate"; type empty; } } list qci { key name; ordered-by user; description "PDP qos control per qci"; leaf name { description "(null)"; type uint8 { range "5 .. 9"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container maximum-bit-rate-uplink { description "Maximum bit rate uplink"; leaf mbr-uplink { description "(null)"; units "kbps"; type uint32 { range "1 .. 256000"; } mandatory true; } presence "enable maximum-bit-rate-uplink"; leaf upgrade { description "Override maximum-bit-rate uplink value"; type empty; } leaf reject { description "Reject calls with higher uplink maximum-bit-rate"; type empty; } } container maximum-bit-rate-downlink { description "Maximum bit rate downlink"; leaf mbr-downlink { description "(null)"; units "kbps"; type uint32 { range "1 .. 256000"; } mandatory true; } presence "enable maximum-bit-rate-downlink"; leaf upgrade { description "Override maximum-bit-rate downlink value"; type empty; } leaf reject { description "Reject calls with higher downlink maximum-bit-rate"; type empty; } } } } container policer-action { description "Policer actions"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container non-gbr-bearer { description "Policer actions for non gbr bearers"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf violate-action { description "PDP policer violate action"; type enumeration { enum set-loss-priority-high { description "Violate action set loss priority high"; } enum transmit { description "Violate action transmit"; } } } } container gbr-bearer { description "Policer actions for gbr bearers"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf exceed-action { description "PDP policer exceed action"; type enumeration { enum drop { description "Exceed action drop"; } enum transmit { description "Exceed action transmit"; } } } leaf violate-action { description "PDP policer violate action"; type enumeration { enum set-loss-priority-high { description "Violate action set loss priority high"; } enum transmit { description "Violate action transmit"; } } } } } } } grouping juniper-virtual-chassis-traceoptions { description "Global tracing options for virtual chassis"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses vchassis_trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum parse { description "Trace configuration parsing"; } enum hello { description "Trace virtual chassis hello packets"; } enum psn { description "Trace partial sequence number (PSN) packets"; } enum csn { description "Trace complete sequence number (CSN) packets"; } enum lsp { description "Trace virtual link-state packets"; } enum normal { description "Trace normal events"; } enum task { description "Trace virtual chassis task processing"; } enum krt { description "Trace virtual chassis kernel events"; } enum spf { description "Trace virtual chassis SPF events"; } enum me { description "Trace virtual chassis master election events"; } enum packets { description "Trace virtual chassis packets"; } enum lsp-generation { description "Trace virtual chassis LSP generation"; } enum error { description "Trace virtual chassis errors"; } enum route { description "Trace virtual chassis routing information"; } enum state { description "Trace virtual chassis state transitions"; } enum auto-configuration { description "Trace virtual chassis ports auto configuration"; } enum graceful-restart { description "Trace graceful restart events"; } enum dcp-infra { description "Trace dcp infrastructure configuration"; } enum dcp-dev-state { description "Trace dcp infrastructure configuration"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } grouping juniper_accounting_options { description "Accounting data configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list policy-decision-statistics-profile { key name; ordered-by user; description "Profile for policy decision bulkstats"; leaf name { description "Name of stats profile"; type string { length "1 .. 80"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf file { description "Name of bulkstats file"; type string { length "1 .. 128"; } mandatory true; } container application-aware-access-list-fields { description "List of attributes to be stored in bulkstats file"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf address { description "Address of subscriber"; type empty; } leaf application { description "Application"; type empty; } leaf application-group { description "Application group"; type empty; } leaf input-bytes { description "Input bytes"; type empty; } leaf input-interface { description "Interface of subscriber"; type empty; } leaf input-packets { description "Input packets"; type empty; } leaf mask { description "Mask of subscriber"; type empty; } leaf output-bytes { description "Output bytes"; type empty; } leaf output-packets { description "Output packets"; type empty; } leaf subscriber-name { description "Name of subscriber"; type empty; } leaf timestamp { description "Timestamp of stats record"; type empty; } leaf vrf-name { description "VRF where subscriber resides"; type empty; } } } container selective-aggregate-interface-stats { description "Toggle selective aggregate interface statistics collection"; choice enable-disable { case case_1 { leaf disable { description "Disable selective aggregate interface statistics collection"; type empty; } } } } container periodic-refresh { description "Toggle periodic statistics collection"; choice enable-disable { case case_1 { leaf disable { description "Disable statistics refresh"; type empty; } } } } list file { key name; ordered-by user; description "Accounting data file configuration"; leaf name { description "Name of file in which to write accounting data"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf nonpersistent { description "File does not persist across reboot"; type empty; } leaf size { description "Maximum accounting data file size"; type string; } leaf files { description "Maximum number of files for this profile"; default "10"; type uint32 { range "3 .. 1000"; } } leaf transfer-interval { description "Frequency at which to transfer files to archive sites"; default "30"; units "minutes"; type uint32 { range "5 .. 2880"; } } leaf start-time { description "Start time for file transmission (yyyy-mm-dd.hh:mm)"; type time; } list archive-sites { key name; ordered-by user; description "List of archive destinations"; leaf name { description "Primary and failover URLs to receive archive files"; type string; } leaf password { description "Password for login into the archive site"; type unreadable; } } } list interface-profile { key name; ordered-by user; description "Interface profile for accounting data"; leaf name { description "Name of profile"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf file { description "Name of file for accounting data"; type string; } leaf interval { description "Polling interval"; default "30"; units "minutes"; type uint32 { range "1 .. 2880"; } } container fields { description "Statistics to log to file"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input-bytes { description "Input bytes"; type empty; } leaf output-bytes { description "Output bytes"; type empty; } leaf input-packets { description "Input packets"; type empty; } leaf output-packets { description "Output packets"; type empty; } leaf input-errors { description "Generic input error packets"; type empty; } leaf output-errors { description "Generic output error packets"; type empty; } leaf input-multicast { description "Input packets arriving by multicast"; type empty; } leaf output-multicast { description "Output packets sent by multicast"; type empty; } leaf input-unicast { description "Input unicast packets"; type empty; } leaf output-unicast { description "Output unicast packets"; type empty; } leaf unsupported-protocol { description "Packets for unsupported protocol"; type empty; } leaf rpf-check-bytes { description "Bytes failing IPv4 reverse-path-forwarding check"; type empty; } leaf rpf-check-packets { description "Packets failing IPv4 reverse-path-forwarding check"; type empty; } leaf rpf-check6-bytes { description "Bytes failing IPv6 reverse-path-forwarding check"; type empty; } leaf rpf-check6-packets { description "Packets failing IPv6 reverse-path-forwarding check"; type empty; } } } list filter-profile { key name; ordered-by user; description "Filter profile for accounting data"; leaf name { description "Name of profile"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf file { description "Name of file for accounting data"; type string; } leaf interval { description "Polling interval"; default "30"; units "minutes"; type uint32 { range "1 .. 1048576"; } } list counters { key name; ordered-by user; description "Name of counter"; uses counter-object; } } list class-usage-profile { key name; ordered-by user; description "Class usage profile for accounting data"; leaf name { description "Name of profile"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf file { description "Name of file for accounting data"; type string; } leaf interval { description "Polling interval"; default "30"; units "minutes"; type uint32 { range "1 .. 1048576"; } } choice class-name { case case_1 { list destination-classes { key name; ordered-by user; description "Name of destination class"; uses dest-class-name-object; } } case case_2 { list source-classes { key name; ordered-by user; description "Name of source class"; uses source-class-name-object; } } } } list routing-engine-profile { key name; ordered-by user; description "Routing Engine profile for accounting data"; leaf name { description "Name of profile"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf file { description "Name of file for accounting data"; type string; } leaf interval { description "Polling interval"; default "30"; units "minutes"; type uint32 { range "1 .. 2880"; } } container fields { description "Information to log to file"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf host-name { description "Hostname for this router"; type empty; } leaf date { description "Date"; units "YYYYMMDD"; type empty; } leaf time-of-day { description "Time of day"; units "HHMMSS"; type empty; } leaf uptime { description "Time since last reboot"; units "seconds"; type empty; } leaf cpu-load-1 { description "Average system load over last 1 minute"; type empty; } leaf cpu-load-5 { description "Average system load over last 5 minutes"; type empty; } leaf cpu-load-15 { description "Average system load over last 15 minutes"; type empty; } leaf memory-usage { description "Instantaneous active memory usage"; type empty; } leaf total-cpu-usage { description "Total CPU usage percentage"; type empty; } } } list mib-profile { key name; ordered-by user; description "MIB profile for accounting data"; leaf name { description "Name of profile"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf file { description "Name of file for accounting data"; type string { } } leaf interval { description "Polling interval"; default "30"; units "minutes"; type uint32 { range "1 .. 2880"; } } leaf operation { description "SNMP operation"; default "walk"; type enumeration { enum get { description "Get SNMP object value"; } enum get-next { description "Get next SNMP object value"; } enum walk { description "Walk SNMP object values"; } } } list object-names { key name; ordered-by user; description "Names of MIB objects"; uses mib-variable-name-object; } } } grouping counter-object { leaf name { description "Name of counter"; type string; } } grouping dest-class-name-object { leaf name { description "Class name"; type string; } } grouping keepalives_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interval { description "Keepalive period"; units "seconds"; type uint16 { range "1 .. 32767"; } } leaf up-count { description "Keepalive received to bring link up"; type uint16 { range "1 .. 255"; } } leaf down-count { description "Keepalive missed to bring link down"; type uint16 { range "1 .. 255"; } } } grouping kod-trace-type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum main { description "Trace kod infrastructure events"; } enum vpn-localization-config { description "Trace VPN localization configuration events"; } enum vpn-localization-replay { description "Trace VPN localization replay queue events"; } enum all { description "Trace everything"; } } } } } grouping l2tp_access_line_object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf connection-speed-update { description "Support connection speed updates"; type empty; } } grouping l2tp_destination_object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf lockout-timeout { description "The lockout timeout in seconds"; default "300"; type uint16 { range "60 .. 3600"; } } list address { key name; ordered-by user; description "(null)"; leaf name { description "Address of remote systems"; type ipv4addr; } container access-line-information { presence "enable access-line-information"; description "Enable sending DSL line attributes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf connection-speed-update { description "Support connection speed updates"; type empty; } } } } grouping l2tp_interface_traceoptions { leaf name { description "Name of Layer 2 Tunneling Protocol service interface"; type interface-device; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum ipc { description "Trace L2TP IPC messages between PIC and Routing Engine"; } enum protocol { description "Trace L2TP, PPP, and multilink handling"; } enum packet-dump { description "Dump each packet content based on debug level"; } enum system { description "Trace packet processing on the PIC"; } enum all { description "Trace everything"; } } } } leaf debug-level { description "Trace level for PIC"; default "error"; type enumeration { enum error { description "Errors"; } enum detail { description "Detailed debug information"; } enum extensive { description "All PIC debug information"; } } } } grouping l2tp_tunnel_group_object { leaf name { description "Name of Layer 2 Tunneling Protocol profile"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf l2tp-access-profile { description "Tunnel profile name"; type string { length "1 .. 64"; } mandatory true; } leaf ppp-access-profile { description "User profile name"; type string { length "1 .. 64"; } } leaf aaa-access-profile { description "AAA profile name"; type string { length "1 .. 64"; } } leaf receive-window { description "Maximum receive window size"; default "16"; units "bytes"; type uint16; } leaf maximum-send-window { description "Limits the other end receive window size"; default "32"; units "bytes"; type uint16; } leaf retransmit-interval { description "Retransmit interval"; default "30"; units "seconds"; type uint16; } leaf hello-interval { description "Hello interval for tunnel keepalive"; default "60"; units "seconds"; type uint16; } leaf hide-avps { description "Hide L2TP AVPs"; type empty; } leaf no-tos-reflect { description "Disable ToS bit reflect onto outer L2TP header"; type empty; } leaf tos-reflect { description "Enable ToS bit reflect onto outer L2TP header"; type empty; } leaf tunnel-timeout { description "Time to tear down tunnel when a connection is lost"; default "120"; units "seconds"; type uint16; } container local-gateway { presence "enable local-gateway"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf address { description "L2TP network server IP address"; type ipv4addr; mandatory true; } leaf gateway-name { description "L2TP network server name for use with remote host"; type string; } } choice anchor-points { case case_1 { leaf service-interface { description "Services interface to use"; type interface-unit; } } case case_2 { leaf service-device-pool { description "Service interface pool name to use"; type string { length "1 .. 63"; } } } } leaf dynamic-profile { description " dynamic profile for interface to use"; type string { length "1 .. 80"; } } leaf tunnel-switch-profile { description "Tunnel switch profile name"; type string { length "1 .. 64"; } } container syslog { description "Define system logging parameters"; uses service_set_syslog_object; } } grouping layer2_pm_family_output_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice interface-or-next-hop-index { case case_1 { leaf interface { description "Interface through which to send sampled traffic"; type interface-name; } } case case_2 { leaf next-hop-group { description "Next-hop-group through which to send port-mirror traffic"; type string; } } case case_3 { list routing-instance { key name; description "Routing instances"; max-elements 1; uses output-routing-instance-type; } } case case_4 { list vlan { key name; description "Outgoing VLAN for mirrored packets"; max-elements 1; uses pm-rspan-vlan; } } case case_5 { list bridge-domain { key name; description "Outgoing bridge-domain for mirrored packets"; max-elements 1; uses pm-rspan-bridge-domain; } } } leaf no-filter-check { description "Do not check for filters on port-mirroring interface"; type empty; } } grouping ldap-server-object { leaf name { description "Hostname or IPv4 address of LDAP server"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port { description "LDAP server port number"; default "389"; type uint16 { range "1 .. 65535"; } } leaf source-address { description "Use specified address as source address"; type ipv4addr; } leaf routing-instance { description "Use specified routing instance"; type string; } leaf retry { description "Number of times to resend requests"; default "3"; type uint32 { range "1 .. 10"; } } leaf timeout { description "Delay before resending unacknowledged request"; default "5"; units "seconds"; type uint32 { range "3 .. 90"; } } } grouping ldp-sync-obj { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice enable-disable { case case_1 { leaf disable { description "Disable LDP synchronization"; type empty; } } } leaf hold-time { description "Time during which maximum metric is advertised"; type uint32 { range "1 .. 65535"; } } } grouping ldp_filter_obj { description "Filter to apply to tracing"; leaf match-on { description "Argument on which to match"; type enumeration { enum fec { description "Filter based on FEC associated to the traced object."; } enum address { description "Filter based on packet source and destination addresses."; } } mandatory true; } leaf-list policy { description "Filter policy"; type policy-algebra; } } grouping li_policy_addr6_simple_object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf address { description "Prefix to match"; type ipv6prefix; } } grouping li_policy_addr_simple_object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf address { description "Prefix to match"; type ipv4prefix; } } grouping license-object { description "License configuration for this router"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container autoupdate { presence "enable autoupdate"; description "Autoupdate license keys from license servers"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list url { key name; ordered-by user; description "URL of a license server"; max-elements 10; leaf name { description "URL of a license server for license keys"; type string; } leaf password { description "Password of URL for a license server"; type string; } } } container renew { presence "enable renew"; description "License renew lead time and checking interval"; leaf before-expiration { description "License renew lead time before expiration in days"; type uint32 { range "0 .. 60"; } mandatory true; } leaf interval { description "License checking interval in hours"; type uint32 { range "1 .. 336"; } mandatory true; } } container traceoptions { description "Trace options for licenses"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum all { description "Trace all operations"; } enum events { description "Trace licensing events and their processing"; } enum config { description "Trace license configuration processing"; } } } } } } grouping lmp_control_channel_type { leaf name { description "Control channel interface"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf remote-address { description "Control channel remote address"; type ipaddr; } } grouping lns_server_type { leaf name { description "L2TP network server address"; type ipv4addr; } choice lns-port { case case_1 { leaf use-default-port { description "Use default port"; type empty; } } case case_2 { leaf port { description "L2TP network server destination port"; type uint16; } } } } grouping location-type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf country-code { description "Two-letter country code"; type string; } leaf postal-code { description "Zip code or postal code"; type string; } leaf npa-nxx { description "First six digits of phone number (area code plus exchange)"; type string; } leaf latitude { description "Latitude in degree format"; type string; } leaf longitude { description "Longitude in degree format"; type string; } leaf altitude { description "Feet above (or below) sea level"; type int32; } leaf lata { description "Local access transport area"; type string; } leaf vcoord { description "Bellcore vertical coordinate"; type string; } leaf hcoord { description "Bellcore horizontal coordinate"; type string; } leaf building { description "Building name"; type string; } leaf floor { description "Floor of the building"; type int32; } leaf rack { description "Rack number"; type uint32; } list lcc { key name; description "Line-card chassis location"; leaf name { description "LCC number"; type uint32 { range "0 .. 3"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf floor { description "Floor of the building"; type int32; } leaf rack { description "Rack number"; type uint32; } } } grouping logapn_type { leaf name { description "Logical access point name identifier"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container access-restrictions { description "Settings for APN access restrictions. "; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf selection-mode { description "User access to the APN"; default "restricted"; type enumeration { enum public { description "User does not need to be subscribed for APN"; } enum from-user { description "Can choose which APN to connect"; } enum from-sgsn { description "Can connect to default APN for the SGSN"; } enum restricted { description "Admit only users subscribed for APN"; } } } container radius-assisted-apn-selection { presence "enable radius-assisted-apn-selection"; description "Enable RADIUS assisted APN selection"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default { description "Default APN name for radius assisted APN selection"; type string { } } } } container apn { description "APN selection configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default { description "APN used when not using username-based selection"; type string { } } list selectable { key name; ordered-by user; description "APNs that may be selected by the user"; uses logical_to_apn_reference_type; } } } grouping logical_to_apn_reference_type { leaf name { description "Name of APN"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } grouping login-class-object { leaf name { description "Login class name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list allowed-days { description "Day(s) of week when access is allowed."; type enumeration { enum sunday { description "Sunday"; } enum monday { description "Monday"; } enum tuesday { description "Tuesday"; } enum wednesday { description "Wednesday"; } enum thursday { description "Thursday"; } enum friday { description "Friday"; } enum saturday { description "Saturday"; } } } leaf access-start { description "Start time for remote access (hh:mm)"; type time; } leaf access-end { description "End time for remote access (hh:mm)"; type time; } leaf idle-timeout { description "Maximum idle time before logout"; units "minutes"; type uint32; } leaf logical-system { description "Logical system associated with login"; type string; } leaf login-alarms { description "Display system alarms when logging in"; type empty; } leaf login-script { description "Execute this login-script when logging in"; type string; } leaf login-tip { description "Display tip when logging in"; type empty; } leaf-list permissions { description "(null)"; type string; } leaf allow-commands { description "Regular expression for commands to allow explicitly"; type regular-expression; } leaf deny-commands { description "Regular expression for commands to deny explicitly"; type regular-expression; } leaf allow-configuration { description "Regular expression for configure to allow explicitly"; type regular-expression; } leaf deny-configuration { description "Regular expression for configure to deny explicitly"; type regular-expression; } leaf security-role { description "Common Criteria security role"; type enumeration { enum audit-administrator { description "Audit administrator"; } enum crypto-administrator { description "Cryptographic administrator"; } enum ids-administrator { description "IDS administrator"; } enum security-administrator { description "Security administrator"; } } } leaf satellite { description "Login access to satellite devices"; type enumeration { enum all { description "All satellite devices"; } } } leaf-list allow-configuration-regexps { description "Object path regular expressions to allow"; type string; } leaf-list deny-configuration-regexps { description "Object path regular expressions to deny"; type string; } leaf configuration-breadcrumbs { description "Enable breadcrumbs during display of configuration"; type empty; } list confirm-commands { key name; ordered-by user; description "List of commands to be confirmed explicitly"; leaf name { description "Regular expression for confirm commands"; type regular-expression; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf message { description "Message to be displayed during confirmation"; type string; } } choice hidden-commands { case case_1 { leaf allow-hidden-commands { description "Allow all hidden commands to be executed"; type empty; } } case case_2 { container no-hidden-commands { description "Deny all hidden commands with exemptions"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list except { key name; ordered-by user; description "Specify the list of hidden command to be exempted"; leaf name { description "Exempted hidden command(s)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } } grouping login-user-object { leaf name { description "User name (login)"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf full-name { description "Full name"; type string { } } leaf uid { description "User identifier (uid)"; type uint32 { range "100 .. 64000"; } } leaf class { description "Login class"; type string { } mandatory true; } container authentication { description "Authentication method"; uses authentication-object; } } grouping lpdf-trace-options-type { description "Trace options for Local Policy Decision Function"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "L-PDF operations to include in debugging trace"; leaf name { description "(null)"; type enumeration { enum configuration { description "Configuration operations"; } enum database { description "Database operations"; } enum general { description "Miscellaneous operations"; } enum rtsock { description "Routing socket operations"; } enum statistics { description "Statistics operations"; } enum subscriber { description "Subscriber operations"; } enum gres { description "GRES operations"; } enum ptsp-statistics { description "Packet Triggered Subscriber Policy Statistics"; } enum all { description "All operations"; } } } } } grouping lr_interfaces_type { description "Physical interface"; leaf name { description "Interface name"; type interface-unit; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list unit { key name; description "Logical interface"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf alias { description "Interface alias"; type string; } container peer-psd { presence "enable peer-psd"; description "Peer psd"; leaf psd-name { description "Peer psd name"; type string; mandatory true; } } container peer-interface { presence "enable peer-interface"; description "Peer interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interface-name { description "Peer interface name"; type interface-unit; } } container interface-shared-with { presence "enable interface-shared-with"; description "Specify which PSD owns this logical interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf psd-name { description "Name of protected system domain (psd[1-31], ex. psd2)"; type string { } mandatory true; } } choice enable-disable { case case_1 { leaf disable { description "Disable this logical interface"; type empty; } } } leaf passive-monitor-mode { description "Use interface to tap packets from another router"; type empty; } leaf per-session-scheduler { description "Enable per-session queuing on an IQ2 interface"; type empty; } container account-layer2-overhead { presence "enable account-layer2-overhead"; description "Account layer2 overhead in IFL byte statistics"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf overhead-value { description "Layer2 overhead bytes to be accounted in ingress and egress"; units "bytes"; type int8 { range "-128 .. 127"; } } leaf ingress { description "Layer2 overhead bytes to be accounted in ingress"; units "bytes"; type int8 { range "-128 .. 127"; } } leaf egress { description "Layer2 overhead bytes to be accounted in egress"; units "bytes"; type int8 { range "-128 .. 127"; } } } container forwarding-class-accounting { presence "enable forwarding-class-accounting"; description "Configure Forwarding-class-accounting parameters for IFL "; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf direction { description "Direction of the traffic to be accounted for IFL"; type enumeration { enum ingress { description "Enable forwarding-class-accounting for ingress traffic"; } enum egress { description "Enable forwarding-class-accounting for egress traffic"; } enum both { description "Enable forwarding-class-accounting for both directions"; } } } container enhanced { presence "enable enhanced"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf traffic-type { description "Traffic-type to be accounted for forwarding-class-accounting for IFL"; type enumeration { enum unicast-statistics { description "Count only unicast traffic for forwarding-class-accounting for IFL "; } enum multicast-statistics { description "Count only multicast traffic for forwarding-class-accounting for IFL"; } } } leaf family { description "Protocol traffic to be accounted for forwarding-class-accounting for IFL"; type enumeration { enum inet { description "Enable forwarding-class-accounting for IPv4 family only for IFL"; } enum inet6 { description "Enable forwarding-class-accounting for IPv6 family only for IFL"; } enum both { description "Enable forwarding-class-accounting for both IPv4 and IPv6 family for IFL"; } } } leaf direction { description "Direction of the traffic to be accounted for forwarding-class-accounting for IFL"; type enumeration { enum ingress { description "Enable forwarding-class-accounting for ingress traffic for IFL"; } enum egress { description "Enable forwarding-class-accounting for egress traffic for IFL"; } enum both { description "Enable forwarding-class-accounting for both ingress and egress traffic for IFL"; } } } leaf overhead-bytes { description "Per octet overhead bytes to be accounted for forwarding-class-accounting for IFL "; default "0"; type uint32 { range "0 .. 255"; } } } } leaf clear-dont-fragment-bit { description "Clear DF bit in packet (AS PIC and J-series only as well as MIF)"; type empty; } leaf reassemble-packets { description "Do reassembly of fragmented tunnel packets"; type empty; } container services-options { description "Services interface-specific options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container rpm { description "Enable RPM service on this interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice rpm_or_twamp { case case_1 { choice rpm-type { case case_1 { leaf client { description "Client mode"; type empty; } } case case_2 { leaf server { description "Server mode"; type empty; } } } } case case_2 { leaf twamp-server { description "Set TWAMP server mode on this interface"; type empty; } } case case_3 { leaf twamp-client { description "Set TWAMP server mode on this interface"; type empty; } } } } leaf description { description "Text description of interface"; type string; } leaf metadata { description "Text metadata attached to interface"; type string; } container dial-options { description "Dial options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice interface_id_choice { case case_1 { leaf l2tp-interface-id { description "Identifier for group of PPP sessions"; type string { length "1 .. 63"; } } } case case_2 { leaf ipsec-interface-id { description "Identifier for group of dynamic peers"; type string { length "1 .. 63"; } } } } choice ifl_type { case case_1 { leaf dedicated { description "Use this unit for only one PPP/IPSec session"; type empty; } } case case_2 { leaf shared { description "Share this unit for multiple PPP/IPSec sessions"; type empty; } } } } list demux-source { key name; ordered-by user; description "Demux based on source address"; uses demux_options_table; } list demux-destination { key name; ordered-by user; description "Demux based on destination address"; uses demux_options_table; } leaf encapsulation { description "Logical link-layer encapsulation"; type enumeration { enum atm-nlpid { description "ATM NLPID encapsulation"; } enum atm-cisco-nlpid { description "Cisco-compatible ATM NLPID encapsulation"; } enum atm-snap { description "ATM LLC/SNAP encapsulation"; } enum atm-vc-mux { description "ATM VC multiplexing"; } enum atm-ccc-vc-mux { description "ATM VC for CCC"; } enum atm-tcc-vc-mux { description "ATM VC for translational cross-connect"; } enum atm-tcc-snap { description "ATM LLC/SNAP for translational cross-connect"; } enum atm-ccc-cell-relay { description "ATM cell relay for CCC"; } enum vlan-vci-ccc { description "CCC for VLAN Q-in-Q and ATM VPI/VCI interworking"; } enum ether-over-atm-llc { description "Ethernet over ATM (LLC/SNAP) encapsulation"; } enum ether-vpls-over-atm-llc { description "Ethernet VPLS over ATM (bridging) encapsulation"; } enum ppp-over-ether-over-atm-llc { description "PPPoE over ATM (LLC/SNAP) encapsulation"; } enum ppp-over-ether { description "PPPoE encapsulation"; } enum atm-ppp-vc-mux { description "ATM PPP over raw AAL5"; } enum atm-ppp-llc { description "ATM PPP over AAL5/LLC"; } enum atm-mlppp-llc { description "ATM MLPPP over AAL5/LLC"; } enum frame-relay-ppp { description "PPP over Frame Relay"; } enum frame-relay-ccc { description "Frame Relay DLCI for CCC"; } enum frame-relay { description "Frame Relay DLCI"; } enum frame-relay-tcc { description "Frame Relay DLCI for translational cross-connect"; } enum frame-relay-ether-type { description "Cisco-compatible Frame Relay Encapsulation DLCI"; } enum frame-relay-ether-type-tcc { description "Cisco-compatible Frame Relay Encapsulation DLCI for TCC"; } enum ether-vpls-fr { description "Ethernet VPLS over Frame Relay (bridging) encapsulation"; } enum vlan-ccc { description "802.1q tagging for a cross-connect"; } enum ethernet-ccc { description "Ethernet for a cross-connect"; } enum vlan-vpls { description "VLAN virtual private LAN service"; } enum vlan-bridge { description "VLAN layer-2 bridging"; } enum dix { description "Ethernet DIXv2 (RFC 894)"; } enum ethernet { description "Ethernet II (RFC 894)"; } enum ethernet-vpls { description "Ethernet II virtual private LAN service"; } enum ethernet-bridge { description "Ethernet II bridging"; } enum vlan { description "802.1q-tagged Ethernet"; } enum vlan-tcc { description "802.1q tagging for a translational cross-connect"; } enum multilink-ppp { description "Multilink PPP"; } enum multilink-frame-relay-end-to-end { description "Multilink Frame Relay end-to-end (FRF.15)"; } enum ppp-ccc { description "Serial PPP device for a cross-connect"; } } } leaf mtu { description "Maximum transmission unit packet size"; type uint32 { range "256 .. 9216"; } } choice pointedness { case case_1 { leaf point-to-point { description "Point-to-point connection"; type empty; } } case case_2 { leaf multipoint { description "Multipoint connection"; type empty; } } } leaf bandwidth { description "Logical unit bandwidth (informational only)"; type string; } leaf global-layer2-domainid { description "Global Layer-2 Identifier for this interface"; type uint32 { range "5 .. 4094"; } } container radio-router { description "Parameters for dynamic link cost management"; uses dynamic_ifbw_parms_type; } leaf traps { description "Enable SNMP notifications on state changes"; type empty; } leaf no-traps { description "Enable SNMP notifications on state changes"; type empty; } container arp-resp { presence "enable arp-resp"; description "Knob to control ARP response on the interface, default is restricted"; choice arp-response-options { case case_1 { leaf unrestricted { description "Enable unrestricted ARP respone on the interface"; type empty; } } case case_2 { leaf restricted { description "Enable restricted proxy ARP response on the interface"; type empty; } } } } container proxy-arp { presence "enable proxy-arp"; description "Enable proxy ARP on the interface, default is unrestricted"; choice proxyarp-options { case case_1 { leaf unrestricted { description "Enable unrestricted proxy ARP on the interface"; type empty; } } case case_2 { leaf restricted { description "Enable restricted proxy ARP on the interface"; type empty; } } } } choice vlan_choice { case case_1 { leaf vlan-id { description "Virtual LAN identifier value for 802.1q VLAN tags"; type string; } } case case_2 { leaf vlan-id-range { description "Virtual LAN identifier range of form vid1-vid2"; type string { } } } case case_3 { leaf-list vlan-id-list { description "List of VLAN identifiers"; type vlan-range; } } case case_4 { container vlan-tags { presence "enable vlan-tags"; description "IEEE 802.1q tags"; leaf outer { description "[tpid.]vlan-id, tpid format is 0xNNNN and is optional"; type string; mandatory true; } choice inner_choice { case case_1 { leaf inner { description "[tpid.]vlan-id, tpid format is 0xNNNN and is optional"; type string; } } case case_2 { leaf inner-range { description "[tpid.]vid1-vid2, tpid format is 0xNNNN and is optional"; type string { } } } case case_3 { leaf-list inner-list { description "List of VLAN identifiers"; type vlan-range; } } } } } } leaf native-inner-vlan-id { description "Native virtual LAN identifier for singly tagged frames"; type uint32 { range "0 .. 4094"; } } container inner-vlan-id-range { description "Inner vlan-id range start end "; leaf start { description "Inner vlan-id range's start value"; type uint32 { range "32 .. 4094"; } mandatory true; } presence "enable inner-vlan-id-range"; leaf end { description "Inner vlan-id range's end value"; type uint32 { range "32 .. 4094"; } mandatory true; } } container accept-source-mac { description "Remote media access control address to/from which to accept traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list mac-address { key name; description "Remote MAC address"; uses mac_list; } } container input-vlan-map { description "VLAN map operation on input"; uses vlan_map; } container output-vlan-map { description "VLAN map operation on output"; uses vlan_map; } leaf swap-by-poppush { description "Pop original vlan tag and then push a new vlan tag"; type empty; } leaf receive-lsp { description "Name of incoming label-switched path"; type string; } leaf transmit-lsp { description "Name of outgoing label-switched path"; type string; } leaf dlci { description "Frame Relay data-link control identifier"; type uint32 { range "1 .. 1022"; } } leaf multicast-dlci { description "Frame Relay data-link control identifier for multicast packets"; type uint32 { range "1 .. 1022"; } } choice vci_type { case case_1 { leaf vci { description "ATM point-to-point virtual circuit identifier ([vpi.]vci)"; type atm-vci; } } case case_2 { leaf allow-any-vci { description "Allow all VCIs to open in atm-ccc-cell-relay mode"; type empty; } } case case_3 { leaf vpi { description "ATM point-to-point virtual path identifier (vpi)"; type uint32 { range "0 .. 255"; } } } case case_4 { leaf trunk-id { description "ATM trunk identifier"; type uint32 { range "0 .. 31"; } } } } leaf no-vpivci-swapping { description "Do not swap VPI/VCI for Cell Relay"; type empty; } choice psn_vci_type { case case_1 { leaf psn-vci { description "PSN VCI"; type atm-vci; } } case case_2 { leaf psn-vpi { description "PSN VPI"; type uint32 { range "0 .. 255"; } } } } container atm-l2circuit-mode { description "Select ATM Layer 2 circuit transport mode"; choice mode_choice { case case_1 { leaf cell { description "ATM Layer 2 circuit cell mode"; type empty; } } case case_2 { leaf aal5 { description "ATM Layer 2 circuit AAL5 mode"; type empty; } } } } container vci-range { presence "enable vci-range"; description "ATM VCI range start end "; leaf start { description "ATM VCI range's start value"; type uint16 { range "32 .. 4094"; } mandatory true; } leaf end { description "ATM VCI range's end value"; type uint16 { range "32 .. 4094"; } mandatory true; } } leaf trunk-bandwidth { description "ATM trunk bandwidth"; units "bits per second"; type string; } leaf multicast-vci { description "ATM virtual circuit identifier for multicast packets"; type atm-vci; } container shaping { description "Virtual circuit traffic-shaping options"; uses dcd_shaping_config; } container oam-period { description "OAM cell period"; choice oam_period_choices { case case_1 { leaf oam-period { description "OAM cell period"; units "seconds"; type uint32 { range "1 .. 900"; } } } case case_2 { container disable { presence "enable disable"; description "Disable F5 OAM loopback"; } } } } container oam-liveness { description "OAM virtual circuit liveness parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf up-count { description "Number of OAM cells to consider VC up"; type uint32 { range "1 .. 255"; } } leaf down-count { description "Number of OAM cells to consider VC down"; type uint32 { range "1 .. 255"; } } } container ppp-options { description "Point-to-Point Protocol interface-specific options"; uses ppp_options_type; } container pppoe-options { description "PPP over Ethernet interface-specific options"; uses pppoe_options_type; } container pppoe-underlying-options { description "PPP over Ethernet underlying interface-specific options"; uses pppoe_underlying_options_type; } container advisory-options { description "Interface-specific recommendations"; uses advisory_options_type; } container auto-configure { description "Auto configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container agent-circuit-identifier { description "ACI configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf dynamic-profile { description "Dynamic profile name"; type string { length "1 .. 64"; } mandatory true; } presence "enable agent-circuit-identifier"; } } container demux-options { description "IP demux interface-specific options"; uses demux_options_type; } leaf targeted-distribution { description "Interface participates in targeted-distribution"; type empty; } choice keepalive_choices { case case_1 { container keepalives { description "Send or demand keepalive messages"; uses keepalives_type; } } case case_2 { leaf no-keepalives { description "Do not send or demand keepalive messages"; type empty; } } } leaf inverse-arp { description "Enable inverse ARP"; type empty; } leaf transmit-weight { description "ATM2 transmit weight for VC under VP tunnel"; type uint16 { range "1 .. 32767"; } } container epd-threshold { description "Early packet discard threshold for ATM2"; uses epd_threshold_config; } leaf cell-bundle-size { description "L2 circuit cell bundle size"; units "cells"; type uint32 { range "1 .. 176"; } } leaf cell-bundle-timeout { description "L2 circuit cell bundle timeout"; units "microseconds"; type uint32 { range "1 .. 512"; } } leaf plp-to-clp { description "Enable ATM2 PLP to CLP copy"; type empty; } leaf atm-scheduler-map { description "Assign ATM2 CoS scheduling map"; type string; } leaf mrru { description "Maximum received reconstructed unit"; units "bytes"; type uint16 { range "1500 .. 9180"; } } leaf short-sequence { description "Short sequence number header format (MLPPP only)"; type empty; } leaf fragment-threshold { description "Fragmentation threshold"; units "bytes"; type uint32 { range "64 .. 16320"; } } leaf drop-timeout { description "Drop timeout"; units "milliseconds"; type uint16 { range "0 .. 2000"; } } leaf disable-mlppp-inner-ppp-pfc { description "Disable compression for inner PPP header in MLPPP payload"; type empty; } leaf minimum-links { description "Minimum number of links to sustain the bundle"; type uint16 { range "1 .. 8"; } } leaf multilink-max-classes { description "Number of multilink classes"; type uint16 { range "1 .. 8"; } } container compression { presence "enable compression"; description "Various packet header compressions"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container rtp { presence "enable rtp"; description "Compress and decompress RTP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf f-max-period { description "Maximum number of compressed packets between transmission of full headers"; type uint32 { range "1 .. 65535"; } } leaf-list queues { description "Queue holding RTP packets. Default is queue 1"; type enumeration { enum q0 { description "RTP packets assigned to queue 0"; } enum q1 { description "RTP packets assigned to queue 1"; } enum q2 { description "RTP packets assigned to queue 2"; } enum q3 { description "RTP packets assigned to queue 3"; } } } container port { presence "enable port"; description "UDP destination ports reserved for RTP packets"; leaf minimum { description "(null)"; type uint32 { range "0 .. 65535"; } mandatory true; } leaf maximum { description "(null)"; type uint32 { range "0 .. 65535"; } mandatory true; } } container maximum-contexts { description "Maximum number of simultaneous RTP contexts"; leaf number { description "Maximum number of simultaneous RTP contexts"; type uint32 { range "16 .. 2048"; } } } } } leaf interleave-fragments { description "Interleave long packets with high priority ones"; type empty; } leaf link-layer-overhead { description "Link layer bit stuffing overhead (0.0 .. 50.0 percent)"; type unsigned-float; } leaf accounting-profile { description "Accounting profile name"; type string; } leaf peer-unit { description "Peer unit number"; type uint32 { range "0 .. 16385"; } } container tunnel { description "Tunnel parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source { description "Tunnel source"; type ipaddr; mandatory true; } presence "enable tunnel"; leaf destination { description "Tunnel destination"; type ipaddr; mandatory true; } leaf key { description "Tunnel key"; type uint32 { range "0 .. 4294967295"; } } leaf backup-destination { description "Backup tunnel destination"; type ipaddr; } choice fragmentation { case case_1 { leaf allow-fragmentation { description "Do not set DF bit on packets"; type empty; } } case case_2 { leaf do-not-fragment { description "Set DF bit on packets"; type empty; } } } leaf ttl { description "Time to live"; type uint32 { range "0 .. 255"; } } leaf traffic-class { description "TOS/Traffic class field of IP-header"; type uint32 { range "0 .. 255"; } } leaf flow-label { description "Flow label field of IP6-header"; type uint32 { range "0 .. 1048575"; } } leaf path-mtu-discovery { description "Enable path MTU discovery for tunnels"; type empty; } leaf no-path-mtu-discovery { description "Enable path MTU discovery for tunnels"; type empty; } container routing-instance { description "Routing instance to which tunnel ends belong"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf destination { description "Routing instance of tunnel destination"; type string; } } } leaf compression-device { description "Logical interface used for compression"; type interface-unit; } container atm-policer { description "ATM policing for logical interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input-atm-policer { description "Input atm policer"; type string; } } container layer2-policer { description "Layer2 policing for logical interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice layer2-input-policer-choice { case case_1 { leaf input-policer { description "Two-color policer for received packets"; type string; } } case case_2 { leaf input-hierarchical-policer { description "Hierarchical policer for received packets"; type string; } } case case_3 { leaf input-three-color { description "Color-blind three-color policer for received packets"; type string; } } } choice layer2-output-policer-choice { case case_1 { leaf output-policer { description "Two-color policer for transmitted packets"; type string; } } case case_2 { leaf output-three-color { description "Three-color policer for transmitted packets"; type string; } } } } container filter { description "Filters to apply to all families configured under this logical interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of filter applied to received packets"; type string; } leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf output { description "Name of filter applied to transmitted packets"; type string; } } list multi-chassis-protection { key name; description "Inter-Chassis protection configuration"; uses multi-chassis-protection-group; } leaf statistics { description "Enable statistics collection in PFE"; type empty; } container esi { description "ESI configuration of local loopback interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf identifier { description "ESI value for the interface"; type esi; mandatory true; } presence "enable esi"; choice mode { case case_1 { leaf single-active { description "Single-active mode"; type empty; } } case case_2 { leaf all-active { description "All-active mode"; type empty; } } } } container family { description "Protocol family"; container inet { presence "enable inet"; description "IPv4 parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container dhcp-client { description "Dynamic Host Configuration Protocol client configuration"; uses dhcp-client-type; } container targeted-broadcast { presence "enable targeted-broadcast"; description "Directed broadcast"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice targeted-bcast-choice { case case_1 { leaf forward-and-send-to-re { description "Allow packets to be forwarded and sent to re"; type empty; } } case case_2 { leaf forward-only { description "Allow packets only to be forwarded"; type empty; } } } } leaf receive-options-packets { description "Receive IP options packets (don't send to Routing Engine)"; type empty; } leaf receive-ttl-exceeded { description "Receive IP TTL-exceeded packets (don't send to Routing Engine)"; type empty; } container accounting { description "Configure interface-based accounting options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container source-class-usage { description "Enable source class usage on this interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Specify this interface for source-class-usage input"; type empty; } leaf output { description "Specify this interface for source-class-usage output"; type empty; } } leaf destination-class-usage { description "Enable destination class usage on this interface"; type empty; } } leaf mac-validate { description "Validate source MAC address"; type enumeration { enum strict { description "Strict mac-validation"; } enum loose { description "Loose mac-validation"; } } } container rpf-check { presence "enable rpf-check"; description "Enable reverse-path-forwarding checks on this interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf fail-filter { description "Name of filter applied to packets failing RPF check"; type string; } container mode { description "Mode for reverse path forwarding"; leaf loose { description "Reverse-path-forwarding loose mode"; type empty; } } } leaf mtu { description "Protocol family maximum transmission unit"; type uint32; } leaf tcp-mss { description "Protocol family tcp maximum segment size"; type uint32 { range "1 .. 65535"; } } leaf no-redirects { description "Do not redirect traffic"; type empty; } leaf no-neighbor-learn { description "Disable neighbor address learning on interface"; type empty; } leaf unconditional-src-learn { description "Glean from arp packets even when source cannot be validated"; type empty; } leaf multicast-only { description "Allow only multicast traffic (tunnels only)"; type empty; } leaf primary { description "Candidate for primary interface in system"; type empty; } leaf ipsec-sa { description "Name of security association"; type string { length "1 .. 32"; } } list demux-source { key name; ordered-by user; description "Demux based on source prefix"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list demux-destination { key name; ordered-by user; description "Demux based on destination prefix"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container filter { description "Packet filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice input_choice { case case_1 { container input { description "Filter to be applied to received packets"; leaf filter-name { description "Name of the filter"; type string; mandatory true; } presence "enable input"; leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf precedence { description "Precedence of the filter"; type uint32 { range "0 .. 255"; } } } } case case_2 { leaf-list input-list { description "List of filter modules applied to received packets "; type string; } } } choice output_choice { case case_1 { container output { description "Filter to be applied to transmitted packets"; leaf filter-name { description "Name of the filter"; type string; mandatory true; } presence "enable output"; leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf precedence { description "Precedence of the filter"; type uint32 { range "0 .. 255"; } } } } case case_2 { leaf-list output-list { description "List of filter modules applied to transmitted packets "; type string; } } } container adf { description "Ascend Data Filter definition"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Set of ADF rules"; leaf name { description "Value for a single rule"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf counter { description "Add a counter to each rule"; type empty; } leaf input-precedence { description "Precedence of the input rules"; type uint32 { range "0 .. 255"; } } leaf not-mandatory { description "No errors will be reported if no rules are present"; type empty; } leaf output-precedence { description "Precedence of the output rules"; type uint32 { range "0 .. 255"; } } } leaf group { description "Group to which interface belongs"; type uint32 { range "1 .. 255"; } } } container simple-filter { description "Filter for doing multifield classification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of simple filter applied to received packets"; type string; } } leaf input-hierarchical-policer { description "Hierarchical policer for received packets"; type string; } container policer { description "Interface policing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf arp { description "Name of policer applied to received ARP packets"; type string; } leaf input { description "Name of policer applied to received packets"; type string; } leaf output { description "Name of policer applied to transmitted packets"; type string; } } container sampling { description "Interface sampling"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Sample all packets input on this interface"; type empty; } leaf output { description "Sample all packets output on this interface"; type empty; } } container service { description "Service operations"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container input { description "Service sets to consider for received packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list service-set { key name; ordered-by user; description "Service set to consider for received packets"; leaf name { description "Name of service set"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf service-filter { description "Name of service filter"; type string; } } leaf post-service-filter { description "Post-service filter to apply to received packets"; type string; } } container output { description "Service sets to consider for transmitted packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list service-set { key name; ordered-by user; description "Service set to consider for transmitted packets"; leaf name { description "Name of service set"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf service-filter { description "Name of service filter"; type string; } } } } list next-hop-tunnel { key name; ordered-by user; description "One or more next-hop tunnel tables"; leaf name { description "Next-hop tunnel gateway address"; type string; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ipsec-vpn { description "Name of IPSec VPN"; type string; mandatory true; } } list address { key name; ordered-by user; description "Interface address/destination prefix"; leaf name { description "Interface address/destination prefix"; type ipv4prefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf destination { description "Destination address"; type ipv4addr; } leaf destination-profile { description "Profile to use for destination address"; type string; } leaf broadcast { description "Broadcast address"; type ipv4addr; } leaf primary { description "Candidate for primary address in system"; type empty; } leaf preferred { description "Preferred address on interface"; type empty; } leaf master-only { description "Master management IP address for router"; type empty; } list multipoint-destination { key name; ordered-by user; description "Multipoint NBMA destination"; leaf name { description "Destination address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice link-address { case case_1 { leaf dlci { description "Frame Relay data-link control identifier"; type uint32 { range "1 .. 1022"; } } } case case_2 { leaf vci { description "ATM virtual circuit identifier ([vpi.]vci)"; type atm-vci; } } } container shaping { description "Virtual circuit traffic-shaping options"; uses dcd_shaping_config; } container oam-period { description "OAM cell period"; choice oam_period_choices { case case_1 { leaf oam_period { description "OAM cell period"; units "seconds"; type uint32 { range "1 .. 900"; } } } case case_2 { container disable { presence "enable disable"; description "Disable OAM loopback"; } } } } container oam-liveness { description "OAM virtual circuit liveness parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf up-count { description "Number of OAM cells to consider VC up"; type uint32 { range "1 .. 255"; } } leaf down-count { description "Number of OAM cells to consider VC down"; type uint32 { range "1 .. 255"; } } } leaf inverse-arp { description "Enable inverse ARP reply messages"; type empty; } leaf transmit-weight { description "ATM2 transmit weight for VC under VP tunnel"; type uint16 { range "1 .. 32767"; } } container epd-threshold { description "Early packet discard threshold for ATM2"; uses epd_threshold_config; } } list arp { key name; ordered-by user; description "Static Address Resolution Protocol entries"; leaf name { description "Destination IP address"; type ipv4addr; mandatory true; } leaf l2-interface { description "Layer 2 interface name for ARP entry"; type interface-name; } choice mac_address_type { case case_1 { leaf mac { description "MAC address"; type mac-unicaset; } } case case_2 { leaf multicast-mac { description "Multicast MAC address"; type mac-multicast; } } } leaf publish { description "Reply to ARP requests for this entry"; type empty; } } container web-authentication { description "Parameters for web-based firewall-user authentication"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf http { description "Enable authentication via HTTP"; type empty; } } list vrrp-group { key name; ordered-by user; description "VRRP group"; uses vrrp-group; } leaf virtual-gateway-address { description "Virtual Gateway IP address"; type ipv4addr; } } container unnumbered-address { presence "enable unnumbered-address"; description "Unnumbered interface address/destination prefix"; leaf source { description "Interface from which to take local address"; type interface-unit; mandatory true; } leaf preferred-source-address { description "Preferred address on the donor interface"; type string; } leaf destination { description "Destination address"; type ipv4addr; } leaf destination-profile { description "Profile to use for destination address"; type string; } } container location-pool-address { presence "enable location-pool-address"; description "Location-based IP address pool"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf pool-name { description "Pool name"; type string { length "1 .. 64"; } } } leaf negotiate-address { description "Negotiate address with remote"; type empty; } } container iso { presence "enable iso"; description "OSI ISO protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list address { key name; ordered-by user; description "Interface address"; leaf name { description "Interface address"; type isoaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf mtu { description "Protocol family maximum transmission unit"; type uint32; } } container inet6 { presence "enable inet6"; description "IPv6 protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container rpf-check { presence "enable rpf-check"; description "Enable reverse-path-forwarding checks on this interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf fail-filter { description "Name of filter applied to packets failing RPF check"; type string; } container mode { description "Mode for reverse path forwarding"; leaf loose { description "Reverse-path-forwarding loose mode"; type empty; } } } container accounting { description "Interface-based accounting options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container source-class-usage { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Interface for source-class-usage input"; type empty; } leaf output { description "Interface for source-class-usage output"; type empty; } } leaf destination-class-usage { description "Enable destination class usage on this interface"; type empty; } } leaf mtu { description "Protocol family maximum transmission unit"; type uint32; } leaf tcp-mss { description "Protocol family tcp maximum segment size"; type uint32; } leaf nd6-stale-time { description "Stale time to reconfirm reachability with inet6 neighbour"; units "seconds"; type uint32 { range "1 .. 1200"; } } leaf no-neighbor-learn { description "Disable neighbor address learning on interface"; type empty; } leaf no-redirects { description "Do not redirect traffic"; type empty; } container filter { description "Packet filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice input_choice { case case_1 { container input { description "Filter to be applied to received packets"; leaf filter-name { description "Name of the filter"; type string; mandatory true; } presence "enable input"; leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf precedence { description "Precedence of the filter"; type uint32 { range "0 .. 255"; } } } } case case_2 { leaf-list input-list { description "List of filter modules applied to received packets "; type string; } } } choice output_choice { case case_1 { container output { description "Filter to be applied to transmitted packets"; leaf filter-name { description "Name of the filter"; type string; mandatory true; } presence "enable output"; leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf precedence { description "Precedence of the filter"; type uint32 { range "0 .. 255"; } } } } case case_2 { leaf-list output-list { description "List of filter modules applied to transmitted packets "; type string; } } } container adf { description "Ascend Data Filter definition"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Set of ADF rules"; leaf name { description "Value for a single rule"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf counter { description "Add a counter to each rule"; type empty; } leaf input-precedence { description "Precedence of the input rules"; type uint32 { range "0 .. 255"; } } leaf not-mandatory { description "No errors will be reported if no rules are present"; type empty; } leaf output-precedence { description "Precedence of the output rules"; type uint32 { range "0 .. 255"; } } } leaf group { description "Group to which interface belongs"; type uint32 { range "1 .. 255"; } } } leaf input-hierarchical-policer { description "Hierarchical policer for received packets"; type string; } container policer { description "Interface policing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of policer applied to received packets"; type string; } leaf output { description "Name of policer applied to transmitted packets"; type string; } } container sampling { description "Interface sampling"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Sample all packets input on this interface"; type empty; } leaf output { description "Sample all packets output on this interface"; type empty; } } container service { description "Service operations"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container input { description "Service sets to consider for received packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list service-set { key name; ordered-by user; description "Service set to consider for received packets"; leaf name { description "Name of service set"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf service-filter { description "Name of service filter"; type string; } } leaf post-service-filter { description "Post-service filter to apply to received packets"; type string; } } container output { description "Service sets to consider for transmitted packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list service-set { key name; ordered-by user; description "Service set to consider for transmitted packets"; leaf name { description "Name of service set"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf service-filter { description "Name of service filter"; type string; } } } } list address { key name; ordered-by user; description "Interface address or destination prefix"; leaf name { description "Interface address or destination prefix"; type ipv6prefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf destination { description "Destination address"; type ipv6addr; } leaf eui-64 { description "Generate EUI-64 interface ID"; type empty; } leaf primary { description "Candidate for primary address in system"; type empty; } leaf preferred { description "Preferred address on interface"; type empty; } leaf master-only { description "Master management IP address for router"; type empty; } list ndp { key name; ordered-by user; description "Static Neighbor Discovery Protocol entries"; leaf name { description "Destination IP address"; type ipv6addr; } leaf l2-interface { description "Layer 2 interface name for NDP entry"; type interface-name; } choice mac_address_type { case case_1 { leaf mac { description "MAC address"; type mac-unicaset; } } case case_2 { leaf multicast-mac { description "Multicast MAC address"; type mac-multicast; } } } leaf publish { description "Reply to NDP requests for this entry"; type empty; } } list vrrp-inet6-group { key name; ordered-by user; description "VRRP group"; uses vrrp-group; } container web-authentication { description "Parameters for web-based firewall-user authentication"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf http { description "Enable authentication via HTTP"; type empty; } } leaf virtual-gateway-address { description "Virtual Gateway IP address"; type ipv6addr; } } list demux-source { key name; ordered-by user; description "Demux based on source prefix"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list demux-destination { key name; ordered-by user; description "Demux based on destination prefix"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } container unnumbered-address { presence "enable unnumbered-address"; description "Unnumbered interface address/destination prefix"; leaf source { description "Interface from which to take local address"; type interface-unit; mandatory true; } leaf preferred-source-address { description "Preferred address on the donor interface"; type string; } } leaf dad-disable { description "Disable duplicate-address-detection"; type empty; } leaf no-dad-disable { description "Disable duplicate-address-detection"; type empty; } } container mpls { presence "enable mpls"; description "MPLS protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf mtu { description "Protocol family maximum transmission unit"; type uint32; } leaf maximum-labels { description "Protocol family maximum number of labels"; default "3"; type uint32 { range "3 .. 5"; } } container filter { description "Packet filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice input_choice { case case_1 { leaf input { description "Name of filter applied to received packets"; type string; } } case case_2 { leaf-list input-list { description "List of filter modules applied to received packets "; type string; } } } choice output_choice { case case_1 { leaf output { description "Name of filter applied to transmitted packets"; type string; } } case case_2 { leaf-list output-list { description "List of filter modules applied to transmitted packets "; type string; } } } leaf group { description "Interface group to which interface belongs"; type uint32 { range "1 .. 255"; } } } leaf input-hierarchical-policer { description "Hierarchical policer for received packets"; type string; } container policer { description "Interface policing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of policer applied to received packets"; type string; } leaf output { description "Name of policer applied to transmitted packets"; type string; } } } container mlppp { presence "enable mlppp"; description "Multilink PPP protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bundle { description "Logical interface name this link will join"; type string; mandatory true; } choice anchor-points { case case_1 { leaf service-interface { description "Services interface to use"; type interface-device; } } case case_2 { leaf service-device-pool { description "Service interface pool name to use"; type string { length "1 .. 63"; } } } } leaf dynamic-profile { description " dynamic profile for interface to use"; type string { length "1 .. 80"; } } } container mlfr-end-to-end { presence "enable mlfr-end-to-end"; description "Multilink Frame Relay end-to-end protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bundle { description "Logical interface name this link will join"; type interface-unit; mandatory true; } } container mlfr-uni-nni { presence "enable mlfr-uni-nni"; description "Multilink Frame Relay UNI NNI protocol parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf bundle { description "Logical interface name this link will join"; type interface-unit; mandatory true; } } container ccc { presence "enable ccc"; description "Circuit cross-connect parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf mtu { description "Protocol family maximum transmission unit"; type uint32; } container filter { description "Packet filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice input_choice { case case_1 { leaf input { description "Name of filter applied to received packets"; type string; } } case case_2 { leaf-list input-list { description "List of filter modules applied to received packets "; type string; } } } choice output_choice { case case_1 { leaf output { description "Name of filter applied to transmitted packets"; type string; } } case case_2 { leaf-list output-list { description "List of filter modules applied to transmitted packets "; type string; } } } leaf group { description "Interface group to which interface belongs"; type uint32 { range "1 .. 255"; } } } container policer { description "Interface policing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of policer applied to received packets"; type string; } leaf output { description "Name of policer applied to transmitted packets"; type string; } } leaf translate-fecn-and-becn { description "Translate FECN and BECN bits"; type empty; } choice de-or-plp { case case_1 { leaf translate-discard-eligible { description "Translate DE bit"; type empty; } } case case_2 { leaf translate-plp-control-word-de { description "Translate PLP to/from Martini Control DE bit"; type empty; } } } leaf keep-address-and-control { description "Don't strip PPP address and control bytes"; type empty; } } container tcc { presence "enable tcc"; description "Translational cross-connect parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container policer { description "Interface policing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of policer applied to received packets"; type string; } leaf output { description "Name of policer applied to transmitted packets"; type string; } } container proxy { presence "enable proxy"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf inet-address { description "Remote host address on non-Ethernet side of Ethernet TCC"; type ipv4addr; } } container remote { presence "enable remote"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf inet-address { description "Remote host address on Ethernet side of Ethernet TCC"; type ipv4addr; } leaf mac-address { description "Remote host MAC address on Ethernet side of Ethernet TCC"; type mac-addr; } } leaf-list protocols { description "Protocols supported on TCC interface"; type enumeration { enum mpls { description "Multiprotocol Label Switching"; } enum inet { description "IP version 4"; } enum iso { description "International Organization for Standardization"; } } } } container vpls { presence "enable vpls"; description "Virtual private LAN service parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf core-facing { description "Interface is core facing"; type empty; } container filter { description "Packet filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice input_choice { case case_1 { container input { description "Filter to be applied to received packets"; leaf filter-name { description "Name of the filter"; type string; mandatory true; } presence "enable input"; leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf precedence { description "Precedence of the filter"; type uint32 { range "0 .. 255"; } } } } case case_2 { leaf-list input-list { description "List of filter modules applied to received packets "; type string; } } } choice output_choice { case case_1 { container output { description "Filter to be applied to transmitted packets"; leaf filter-name { description "Name of the filter"; type string; mandatory true; } presence "enable output"; leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf precedence { description "Precedence of the filter"; type uint32 { range "0 .. 255"; } } } } case case_2 { leaf-list output-list { description "List of filter modules applied to transmitted packets "; type string; } } } container adf { description "Ascend Data Filter definition"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Set of ADF rules"; leaf name { description "Value for a single rule"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf counter { description "Add a counter to each rule"; type empty; } leaf input-precedence { description "Precedence of the input rules"; type uint32 { range "0 .. 255"; } } leaf not-mandatory { description "No errors will be reported if no rules are present"; type empty; } leaf output-precedence { description "Precedence of the output rules"; type uint32 { range "0 .. 255"; } } } leaf group { description "Group to which interface belongs"; type uint32 { range "1 .. 255"; } } } container policer { description "Interface policing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of policer applied to received packets"; type string; } leaf output { description "Name of policer applied to transmitted packets"; type string; } } } container bridge { presence "enable bridge"; description "Layer-2 bridging parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf core-facing { description "Interface is core facing"; type empty; } container filter { description "Packet filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice input_choice { case case_1 { container input { description "Filter to be applied to received packets"; leaf filter-name { description "Name of the filter"; type string; mandatory true; } presence "enable input"; leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf precedence { description "Precedence of the filter"; type uint32 { range "0 .. 255"; } } } } case case_2 { leaf-list input-list { description "List of filter modules applied to received packets "; type string; } } } choice output_choice { case case_1 { container output { description "Filter to be applied to transmitted packets"; leaf filter-name { description "Name of the filter"; type string; mandatory true; } presence "enable output"; leaf shared-name { description "Filter shared-name of instances of interface-shared filter"; type string; } leaf precedence { description "Precedence of the filter"; type uint32 { range "0 .. 255"; } } } } case case_2 { leaf-list output-list { description "List of filter modules applied to transmitted packets "; type string; } } } container adf { description "Ascend Data Filter definition"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Set of ADF rules"; leaf name { description "Value for a single rule"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf counter { description "Add a counter to each rule"; type empty; } leaf input-precedence { description "Precedence of the input rules"; type uint32 { range "0 .. 255"; } } leaf not-mandatory { description "No errors will be reported if no rules are present"; type empty; } leaf output-precedence { description "Precedence of the output rules"; type uint32 { range "0 .. 255"; } } } leaf group { description "Group to which interface belongs"; type uint32 { range "1 .. 255"; } } } container policer { description "Interface policing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of policer applied to received packets"; type string; } leaf output { description "Name of policer applied to transmitted packets"; type string; } } leaf interface-mode { description "Interface mode (access or trunk)"; type enumeration { enum access { description "Interface mode is access"; } enum trunk { description "Interface mode is trunk"; } } } leaf bridge-domain-type { description "Bridge domain type (svlan or bvlan)"; type enumeration { enum svlan { description "Bridge domain type svlan"; } enum bvlan { description "Bridge domain type bvlan"; } } } leaf inter-switch-link { description "PVLAN inter switch link"; type empty; } choice vlan_list { case case_1 { leaf vlan-id { description "Access mode and trunk mode VLAN membership"; type uint32 { range "1 .. 4094"; } } } case case_2 { leaf-list vlan-id-list { description "Trunk mode VLAN membership for this interface"; type string; } } case case_3 { leaf-list inner-vlan-id-list { description "Trunk mode VLAN membership for this interface based on inner VLAN tag"; type string; } } } container vlan-rewrite { description "Specify vlan translation"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list translate { key name; ordered-by user; description "Translate incoming VLAN tag"; leaf name { description "Specify the incoming VLAN tag"; type uint32 { range "1 .. 4094"; } mandatory true; } leaf to-vlan-id { description "Specify the bridge-domain VLAN-ID"; type uint32 { range "1 .. 4094"; } mandatory true; } } } choice isid_list { case case_1 { leaf isid-list { description "Specify the ISID list"; type enumeration { enum all-service-groups { description "Map all ISIDs specified under the service-groups"; } enum all { description "Map all ISIDs"; } } } } } container storm-control { description "Storm control profile name to bind"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf profile-name { description "Profile name"; type string; mandatory true; } presence "enable storm-control"; } container recovery-timeout { description "Recovery timeout for this interface"; leaf time-in-seconds { description "(null)"; units "seconds"; type uint32 { range "10 .. 3600"; } } } } container ethernet-switching { description "Ethernet switching parameters"; uses ethernet-switching-type; } container fibre-channel { description "Fibre channel switching parameters"; uses fibre-channel-type; } container pppoe { description "PPP over Ethernet underlying interface-specific options"; uses pppoe_underlying_options_type; } container any { presence "enable any"; description "Parameters for 'any' family"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container filter { description "Layer 2 packet filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of filter applied to received packets"; type string { } } leaf group { description "Group to which interface belongs"; type uint32 { range "1 .. 255"; } } } } } leaf service-domain { description "Service domain to which interface belongs"; type enumeration { enum inside { description "Inside network"; } enum outside { description "Outside network"; } } } leaf copy-tos-to-outer-ip-header { description "Copy IP payload header's ToS field to GRE delivery header"; type empty; } container load-balancing-options { description "AMS subunit load balancing options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf preferred-active { description "Preferred active Interface name"; type interface-device; } container hash-keys { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list ingress-key { description "Hash Key for the ingress direction"; type enumeration { enum source-ip { description "Source Ip Address"; } enum destination-ip { description "Destination Ip Address"; } enum protocol { description "Protocol"; } enum iif { description "Incoming Interface"; } } } } } leaf mac { description "Configure logical interface MAC address"; type mac-unicaset; } leaf virtual-gateway-v4-mac { description "Configure virtual gateway IPV4 virtual MAC address"; type mac-unicaset; } leaf virtual-gateway-v6-mac { description "Configure virtual gateway IPV6 virtual MAC address"; type mac-unicaset; } container forwarding-options { description "Aggregated Ethernet interface forwarding-options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container load-balance-stateful { description "Stateful load balancing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf per-flow { description "Enable feature"; type empty; mandatory true; } presence "enable load-balance-stateful"; leaf rebalance { description "Rebalancing interval"; units "per minute"; type uint32 { range "1 .. 1000"; } } leaf load-type { description "Load - defines the flows"; type enumeration { enum high { description "If the no of flows on this aggregate is large(1000-10000 flows) "; } enum medium { description "If the no of flows on this aggregate is moderate(100-1000 flows)"; } enum low { description "If the no of flows on this aggregate is less(1-100)"; } } } } } } } grouping lsp-set-match-type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf lsp-name { description "LSP name that matches this string"; type string; } leaf lsp-regex { description "All LSPs that match this regular expression pattern"; type string; } leaf p2mp-name { description "P2MP names that match this string"; type string; } leaf p2mp-regex { description "P2MP names that match this regular expression pattern"; type string; } choice router-type { case case_1 { leaf egress { description "All LSPs for which this router is egress"; type empty; } } case case_2 { leaf ingress { description "All LSPs for which this router is ingress"; type empty; } } case case_3 { leaf transit { description "All LSPs for which this router is transit"; type empty; } } } } grouping lsp_nh_obj { leaf name { description "LSP to use to reach destination"; type string; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf preference { description "Preference of LSP next hop"; type uint32; } leaf metric { description "Metric of LSP next hop"; type uint32; } } grouping mac_list { description "MAC address"; leaf name { description "(null)"; type mac-addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container policer { description "MAC policing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of policer applied to received packets"; type string; } leaf output { description "Name of policer applied to transmitted packets"; type string; } } } grouping martian_type { description "Invalid routes"; leaf address { description "IP address or hostname"; type ipprefix; } choice modifier { case case_1 { leaf exact { description "Exactly match the prefix length"; type empty; } } case case_2 { leaf longer { description "Mask is greater than the prefix length"; type empty; } } case case_3 { leaf orlonger { description "Mask is greater than or equal to the prefix length"; type empty; } } case case_4 { leaf upto { description "Mask falls between two prefix lengths"; type string { } } } case case_5 { leaf through { description "Route falls between two prefixes"; type ipprefix; } } case case_6 { leaf prefix-length-range { description "Mask falls between two prefix lengths"; type string { } } } } leaf allow { description "(null)"; type empty; } } grouping match_L2_flexible_mask { description "Define a flexible match"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf match-start { description "Start point to match in packet"; type enumeration { enum layer-2 { description "Layer-2 match start"; } enum layer-3 { description "Layer-3 match start"; } enum layer-4 { description "Layer-4 match start"; } enum payload { description "Payload match start"; } } } leaf byte-offset { description "Byte offset after the match start point"; type uint32; } leaf bit-offset { description "Bit offset after the (match-start + byte) offset"; type uint32 { range "0 .. 7"; } } leaf bit-length { description "Length of the data to be matched in bits, not needed for string input"; type uint32 { range "0 .. 128"; } } leaf mask-in-hex { description "Mask out bits in the packet data to be matched"; type string { } } leaf prefix { description "Value data/string to be matched"; type string { } mandatory true; } leaf flexible-mask-name { description "Select a flexible match from predefined template field"; type string; } } grouping match_L2_flexible_range { description "Define a flexible match"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf match-start { description "Start point to match in packet"; type enumeration { enum layer-2 { description "Layer-2 match start"; } enum layer-3 { description "Layer-3 match start"; } enum layer-4 { description "Layer-4 match start"; } enum payload { description "Payload match start"; } } } leaf byte-offset { description "Byte offset after the match start point"; type uint32; } leaf bit-offset { description "Bit offset after the (match-start + byte) offset"; type uint32 { range "0 .. 7"; } } leaf bit-length { description "Length of the data to be matched in bits"; type uint32 { range "0 .. 32"; } } choice range_choice { case case_1 { leaf range { description "Range of values to be matched"; type string; } } case case_2 { leaf range-except { description "Range of values to be not matched"; type string; } } } leaf flexible-range-name { description "Select a flexible match from predefined template field"; type string; } } grouping match_L3_flexible_mask { description "Define a flexible match"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf match-start { description "Start point to match in packet"; type enumeration { enum layer-3 { description "Layer-3 match start"; } enum layer-4 { description "Layer-4 match start"; } enum payload { description "Payload match start"; } } } leaf byte-offset { description "Byte offset after the match start point"; type uint32; } leaf bit-offset { description "Bit offset after the (match-start + byte) offset"; type uint32 { range "0 .. 7"; } } leaf bit-length { description "Length of the data to be matched in bits, not needed for string input"; type uint32 { range "0 .. 128"; } } leaf mask-in-hex { description "Mask out bits in the packet data to be matched"; type string { } } leaf prefix { description "Value data/string to be matched"; type string { } mandatory true; } leaf flexible-mask-name { description "Select a flexible match from predefined template field"; type string; } } grouping match_L3_flexible_range { description "Define a flexible match"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf match-start { description "Start point to match in packet"; type enumeration { enum layer-3 { description "Layer-3 match start"; } enum layer-4 { description "Layer-4 match start"; } enum payload { description "Payload match start"; } } } leaf byte-offset { description "Byte offset after the match start point"; type uint32; } leaf bit-offset { description "Bit offset after the (match-start + byte) offset"; type uint32 { range "0 .. 7"; } } leaf bit-length { description "Length of the data to be matched in bits"; type uint32 { range "0 .. 32"; } } choice range_choice { case case_1 { leaf range { description "Range of values to be matched"; type string; } } case case_2 { leaf range-except { description "Range of values to be not matched"; type string; } } } leaf flexible-range-name { description "Select a flexible match from predefined template field"; type string; } } grouping match_interface_object { leaf name { description "Interface to match"; type interface-wildcard; } } grouping match_interface_object_oam { leaf name { description "Interface to match"; type interface-wildcard; } } grouping match_interface_set_object { leaf name { description "Interface set to match"; type string; } } grouping match_li_simple_dscp_value { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf value_keyword { description "(null)"; type string; } } grouping match_li_simple_port_value { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf value_keyword { description "(null)"; type string; } } grouping match_li_simple_protocol_value { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf value_keyword { description "(null)"; type string; } } grouping match_simple_dscp_value { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf value_keyword { description "(null)"; type string; } } grouping match_simple_payload_protocol_value { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf value_keyword { description "(null)"; type string; } } grouping match_simple_port_value { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf value_keyword { description "(null)"; type string; } } grouping match_simple_protocol_value { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf value_keyword { description "(null)"; type string; } } grouping metric_expression_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container metric { description "Parameters for metric attribute"; leaf multiplier { description "Coefficient for metric attribute"; type decimal64 { fraction-digits 2; } } leaf offset { description "Offset for metric attribute"; type int32; } } container metric2 { description "Parameters for metric2 attribute"; leaf multiplier { description "Coefficient for metric2 attribute"; default "1.0"; type decimal64 { fraction-digits 2; } } leaf offset { description "Offset for metric2 attribute"; type int32; } } } grouping mib-variable-name-object { leaf name { description "MIB variable name"; type string { } } } grouping mobile-diameter-profiles { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list gy-profile { key name; ordered-by user; description "Diameter Gy application profile configuration"; uses mobile-diameter-profile-type-gy; } list gx-profile { key name; ordered-by user; description "Diameter Gx application profile configuration"; uses mobile-diameter-profile-type-gx; } } grouping mobile-diameter-profile-type-gx { leaf name { description "Diameter profile name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list targets { key name; ordered-by user; description "Mobile diameter target configurations"; uses mobile-diameter-target; } leaf request-timeout { description "Profile request timeout"; units "seconds"; type uint32 { range "0 .. 65535"; } } container attributes { description "Diameter AVP attributes for Gx application"; uses mobile-diameter-gx-profile-attr-type; } } grouping mobile-diameter-gx-profile-attr-type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container include { description "Specify AVP options to be included"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf gx-capability-list { description "Include Gx Capability list AVP"; type uint32; } leaf rule-suggestion { description "Include Rule-suggestion AVP"; type string { length "1 .. 63"; } } leaf rai { description "Include RAI AVP"; type empty; } leaf qos-negotiation { description "Include QoS Negotiation AVP"; type empty; } leaf qos-upgrade { description "Include QoS Upgrade AVP"; type empty; } } container exclude { description "Specify AVP options to be excluded"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf packet-filter-information { description "Exclude Packet Filter Information AVP"; type empty; } leaf packet-filter-operation { description "Exclude Packet Filter Operation AVP"; type empty; } leaf rat-type { description "Exclude Rat-Type AVP"; type empty; } leaf default-eps-bearer-qos { description "Exclude Default EPS Bearer QOS AVP"; type empty; } leaf an-gw-address { description "Exclude AN-GW-Address AVP"; type empty; } leaf network-request-support { description "Exclude Network Request Support AVP"; type empty; } leaf event-trigger { description "Exclude Event Trigger AVP"; type empty; } leaf threegpp-rat-type { description "Exclude 3GPP-RAT-Type AVP"; type empty; } leaf offline { description "Exclude Offline AVP"; type empty; } leaf qos-negotiation { description "Exclude QoS Negotiation AVP"; type empty; } leaf qos-upgrade { description "Exclude QoS Upgrade AVP"; type empty; } } } grouping mobile-diameter-profile-type-gy { leaf name { description "Diameter profile name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list targets { key name; ordered-by user; description "Mobile diameter target configurations"; uses mobile-diameter-target; } leaf request-timeout { description "Profile request timeout"; units "seconds"; type uint32 { range "0 .. 65535"; } } container attributes { description "Diameter AVP attributes for Gy application"; uses mobile-diameter-gy-profile-attr-type; } } grouping mobile-diameter-gy-profile-attr-type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container include { description "Specify AVP options to be included"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf cumulative-used-service-unit { description "Include cumulative-used-service-unit AVP"; type empty; } leaf credit-instance-id { description "Include credit-instance-id AVP"; type empty; } leaf service-start-timestamp { description "Include service-start-timestamp AVP"; type empty; } leaf mscc-qos-information { description "Include mscc-qos-information AVP"; type empty; } leaf framed-ip-address { description "Include framed ip address AVP"; type empty; } leaf framed-ipv6-prefix { description "Include framed IPV6 Prefix AVP"; type empty; } leaf gprs-negotiated-qos { description "Include GPRS negotiated QOS AVP"; type empty; } } container exclude { description "Specify AVP options to be excluded"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ps-information { description "Exclude PS Information AVP. If excluded, all the 3GPP AVPs will be sent at command level "; type empty; } leaf username { description "Exclude Username AVP"; type empty; } leaf user-equipment-info { description "Exclude user equipment info AVP"; type empty; } leaf all-3gpp-avps { description "Exclude all 3GPP AVPs"; type empty; } leaf qos-information { description "Exclude QOS information AVP"; type empty; } leaf pdn-connection-id { description "Exclude PDN connection id AVP"; type empty; } leaf dynamic-address-flag { description "Exclude dynamic address flag AVP"; type empty; } leaf serving-node-type { description "Exclude serving node type AVP"; type empty; } leaf cc-selection-mode { description "Exclude charging characteristics selection mode AVP"; type empty; } leaf start-time { description "Exclude start time AVP"; type empty; } leaf stop-time { description "Exclude stop time AVP"; type empty; } leaf user-location-information { description "Exclude user location information AVP"; type empty; } } } grouping mobile-diameter-target { description "Diameter target configuration"; leaf name { description "Diameter target name"; type string { length "1 .. 31"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf destination-realm { description "Destination realm associated with this target"; type string { length "1 .. 255"; } mandatory true; } leaf destination-host { description "Destination host associated with this target"; type string { length "1 .. 255"; } } leaf priority { description "Target priority"; type uint32 { range "1 .. 65535"; } mandatory true; } leaf network-element { description "Specify the diameter network element for this target"; type string { length "1 .. 31"; } mandatory true; } } grouping monitor-threshold { leaf normal { description "Usage under normal conditions"; type uint8 { range "1 .. 100"; } mandatory true; } leaf threshold { description "Threshold upon which alarm is raised"; type uint8 { range "1 .. 100"; } mandatory true; } } grouping monitoring_output_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf export-format { description "Format for sending monitoring information"; type enumeration { enum cflowd-version-5 { description "Export in cflowd version 5 format"; } } } leaf flow-active-timeout { description "Interval after which an active flow is exported"; default "1800"; units "seconds"; type uint32 { range "60 .. 1800"; } } leaf flow-inactive-timeout { description "Interval of inactivity that marks a flow inactive"; default "60"; units "seconds"; type uint32 { range "15 .. 1800"; } } leaf flow-export-destination { description "Destination for flow export"; type enumeration { enum collector-pic { description "Send flow information to collector PIC"; } enum cflowd-collector { description "Send flow information to cflowd collector"; } } } list cflowd { key name; description "Collector destination where flow records are sent"; uses cflowd_monitoring_type; } list interface { key name; description "Interfaces used to send monitored information"; uses monitor_export_intf_type; } } grouping cflowd_monitoring_type { leaf name { description "Name of host collecting cflowd packets"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port { description "UDP port number on host collecting cflowd packets"; type uint16; mandatory true; } leaf routing-instance { description "Name of routing instance on which flow collector is reachable"; type string; } } grouping monitor_export_intf_type { leaf name { description "Interface to be used for sending monitored information"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf engine-id { description "Identity (number) of this monitoring interface"; type uint8; } leaf engine-type { description "Type (number) of this monitoring interface"; type uint8; } leaf input-interface-index { description "Input interface index for records from this interface"; default "0"; type uint32; } leaf output-interface-index { description "Output interface index for records from this interface"; default "0"; type uint32; } leaf source-address { description "Address to use for generating monitored packets"; type ipv4addr; } } grouping mpls_dialer_filter { description "Define an MPLS DIALER filter"; leaf name { description "Filter name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list accounting-profile { description "Accounting profile name"; type string; } list term { key name; ordered-by user; description "Define a firewall term"; leaf name { description "Term name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Define match criteria"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice exp_choice { case case_1 { leaf-list exp { description "Range of values"; type string; } } case case_2 { leaf-list exp-except { description "Range of values"; type string; } } } } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf log { description "Log the packet"; type empty; } leaf syslog { description "System log (syslog) information about the packet"; type empty; } leaf sample { description "Sample the packet"; type empty; } choice designation { case case_1 { leaf note { description "Interested ISDN packet"; type empty; } } case case_2 { leaf ignore { description "Non-interested ISDN packet"; type empty; } } } } } } grouping mpls_filter { description "Define an MPLS firewall filter"; leaf name { description "Filter name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list accounting-profile { description "Accounting profile name"; type string; } leaf interface-specific { description "Defined counters are interface specific"; type empty; } leaf physical-interface-filter { description "Filter is physical interface filter"; type empty; } list term { key name; ordered-by user; description "Define a firewall term"; leaf name { description "Term name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf filter { description "Filter to include"; type string { } } container from { description "Define match criteria"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list ip-version { key name; ordered-by user; description "Specify inner IP version"; max-elements 1; leaf name { description "IP version choices"; type enumeration { enum ipv4 { description "Internet Protocol version 4"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list protocol { key name; ordered-by user; description "Specify inner IP protocol"; max-elements 1; leaf name { description "IP protocol choices"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice source-port_choice { case case_1 { leaf-list source-port { description "(null)"; type string; } } case case_2 { leaf-list source-port-except { description "(null)"; type string; } } } choice destination-port_choice { case case_1 { leaf-list destination-port { description "(null)"; type string; } } case case_2 { leaf-list destination-port-except { description "(null)"; type string; } } } } list source-address { key name; ordered-by user; description "Match IP source address"; uses firewall_addr_object; } list destination-address { key name; ordered-by user; description "Match IP destination address"; uses firewall_addr_object; } container ipv4 { presence "enable ipv4"; description "Define L3/L4 match items to match IPv4 packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list protocol { key name; ordered-by user; description "Specify inner IP protocol"; max-elements 1; leaf name { description "IP protocol choices"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice source-port_choice { case case_1 { leaf-list source-port { description "(null)"; type string; } } case case_2 { leaf-list source-port-except { description "(null)"; type string; } } } choice destination-port_choice { case case_1 { leaf-list destination-port { description "(null)"; type string; } } case case_2 { leaf-list destination-port-except { description "(null)"; type string; } } } } list source-address { key name; ordered-by user; description "Match IP source address"; uses firewall_addr_object; } list destination-address { key name; ordered-by user; description "Match IP destination address"; uses firewall_addr_object; } } container ipv6 { presence "enable ipv6"; description "Define L3/L4 match items to match IPv6 packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list protocol { key name; ordered-by user; description "Specify inner IP protocol"; max-elements 1; leaf name { description "IP protocol choices"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice source-port_choice { case case_1 { leaf-list source-port { description "(null)"; type string; } } case case_2 { leaf-list source-port-except { description "(null)"; type string; } } } choice destination-port_choice { case case_1 { leaf-list destination-port { description "(null)"; type string; } } case case_2 { leaf-list destination-port-except { description "(null)"; type string; } } } } list source-address { key name; ordered-by user; description "Match IPv6 source address"; uses firewall_addr6_object; } list destination-address { key name; ordered-by user; description "Match IPv6 destination address"; uses firewall_addr6_object; } } } choice exp_choice { case case_1 { leaf-list exp { description "Range of values between 0 and 7 in decimal, binary or hex"; type string; } } case case_2 { leaf-list exp-except { description "Range of values between 0 and 7 in decimal, binary or hex"; type string; } } } list interface { key name; ordered-by user; description "Match interface name"; uses match_interface_object; } list interface-set { key name; ordered-by user; description "Match interface in set"; uses match_interface_set_object; } choice forwarding-class_choice { case case_1 { leaf-list forwarding-class { description "String name"; type string { } } } case case_2 { leaf-list forwarding-class-except { description "String name"; type string { } } } } choice loss-priority_choice { case case_1 { leaf-list loss-priority { description "(null)"; type enumeration { enum low { description "Loss priority low"; } enum high { description "Loss priority high"; } enum medium-low { description "Loss priority medium-low"; } enum medium-high { description "Loss priority medium-high"; } } } } case case_2 { leaf-list loss-priority-except { description "(null)"; type enumeration { enum low { description "Loss priority low"; } enum high { description "Loss priority high"; } enum medium-low { description "Loss priority medium-low"; } enum medium-high { description "Loss priority medium-high"; } } } } } choice interface-group_choice { case case_1 { leaf-list interface-group { description "Range of values"; type string; } } case case_2 { leaf-list interface-group-except { description "Range of values"; type string; } } } list label { key name; ordered-by user; description "MPLS label bits"; leaf name { description "Range of values between 0 and 1048575 in decimal or hexadecimal"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice policer-choice { case case_1 { leaf policer { description "Name of policer to use to rate-limit traffic"; type string { } } } case case_2 { container three-color-policer { description "Police the packet using a three-color-policer"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice type-choice { case case_1 { leaf single-rate { description "Name of single-rate three-color policer to use to rate-limit traffic"; type string { } } } case case_2 { leaf two-rate { description "Name of two-rate three-color policer to use to rate-limit traffic"; type string { } } } } } } case case_3 { leaf hierarchical-policer { description "Name of hierarchical policer to use to rate-limit traffic"; type string { } } } } leaf count { description "Count the packet in the named counter"; type string { } } leaf sample { description "Sample the packet"; type empty; } leaf loss-priority { description "Classify packet to loss-priority"; type enumeration { enum low { description "Loss priority low"; } enum high { description "Loss priority high"; } enum medium-low { description "Loss priority medium-low"; } enum medium-high { description "Loss priority medium-high"; } } } leaf forwarding-class { description "Classify packet to forwarding class"; type string { } } leaf packet-mode { description "Bypass flow mode for the packet"; type empty; } choice designation { case case_1 { leaf accept { description "Accept the packet"; type empty; } } case case_2 { leaf discard { description "Discard the packet"; type empty; } } case case_3 { leaf next { description "Continue to next term in a filter"; type enumeration { enum term { description "Continue to next term in a filter"; } } } } } choice policy-map-choice { case case_1 { leaf clear-policy-map { description "Clear the policy marking"; type empty; } } case case_2 { leaf policy-map { description "Policy map action"; type string { } } } } leaf port-mirror-instance { description "Port-mirror the packet to specified instance"; type string { } } container encapsulate { presence "enable encapsulate"; description "Send to a tunnel"; leaf tunnel-end-point { description "Name of the tunnel end point"; type string { } mandatory true; } } } } leaf instance-shared { description "Filter is routing-instance shared"; type empty; } } grouping mpls_ifd_options { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container pop-all-labels { presence "enable pop-all-labels"; description "Pop all MPLS labels off incoming packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list required-depth { description "Required label depth of packet to pop all labels"; type enumeration { enum all { description "Takes effect only in Stoli based FPCs, in all other FPCs equivalent to '[1 2]'"; } enum 1 { description "Required label depth of packet to pop labels"; } enum 2 { description "Required label depth of packet to pop labels"; } } } } } grouping mpls_pm_family_output_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf server-profile { description "Server profile name"; type string { length "3 .. 32"; } } } grouping mrp-trace-options { description "Trace options for MMRP Protocol"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum events { description "Trace events to the protocol state machine"; } enum pdu { description "Trace RAPS PDU reception and transmission"; } enum timers { description "Trace protocol timers"; } enum state-machine { description "Trace information of the state machine"; } enum socket { description "Trace soccket activity"; } enum error { description "Trace all failure conditions"; } enum all { description "Trace all"; } } } leaf disable { description "Disable this trace flag"; type empty; } } } grouping multi-chassis-protection-group { leaf name { description "IP address for this peer"; type ipv4addr; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interface { description "Inter-Chassis protection link"; type string { length "1 .. 40"; } mandatory true; } } grouping multicast_interface_options_type { description "Multicast interface options"; leaf name { description "Interface name"; type interface-unit; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container maximum-bandwidth { presence "enable maximum-bandwidth"; description "Maximum multicast bandwidth for the interface"; leaf bandwidth-limit { description "Maximum multicast bandwidth on the interface"; units "bps"; type string; } } choice enable-disable { } container reverse-oif-mapping { presence "enable reverse-oif-mapping"; description "Enable reverse OIF mapping on the multicast interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-qos-adjust { description "Disable reverse OIF mapping QoS adjustment"; type empty; } } leaf subscriber-leave-timer { description "Timeout in seconds to credit back the bandwidth on the subscriber interface"; units "seconds"; type uint32 { range "0 .. 30"; } } leaf no-qos-adjust { description "Disable QoS adjustment for this interface"; type empty; } } grouping multilink-object { description "Configuration for Multilink"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf fragment-threshold { description "Fragmentation threshold"; units "bytes"; type uint16 { range "128 .. 9192"; } } leaf drop-timeout { description "Drop timeout"; default "0"; units "milliseconds"; type uint16 { range "0 .. 2000"; } } } grouping name-resolution-cache-type { description "Configuration of DNS responses cache"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container maximum-time-in-cache { presence "enable maximum-time-in-cache"; description "Maximum time a DNS response may be held in the cache"; choice maximum-time-in-cache { case case_1 { leaf unlimited { description "Cache according to TTL"; type empty; } } case case_2 { leaf time { description "Seconds"; type uint32 { range "0 .. 604800"; } } } } } leaf maximum-records-in-cache { description "Maximum number of DNS responses that may be held in the cache"; default "5000"; type uint32 { range "0 .. 50000"; } } leaf blacklist-period { description "Time (in seconds) a record will be held in the blacklist"; default "600"; type uint32 { range "0 .. 86400"; } } container accelerations { presence "enable accelerations"; description "Mechanisms for accelerating DNS resolving"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-refresh-before-ttl-expiry { description "Don't send a new query for records that are about to expire"; type empty; } leaf initiate-next-queries { description "Immediately initiate queries for referenced entries (e.g A entries referenced from SRV ones)"; type empty; } leaf initiate-alternative-queries { description "Initiate NAPTR, SRV and A record queries, in parallel, for every new SIP URI"; type empty; } } } grouping name_server_type { leaf name { description "IPv4 DNS name server address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } grouping nameserver-object { leaf name { description "DNS name server address"; type ipaddr; } } grouping nat_pool_object { leaf name { description "Pool name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container pgcp { presence "enable pgcp"; description "NAT pool should be used exclusive by the pgcp service"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf remotely-controlled { description "Remotely controlled NAT pool allocation"; type empty; } leaf ports-per-session { description "Number of ports to allocate in each call setup"; default "2"; type uint8; } list hint { key name; ordered-by user; description "NAT-hint list (Any string available up to 3 characters, not mandatory field)"; max-elements 5; uses nat_pgcp_hint_list_object; } leaf-list transport { description "NAT pool transport types list"; type enumeration { enum tcp { description "TCP"; } enum udp { description "UDP"; } enum rtp-avp { description "RTP/AVP"; } } } } list address { key name; ordered-by user; description "Address or address prefix for NAT"; leaf name { description "(null)"; type ipprefix-only; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list address-range { key "low high"; ordered-by user; description "Range of addresses for NAT"; leaf low { description "Lower limit of address range"; type ipaddr; } leaf high { description "Upper limit of address range"; type ipaddr; } } container port { description "Specify ports for NAT"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice port_choice { case case_1 { container automatic { presence "enable automatic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice automatic_choice { case case_1 { leaf sequential { description "Allocate ports in sequence"; type empty; } } case case_2 { leaf random-allocation { description "Allocate ports randomly"; type empty; } } } } } case case_2 { container range { description "Range of ports"; leaf low { description "Lower limit of port range"; type uint16 { range "1 .. 65535"; } mandatory true; } presence "enable range"; leaf high { description "Upper limit of port range"; type uint16 { range "1 .. 65535"; } mandatory true; } leaf random-allocation { description "Allocate ports randomly"; type empty; } } } } choice block-allocation-choice { case case_1 { container secured-port-block-allocation { presence "enable secured-port-block-allocation"; description "Secured Port block allocation"; leaf block-size { description "Number of port per block."; default "128"; type uint16 { range "1 .. 32000"; } } leaf max-blocks-per-address { description "Max block per address"; default "8"; type uint16 { range "1 .. 512"; } } leaf active-block-timeout { description "Active block timeout"; default "120"; type uint32 { range "0 .. 86400"; } } } } case case_2 { container deterministic-port-block-allocation { presence "enable deterministic-port-block-allocation"; description "Deterministic Port Block Allocation"; leaf block-size { description "Number of ports per block"; default "512"; type uint16 { range "0 .. 64512"; } } leaf include-boundary-addresses { description "Include network and broadcast in 'from' src-addresses"; type empty; } } } } leaf preserve-parity { description "Allocate port with same parity as original port"; type empty; } leaf preserve-range { description "Preserve privileged port range after NAT"; type empty; } } container address-allocation { presence "enable address-allocation"; description "Address allocation method for NAPT"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf round-robin { description "Round robin method of allocation"; type empty; } } leaf mapping-timeout { description "Address-pooling paired and endpoint-independent mapping timeout (120..86400)"; default "300"; units "second"; type int32; } leaf ei-mapping-timeout { description "Endpoint-independent mapping timeout (120..86400)"; units "second"; type int32; } leaf app-mapping-timeout { description "Address-pooling paired mapping timeout (120..86400)"; units "second"; type int32; } leaf limit-ports-per-address { description "Limit number of ports allocated per host (IP address)"; units "connections"; type int32 { range "2 .. 65435"; } } container snmp-trap-thresholds { presence "enable snmp-trap-thresholds"; description "Define snmp traps for service sets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container address-port { presence "enable address-port"; description "Nat pool address and port usage trap threshold range"; leaf low { description "Lower limit of pool trap threshold"; units "percent"; type uint16 { range "0 .. 100"; } mandatory true; } leaf high { description "Upper limit of pool trap threshold"; units "percent"; type uint16 { range "0 .. 100"; } mandatory true; } } } } grouping nat_pgcp_hint_list_object { description "NAT hints"; leaf name { description "NAT-hint string list"; type string { length "1 .. 4"; } } } grouping nat_rule_object { leaf name { description "Rule name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf match-direction { description "Direction for which the rule match is applied"; type enumeration { enum input { description "Match on input to interface"; } enum output { description "Match on output from interface"; } enum input-output { description "Match an input to or output from on interface"; } } mandatory true; } list term { key name; ordered-by user; description "Define a NAT term"; leaf name { description "Term name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf nat-type { description "NAT type (symmetric/full-cone)"; type enumeration { enum symmetric { description "Symmetric NAT"; } enum full-cone { description "Full Cone NAT"; } } } container from { description "Define match criteria"; uses sfw_match_object; } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice designation { case case_1 { leaf no-translation { description "Do not perform translation"; type empty; } } } choice softwire { } choice port-forwarding { case case_1 { leaf port-forwarding-mappings { description "Port forwarding mappings"; type string { length "1 .. 63"; } } } } container translated { description "Define translation parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice source-pool-choice { case case_1 { leaf source-pool { description "NAT pool for source translation"; type string { length "1 .. 63"; } } } case case_2 { leaf source-prefix { description "NAT prefix for source translation"; type ipprefix-only; } } } choice destination-pool-choice { case case_1 { leaf destination-pool { description "NAT pool for destination translation"; type string { length "1 .. 63"; } } } case case_2 { leaf destination-prefix { description "NAT prefix for destination translation"; type ipprefix-only; } } } choice dns-alg-pool-choice { case case_1 { leaf dns-alg-pool { description "NAT pool for dns alg mappings"; type string { length "1 .. 63"; } } } case case_2 { leaf dns-alg-prefix { description "DNS ALG 96 bit prefix for mapping IPv4 addresses to IPv6 addresses"; type ipprefix-only; } } } choice dns-map-address-for-destination-translation-choice { } choice overload-pool-choice { case case_1 { leaf overload-pool { description "NAT pool to be used when source pool is overloaded"; type string { length "1 .. 63"; } } } case case_2 { leaf overload-prefix { description "NAT prefix to be used when source pool is overloaded"; type ipprefix-only; } } } container translation-type { description "Type of translation to perform"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container basic-nat44 { presence "enable basic-nat44"; description "Static source address (IPv4 to IPv4) translation"; } container dynamic-nat44 { presence "enable dynamic-nat44"; description "Dynamic source address only (IPv4 to IPv4) translation"; } container napt-44 { presence "enable napt-44"; description "Source address (IPv4 to IPv4) and port translation"; } container dnat-44 { presence "enable dnat-44"; description "Static Destination address (IPv4 to IPv4) translation"; } container stateful-nat64 { presence "enable stateful-nat64"; description "Dynamic source address (IPv6 to IPv4) and prefix removal for destination address (IPv6 to IPv4)translation"; } container basic-nat-pt { presence "enable basic-nat-pt"; description "NAT-PT (static source address (IPv6 to IPv4) and prefix removal for destination address (IPv6 to IPv4) translation)"; } container napt-pt { presence "enable napt-pt"; description "NAT-PT (source address (IPv6 to IPv4) and source port and prefix removal for destination address (IPv6 to IPv4) translation)"; } container basic-nat66 { presence "enable basic-nat66"; description "Static source address (IPv6 to IPv6) translation [same as basic-nat44 but for IPv6 address family]"; } container nptv6 { presence "enable nptv6"; description "Stateless source address (IPv6 to IPv6) translation"; } container napt-66 { presence "enable napt-66"; description "Source address (IPv6 to IPv6) and port translation [same as napt-44 but for IPv6 address family]"; } container twice-napt-44 { presence "enable twice-napt-44"; description "Source NAPT and destination static translation for IPv4 address family"; } container twice-basic-nat-44 { presence "enable twice-basic-nat-44"; description "Source static and destination static translation for IPv4 address family"; } container twice-dynamic-nat-44 { presence "enable twice-dynamic-nat-44"; description "Source dynamic and destination static translation for IPv4 address family"; } container deterministic-napt44 { presence "enable deterministic-napt44"; description "Deterministic source NAPT for IPv4 family"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } leaf mapping-type { description "Source NAT mapping type"; type enumeration { enum endpoint-independent { description "Endpoint independent mapping"; } } } container secure-nat-mapping { presence "enable secure-nat-mapping"; description "Mapping options for enhanced security"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf eif-flow-limit { description "Number of inbound flows to be allowed for a EIF mapping"; type uint16 { range "0 .. 65534"; } } leaf mapping-refresh { description "Enable timer refresh option"; type enumeration { enum inbound { description "Enable timer refresh for inbound connections only"; } enum outbound { description "Enable timer refresh for outbound connections only"; } enum inbound-outbound { description "Enable timer refresh for inbound & outbound connections"; } } } } container filtering-type { description "Source NAT filtering type"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container endpoint-independent { presence "enable endpoint-independent"; description "Endpoint independent filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list prefix-list { key name; ordered-by user; description "One or more named lists of source prefixes to match"; leaf name { description "Name of prefix list to match against"; type string; } leaf except { description "Name of prefix list not to match against"; type empty; } } } } leaf address-pooling { description "Address pooling behavior for source NAT"; type enumeration { enum paired { description "Address pooling behavior of paired"; } } } } leaf syslog { description "System log information about the packet"; type empty; } } } } grouping network_type { leaf name { description "Network prefix"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } grouping new_call_then_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf trace { description "Trace messages accepted on this policy"; type empty; } container media-policy { description "Media policy parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice anchoring-policy { case case_1 { leaf no-anchoring { description "Setting this would bypass media packet gateway processing"; type empty; } } case case_2 { leaf media-release { description "Release media - media will not be anchored"; type empty; } } } container nat-traversal { presence "enable nat-traversal"; description "Choose when to perform NAT traversal"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf nat-traversal-strategy { description "Choose when to perform NAT traversal"; type enumeration { enum never { description "Never perform NAT traversal"; } enum always { description "Always perform NAT traversal"; } enum same-as-signaling { description "Perform NAT traversal according to signaling"; } } } leaf force-bidirectional-media { description "Force bidirectional media"; type empty; } } container data-inactivity-detection { description "Configuration of data inactivity indicators"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf inactivity-duration { description "The amount of time in seconds a stream is inactive before a notification is sent to the SPDF"; units "seconds"; type uint16 { range "30 .. 3600"; } } } leaf service-class { description "Rate limiting and dscp marking based on the media type"; type string { length "1 .. 63"; } } } } grouping new_call_usage_set_type { leaf name { description "Policy set name"; type string; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list policy-name { description "Policy name"; type string; max-elements 500; } } grouping new_registration_set_type { leaf name { description "Policy set name"; type string; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list policy-name { description "Policy name"; type string; max-elements 500; } } grouping new_transaction_set_type { leaf name { description "Policy set name"; type string; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list policy-name { description "Policy name"; type string; max-elements 500; } } grouping next_hop_group_intf_type { leaf name { description "Interface through which to send sampled traffic"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list next-hop { key name; ordered-by user; description "Address of next hop through which to send sampled traffic"; uses next_hop_type; } } grouping next_hop_subgroup_intf_type { leaf name { description "Interface through which to send sampled traffic"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list next-hop { key name; ordered-by user; description "Address of next hop through which to send sampled traffic"; uses next_hop_type; } } grouping next_hop_type { description "Address of next hop through which to send sampled traffic"; leaf name { description "(null)"; type ipaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } grouping otn_options_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf laser-enable { description "Enable Laser"; type empty; } leaf no-laser-enable { description "Enable Laser"; type empty; } leaf is-ma { description "Link is enabled with alarms masked"; type empty; } leaf no-is-ma { description "Link is enabled with alarms masked"; type empty; } leaf line-loopback { description "Enable line loopback"; type empty; } leaf no-line-loopback { description "Enable line loopback"; type empty; } leaf local-loopback { description "Enable local host loopback"; type empty; } leaf no-local-loopback { description "Enable local host loopback"; type empty; } leaf prbs { description "Enable otn payload prbs"; type empty; } leaf no-prbs { description "Enable otn payload prbs"; type empty; } leaf odu-ttim-action-enable { description "Enable consequent action for ODU TTIM"; type empty; } leaf no-odu-ttim-action-enable { description "Enable consequent action for ODU TTIM"; type empty; } leaf otu-ttim-action-enable { description "Enable consequent action for OTU TTIM"; type empty; } leaf no-otu-ttim-action-enable { description "Enable consequent action for OTU TTIM"; type empty; } leaf transport-monitoring { description "Enable transport monitoring"; type empty; } leaf no-transport-monitoring { description "Enable transport monitoring"; type empty; } container odu-delay-management { description "Set odu delay management"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf monitor-end-point { description "Originate connection monitor end point"; type empty; } leaf no-monitor-end-point { description "Originate connection monitor end point"; type empty; } leaf start-measurement { description "Enable to start a dm measurement"; type empty; } leaf no-start-measurement { description "Enable to start a dm measurement"; type empty; } leaf bypass { description "Act as tandem passing dm value through node"; type empty; } leaf no-bypass { description "Act as tandem passing dm value through node"; type empty; } leaf number-of-frames { description "Number of consequent frames to declare dm done"; type uint32 { range "0 .. 255"; } } } container signal-degrade { description "Signal degrade thresholds"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interval { description "Time interval"; default "10"; units "milliseconds"; type uint32 { range "1 .. 1000"; } } leaf ber-threshold-clear { description "Ber threshold for signal degrade clear (format: xe-n, example: 4.5e-3)"; default "3.0e-3"; type string { } } leaf ber-threshold-signal-degrade { description "Ber threshold for signal-degrade (format: xe-n, example: 4.5e-3)"; default "7.5e-3"; type string { } } } container odu-signal-degrade { description "Signal degrade thresholds for ODU"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interval { description "Time interval"; default "10"; units "milliseconds"; type uint32 { range "1 .. 1000"; } } leaf ber-threshold-clear { description "Ber th for sd clear (format: xe-n, example: 4.5e-3)"; default "1.0e-9"; type string { } } leaf ber-threshold-signal-degrade { description "Ber th for sd (format: xe-n, example: 4.5e-3)"; default "1.0e-6"; type string { } } } container preemptive-fast-reroute { description "Preemptive fast reroute"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf odu-signal-degrade-monitor-enable { description "Enable ODU signal degrade monitoring"; type empty; } leaf no-odu-signal-degrade-monitor-enable { description "Enable ODU signal degrade monitoring"; type empty; } leaf odu-backward-frr-enable { description "Enable ODU backward frr insertion"; type empty; } leaf no-odu-backward-frr-enable { description "Enable ODU backward frr insertion"; type empty; } leaf signal-degrade-monitor-enable { description "Enable signal degrade monitoring"; type empty; } leaf no-signal-degrade-monitor-enable { description "Enable signal degrade monitoring"; type empty; } leaf backward-frr-enable { description "Enable backward frr insertion"; type empty; } leaf no-backward-frr-enable { description "Enable backward frr insertion"; type empty; } } leaf fec { description "Forward Error Correction mode"; type enumeration { enum none { description "GFEC all 0's"; } enum gfec { description "GFEC-Generic Forward Error Correction"; } enum efec { description "EFEC-Enhanced Forward Error Correction"; } enum gfec-sdfec { description "Both gfec and sdfec"; } enum ufec { description "UFEC-Ultra Forward Error Correction"; } } } leaf insert-odu-oci { description "Force odu open connection indication"; type empty; } leaf no-insert-odu-oci { description "Force odu open connection indication"; type empty; } leaf insert-odu-lck { description "Force odu locked maintenance signal"; type empty; } leaf no-insert-odu-lck { description "Force odu locked maintenance signal"; type empty; } leaf rate { description "Optical Transmission Network mode"; type enumeration { enum pass-thru { description "Pass through mode - No OTN framing"; } enum fixed-stuff-bytes { description "Fixed Stuff Bytes 11.0957Gbps"; } enum no-fixed-stuff-bytes { description "No Fixed Stuff Bytes 11.0491Gbps"; } enum oc192 { description "OTU2 for OC192 10.7Gbps"; } enum otu4 { description "OTU4 for 100Gbps"; } } } container bytes { description "Set OTN header bytes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf transmit-payload-type { description "Transmit payload type"; type uint32 { range "0 .. 255"; } } } container tti { description "Trace Identifier"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf otu-dapi { description "OTU Destination Access Point Identifier"; type string; } leaf otu-sapi { description "OTU Source Access Point Identifier"; type string; } leaf otu-expected-receive-dapi { description "OTU Expected Receive Destination Access Point Identifier"; type string; } leaf otu-expected-receive-sapi { description "OTU Expected Receive Source Access Point Identifier"; type string; } leaf odu-dapi { description "ODU Destination Access Point Identifier"; type string; } leaf odu-sapi { description "ODU Source Access Point Identifier"; type string; } leaf odu-expected-receive-dapi { description "ODU Expected Receive Destination Access Point Identifier"; type string; } leaf odu-expected-receive-sapi { description "ODU Expected Receive Source Access Point Identifier"; type string; } } container trigger { description "Defect triggers"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container oc-los { description "OC Loss Of Signal defect trigger"; choice oc_los_choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before clearing or raising the alarm for defect"; leaf up { description "Delay before clearing the alarm when the defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before raising the alarm when the defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } container oc-lof { description "OC Loss Of Frame defect trigger"; choice oc_lof_choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before clearing or raising the alarm for defect"; leaf up { description "Delay before clearing the alarm when the defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before raising the alarm when the defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } container oc-lom { description "OC Loss Of Multiframe defect trigger"; choice oc_lom_choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before clearing or raising the alarm for defect"; leaf up { description "Delay before clearing the alarm when the defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before raising the alarm when the defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } container oc-wavelength-lock { description "OC Wavelength Lock defect trigger"; choice oc_wavelength_lock_choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before clearing or raising the alarm for defect"; leaf up { description "Delay before clearing the alarm when the defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before raising the alarm when the defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } container oc-tsf { description "Oc tsf defect trigger"; choice oc-tsf-choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before clearing or raising the alarm for defect"; leaf up { description "Delay before clearing the alarm when the defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before raising the alarm when the defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } container otu-ais { description "OTU Alarm Indication Signal defect trigger"; choice otu_ais_choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before clearing or raising the alarm for defect"; leaf up { description "Delay before clearing the alarm when the defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before raising the alarm when the defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } container otu-bdi { description "OTU Backward Defect Indication defect trigger"; choice otu_bdi_choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before clearing or raising the alarm for defect"; leaf up { description "Delay before clearing the alarm when the defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before raising the alarm when the defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } container otu-iae { description "OTU Incoming Alignment defect trigger"; choice otu_iae_choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before clearing or raising the alarm for defect"; leaf up { description "Delay before clearing the alarm when the defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before raising the alarm when the defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } container otu-ttim { description "OTU Trail Trace Identifier Mismatch defect trigger"; choice otu_ttim_choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before clearing or raising the alarm for defect"; leaf up { description "Delay before clearing the alarm when the defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before raising the alarm when the defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } container otu-sd { description "OTU Signal Degrade defect trigger"; choice otu_sd_choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before clearing or raising the alarm for defect"; leaf up { description "Delay before clearing the alarm when the defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before raising the alarm when the defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } container otu-fec-deg { description "OTU FEC Degrade defect trigger"; choice otu_fec_deg_choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before clearing or raising the alarm for defect"; leaf up { description "Delay before clearing the alarm when the defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before raising the alarm when the defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } container otu-fec-exe { description "OTU FEC Excessive Error defect trigger"; choice otu_fec_exe_choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before clearing or raising the alarm for defect"; leaf up { description "Delay before clearing the alarm when the defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before raising the alarm when the defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } container odu-ais { description "ODU Alarm Indication Signal defect trigger"; choice odu_ais_choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before clearing or raising the alarm for defect"; leaf up { description "Delay before clearing the alarm when the defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before raising the alarm when the defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } container odu-bdi { description "ODU Backward Defect Indication defect trigger"; choice odu_bdi_choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before clearing or raising the alarm for defect"; leaf up { description "Delay before clearing the alarm when the defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before raising the alarm when the defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } container odu-iae { description "Odu iae defect trigger"; choice odu-iae-choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before clearing or raising the alarm for defect"; leaf up { description "Delay before clearing the alarm when the defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before raising the alarm when the defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } container odu-bei { description "Odu backward error indication defect trigger"; choice odu_bei_choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before clearing or raising the alarm for defect"; leaf up { description "Delay before clearing the alarm when the defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before raising the alarm when the defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } container odu-oci { description "ODU Open Connection Indication defect trigger"; choice odu_oci_choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before clearing or raising the alarm for defect"; leaf up { description "Delay before clearing the alarm when the defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before raising the alarm when the defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } container odu-lck { description "ODU Locked defect trigger"; choice odu_lck_choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before clearing or raising the alarm for defect"; leaf up { description "Delay before clearing the alarm when the defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before raising the alarm when the defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } container odu-ttim { description "ODU Trail Trace Identifier Mismatch defect trigger"; choice odu_ttim_choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before clearing or raising the alarm for defect"; leaf up { description "Delay before clearing the alarm when the defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before raising the alarm when the defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } container odu-sd { description "ODU Signal Degrade defect trigger"; choice odu_sd_choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before clearing or raising the alarm for defect"; leaf up { description "Delay before clearing the alarm when the defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before raising the alarm when the defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } container opu-ptim { description "Payload Type Mismatch defect trigger"; choice opu_ptm_choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before clearing or raising the alarm for defect"; leaf up { description "Delay before clearing the alarm when the defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before raising the alarm when the defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } } container tca { description "TCA - threshold crossing alerts"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container otu-tca-es { description "OTU Errored Seconds Threshold crossing defect trigger"; leaf enable-tca { description "Enable the OTU errored seconds threshold crossing alert"; type empty; } leaf no-enable-tca { description "Enable the OTU errored seconds threshold crossing alert"; type empty; } leaf threshold { description "TCA threshold for OTU errored seconds in 15 minutes"; default "135"; type uint32 { range "1 .. 900"; } } leaf threshold-24hrs { description "TCA threshold for OTU errored seconds in 24 hours"; default "162"; type uint32 { range "1 .. 86400"; } } } container otu-tca-ses { description "OTU Severely Errored Seconds Threshold crossing defect trigger"; leaf enable-tca { description "Enable the OTU severely errored seconds threshold crossing alert"; type empty; } leaf no-enable-tca { description "Enable the OTU severely errored seconds threshold crossing alert"; type empty; } leaf threshold { description "TCA threshold for OTU severely errored seconds in 15 minutes"; default "90"; type uint32 { range "1 .. 900"; } } leaf threshold-24hrs { description "TCA threshold for OTU severely errored seconds in 24 hours"; default "108"; type uint32 { range "1 .. 86400"; } } } container otu-tca-uas { description "OTU Unavailable Seconds Threshold crossing defect trigger"; leaf enable-tca { description "Enable the OTU unavailable seconds threshold crossing alert"; type empty; } leaf no-enable-tca { description "Enable the OTU unavailable seconds threshold crossing alert"; type empty; } leaf threshold { description "TCA threshold for OTU unavailable seconds in 15 minutes"; default "90"; type uint32 { range "10 .. 900"; } } leaf threshold-24hrs { description "TCA threshold for OTU unavailable seconds in 24 hours"; default "108"; type uint32 { range "10 .. 86400"; } } } container otu-tca-bbe { description "OTU Background Block Error Threshold crossing defect trigger"; leaf enable-tca { description "Enable the OTU BBE threshold crossing alert"; type empty; } leaf no-enable-tca { description "Enable the OTU BBE threshold crossing alert"; type empty; } leaf threshold { description "TCA threshold for OTU BBE in 15 minutes"; default "800"; type uint32 { range "1 .. 771000000"; } } leaf threshold-24hrs { description "TCA threshold for OTU BBE in 24 hours"; default "960"; type uint32 { range "1 .. 771000000"; } } } container otu-tca-es-fe { description "OTU far-end Errored Seconds Threshold crossing defect trigger"; leaf enable-tca { description "Enable the OTU far-end errored seconds threshold crossing alert"; type empty; } leaf no-enable-tca { description "Enable the OTU far-end errored seconds threshold crossing alert"; type empty; } leaf threshold { description "TCA threshold for OTU far-end errored seconds in 15 minutes"; default "135"; type uint32 { range "1 .. 900"; } } leaf threshold-24hrs { description "TCA threshold for OTU far-end errored seconds in 24 hours"; default "162"; type uint32 { range "1 .. 86400"; } } } container otu-tca-ses-fe { description "OTU far-end Severely Errored Seconds Threshold crossing defect trigger"; leaf enable-tca { description "Enable the OTU far-end Unavailable Seconds threshold crossing alert"; type empty; } leaf no-enable-tca { description "Enable the OTU far-end Unavailable Seconds threshold crossing alert"; type empty; } leaf threshold { description "TCA threshold for OTU far-end severely errored seconds in 15 minutes"; default "90"; type uint32 { range "1 .. 900"; } } leaf threshold-24hrs { description "TCA threshold for OTU far-end severely errored seconds in 24 hours"; default "108"; type uint32 { range "1 .. 86400"; } } } container otu-tca-uas-fe { description "OTU far-end Unavailable Seconds Threshold crossing defect trigger"; leaf enable-tca { description "Enable the OTU far end unavailabe second threshold crossing alert"; type empty; } leaf no-enable-tca { description "Enable the OTU far end unavailabe second threshold crossing alert"; type empty; } leaf threshold { description "TCA threshold for OTU far-end unavailable seconds in 15 minutes"; default "90"; type uint32 { range "10 .. 900"; } } leaf threshold-24hrs { description "TCA threshold for OTU far-end unavailable seconds in 24 hours"; default "108"; type uint32 { range "10 .. 86400"; } } } container otu-tca-bbe-fe { description "OTU far-end Background Block Error (BEI) Threshold crossing defect trigger"; leaf enable-tca { description "Enable the OTU BBE (BEI) threshold crossing alert"; type empty; } leaf no-enable-tca { description "Enable the OTU BBE (BEI) threshold crossing alert"; type empty; } leaf threshold { description "TCA threshold for OTU far-end BBE (BEI) in 15 minutes"; default "800"; type uint32 { range "1 .. 771000000"; } } leaf threshold-24hrs { description "TCA threshold for OTU far-end BBE (BEI) in 24 hours"; default "960"; type uint32 { range "1 .. 771000000"; } } } container odu-tca-es { description "ODU Errored Seconds Threshold crossing defect trigger"; leaf enable-tca { description "Enable the ODU errored seconds threshold crossing alert"; type empty; } leaf no-enable-tca { description "Enable the ODU errored seconds threshold crossing alert"; type empty; } leaf threshold { description "TCA threshold for ODU errored seconds in 15 minutes"; default "135"; type uint32 { range "1 .. 900"; } } leaf threshold-24hrs { description "TCA threshold for ODU errored seconds in 24 hours"; default "162"; type uint32 { range "1 .. 86400"; } } } container odu-tca-ses { description "ODU Severely Errored Seconds Threshold crossing defect trigger"; leaf enable-tca { description "Enable the ODU severely errored seconds threshold crossing alert"; type empty; } leaf no-enable-tca { description "Enable the ODU severely errored seconds threshold crossing alert"; type empty; } leaf threshold { description "TCA threshold for ODU severely errored seconds in 15 minutes"; default "90"; type uint32 { range "1 .. 900"; } } leaf threshold-24hrs { description "TCA threshold for ODU severely-errored seconds in 24 hours"; default "108"; type uint32 { range "1 .. 86400"; } } } container odu-tca-uas { description "ODU Unavailable Seconds Threshold crossing defect trigger"; leaf enable-tca { description "Enable the ODU unavailable seconds threshold crossing alert"; type empty; } leaf no-enable-tca { description "Enable the ODU unavailable seconds threshold crossing alert"; type empty; } leaf threshold { description "TCA threshold for ODU unavailable seconds in 15 minutes"; default "90"; type uint32 { range "10 .. 900"; } } leaf threshold-24hrs { description "TCA threshold for ODU unavailable seconds in 24 hours"; default "108"; type uint32 { range "10 .. 86400"; } } } container odu-tca-bbe { description "ODU Background Block Error Threshold crossing defect trigger"; leaf enable-tca { description "Enable the ODU BBE threshold crossing alert"; type empty; } leaf no-enable-tca { description "Enable the ODU BBE threshold crossing alert"; type empty; } leaf threshold { description "TCA threshold for ODU BBE in 15 minutes"; default "800"; type uint32 { range "1 .. 771000000"; } } leaf threshold-24hrs { description "TCA threshold for ODU backgrand block error in 24 hours"; default "960"; type uint32 { range "1 .. 771000000"; } } } container odu-tca-es-fe { description "ODU far-end Errored Seconds Threshold crossing defect trigger"; leaf enable-tca { description "Enable the ODU far-end errored seconds threshold crossing alert"; type empty; } leaf no-enable-tca { description "Enable the ODU far-end errored seconds threshold crossing alert"; type empty; } leaf threshold { description "TCA threshold for ODU far-end errored seconds in 15 minutes"; default "135"; type uint32 { range "1 .. 900"; } } leaf threshold-24hrs { description "TCA threshold for ODU far-end errored seconds in 24 hours"; default "162"; type uint32 { range "1 .. 86400"; } } } container odu-tca-ses-fe { description "ODU far-end Severely Errored Seconds Threshold crossing defect trigger"; leaf enable-tca { description "Enable the ODU far-end Unavailable Seconds threshold crossing alert"; type empty; } leaf no-enable-tca { description "Enable the ODU far-end Unavailable Seconds threshold crossing alert"; type empty; } leaf threshold { description "TCA threshold for ODU far-end severely errored seconds in 15 minutes"; default "90"; type uint32 { range "1 .. 900"; } } leaf threshold-24hrs { description "TCA threshold for ODU severely-errored seconds in 24 hours"; default "108"; type uint32 { range "1 .. 86400"; } } } container odu-tca-uas-fe { description "ODU far-end Unavailable Seconds Threshold crossing defect trigger"; leaf enable-tca { description "Enable the ODU far end unavailabe second threshold crossing alert"; type empty; } leaf no-enable-tca { description "Enable the ODU far end unavailabe second threshold crossing alert"; type empty; } leaf threshold { description "TCA threshold for ODU far-end unavailable seconds in 15 minutes"; default "90"; type uint32 { range "10 .. 900"; } } leaf threshold-24hrs { description "TCA threshold for ODU far-end unavailable seconds in 24 hours"; default "108"; type uint32 { range "10 .. 86400"; } } } container odu-tca-bbe-fe { description "ODU far-end Background Block Error (BEI) Threshold crossing defect trigger"; leaf enable-tca { description "Enable the ODU BBE (BEI) threshold crossing alert"; type empty; } leaf no-enable-tca { description "Enable the ODU BBE (BEI) threshold crossing alert"; type empty; } leaf threshold { description "TCA threshold for ODU far-end BBE (BEI) in 15 minutes"; default "800"; type uint32 { range "1 .. 771000000"; } } leaf threshold-24hrs { description "TCA threshold for ODU far-end backgrand block error in 24 hours"; default "960"; type uint32 { range "1 .. 771000000"; } } } container otu-tca-fec-ber { description "OTU Errored Seconds Threshold crossing defect trigger"; leaf enable-tca { description "Enable the OTU errored seconds threshold crossing alert"; type empty; } leaf no-enable-tca { description "Enable the OTU errored seconds threshold crossing alert"; type empty; } leaf threshold { description "TCA threshold for BER value in format: xe-n, x is an integer or decimal number, n = 0..9"; default "10e-3"; type string { } } leaf threshold-24hrs { description "TCA threshold for BER value in format: xe-n, x is an integer or decimal number, n = 0..9"; default "10e-3"; type string { } } } } } grouping output-routing-instance-type { leaf name { description "Routing instance name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list vlan { key name; description "Outgoing VLAN for mirrored packets"; max-elements 1; uses pm-rspan-vlan; } list bridge-domain { key name; description "Outgoing bridge-domain for mirrored packets"; max-elements 1; uses pm-rspan-bridge-domain; } } grouping override-local-server-type { description "DHCP override processing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-unicast-replies { description "Overwrite unicast bit in incoming packet, when present"; type empty; } leaf interface-client-limit { description "Limit the number of clients allowed on an interface"; type uint32 { range "1 .. 500000"; } } leaf bootp-support { description "Allow processing of bootp requests"; type empty; } container client-discover-match { presence "enable client-discover-match"; description "Use secondary match criteria for DISCOVER PDU"; choice match-with { case case_1 { leaf option60-and-option82 { description "Use option 60 and option 82"; type empty; } } case case_2 { leaf incoming-interface { description "Use incoming interface"; type empty; } } } } container process-inform { presence "enable process-inform"; description "Process INFORM PDUs"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf pool { description "Pool name for family inet"; type string { length "1 .. 64"; } } } container include-option-82 { description "Include option-82 in reply packets"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf NAK { description "Include option-82 in NAK"; type empty; } leaf FORCERENEW { description "Include option-82 in FORCERENEW"; type empty; } } leaf allow-no-end-option { description "Allow packets without end-of-option"; type empty; } } grouping override-type { description "DHCP override processing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-unicast-replies { description "Overwrite unicast bit in incoming packet, when present"; type empty; } leaf allow-snooped-clients { description "Allow client creation from snooped PDUs"; type empty; } leaf no-allow-snooped-clients { description "Allow client creation from snooped PDUs"; type empty; } leaf allow-no-end-option { description "Allow packets without end-of-option"; type empty; } leaf always-write-giaddr { description "Overwrite existing 'giaddr' field, when present"; type empty; } leaf always-write-option-82 { description "Overwrite existing value of option 82, when present"; type empty; } leaf layer2-unicast-replies { description "Do not broadcast client responses"; type empty; } leaf trust-option-82 { description "Trust options-82 option"; type empty; } leaf delay-authentication { description "Delay subscriber authentication in DHCP protocol processing until request packet"; type empty; } leaf disable-relay { description "Disable DHCP relay processing"; type empty; } leaf no-bind-on-request { description "Do not bind if stray DHCP request is received"; type empty; } leaf interface-client-limit { description "Limit the number of client allowed on an interface"; type uint32 { range "1 .. 500000"; } } leaf bootp-support { description "Allows relay of bootp req and reply"; type empty; } container client-discover-match { presence "enable client-discover-match"; description "Use secondary match criteria for DISCOVER PDU"; choice match-with { case case_1 { leaf option60-and-option82 { description "Use option 60 and option 82"; type empty; } } case case_2 { leaf incoming-interface { description "Use incoming interface"; type empty; } } } } container proxy-mode { presence "enable proxy-mode"; description "Put the relay in proxy mode"; } container replace-ip-source-with { description "Replace IP source address in request and release packets"; choice replacement-type { case case_1 { leaf giaddr { description "Replace IP source address with giaddr"; type empty; } } } } leaf send-release-on-delete { description "Always send RELEASE to the server when a binding is deleted"; type empty; } leaf apply-secondary-as-giaddr { description "Enable DHCP relay to use secondary gateway ip for relay interfaces"; type empty; } leaf delete-binding-on-renegotiation { description "Delete binding on rengotiation"; type empty; } } grouping p_cscf_apn_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list server { key name; ordered-by user; description "IPv4 or IPv6 P-CSCF server"; max-elements 10; leaf name { description "IPv4 or IPv6 P-CSCF server address"; type ipaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list filtering-server { key name; ordered-by user; description "IPv4 P-CSCF filtering server"; max-elements 10; leaf name { description "IPv4 filtering server address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf no-general-purpose { description "No general purpose contexts allowed"; type empty; } leaf no-dedicated-signaling { description "No dedicated signaling contexts allowed"; type empty; } leaf no-general-signaling-indication { description "No signaling indication for general purpose contexts allowed"; type empty; } leaf no-dedicated-signaling-indication { description "No signaling indication for dedicated signaling contexts allowed"; type empty; } leaf address-format { description "Settings for address format in GTP response"; type enumeration { enum no-ipv4 { description "Don't send ipv4 address"; } enum no-ipv4-compatible-ipv6 { description "Don't send ipv4 address compatible ipv6 address"; } } } } grouping packet_accounting_output_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf aggregate-export-interval { description "Interval of exporting aggregate accounting information"; default "90"; units "seconds"; type uint32 { range "90 .. 1800"; } } leaf flow-inactive-timeout { description "Interval of inactivity that marks a flow inactive"; default "60"; units "seconds"; type uint32 { range "15 .. 1800"; } } leaf flow-active-timeout { description "Interval after which an active flow is exported"; default "1800"; units "seconds"; type uint32 { range "60 .. 1800"; } } list cflowd { key name; description "Cflowd collector where flow records are sent"; uses cflowd_packet_accounting_type; } list interface { key name; description "Interfaces used to send monitored information"; uses packet_export_intf_type; } } grouping cflowd_packet_accounting_type { leaf name { description "Name of host collecting cflowd packets"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port { description "UDP port number on host collecting cflowd packets"; type uint16; mandatory true; } leaf routing-instance { description "Name of routing instance on which flow collector is reachable"; type string; } leaf version { description "Format of exported cflowd aggregates"; default "5"; type enumeration { enum 5 { description "Export cflowd aggregates in version 5 format"; } enum 8 { description "Export cflowd aggregates in version 8 format"; } } } leaf autonomous-system-type { description "Type of autonomous system number to export"; default "origin"; type enumeration { enum origin { description "Export origin-AS numbers"; } enum peer { description "Export peer-AS numbers"; } } } container aggregation { description "Aggregations to perform for exported flows (version 8 only)"; uses aggregation_type; } } grouping packet_export_intf_type { leaf name { description "Interfaces used to send monitored information"; type interface-unit; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf engine-id { description "Identity (number) of this accounting interface"; type uint8; } leaf engine-type { description "Type (number) of this accounting interface"; type uint8; } leaf source-address { description "Address to use for generating monitored packets"; type ipv4addr; } } grouping pccd-traceoptions-type { description "Trace options for PCCD"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Area of PCCD to enable debugging output"; leaf name { description "(null)"; type enumeration { enum pccd-main { description "Trace main module"; } enum pccd-config { description "Trace configuration parsing operations"; } enum pccd-core { description "Trace PCCD's core operations"; } enum pccd-ui { description "Trace user interface handling"; } enum pccd-rpd { description "Trace communication with RPD"; } enum pccd-functions { description "Trace function entries/outs"; } enum all { description "Trace all areas of PCCD code"; } } } } } grouping pcp-rule-object { leaf name { description "Rule name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf match-direction { description "Define direction for which the rule match is applied"; type enumeration { enum input { description "Match on input to interface"; } enum output { description "Match on output from interface"; } } mandatory true; } list term { key name; ordered-by user; description "Define a PCP term"; leaf name { description "Term name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Define match criteria"; uses sfw_match_object; } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf pcp-server { description "Define PCP server"; type string { length "1 .. 63"; } } } } } grouping pcp-server-object { leaf name { description "Name of PCP server"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ipv4-address { description "Configure IPv4 address for this PCP server"; type ipv4addr; } leaf ipv6-address { description "Configure IPv6 address for this PCP server"; type ipv6addr; } leaf softwire-concentrator { description "Softwire ds-lite concentrator"; type string { length "1 .. 63"; } } leaf mapping-lifetime-minimum { description "Configure the minimum lifetime for any mapping"; default "120"; units "second"; type uint16 { range "120 .. 3600"; } } leaf mapping-lifetime-maximum { description "Configure the maximum lifetime for any mapping"; default "86400"; units "second"; type uint32 { range "120 .. 4294667"; } } leaf short-lifetime-error { description "Configure duration of a short-lifetime error"; default "30"; units "second"; type uint16 { range "15 .. 300"; } } leaf long-lifetime-error { description "Configure duration of a long-lifetime error"; default "1800"; units "second"; type uint16 { range "900 .. 18000"; } } leaf max-mappings-per-client { description "Configure maximum mappings permitted per client"; default "32"; type uint16 { range "1 .. 128"; } } container pcp-options { description "Configure PCP options supported by this server"; leaf third-party { description "Enable Third Party option"; type empty; } leaf prefer-failure { description "Enable Prefer Failure option"; type empty; } } container nat-options { description "NAT options of this PCP server"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list pool { key name; ordered-by user; description "NAT pool name"; uses nat_pool_list_object; } } } grouping nat_pool_list_object { description "One or more nat pools"; leaf name { description "(null)"; type string { length "1 .. 63"; } } } grouping pdp_context_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf creation { description "PDP context creation state"; type enumeration { enum unblocked { description "No restrictions on PDP context creation"; } enum blocked { description "New PDP context creation fully blocked"; } } } leaf limit { description "Maximum active PDP contexts"; type uint32 { range "1 .. 4294967295"; } } leaf ipv6-limit { description "Maximum active IPv6 PDP contexts"; type uint32 { range "1 .. 4294967295"; } } leaf l2tp-sessions { description "Maximum L2TP sessions"; default "50000"; type uint32 { range "0 .. 65000"; } } leaf tft-ratio { description "Number of PDP contexts subject to TFT handling"; units "percent"; type uint32 { range "0 .. 100"; } } leaf payload-limit { description "Maximum active payload"; default "50000"; units "pps"; type uint32 { range "10000 .. 4200000"; } } leaf reserved-secondary-capacity { description "Reserved secondary PDP context capacity"; units "percent"; type uint32 { range "0 .. 5"; } } leaf service-based-charging-ratio { description "Service-based-charging ratio"; units "percent"; type uint32 { range "0 .. 100"; } } leaf service-based-charging-uplink-ratio { description "Service-based-charging uplink traffic"; default "30"; units "percent"; type uint32 { range "0 .. 100"; } } leaf service-classes-user-mean { description "Average number of service classes assigned to SBCC user"; type uint32 { range "0 .. 64"; } } leaf service-classes-cdr-mean { description "Average number of service classes accessed per SBCC context"; type uint32 { range "0 .. 64"; } } leaf service-identifier-cdr-mean { description "Average number of service identifier accessed per SBCC context"; type uint32 { range "0 .. 64"; } } leaf allow-secondary { description "Allow secondary contexts"; type empty; } container policing { description "Policing settings"; uses policing_type; } container session-control { description "Session control settings"; uses session_management_type; } leaf shared-msisdn { description "Multiple mobiles may use same MSISDN"; type empty; } list interfaces { key name; ordered-by user; description "Interface-specific PDP context creation settings"; uses ggsn_interface_pdpcontrol_type; } container signaling { description "PDP context signaling settings"; leaf ggsn-deletes-per-second { description "GGSN-initiated deletions per second per session controller"; type uint32 { range "1 .. 5000"; } } leaf sgsn-creates-per-second { description "Maximum SGSN creates per second per session controller"; type uint32 { range "0 .. 5000"; } } leaf sgsn-create-request-window-size { description "Maximum number of outstanding create requests"; type uint32 { range "0 .. 5000"; } } } } grouping ggsn_interface_pdpcontrol_type { leaf name { description "Interface name"; type interface-device; } leaf creation { description "PDP context creation state"; type enumeration { enum unblocked { description "No restrictions on PDP context creation"; } enum blocked { description "New PDP context creation fully blocked"; } } } } grouping peer-group { leaf name { description "IP address for this peer"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf local-ip-addr { description "Local IP address to use for this peer alone."; type ipv4addr; } leaf session-establishment-hold-time { description "Time within which connection must succeed with this peer"; units "seconds"; type uint32 { range "45 .. 600"; } } leaf-list redundancy-group-id-list { description "List of redundacy groups this peer is part of"; type uint32; } container backup-liveness-detection { presence "enable backup-liveness-detection"; description "Backup liveness detection"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf backup-peer-ip { description "Backup livelness detection peer's IP address"; type ipv4addr; } } container liveness-detection { presence "enable liveness-detection"; description "Bidirectional Forwarding Detection options for the peer"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } } leaf authentication-key { description "MD5 authentication key"; type string { length "1 .. 126"; } } } grouping periodic_oam { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf mpls-tp-mode { description "MPLS-TP Mode, Do not use IP addressing for OAM"; type empty; } container bfd-liveness-detection { description "Bidirectional Forwarding Detection options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } container failure-action { description "Action to take when BFD session goes down"; choice action-choice { case case_1 { leaf teardown { description "Teardown label switched path and resignal"; type empty; } } case case_2 { container make-before-break { presence "enable make-before-break"; description "Resignal the label switched path before teardown"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf teardown-timeout { description "Time to wait before teardown"; units "seconds"; type uint32 { range "0 .. 30"; } } } } } } } container performance-monitoring { description "Performance monitoring options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for PM"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum init { description "Trace init commnad"; } enum error { description "Trace error conditions"; } enum event { description "Trace state machine events"; } enum general { description "Trace general events"; } enum packet { description "Trace various packets "; } enum timer { description "Trace timer processing"; } enum all { description "Trace everything"; } } } } } } leaf lsp-ping-interval { description "Time interval between LSP ping messages"; units "seconds"; type uint16 { range "30 .. 3600"; } } leaf lsp-ping-multiplier { description "Number of ping reply missed before declaring BFD down"; type uint8 { range "1 .. 5"; } } container traceoptions { description "Trace options for MPLSOAM process"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum configuration { description "Trace configuration events"; } enum pipe { description "Trace pipe activity"; } enum rpc-packet-details { description "Trace RPC packet details"; } enum database { description "Trace database activity"; } enum network { description "Trace network activity"; } enum traceroute { description "Trace traceroute activity"; } enum all { description "Trace everything"; } } } } } } grouping pf_mapping { leaf name { description "Port Forwarding name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list destined-port { key "port translated-port"; ordered-by user; description "Port forwarding mappings"; max-elements 32; leaf port { description "Destination port"; type uint16 { range "1 .. 65535"; } } leaf translated-port { description "Translated port"; type uint16 { range "1 .. 65535"; } } } } grouping pgcp_gateway_object { description "One or more Packet Gateways"; leaf name { description "Gateway Name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf gateway-address { description "Local Gateway IP address"; type ipv4addr; } leaf routing-instance { description "Routing instance"; default "inet.0"; type string; } leaf gateway-port { description "Local Gateway transport port"; default "2944"; type uint16; } leaf cleanup-timeout { description "When expires the PG will clean its gate state (Applicable in disconnections)"; units "seconds"; type uint16 { range "5 .. 65535"; } } leaf service-state { description "Service state"; type enumeration { enum in-service { description "Gateway is operational"; } enum out-of-service-forced { description "Gateway is nonoperational"; } enum out-of-service-graceful { description "Gateway becomes nonoperational by draining"; } } } container h248-timers { uses pgcp_h248_timers_object; } container h248-properties { uses pgcp_h248_properties_object; } container h248-options { uses pgcp_h248_options_object; } leaf max-concurrent-calls { description "Maximum number of concurrent calls"; default "0"; type uint32 { range "0 .. 20000"; } } list gateway-controller { key name; ordered-by user; description "(null)"; max-elements 32; uses pgcp_controller_object; } container monitor { description "Monitor voice traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container media { presence "enable media"; description "Monitor media traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf rtp { description "Monitor RTP traffic"; type empty; } leaf rtcp { description "Monitor RTCP traffic"; type empty; } } } container graceful-restart { presence "enable graceful-restart"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum-synchronization-mismatches { description "Maximum number of mismatches for synchronization procedure with the PIC"; default "250"; type uint32 { range "0 .. 20000"; } } leaf no-synchronization { description "Disable the synchronization procedure with the PIC"; type empty; } leaf catchup-replication-delay { description "Delay between replication of new updates and catch-up"; default "300"; type uint16 { range "0 .. 600"; } } } container fast-update-filters { presence "enable fast-update-filters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum-terms { description "Maximum gate rate-limit terms to install at PFE"; default "2000"; type uint64 { range "0 .. 20000"; } } leaf maximum-term-percentage { description "Maximum percentage of gates with rate-limit terms at PFE"; default "10"; type uint8 { range "0 .. 100"; } } } container session-mirroring { uses pgcp_gateway_session_mirroring_object; } container data-inactivity-detection { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf inactivity-delay { description "Delay before data inactivity detection starts"; default "0"; units "seconds"; type uint16 { range "0 .. 3600"; } } leaf latch-deadlock-delay { description "Delay value used for gates employing NAPT traversal"; default "0"; units "seconds"; type uint16 { range "0 .. 3600"; } } leaf send-notification-on-delay { description "Send inactivity notification when delay expires"; type empty; } leaf inactivity-duration { description "Default data inactivity duration (Q-MI)"; default "15"; units "seconds"; type uint32 { range "5 .. 86400"; } } leaf stop-detection-on-drop { description "Stop detection when gate action is set to drop"; type empty; } leaf no-rtcp-check { description "Do not detect data inactivity on rtcp stream"; type empty; } container report-service-change { description "Configure the data-inactivity service-change behavior"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf service-change-type { description "Configure the service-change type to be sent upon data-inactivity"; type enumeration { enum forced-910 { description "Send FO/910 service change"; } enum forced-906 { description "Send FO/906 service change"; } } mandatory true; } presence "enable report-service-change"; } } container overload-control { presence "enable overload-control"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf queue-limit-percentage { description "Overload control queue limit percentage"; default "70"; type uint8 { range "0 .. 100"; } } leaf reject-new-calls-threshold { description "Overload control reject new calls threshold"; default "80"; type uint8 { range "0 .. 100"; } } leaf reject-all-commands-threshold { description "Overload control reject all commands threshold"; default "90"; type uint8 { range "0 .. 100"; } } leaf queue-maximum-length { description "Overload control queue maximum length"; default "100"; type uint16 { range "10 .. 1000"; } } leaf error-code { description "Overload control error code"; default "511"; type uint16 { range "510 .. 511"; } } } container platform { presence "enable platform"; description "Define the platform on which the gateway should be activated"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice values { case case_1 { leaf routing-engine { description "The gateway should be activated on the RE"; type empty; } } case case_2 { leaf device { description "The gateway should be activated on a services device"; type interface-device; } } } } leaf ipsec-transport-security-association { description "IPsec transport security association name"; type string { length "1 .. 63"; } } } grouping pgcp_controller_object { leaf name { description "PGCP Controller Name"; type string { length "1 .. 63"; } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf controller-address { description "Gateway controller IP address"; type ipv4addr; } leaf controller-port { description "Gateway controller port"; default "2944"; type uint16; } container interim-ah-scheme { uses pgcp_interim_ah_scheme_object; } choice controller-type { case case_1 { leaf remote-controller { description "The gateway controller is remote"; type empty; } } case case_2 { leaf local-controller { description "The gateway controller is local"; type string { length "1 .. 63"; } } } } } grouping pgcp_gateway_session_mirroring_object { description "Gateway session mirroring properties"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list delivery-function { key name; ordered-by user; description "Interface for delivering mirrored packets"; max-elements 1; uses pgcp_delivery_function_list_object; } leaf disable-session-mirroring { description "Disable session mirroring for this gateway"; type empty; } } grouping pgcp_delivery_function_list_object { description "Session-mirroring delivery functions"; leaf name { description "(null)"; type string { length "1 .. 63"; } } } grouping pgcp_h248_options_object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container service-change { uses pgcp-h248-service-change-object; } leaf audit-observed-events-returns { description "Activation of history buffer for audit observed events"; type empty; } container encoding { presence "enable encoding"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-octet-string-bit-mirroring { description "No octet string bit mirroring"; type empty; } leaf use-lower-case { description "Encode H248 message in lower case"; type empty; } } container h248-profile { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf profile-name { description "The H.248 profile declared by the BGF"; type string { length "1 .. 64"; } mandatory true; } presence "enable h248-profile"; leaf profile-version { description "The H.248 profile-version declared by the BGF"; type uint32 { range "1 .. 99"; } mandatory true; } } leaf accept-emergency-calls-while-graceful { description "Accept emergency calls while BGF is in OOS gracefull state"; type empty; } leaf implicit-tcp-latch { description "Latch implicitly upon TCP transport usage"; type empty; } leaf implicit-tcp-source-filter { description "Implicitly filter TCP source addresses"; type empty; } } grouping pgcp-h248-service-change-object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container control-association-indications { description "Control association indications"; uses control-association-indications-object; } container virtual-interface-indications { description "Virtual interface indications"; uses virtual-interface-indications-object; } container context-indications { description "Context indications"; uses context-indications-object; } leaf use-wildcard-response { description "Request short response to service-change messages"; type empty; } } grouping context-indications-object { description "Context indications"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf state-loss { description "Configure state loss service change"; type enumeration { enum forced-915 { description "State loss"; } enum forced-910 { description "State loss reason fo/910"; } enum none { description "Suppress state loss 918 service change"; } } } } grouping control-association-indications-object { description "Control association indications"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container up { uses pgcp-association-up-object; } container down { uses pgcp-association-down-object; } container disconnect { uses pgcp-association-disconnect-object; } } grouping pgcp-association-disconnect-object { description "Control association disconnect"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf reconnect { description "Configure reconnect service change"; type enumeration { enum disconnected-900 { description "Service restored"; } enum restart-902 { description "Warm boot"; } } } leaf controller-failure { description "Configure controller failure service change"; type enumeration { enum restart-902 { description "Warm boot"; } enum failover-909 { description "Gateway controller impending failure"; } } } } grouping pgcp-association-down-object { description "Control association down"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf administrative { description "Configure administrative service change"; type enumeration { enum forced-905 { description "Termination taken out of service"; } enum forced-908 { description "Gateway impending failure"; } enum none { description "Suppress service change"; } } } leaf failure { description "Configure failure service change"; type enumeration { enum forced-904 { description "Termination malfunctioning"; } enum forced-908 { description "Gateway impending failure"; } enum none { description "Suppress service change"; } } } leaf graceful { description "Configure graceful service change"; type enumeration { enum none { description "Suppress graceful-905 service change"; } enum graceful-905 { description "Termination taken out of service"; } } } } grouping pgcp-association-up-object { description "Control association up"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf failover-cold { description "Configure failover-cold service change"; type enumeration { enum restart-901 { description "Cold boot"; } enum failover-920 { description "Cold failover"; } } } leaf failover-warm { description "Configure failover-warm service change"; type enumeration { enum restart-902 { description "Warm boot"; } enum failover-919 { description "Warm failover"; } } } leaf cancel-graceful { description "Configure cancel-graceful service change"; type enumeration { enum none { description "Suppress restart-918 service change"; } enum restart-918 { description "Cancel graceful"; } } } } grouping pgcp_h248_properties_object { description "Gateway H248 properties"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container base-root { description "Setting H248 mg-mgc transaction time values"; uses pgcp_h248_base_root_object; } container segmentation { uses pgcp_h248_segmentation_object; } container diffserv { uses pgcp_h248_diffserv_object; } container hanging-termination-detection { description "Enabling Hanging termination detection"; uses pgcp-h248-hangterm-object; } container traffic-management { description "Setting of h248 traffic management default values"; uses pgcp_h248_traffic_management_object; } container notification-behavior { description "Setting of h248 Notify behavior values"; uses pgcp-h248-notification-behavior-object; } container application-data-inactivity-detection { description "Setting application data inactivity detection"; uses pgcp-h248-application-data-inactivity-detection-object; } container event-timestamp-notification { description "Setting event timestamp notification"; uses pgcp-h248-event-timestamp-notification-object; } container inactivity-timer { description "Default values for inactivity timeout"; uses pgcp-h248-inactivity-timer-object; } } grouping pgcp-h248-application-data-inactivity-detection-object { description "Application data inactivity detection"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ip-flow-stop-detection { description "Setting ip flow stop detection"; type enumeration { enum immediate-notify { description "Report all notifications"; } enum regulated-notify { description "Suppress notification according to notification-count"; } } } } grouping pgcp-h248-event-timestamp-notification-object { description "Event timestamp notification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf request-timestamp { description "Notification timestamp"; type enumeration { enum requested { description "Send event timestamp"; } enum suppressed { description "Dont send event timestamp"; } enum autonomous { description "Show timestamp at notify request"; } } } } grouping pgcp-h248-hangterm-object { description "Hanging termination detection timer"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf timerx { description "Setting timerx value"; default "0"; units "seconds"; type uint32 { range "0 .. 2147480"; } } } grouping pgcp-h248-inactivity-timer-object { description "A timer to verify PGC connectivity"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container inactivity-timeout { presence "enable inactivity-timeout"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf detect { description "Enable/Disable inactivity timer detection"; type empty; } container maximum-inactivity-time { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default { description "Default maximum inactivity timeout"; default "12000"; units "10-milliseconds"; type uint16 { range "100 .. 65535"; } } leaf minimum { description "Minimum range for maximum inactivity timeout"; default "100"; units "10-milliseconds"; type uint16 { range "100 .. 65535"; } } leaf maximum { description "Maximum range for maximum inactivity timeout"; default "65535"; units "10-milliseconds"; type uint16 { range "100 .. 65535"; } } } } } grouping pgcp-h248-notification-behavior-object { description "Notify behavior parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container notification-regulation { presence "enable notification-regulation"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default { description "Default suppression percentage of Notification behavior Regulation "; type string { } } } } grouping pgcp_h248_base_root_object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container normal-mg-execution-time { presence "enable normal-mg-execution-time"; description "MG transaction response time expected by MGC."; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default { description "(null)"; default "500"; units "milliseconds"; type uint16 { range "500 .. 29000"; } } leaf minimum { description "Minimum range of execution time value"; default "500"; units "milliseconds"; type uint16 { range "500 .. 29000"; } } leaf maximum { description "Maximum range of execution time value"; default "29000"; units "milliseconds"; type uint16 { range "500 .. 29000"; } } } container mg-provisional-response-timer-value { presence "enable mg-provisional-response-timer-value"; description "MG pending response time upon incomplete transaction."; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default { description "(null)"; default "2000"; units "milliseconds"; type uint16 { range "500 .. 30000"; } } leaf minimum { description "Minimum range of timers value"; default "500"; units "milliseconds"; type uint16 { range "500 .. 30000"; } } leaf maximum { description "Maximum range of timer value"; default "30000"; units "milliseconds"; type uint16 { range "500 .. 30000"; } } } container mg-originated-pending-limit { presence "enable mg-originated-pending-limit"; description "Max MG TransactionPendings num recieved."; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default { description "(null)"; default "4"; type uint16 { range "1 .. 512"; } } leaf minimum { description "Minimum range of pending limit value"; default "1"; type uint16 { range "1 .. 512"; } } leaf maximum { description "Maximum range of pending limit value"; default "512"; type uint16 { range "1 .. 512"; } } } container normal-mgc-execution-time { presence "enable normal-mgc-execution-time"; description "MGC transaction response time expected by MG."; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default { description "(null)"; default "500"; units "milliseconds"; type uint16 { range "500 .. 29000"; } } leaf minimum { description "Minimum range of execution time value"; default "500"; units "milliseconds"; type uint16 { range "500 .. 29000"; } } leaf maximum { description "Maximum range of execution time value"; default "29000"; units "milliseconds"; type uint16 { range "500 .. 29000"; } } } container mgc-provisional-response-timer-value { presence "enable mgc-provisional-response-timer-value"; description "MGC pending response time upon incomplete transaction."; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default { description "(null)"; default "4000"; units "milliseconds"; type uint16 { range "500 .. 30000"; } } leaf minimum { description "Minimum range of timers value"; default "500"; units "milliseconds"; type uint16 { range "500 .. 30000"; } } leaf maximum { description "Maximum range of timers value"; default "30000"; units "milliseconds"; type uint16 { range "500 .. 30000"; } } } container mgc-originated-pending-limit { presence "enable mgc-originated-pending-limit"; description "Max MGC TransactionPendings num recieved."; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default { description "(null)"; default "4"; type uint16 { range "1 .. 512"; } } leaf minimum { description "Minimum range of pending limit value"; default "1"; type uint16 { range "1 .. 512"; } } leaf maximum { description "Maximum range of pending limit value"; default "512"; type uint16 { range "1 .. 512"; } } } } grouping pgcp_h248_diffserv_object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container dscp { presence "enable dscp"; description "Differentiated Services Code Point (DSCP)"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default { description "(null)"; default "be"; type string; } leaf ignore-signaled-value { description "Ignore property value appearing in H.248 signaling"; type empty; } } } grouping pgcp_h248_segmentation_object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container mgc-segmentation-timer { presence "enable mgc-segmentation-timer"; description "Time the MG waits for remaining segments from MGC"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default { description "(null)"; default "4000"; units "milliseconds"; type int32 { range "500 .. 30000"; } } leaf minimum { description "Minimum range of timer value"; default "500"; units "milliseconds"; type int32 { range "500 .. 30000"; } } leaf maximum { description "Maximum range of timer value"; default "30000"; units "milliseconds"; type int32 { range "500 .. 30000"; } } } container mgc-maximum-pdu-size { presence "enable mgc-maximum-pdu-size"; description "Maximum size of the MGC's incoming messages from MG"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default { description "(null)"; default "1472"; units "bytes"; type int32 { range "512 .. 65507"; } } leaf minimum { description "Minimum range of pdu size value"; default "512"; units "bytes"; type int32 { range "512 .. 65507"; } } leaf maximum { description "Maximum range of pdu size value"; default "65507"; units "bytes"; type int32 { range "512 .. 65507"; } } } container mg-segmentation-timer { presence "enable mg-segmentation-timer"; description "Time the MGC waits for remaining segments from MGC"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default { description "(null)"; default "4000"; units "milliseconds"; type int32 { range "500 .. 30000"; } } leaf minimum { description "Minimum range of timer value"; default "500"; units "milliseconds"; type int32 { range "500 .. 30000"; } } leaf maximum { description "Maximum range of timer value"; default "30000"; units "milliseconds"; type int32 { range "500 .. 30000"; } } } container mg-maximum-pdu-size { presence "enable mg-maximum-pdu-size"; description "Maximum size of the MG's incoming messages from MGC"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default { description "(null)"; default "1472"; units "bytes"; type int32 { range "512 .. 65507"; } } leaf minimum { description "Minimum range of pdu size value"; default "512"; units "bytes"; type int32 { range "512 .. 65507"; } } leaf maximum { description "Maximum range of pdu size value"; default "65507"; units "bytes"; type int32 { range "512 .. 65507"; } } } } grouping pgcp_h248_timers_object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum-waiting-delay { description "Randomly determined delay before retraversing PGC list (MWD)"; default "2000"; units "milliseconds"; type uint32 { range "100 .. 300000"; } } leaf tmax-retransmission-delay { description "Delay before PGC is considered down (T-MAX)"; default "25000"; units "milliseconds"; type uint16 { range "1000 .. 60000"; } } leaf initial-average-ack-delay { description "Assumed initial average reply time (for retransmission rate) (I-AAD)"; default "1000"; units "milliseconds"; type uint16 { range "500 .. 4000"; } } leaf maximum-net-propagation-delay { description "Worst case network propagation delay (M-NPD), used for calculating LONG-TIMER"; default "5000"; units "milliseconds"; type uint16 { range "500 .. 10000"; } } } grouping pgcp_h248_traffic_management_object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container sustained-data-rate { presence "enable sustained-data-rate"; description "SDR permitted for the stream"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default { description "Default rate value"; default "10000"; units "bytes-per-second"; type uint32 { range "0 .. 2147483647"; } } leaf minimum { description "Minimum range of rate value"; default "0"; units "bytes-per-second"; type uint32 { range "0 .. 2147483647"; } } leaf maximum { description "Maximum range of rate value"; default "0x7FFFFFFF"; units "bytes-per-second"; type uint32 { range "0 .. 2147483647"; } } container rtcp { description "Default rtcp rate"; uses pgcp_h248_rtcp_rate_units_object; } leaf rtcp-include { description "TMAN SDR includes RTCP bandwidth"; type empty; } } container peak-data-rate { presence "enable peak-data-rate"; description "PDR permitted for the stream"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default { description "Default rate value"; default "0"; units "bytes-per-second"; type uint32 { range "0 .. 2147483647"; } } leaf minimum { description "Minimum range of rate value"; default "0"; units "bytes-per-second"; type uint32 { range "0 .. 2147483647"; } } leaf maximum { description "Maximum range of rate value"; default "0x7FFFFFFF"; units "bytes-per-second"; type uint32 { range "0 .. 2147483647"; } } container rtcp { description "Default rtcp rate"; uses pgcp_h248_rtcp_rate_units_object; } } container max-burst-size { presence "enable max-burst-size"; description "MBS for the stream"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default { description "Default rate value"; default "1000"; units "bytes-per-second"; type uint32 { range "20 .. 2147483647"; } } leaf minimum { description "Minimum range of rate value"; default "20"; units "bytes-per-second"; type uint32 { range "20 .. 2147483647"; } } leaf maximum { description "Maximum range of rate value"; default "0x7FFFFFFF"; units "bytes-per-second"; type uint32 { range "20 .. 2147483647"; } } container rtcp { description "Default rtcp rate"; uses pgcp_h248_rtcp_burst_units_object; } } } grouping pgcp_h248_rtcp_burst_units_object { description "RTCP burst parameter settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice values { case case_1 { leaf percentage { description "Value entered is percentage of RTP's parallel value"; default "100"; units "percent"; type uint32 { range "0 .. 1000"; } } } case case_2 { leaf fixed-value { description "Value entered is a fixed one"; units "bytes-per-second"; type uint32 { range "20 .. 2147483647"; } } } } } grouping pgcp_h248_rtcp_rate_units_object { description "RTCP rate parameter settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice values { case case_1 { leaf percentage { description "Value entered is percentage of RTP's parallel value"; default "5"; units "percent"; type uint32 { range "0 .. 1000"; } } } case case_2 { leaf fixed-value { description "Value entered is a fixed one"; units "bytes-per-second"; type uint32 { range "0 .. 2147483647"; } } } } } grouping pgcp_interim_ah_scheme_object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf algorithm { description "Define authentication algorithm"; type enumeration { enum hmac-null { description "NULL authentication algorithm"; } } mandatory true; } } grouping pgcp_rule_object { description "One or more PGCP rules"; leaf name { description "Rule name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf gateway { description "Gateway Name"; type string { length "1 .. 63"; } mandatory true; } choice media-svc-nat-pool { case case_1 { list nat-pool { key name; ordered-by user; description "Define a NAT pool"; uses nat_pool_list_object; } } } } grouping pgcp_session_mirroring_object { description "PGCP session mirroring properties"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list delivery-function { key name; ordered-by user; description "Interface for delivering mirrored packets"; max-elements 32; uses pgcp_delivery_function_object; } leaf disable-session-mirroring { description "Disable PGCP session mirroring"; type empty; } } grouping pgcp_delivery_function_object { leaf name { description "Delivery function name"; type string { length "1 .. 63"; } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf destination-address { description "Delivery function destination IP address"; type ipv4addr; mandatory true; } leaf destination-port { description "Delivery function destination port"; type uint16; mandatory true; } leaf network-operator-id { description "Network operator ID"; type string { length 5; } mandatory true; } leaf source-address { description "Network-element-id"; type ipv4addr; mandatory true; } leaf source-port { description "Network-element-port"; type uint16; mandatory true; } container memory-managment { description "Measure memory usage"; uses pgcp_debug_mem_mgmt_object; } } grouping pgcp_debug_mem_mgmt_object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf operational-mode { description "Memory managment operation mode"; type enumeration { enum fast { description "Fast memory allocation [does not affect performance]"; } enum type-tracking { description "Track all allocation types [affects performance]"; } enum location-tracking { description "Track all allocation types and functions [affects performance]"; } } } } grouping pgcp_virtual_interface_object { description "One or more Virtual Interfaces"; leaf name { description "Virtual Interface Name"; type string { length "1 .. 4"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf routing-instance { description "Routing instance of server to which to forward"; default "inet.0"; type string; } leaf service-state { description "Service state"; default "in-service"; type enumeration { enum in-service { description "Virtual Interface is operational"; } enum out-of-service-forced { description "Virtual Interface is nonoperational"; } enum out-of-service-graceful { description "Virtual Interface becomes nonoperational by draining"; } } } choice media-svc-nat-pool { case case_1 { list nat-pool { key name; ordered-by user; description "Define a NAT pool"; uses nat_pool_list_object; } } } } grouping pim_bootstrap_options_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf priority { description "Eligibility to be the bootstrap router"; type uint32 { range "0 .. 255"; } } leaf-list import { description "Bootstrap import policy"; type policy-algebra; } leaf-list export { description "Bootstrap export policy"; type policy-algebra; } } grouping pim_filter_obj { description "Filter to apply to tracing"; leaf match-on { description "Argument on which to match"; type enumeration { enum prefix { description "Filter based on prefix"; } } mandatory true; } leaf-list policy { description "Filter policy"; type policy-algebra; } } grouping pim_rp_group_range_type { leaf name { description "(null)"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf nexthop-hold-time { description "Nexthop hold time in milliseconds"; units "milliseconds"; type uint32 { range "1 .. 1000"; } } } grouping plmn_type { leaf name { description "Name of PLMN"; type string { length "1 .. 20"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list plmn-id { key name; ordered-by user; description "PLMN ID associated with this PLMN"; uses plmn_id_type; } } grouping plmn_id_type { leaf name { description "SGSN Public Land Mobile Network identifier"; type string { length "5 .. 6"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf home-plmn { description "This is home PLMN"; type empty; } list sgsn-address { key name; description "SGSN address associated with this PLMN ID"; uses sgsn_address_type; } } grouping pm-rspan-bridge-domain { description "RSPAN bridge-domain for pm"; leaf name { description "Bridge domain name or VLAN id"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } grouping pm-rspan-vlan { description "RSPAN vlan for pm"; leaf name { description "VLAN name or VLAN id"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-tag { description "Removes extra RSAPN tag from mirrored packets"; type empty; } } grouping pm_family_input_type { description "Input options for port mirroring"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf rate { description "Ratio of packets to be sampled (1 out of N)"; type uint16 { range "1 .. 65535"; } } leaf run-length { description "Number of samples after initial trigger"; type uint32 { range "0 .. 20"; } } leaf maximum-packet-length { description "Maximum length of the mirrored packet"; default "0"; units "bytes"; type uint32 { range "0 .. 9216"; } } } grouping pmond-traceoptions-type { description "Trace options for process health monitor"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Area of process health monitor to enable debugging output"; leaf name { description "(null)"; type enumeration { enum events { description "Trace event conde"; } enum heartbeat { description "Trace heartbeat code"; } enum process-tracking { description "Trace process tracking code"; } enum ui { description "Trace user interface code"; } enum all { description "Trace all areas of code"; } } } } } grouping policing_apn_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf maximum-bandwidth-uplink { description "Maximum bandwidth uplink"; units "kilobits per second"; type uint32 { range "64 .. 8640"; } } leaf maximum-bandwidth-downlink { description "Maximum bandwidth"; units "kilobits per second"; type uint32 { range "64 .. 16000"; } } leaf no-policing { description "Turn policing off"; type empty; } } grouping policing_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf burst-time { description "Burst time window"; default "3000"; units "milliseconds"; type uint32 { range "500 .. 5000"; } } leaf minimum-burst-value { description "Minimum burst value"; default "16000"; units "bytes"; type uint32 { range "0 .. 64000"; } } leaf maximum-burst-value { description "Maximum burst value"; default "2000"; units "kilobytes"; type uint32 { range "128 .. 2000"; } } leaf maximum-bandwidth-uplink { description "Maximum bandwidth uplink"; default "2048"; units "kilobits per second"; type uint32 { range "64 .. 8640"; } } leaf maximum-bandwidth-downlink { description "Maximum bandwidth"; default "2048"; units "kilobits per second"; type uint32 { range "64 .. 16000"; } } leaf no-policing { description "Turn policing off"; type empty; } } grouping port-range { description "Port ranges"; leaf name { description "Single port/minimum port in the port range"; type uint32 { range "0 .. 65535"; } } leaf maximum-port { description "Maximum port in the port range"; type uint32 { range "0 .. 65535"; } } } grouping ppp-traceoptions-type { description "Trace options for PPP process"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Area of PPP process to enable debugging output"; leaf name { description "(null)"; type enumeration { enum access { description "Trace access code"; } enum address-pool { description "Trace address pool code"; } enum auth { description "Trace authentication code"; } enum chap { description "Trace CHAP code"; } enum pap { description "Trace PAP code"; } enum config { description "Trace configuration code"; } enum ifdb { description "Trace interface database code"; } enum lcp { description "Trace LCP state machine code"; } enum memory { description "Trace memory management code"; } enum message { description "Trace message processing code"; } enum mlppp { description "Trace MLPPP code"; } enum ncp { description "Trace NCP state machine code"; } enum ppp { description "Trace PPP protocol processing code"; } enum radius { description "Trace RADIUS processing code"; } enum redundancy { description "Trace redundancy code"; } enum rtsock { description "Trace routing socket code"; } enum session { description "Trace session management code"; } enum signal { description "Trace signal handling code"; } enum timer { description "Trace timer code"; } enum ui { description "Trace user interface code"; } enum ci { description "Trace ci code"; } enum all { description "Trace all areas of code"; } } } } } grouping ppp_options_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf dynamic-profile { description "Dynamic profile name"; type string; } container chap { presence "enable chap"; description "Challenge Handshake Authentication Protocol options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice access-data { case case_1 { leaf access-profile { description "Profile containing client list and access parameters"; type string { length "1 .. 64"; } } } case case_2 { leaf default-chap-secret { description "Default CHAP secret to be used when no matching access profile exists"; type unreadable; } } } leaf local-name { description "Name sent in CHAP-Challenge and CHAP-Response"; type string; } leaf no-rfc2486 { description "RFC2486 compliance is not enforced"; type empty; } leaf passive { description "Handle incoming CHAP requests only"; type empty; } container challenge-length { description "CHAP challenge length"; leaf minimum { description "Minimum CHAP challenge length"; default "16"; units "bytes"; type uint8 { range "8 .. 63"; } } leaf maximum { description "Maximum CHAP challenge length"; default "32"; units "bytes"; type uint8 { range "8 .. 63"; } } } } container pap { presence "enable pap"; description "Password Authentication Protocol options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice access-data { case case_1 { leaf access-profile { description "Profile containing client list and access parameters"; type string { length "1 .. 64"; } } } case case_2 { leaf default-password { description "Default PAP password used in the absence of matching profile"; type unreadable; } } } leaf local-name { description "Name sent in PAP request packet"; type string; } leaf no-rfc2486 { description "RFC2486 compliance is not enforced"; type empty; } leaf local-password { description "Password sent in PAP request packet"; type unreadable; } leaf passive { description "Do not handle PAP authentication requests"; type empty; } } leaf-list authentication { description "Order in which PPP authentication protocols are negotiated"; type enumeration { enum pap { description "Password Authentication Protocol"; } enum chap { description "Challenge Handshake Authentication Protocol"; } } } container compression { description "Set compression options"; leaf acfc { description "Negotiate Address/Control field compression"; type empty; } leaf pfc { description "Negotiate Protocol field compression"; type empty; } } leaf lcp-restart-timer { description "LCP restart timer"; units "milliseconds"; type uint16 { range "20 .. 10000"; } } leaf ncp-restart-timer { description "NCP restart timer"; units "milliseconds"; type uint16 { range "500 .. 10000"; } } leaf no-termination-request { description "Don't send PPP termination requests"; type empty; } leaf loopback-clear-timer { description "Loopback clear timer"; units "seconds"; type uint8 { range "1 .. 60"; } } leaf lcp-max-conf-req { description "Maximum LCP Conf-Req to be sent, 0 means infinite"; type uint32 { range "0 .. 65535"; } } leaf ncp-max-conf-req { description "Maximum NCP Conf-Req to be sent, 0 means infinite"; type uint32 { range "0 .. 65535"; } } leaf on-demand-ip-address { description "Enable On-Demand IPv4 address allocation and de-allocation"; type empty; } container initiate-ncp { description "Enable server initiated NCP"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ip { description "Enable server initiated IPNCP"; type empty; } leaf ipv6 { description "Enable server initiated IPv6NCP"; type empty; } leaf dual-stack-passive { description "Disable server initiated IPNCP/IPv6NCP for dual-stack client"; type empty; } } leaf mru { description "The Maximum Receive Unit size in bytes"; type uint32 { range "64 .. 9192"; } } leaf mtu { description "The Maximum Transfer Unit size in bytes"; type string; } } grouping pppoe-traceoptions-type { description "Trace options for PPPoE process"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Area of PPPoE process to enable debugging output"; leaf name { description "(null)"; type enumeration { enum config { description "Trace configuration code"; } enum events { description "Trace event code"; } enum gres { description "Trace GRES code"; } enum init { description "Trace initialization code"; } enum interface-db { description "Trace interface database code"; } enum memory { description "Trace memory management code"; } enum protocol { description "Trace PPPoE protocol processing code"; } enum rtsock { description "Trace routing socket code"; } enum session-db { description "Trace Session DB code"; } enum signal { description "Trace signal handling code"; } enum state { description "Trace state handling code"; } enum stats { description "Trace Stats Handling code"; } enum timer { description "Trace timer code"; } enum ui { description "Trace user interface code"; } enum all { description "Trace all areas of code"; } } } } container filter { presence "enable filter"; description "Trace filtering"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf aci { description "Regular expression to match ACI"; type string { length "1 .. 64"; } } leaf ari { description "Regular expression to match ARI"; type string { length "1 .. 64"; } } leaf service-name { description "Service name"; type string { length "1 .. 64"; } } leaf underlying-interface { description "Underlying interface name"; type string; } } } grouping pppoe_options_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf underlying-interface { description "Underlying interface name"; type string; mandatory true; } leaf idle-timeout { description "Time for which session can be idle (0 = forever)"; units "seconds"; type uint32 { range "0 .. 4294967295"; } } leaf access-concentrator { description "Name of the access concentrator (PPPoE server)"; type string; } leaf service-name { description "Service to be requested (from PPPoE server)"; type string; } leaf auto-reconnect { description "Time to reconnect after session terminates (0 = never)"; units "seconds"; type uint32 { range "0 .. 4294967295"; } } choice pppoe-mode { case case_1 { leaf server { description "PPPoE operates in server mode"; type empty; } } case case_2 { leaf client { description "PPPoE operates in client mode"; type empty; } } } } grouping pppoe_underlying_options_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf access-concentrator { description "Name of the access concentrator (PPPoE server)"; type string { length "1 .. 64"; } } leaf duplicate-protection { description "Disallow multiple PPPoE sessions to a single client"; type empty; } leaf dynamic-profile { description "Attach dynamic-profile to interface"; type string { length "1 .. 64"; } } leaf max-sessions { description "Maximum number of PPPoE sessions allowed on underlying interface"; type uint32 { range "1 .. 32000"; } } leaf max-sessions-vsa-ignore { description "Ignore the max-sessions VSA"; type empty; } leaf service-name-table { description "Attach Service Name Table to interface"; type string { length "1 .. 32"; } } container short-cycle-protection { presence "enable short-cycle-protection"; description "Enable short cycle protection on underlying interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf lockout-time-min { description "Minimum lockout time"; units "seconds"; type uint32 { range "1 .. 86400"; } } leaf lockout-time-max { description "Maximum lockout time"; units "seconds"; type uint32 { range "1 .. 86400"; } } leaf filter { description "Granularity of blocking filter"; type enumeration { enum aci { description "Block by Agent Circuit ID"; } } } } leaf direct-connect { description "Ignore received VS tags for PPPoE sessions"; type empty; } } grouping prefix_action { leaf name { description "Prefix action name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf policer { description "Police the packet using a set of named policer"; type string { } } leaf count { description "Enable counters"; type empty; } leaf filter-specific { description "Filter specific, else term specific"; type empty; } leaf subnet-prefix-length { description "Prefix length for the total address range"; type uint32 { range "0 .. 32"; } } choice source_or_dest { case case_1 { leaf source-prefix-length { description "Source prefix range"; type uint32 { range "0 .. 32"; } } } case case_2 { leaf destination-prefix-length { description "Destination prefix range"; type uint32 { range "0 .. 32"; } } } } } grouping prefix_list_items { leaf name { description "Address prefix"; type ipprefix-only; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } grouping profile-radius-server-object { leaf name { description "RADIUS server address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port { description "RADIUS server authentication port number"; default "1812"; type uint16 { range "1 .. 65535"; } } leaf accounting-port { description "Port number to which to send RADIUS accounting messages"; default "1813"; type uint16 { range "1 .. 65535"; } } leaf dynamic-request-port { description "RADIUS client dynamic request port number"; default "3799"; type uint16 { range "1 .. 65535"; } } leaf secret { description "Shared secret with the RADIUS server"; type unreadable; mandatory true; } leaf timeout { description "Request timeout period"; default "3"; units "seconds"; type uint32 { range "1 .. 90"; } } leaf retry { description "Retry attempts"; default "3"; type uint32 { range "1 .. 10"; } } leaf accounting-timeout { description "Accounting equest timeout period"; default "0"; units "seconds"; type uint32 { range "0 .. 900"; } } leaf accounting-retry { description "Accounting retry attempts"; default "0"; type uint32 { range "0 .. 10"; } } leaf max-outstanding-requests { description "Maximum requests in flight to server"; default "1000"; type uint32 { range "0 .. 2000"; } } leaf source-address { description "Use specified address as source address"; type ipaddr; } leaf routing-instance { description "Use specified routing instance"; type string; } } grouping proto-object { leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list tunable-name { key name; ordered-by user; description "Protocol tunable name"; uses tunable-object; } } grouping proxy-object { description "License download proxy server."; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf server { description "URL or IP address of the proxy server host"; type string { length "1 .. 256"; } mandatory true; } leaf port { description "Proxy server port"; default "3128"; type uint16 { range "0 .. 65535"; } } leaf username { description "Username as configured in the proxy server"; type string { length "1 .. 256"; } } leaf password { description "Password as configured in the proxy server"; type unreadable; } } grouping ptsp_forward_rule_object { leaf name { description "Forward rule name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list term { key name; ordered-by user; description "One or more terms in PTSP rule"; leaf name { description "Term name"; type uint16 { range "1 .. 32767"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Match criteria"; uses ptsp_forward_match_object; } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf forwarding-instance { description "Forwarding instance assigned to outgoing packets"; type string { } mandatory true; } presence "enable then"; leaf unit-number { description "Unit number associated with forwarding instance"; type uint16; mandatory true; } } } } grouping ptsp_forward_match_object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list local-address { key name; ordered-by user; description "Match IP local address"; uses sfw_addr_object; } list local-address-range { key "low high"; ordered-by user; description "Match IP local address range"; leaf low { description "Lower limit of address range"; type ipaddr; } leaf high { description "Upper limit of address range"; type ipaddr; } leaf except { description "Match address not in this prefix"; type empty; } } list local-prefix-list { key name; ordered-by user; description "One or more named lists of local prefixes to match"; leaf name { description "Name of prefix list to match against"; type string; } leaf except { description "Name of prefix list not to match against"; type empty; } } choice app-rule { case case_1 { leaf-list applications { description "Match one or more applications"; type string; } } case case_2 { leaf-list nested-applications { description "Match one or more nested-applications"; type string; } } case case_3 { leaf-list application-groups { description "Match one or more applications"; type string; } } } } grouping ptsp_rule_object { leaf name { description "Rule name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf match-direction { description "Direction for which the rule match is applied"; type enumeration { enum input { description "Match on input to interface"; } enum output { description "Match on output from interface"; } enum input-output { description "Match on input to or output from interface"; } } mandatory true; } leaf demux { description "Demux occurs on source or destination address"; type enumeration { enum source-address { description "Demux applies to source address"; } enum destination-address { description "Demux applies to source address"; } } mandatory true; } leaf count-type { description "Terms in this rule collect statstics based on rule or applications"; type enumeration { enum rule { description "Collect statistics by subscriber/PTSP rule granularity"; } enum application { description "Collect statistics based on subscriber/application"; } } mandatory true; } leaf forward-rule { description "Forwarding rule to be applied"; type string { } } list term { key name; ordered-by user; description "One or more terms in PTSP rule"; leaf name { description "Term name"; type uint16 { range "1 .. 32767"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Match criteria"; uses ptsp_match_object; } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf forwarding-class { description "Forwarding class assigned to outgoing packets"; type string { } } leaf count { description "Count packets by application or application group"; type enumeration { enum none { description "Do not count any application or group"; } enum application { description "Count by application name"; } enum nested-application { description "Count by nested application name"; } enum application-group { description "Count by application group"; } enum application-group-any { description "Count all application groups as a single total in group 'any'"; } enum rule { description "Count by subscriber/rule"; } } } leaf police { description "Policer name"; type string { } } choice designation { case case_1 { leaf accept { description "Accept the packet"; type empty; } } case case_2 { leaf discard { description "Discard the packet"; type empty; } } } } } } grouping ptsp_match_object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list remote-address { key name; ordered-by user; description "Match IP remote address"; uses sfw_addr_object; } list remote-address-range { key "low high"; ordered-by user; description "Match IP remote address range"; leaf low { description "Lower limit of address range"; type ipaddr; } leaf high { description "Upper limit of address range"; type ipaddr; } leaf except { description "Match address not in this prefix"; type empty; } } list remote-prefix-list { key name; ordered-by user; description "One or more named lists of remote prefixes to match"; leaf name { description "Name of prefix list to match against"; type string; } leaf except { description "Name of prefix list not to match against"; type empty; } } leaf protocol { description "IPv4 protocol number"; type uint16 { range "0 .. 255"; } } leaf-list local-ports { description "Local port list specification"; type uint32 { range "0 .. 65535"; } } list local-port-range { key "low high"; ordered-by user; description "Match local port range"; leaf low { description "Lower limit of port range"; type uint32 { range "0 .. 65535"; } } leaf high { description "Upper limit of port range"; type uint32 { range "0 .. 65535"; } } } leaf-list remote-ports { description "Remote port list specification"; type uint32 { range "0 .. 65535"; } } list remote-port-range { key "low high"; ordered-by user; description "Match remote port range"; leaf low { description "Lower limit of port range"; type uint32 { range "0 .. 65535"; } } leaf high { description "Upper limit of port range"; type uint32 { range "0 .. 65535"; } } } choice app-rule { case case_1 { leaf application-group-any { description "Match any application group"; type empty; } } case case_2 { leaf-list applications { description "Match one or more applications"; type string; } } case case_3 { leaf-list nested-applications { description "Match one or more nested-applications"; type string; } } case case_4 { leaf-list application-groups { description "Match one or more application groups"; type string; } } } } grouping qualified_nh_obj { leaf name { description "Next hop to destination"; type ipaddr-or-interface; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf preference { description "Preference of qualified next hop"; type uint32; } leaf metric { description "Metric of qualified next hop"; type uint32; } leaf interface { description "Interface of qualified next hop"; type interface-name; } leaf mac-address { description "Next-hop Mac Address"; type mac-unicaset; } container bfd-liveness-detection { description "Bidirectional Forwarding Detection (BFD) options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } container authentication { description "Authentication options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf key-chain { description "Key chain name"; type string; } leaf algorithm { description "Algorithm name"; type enumeration { enum simple-password { description "Simple password"; } enum keyed-md5 { description "Keyed message Digest 5"; } enum meticulous-keyed-md5 { description "Meticulous keyed message Digest 5"; } enum keyed-sha-1 { description "Keyed secure hash algorithm (SHA1) "; } enum meticulous-keyed-sha-1 { description "Meticulous keyed secure hash algorithm (SHA1) "; } } } leaf loose-check { description "Verify authentication only if authentication is negotiated"; type empty; } } leaf neighbor { description "BFD neighbor address"; type ipaddr; } leaf local-address { description "BFD local address (for multihop only)"; type ipaddr; } leaf holddown-interval { description "Time to hold the session-UP notification to the client"; units "milliseconds"; type uint32 { range "0 .. 255000"; } } leaf minimum-receive-ttl { description "Minimum receive TTL below which to drop"; type uint8 { range "1 .. 255"; } } } } grouping r2cp-traceoptions-type { description "Trace options for R2CP process"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Area of R2CP process to enable debugging output"; leaf name { description "(null)"; type enumeration { enum configuration { description "Trace configuration code"; } enum event { description "Trace events"; } enum interface { description "Trace interface processing"; } enum node { description "Trace node table code"; } enum packet { description "Trace packet processing"; } enum rtsock { description "Trace routing socket code"; } enum session { description "Trace session events"; } enum socket { description "Trace socket calls"; } enum timer { description "Trace timer code"; } enum virtual-channel { description "Trace virtual channel mapping code"; } enum all { description "Trace all areas of code"; } } } } } grouping radius-disconnect-object { leaf name { description "Address of RADIUS client from which to accept disconnect requests"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf secret { description "Secret with which to authenticate RADIUS client sending disconnect requests"; type unreadable; } } grouping radius-server-object { leaf name { description "RADIUS server address"; type hostname; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port { description "RADIUS server authentication port number"; default "1812"; type uint16 { range "1 .. 65535"; } } leaf accounting-port { description "RADIUS server accounting port number"; default "1813"; type uint16 { range "1 .. 65535"; } } leaf dynamic-request-port { description "RADIUS client dynamic request port number"; default "3799"; type uint16 { range "1 .. 65535"; } } leaf secret { description "Shared secret with the RADIUS server"; type unreadable; mandatory true; } leaf timeout { description "Request timeout period"; default "3"; units "seconds"; type uint32 { range "1 .. 90"; } } leaf retry { description "Retry attempts"; default "3"; type uint32 { range "1 .. 10"; } } leaf accounting-timeout { description "Accounting equest timeout period"; default "0"; units "seconds"; type uint32 { range "0 .. 900"; } } leaf accounting-retry { description "Accounting retry attempts"; default "0"; type uint32 { range "0 .. 10"; } } leaf max-outstanding-requests { description "Maximum requests in flight to server"; default "1000"; type uint32 { range "0 .. 2000"; } } leaf source-address { description "Use specified address as source address"; type ipaddr; } } grouping radius-traceoptions { description "Trace options related to RADIUS servers"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum send { description "Trace transmitted packets"; } enum send-detail { description "Trace transmitted packets in detail"; } enum receive { description "Trace received packets"; } enum receive-detail { description "Trace received packets in detail"; } enum timeout { description "Trace timeout events"; } enum state { description "Trace RADIUS server state changes"; } enum all { description "Trace everything"; } } } } list server { key name; ordered-by user; description "Trace packet sent to or received from the server[s]"; leaf name { description "Trace packet sent to or received from the server"; type string { length "1 .. 31"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } grouping radius_shared_type { leaf name { description "Name of server"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list address { description "RADIUS server addresses"; type ipv4addr; } leaf routing-instance { description "Routing instance for server"; type string { } } choice address-range-choice { case case_1 { leaf gi-address-range { description "Address range used in routing instance"; type ipv4prefix; } } } leaf timeout { description "Request timeout period"; default "3"; units "seconds"; type uint32 { range "1 .. 90"; } } leaf retry { description "Retry attempts"; default "3"; type uint32 { range "1 .. 10"; } } leaf port { description "Port number for RADIUS messages"; type uint16; } leaf secret { description "Shared secret with the RADIUS server"; type unreadable; mandatory true; } leaf serverdown-timeout { description "Time before retrying requests to a down server"; default "60"; units "seconds"; type uint32 { range "0 .. 1800"; } } leaf multicast-servers { description "Number of enabled RADIUS multicast servers"; default "0"; type uint32 { range "0 .. 9"; } } leaf no-accounting-on { description "Don't send accounting on and off messages"; type empty; } } grouping radius_type { leaf name { description "RADIUS server address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf timeout { description "Request timeout period"; default "3"; units "seconds"; type uint32 { range "1 .. 90"; } } leaf retry { description "Retry attempts"; default "3"; type uint32 { range "1 .. 10"; } } leaf port { description "Port number for RADIUS messages"; type uint16; } leaf secret { description "Shared secret with the RADIUS server"; type unreadable; mandatory true; } leaf serverdown-timeout { description "Time before retrying requests to a down server"; default "60"; units "seconds"; type uint32 { range "0 .. 1800"; } } leaf multicast { description "Allow server to participate in RADIUS multicast"; type empty; } } grouping reconfigure-trigger-type { description "DHCP reconfigure trigger"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf radius-disconnect { description "Trigger DHCP reconfigure by radius initiated disconnect"; type empty; } } grouping reconfigure-type { description "DHCP reconfigure processing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf clear-on-abort { description "Delete client on reconfiguration abort"; type empty; } leaf attempts { description "Number of reconfigure attempts before aborting"; type uint32 { range "1 .. 10"; } } leaf timeout { description "Initial timeout value for retry"; type uint32 { range "1 .. 10"; } } leaf token { description "Reconfigure token"; type string { length "1 .. 244"; } } container trigger { description "DHCP reconfigure trigger"; uses reconfigure-trigger-type; } } grouping registration_policy_type { leaf name { description "Policy name"; type string; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list term { key name; ordered-by user; description "Term definition"; max-elements 20; leaf name { description "Term name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "From action"; uses new_transaction_from_type; } container then { description "Action"; uses new_registration_then_type; } } } grouping new_registration_then_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container nat-traversal { description "How to traverse NAT devices"; uses nat_traversal_action; } } grouping nat_traversal_action { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf nat-traversal-strategy { description "Choose when to perform NAT traversal"; type enumeration { enum never { description "Never perform NAT traversal"; } enum always { description "Always perform NAT traversal"; } enum by-via { description "Perform NAT traversal only if transport source address does not match VIA header"; } } } leaf keepalive-interval { description "Keepalive interval"; default "45"; units "seconds"; type uint32 { range "15 .. 86400"; } } leaf minimum-registration-interval { description "Minimum registration interval allowed in register packet"; default "1"; units "seconds"; type uint32 { range "1 .. 86400"; } } container keepalive-mechanisms { description "A prioritized list of keepalive mechanisms"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf register-fast-expiration { description "Reduce the expiration interval in REGISTER responses"; type empty; } } } grouping new_transaction_from_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list source-address { description "Source addresses and masks"; type ipaddr; max-elements 5; } list method { key name; ordered-by user; description "Methods"; uses transaction-method-type; } container request-uri { description "Request URI field"; leaf-list regular-expression { description "Regular expression matched on incoming Request-URI"; type regular-expression; max-elements 5; } leaf registration-state { description "Registration state"; type enumeration { enum registered { description "(null)"; } enum not-registered { description "(null)"; } } } leaf uri-hiding { description "URI hidden"; type enumeration { enum hidden-uri { description "(null)"; } enum not-hidden-uri { description "(null)"; } } } } container contact { description "Contact field"; leaf-list regular-expression { description "Regular expression matched on incoming contact"; type regular-expression; max-elements 5; } leaf registration-state { description "Registration state"; type enumeration { enum registered { description "(null)"; } enum not-registered { description "(null)"; } } } leaf uri-hiding { description "URI hidden"; type enumeration { enum hidden-uri { description "(null)"; } enum not-hidden-uri { description "(null)"; } } } } } grouping relay-option-82-type { description "DHCP option-82 processing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container circuit-id { presence "enable circuit-id"; description "Add circuit identifier"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container prefix { description "Add prefix to circuit/interface-id or remote-id"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf host-name { description "Add router host name to circuit / interface-id or remote-id"; type empty; } leaf logical-system-name { description "Add logical system name to circuit / interface-id or remote-id"; type empty; } leaf routing-instance-name { description "Add routing instance name to circuit / interface-id or remote-id"; type empty; } } leaf use-interface-description { description "Use interface description instead of circuit identifier"; type enumeration { enum logical { description "Use the logical interface description"; } enum device { description "Use the device interface description"; } } } leaf use-vlan-id { description "Use VLAN id instead of name"; type empty; } leaf no-vlan-interface-name { description "Not include vlan or interface name"; type empty; } leaf include-irb-and-l2 { description "Include IRB and L2interface name"; type empty; } } container remote-id { presence "enable remote-id"; description "Add remote identifier"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container prefix { description "Add prefix to circuit/interface-id or remote-id"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf host-name { description "Add router host name to circuit / interface-id or remote-id"; type empty; } leaf logical-system-name { description "Add logical system name to circuit / interface-id or remote-id"; type empty; } leaf routing-instance-name { description "Add routing instance name to circuit / interface-id or remote-id"; type empty; } } leaf use-interface-description { description "Use interface description instead of circuit identifier"; type enumeration { enum logical { description "Use the logical interface description"; } enum device { description "Use the device interface description"; } } } leaf use-vlan-id { description "Use VLAN id instead of name"; type empty; } leaf no-vlan-interface-name { description "Not include vlan or interface name"; type empty; } leaf include-irb-and-l2 { description "Include IRB and L2interface name"; type empty; } } } grouping relay-v4-option-ascii-hex { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list ascii { key name; description "ASCII string"; leaf name { description "ASCII string"; type string { length "1 .. 256"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice server-group-choice { case case_1 { leaf relay-server-group { description "Name of DHCP relay server group when match is made"; type string { length "1 .. 64"; } } } case case_2 { leaf local-server-group { description "Name of DHCP local server group when match is made"; type string { length "1 .. 64"; } } } case case_3 { leaf drop { description "Discard when a match is made"; type empty; } } case case_4 { leaf forward-only { description "Forward without subscriber services when a match is made"; type empty; } } case case_5 { container relay-config { presence "enable relay-config"; description "Config changes relevant to a relay"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf relay-server-group { description "Name of DHCP relay server group when match is made"; type string { length "1 .. 64"; } } container dynamic-profile { description "Dynamic profile to use"; uses dynamic-profile-type; } leaf giaddr { description "Set the client's giaddr"; type ipaddr; } } } } } list hexadecimal { key name; description "Hexadecimal string"; leaf name { description "Hexadecimal string"; type string { length "1 .. 512"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice server-group-choice { case case_1 { leaf relay-server-group { description "Name of DHCP relay server group when match is made"; type string { length "1 .. 64"; } } } case case_2 { leaf local-server-group { description "Name of DHCP local server group when match is made"; type string { length "1 .. 64"; } } } case case_3 { leaf drop { description "Discard when a match is made"; type empty; } } case case_4 { leaf forward-only { description "Forward without subscriber services when a match is made"; type empty; } } case case_5 { container relay-config { presence "enable relay-config"; description "Config changes relevant to a relay"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf relay-server-group { description "Name of DHCP relay server group when match is made"; type string { length "1 .. 64"; } } container dynamic-profile { description "Dynamic profile to use"; uses dynamic-profile-type; } leaf giaddr { description "Set the client's giaddr"; type ipaddr; } } } } } } grouping relay-v6-option-ascii-hex { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list ascii { key name; description "ASCII string"; leaf name { description "ASCII string"; type string { length "1 .. 256"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice server-group-choice { case case_1 { leaf relay-server-group { description "Name of DHCP relay server group when match is made"; type string { length "1 .. 64"; } } } case case_2 { leaf drop { description "Discard when a match is made"; type empty; } } case case_3 { leaf forward-only { description "Forward without subscriber services when a match is made"; type empty; } } } } list hexadecimal { key name; description "Hexadecimal string"; leaf name { description "Hexadecimal string"; type string { length "1 .. 512"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice server-group-choice { case case_1 { leaf relay-server-group { description "Name of DHCP relay server group when match is made"; type string { length "1 .. 64"; } } } case case_2 { leaf drop { description "Discard when a match is made"; type empty; } } case case_3 { leaf forward-only { description "Forward without subscriber services when a match is made"; type empty; } } } } } grouping res-cleanupd-traceoptions-type { description "Trace options for resource cleanup process"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Area of resource cleanup process to enable debugging output"; leaf name { description "(null)"; type enumeration { enum events { description "Trace event code"; } enum gencfg { description "Trace GENCFG blob cleanup code"; } enum module { description "Trace module code"; } enum sysvsem { description "Trace SYSV semaphore cleanup code"; } enum sysvshm { description "Trace SYSV shared memory cleanup code"; } enum tracking { description "Trace process tracking code"; } enum ui { description "Trace user interface code"; } enum all { description "Trace all areas of code"; } } } } } grouping resource-monitor-type { description "Resource monitor configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list resource-category { key name; ordered-by user; description "Resource category"; leaf name { description "(null)"; type enumeration { enum jtree { description "Category jtree"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list resource-type { key name; ordered-by user; description "Resource type"; leaf name { description "(null)"; type enumeration { enum free-pages { description "Type free-pages"; } enum free-dwords { description "Type free-dwords"; } enum contiguous-pages { description " Type contiguous-pages"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf low-watermark { description "Low watermark limit percentage"; type uint32 { range "1 .. 100"; } } leaf high-watermark { description "High watermark limit percentage"; type uint32 { range "1 .. 100"; } } } } container traceoptions { description "Resource monitor trace options"; uses resource-monitor-traceoptions-type; } leaf no-throttle { description "Disable throttling of subscribers and services based on resource utilization"; type empty; } leaf no-logging { description "Disable logging of warning or error messages resource levels exceeded"; type empty; } leaf high-threshold { description "High threshold percentage for resource utilization"; units "percentage"; type uint32 { range "1 .. 99"; } } leaf free-heap-memory-watermark { description "Watermark percentage for ukern heap resource utilization"; units "percentage"; type uint32 { range "1 .. 99"; } } leaf free-nh-memory-watermark { description "Watermark percentage for NH resource utilization"; units "percentage"; type uint32 { range "1 .. 99"; } } leaf free-fw-memory-watermark { description "Watermark percentage for Filter / Firewall resource utilization"; units "percentage"; type uint32 { range "1 .. 99"; } } } grouping resource-monitor-traceoptions-type { description "Trace options for Resource monitor "; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Resource monitor operations to include in debugging trace"; leaf name { description "(null)"; type enumeration { enum all { description "All operations"; } } } } } grouping resources-type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container cpu { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf priority { description "Highest priority (nice level) process can run at"; type int32; } leaf time { description "Maximum amount of CPU time that can be accumulated"; type uint64; } } container memory { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf data-size { description "Maximum size of the data segment"; units "mbytes"; type string; } leaf locked-in { description "Maximum bytes that can be locked into memory"; units "mbytes"; type string; } leaf resident-set-size { description "Maximum amount of private physical memory at any given moment"; units "mbytes"; type string; } leaf socket-buffers { description "Maximum amount of physical memory that may be dedicated to socket buffers"; units "mbytes"; type string; } leaf stack-size { description "Maximum size of the stack segment"; units "mbytes"; type string; } } container file { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf size { description "Maximum size of a file that can be created"; units "mbytes"; type string; } leaf open { description "Maximum number of simultaneous open files"; type uint64; } leaf core-size { description "Maximum size of a core file that can be created"; units "mbytes"; type string; } } } grouping rib_aggregate_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container defaults { description "Global route options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container metric { description "Metric value"; uses rib_static_metric_type; } container metric2 { description "Metric value 2"; uses rib_static_metric_type; } container metric3 { description "Metric value 3"; uses rib_static_metric_type; } container metric4 { description "Metric value 4"; uses rib_static_metric_type; } container tag { description "Tag string"; uses rib_static_metric_type; } container tag2 { description "Tag string 2"; uses rib_static_metric_type; } container preference { description "Preference value"; uses rib_static_metric_type; } container preference2 { description "Preference value 2"; uses rib_static_metric_type; } container color { description "Color (preference) value"; uses rib_static_metric_type; } container color2 { description "Color (preference) value 2"; uses rib_static_metric_type; } leaf-list community { description "BGP community identifier"; type community; } container as-path { description "Autonomous system path"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf path { description "Autonomous system path"; type string; } leaf origin { description "(null)"; type enumeration { enum igp { description "Path originated in the local IGP"; } enum egp { description "Path originated in another AS"; } enum incomplete { description "Path was learned by some other means"; } } } leaf atomic-aggregate { description "Add ATOMIC_AGGREGATE path attribute to route"; type empty; } container aggregator { presence "enable aggregator"; description "Add AGGREGATOR path attribute to route"; } leaf as-number { description " Autonomous system number in plain number or 'higher 16bits'.'Lower 16 bits' (asdot notation) format"; type string { } } leaf address { description "Address of BGP system that formed the route"; type ipv4addr; } } leaf discard { description "Drop packets to destination; send no ICMP unreachables"; type empty; } choice brief_flag { case case_1 { leaf brief { description "Include longest common sequences from contributing paths"; type empty; } } case case_2 { leaf full { description "Include all AS numbers from all contributing paths"; type empty; } } } choice passive_flag { case case_1 { leaf active { description "Remove inactive route from forwarding table"; type empty; } } case case_2 { leaf passive { description "Retain inactive route in forwarding table"; type empty; } } } } list route { key name; ordered-by user; description "Individual route options"; leaf name { description "Destination prefix"; type ipprefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list policy { description "Policy filter"; type policy-algebra; } container metric { description "Metric value"; uses rib_static_metric_type; } container metric2 { description "Metric value 2"; uses rib_static_metric_type; } container metric3 { description "Metric value 3"; uses rib_static_metric_type; } container metric4 { description "Metric value 4"; uses rib_static_metric_type; } container tag { description "Tag string"; uses rib_static_metric_type; } container tag2 { description "Tag string 2"; uses rib_static_metric_type; } container preference { description "Preference value"; uses rib_static_metric_type; } container preference2 { description "Preference value 2"; uses rib_static_metric_type; } container color { description "Color (preference) value"; uses rib_static_metric_type; } container color2 { description "Color (preference) value 2"; uses rib_static_metric_type; } leaf-list community { description "BGP community identifier"; type community; } container as-path { description "Autonomous system path"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf path { description "Autonomous system path"; type string; } leaf origin { description "(null)"; type enumeration { enum igp { description "Path originated in the local IGP"; } enum egp { description "Path originated in another AS"; } enum incomplete { description "Path was learned by some other means"; } } } leaf atomic-aggregate { description "Add ATOMIC_AGGREGATE path attribute to route"; type empty; } container aggregator { presence "enable aggregator"; description "Add AGGREGATOR path attribute to route"; } leaf as-number { description " Autonomous system number in plain number or 'higher 16bits'.'Lower 16 bits' (asdot notation) format"; type string { } } leaf address { description "Address of BGP system that formed the route"; type ipv4addr; } } leaf discard { description "Drop packets to destination; send no ICMP unreachables"; type empty; } choice brief_flag { case case_1 { leaf brief { description "Include longest common sequences from contributing paths"; type empty; } } case case_2 { leaf full { description "Include all AS numbers from all contributing paths"; type empty; } } } choice passive_flag { case case_1 { leaf active { description "Remove inactive route from forwarding table"; type empty; } } case case_2 { leaf passive { description "Retain inactive route in forwarding table"; type empty; } } } } } grouping rib_group_inet_type { description "Routing table group"; leaf ribgroup-name { description "Name of the routing table group"; type string; mandatory true; } } grouping rib_group_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf inet { description "Name of the IPv4 routing table group"; type string; } leaf inet6 { description "Name of the IPv6 routing table group"; type string; } } grouping rib_static_metric_type { leaf metric-value { description "Metric value"; type uint32; mandatory true; } leaf type { description "Metric type"; type uint32 { range "1 .. 16"; } } } grouping rip_filter_obj { description "Filter to apply to tracing"; leaf match-on { description "Argument on which to match"; type enumeration { enum prefix { description "Filter based on prefix"; } } mandatory true; } leaf-list policy { description "Filter policy"; type policy-algebra; } } grouping rmopd-traceoptions { description "Trace options for remote-monitoring"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum configuration { description "Trace configuration events"; } enum ipc { description "Trace ipc messages"; } enum ppm { description "Trace ppm"; } enum statistics { description "Trace statistics"; } enum error { description "Trace events related to catestrophic errors in daemon"; } enum all { description "Trace everything"; } } } } } grouping rmps-clnt-traceoptions-type { description "Trace options for Resource Management and Packet Steering Client"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Resource Management Packet Steering Client to trace"; leaf name { description "(null)"; type enumeration { enum infra { description "Trace FSM and Infra code"; } enum memory { description "Trace Memory Management Code"; } enum communication { description "Trace IPC code"; } enum resource-tables { description "Trace Resource Table Code"; } enum info-tables { description "Trace Information Table Code"; } enum redundancy { description "Trace GRES Code"; } enum all { description "Trace All Resource Client Code"; } } } } } grouping rmpsd-traceoptions-type { description "Trace options for Resource Management and Packet Steering Daemon"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Resource Management Packet Steering Area to trace"; leaf name { description "(null)"; type enumeration { enum config { description "Trace configuration code"; } enum gres { description "Trace GRES code"; } enum init { description "Trace initialization code"; } enum memory { description "Trace memory management code"; } enum communication { description "Trace Infra code"; } enum license-management { description "Trace license management code"; } enum signal { description "Trace signal handling code"; } enum state { description "Trace state handling code"; } enum timer { description "Trace timer code"; } enum ui { description "Trace user interface code"; } enum resource-manager { description "Trace Resource Management Code"; } enum info-manager { description "Trace Information Management Code"; } enum packet-steering { description "Trace packet-steering code"; } enum all { description "Trace all areas of code"; } } } } } grouping roaming_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list roaming-class { key name; description "Roaming class"; uses roaming_class_type; } container default { presence "enable default"; description "Default roaming class"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rat-type { key name; description "Radio Access Type"; uses roaming_default_type; } leaf roaming-class { description "Roaming class for any radio access type"; type uint32 { range "1 .. 24"; } mandatory true; } } } grouping roaming_class_type { leaf name { description "Roaming class identifier"; type uint32 { range "1 .. 24"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list plmn { key name; ordered-by user; description "Public Land Mobile Network name"; leaf name { description "Public Land Mobile Network name"; type string { length "1 .. 20"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list plmn-id { key name; ordered-by user; description "Public Land Mobile Network identifier"; uses roaming_plmn_id_type; } } } grouping roaming_default_type { leaf name { description "Radio access type (RAT) identifier"; type enumeration { enum unknown { description "Unknown or missing"; } enum utran { description "WCDMA/UMTS Terrestrial radio access network"; } enum geran { description "GSM/EDGE radio access network"; } enum wlan { description "Wireless local area network"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf roaming-class { description "Roaming class"; type uint32 { range "1 .. 24"; } mandatory true; } } grouping roaming_plmn_id_type { leaf name { description "SGSN Public Land Mobile Network identifier"; type string { length "5 .. 6"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list rat-types { description "Radio access type (RAT) global defaults"; type enumeration { enum unknown { description "Unknown or missing"; } enum utran { description "WCDMA/UMTS Terrestrial radio access network"; } enum geran { description "GSM/EDGE radio access network"; } enum wlan { description "Wireless local area network"; } } } } grouping route_record_traceoptions { description "Traceoptions for sampling route record"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Area of route-record to enable debuging output"; leaf name { description "(null)"; type enumeration { enum parse { description "Trace parsing code"; } enum all { description "Trace all area of jflow-service code"; } } } } } grouping routing-destinations { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default-availability-check-profile { description "Profile that will be used if no other profile was attached to a server"; type string { length "1 .. 256"; } } list availability-check-profiles { key name; ordered-by user; description "Definitions of servers availability check profiles"; max-elements 100; uses availability-check-profile; } list servers { key name; ordered-by user; description "Servers definitions"; max-elements 5000; uses routing-destination-server; } list clusters { key name; ordered-by user; description "Clusters definitions"; max-elements 1000; uses routing-destination-cluster; } } grouping availability-check-profile { leaf name { description "(null)"; type string { length "1 .. 256"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container keepalive-method { description "How will availability check be done"; choice ping-method { case case_1 { leaf sip-options { description "Check availability by sending a SIP OPTIONS message"; type empty; } } } } container keepalive-strategy { presence "enable keepalive-strategy"; description "When will the server be checked for availability"; choice keepalive-strategy { case case_1 { container send-always { presence "enable send-always"; description "Always check the server availability"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf failures-before-unavailable { description "A server is assumed to be unavailable when a keepalive message was not answered this number of times"; default "1"; type uint32 { range "1 .. 10"; } } leaf successes-before-available { description "A server is assumed to be available when a keepalive message was successfully answered this number of times"; default "1"; type uint32 { range "1 .. 10"; } } } } case case_2 { container send-when-unavailable { presence "enable send-when-unavailable"; description "Check the server availability only when it is marked as unavailable"; leaf successes-before-available { description "A server is assumed to be available when a keepalive message was successfully answered this number of times"; default "1"; type uint32 { range "1 .. 10"; } } } } case case_3 { container do-not-send { presence "enable do-not-send"; description "Never perform availability checks of the server"; leaf blackout-period { description "Time a server will be considered unavailable"; default "600"; units "seconds"; type uint32 { range "0 .. 86400"; } } } } } } container keepalive-interval { description "How often should the server be checked for availability"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf available-server { description "How often should a server that is marked as available be checked for availablility"; default "32"; units "seconds"; type uint32 { range "10 .. 86400"; } } leaf unavailable-server { description "How often should a server that is marked as unavailable be checked for availablility"; default "32"; units "seconds"; type uint32 { range "10 .. 86400"; } } } leaf transaction-timeout { description "A server is assumed to be unavailable when a keepalive message was not answered in this time"; default "32"; units "seconds"; type uint32 { range "10 .. 32"; } } } grouping routing-destination-cluster { leaf name { description "(null)"; type string { length "1 .. 256"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list server { key name; ordered-by user; description "(null)"; max-elements 25; leaf name { description "Server name"; type string { length "1 .. 256"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf priority { description "Defines the redundency order"; default "1"; type uint16; } leaf weight { description "Defines the load balancing ratio"; default "1"; type uint16; } } } grouping routing-destination-server { leaf name { description "(null)"; type string { length "1 .. 256"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container address { description "Server's address"; uses routing-destination-address; } leaf service-point { description "Exit point"; type string; mandatory true; } leaf admission-control { description "Admission control profile for the server"; type string; } leaf availability-check-profile { description "Availability check profile for the server"; type string { length "1 .. 256"; } } } grouping routing-destination-address { leaf ip4-address { description "IP address"; type ipaddr; mandatory true; } leaf port { description "Port number"; default "5060"; type uint32 { range "0 .. 65535"; } } container transport-protocol { description "Transport protocol"; uses transport_protocol; } } grouping rpd_rib_group_type { description "Routing table group"; leaf name { description "Routing table group"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf export-rib { description "Export routing table"; type string; } leaf-list import-rib { description "Import routing table"; type string; } leaf-list import-policy { description "Import policy"; type policy-algebra; } } grouping rtf_prefix_list_items { leaf name { description "Family route-target prefix"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } grouping rule_space_type { leaf name { description "Rule space name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf service-set { description "The service-set correlating to the rule-space"; type string { } mandatory true; } container buffer-pending-authorization { presence "enable buffer-pending-authorization"; description "Settings for buffering packets pending authorization"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list service-identifiers { description "List of service identifiers for which payload will be buffered while waiting for authorization"; type string { length "1 .. 21"; } max-elements 1000; } leaf buffer-limit { description "Maximum number of packets to buffer"; default "5"; type uint32 { range "0 .. 100"; } } } leaf-list drop-pending-authorization { description "List of service identifiers for which payload will dropped while waiting for authorization"; type string { length "1 .. 21"; } max-elements 1000; } container pass-through-pending-authorization { presence "enable pass-through-pending-authorization"; description "Settings for passing through packets pending authorization"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list service-identifiers { description "List of service identifiers for which limited payload will pass while waiting for credit"; type string { length "1 .. 21"; } max-elements 1000; } leaf pass-through-limit { description "Maximum number of packets to pass through"; default "5"; type uint32 { range "1 .. 254"; } } } list redirect-map { key name; ordered-by user; description "Mapping service identifiers to redirect sets"; leaf name { description "A redirect set"; type string { length "1 .. 63"; } } leaf-list service-id { description "Service identifier to redirect for the given redirect set"; type string { length "1 .. 21"; } max-elements 1000; } } container time-based-charging { description "Rating group related configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container measurement { presence "enable measurement"; description "Default active time settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf resolution { description "Time measurement resolution for active usage"; default "1"; units "seconds"; type uint32 { range "1 .. 86400"; } } leaf inactivity { description "Time measurement inactivity for active usage"; default "60"; units "seconds"; type uint32 { range "1 .. 86400"; } } leaf reporting { description "Reporting method for time-based-charging"; default "no-reporting"; type enumeration { enum no-reporting { description "Do not report active usage"; } enum timestamp { description "Report start and stop timestamps for each period of active usage"; } enum timestamp-and-volume { description "Reports timestamps and used volume for each period of active usage"; } } } leaf method { description "Method to use for measurement of active usage"; default "duration"; type enumeration { enum inactivity { description "Use inactivity period but do not included it in usage"; } enum inactivity-included { description "Use inactivity period and include it in usage"; } enum duration { description "Measure the duration of the session"; } enum active-periods { description "Each resolution period with traffic is counted as active usage"; } } } } list rating-group-cluster { key name; ordered-by user; description "Common time base definitions for clusters of rating groups"; max-elements 256; uses rating_group_cluster_type; } } container quota-handling { presence "enable quota-handling"; description "Quota handling preferences"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice holding-time-choice { case case_1 { leaf holding-time-period { description "Period of inactivity after which to report the quota"; default "180"; units "seconds"; type uint32 { range "5 .. 86400"; } } } case case_2 { leaf holding-time-infinity { description "Infinite holding time"; type empty; } } } leaf-list no-quota-handling { description "Rating group for which quota shall not be requested"; type string { length "1 .. 21"; } max-elements 4095; } leaf user-denied-time { description "Time to wait before requesting new quota after a request has been denied"; default "180"; units "seconds"; type uint32 { range "5 .. 86400"; } } container re-authorization-triggers { presence "enable re-authorization-triggers"; description "Default triggers for quota re-authorization"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf sgsn-address { description "Trigger re-authorization if sgsn address has changed for the PDP context"; type empty; } leaf sgsn-plmn-id { description "Trigger re-authorization if PLMN id has changed for the PDP context"; type empty; } leaf rat-type { description "Trigger re-authorization if RAT has changed for the PDP context"; type empty; } leaf qos { description "Trigger re-authorization if QoS has changed for the PDP context"; type empty; } } } container rating-group { presence "enable rating-group"; description "Classification of service-identifiers to Rating Groups, and explicit barring of services"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container default { presence "enable default"; description "Default rating group"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice default-classification { case case_1 { leaf default-rating-group { description "Use this rating group if not found in map table"; type uint32 { range "1 .. 4294967295"; } } } case case_2 { leaf use-service-id { description "Use the service-id as a rating-group"; type empty; } } } } list map { key name; description "Map of service ids to rating groups"; max-elements 4095; uses sid_to_rg_map_type; } leaf-list not-allowed { description "Access to rating group not allowed"; type string { length "1 .. 21"; } max-elements 4095; } } leaf enable-access-control-rules { description "Access control rules enabled using service-id as access-control-rule id"; type empty; } leaf-list always-allowed-service-identifiers { description "Always allowed service identifiers"; type string { length "1 .. 21"; } max-elements 64; } list access-control-group { key name; ordered-by user; description "Access control group settings"; max-elements 64; uses access_control_group_type; } leaf initial-redirect { description "Redirect services at first access"; type empty; } container local-policy-control { presence "enable local-policy-control"; description "Local policy control settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice local_policy_control_authorization { case case_1 { list activation-time { key name; description "Activation time for authorization settings"; max-elements 24; leaf name { description "Activation time (hh:mm)"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list roaming-class { key name; ordered-by user; description "Authorization settings for roaming class"; leaf name { description "Roaming class identifier"; type uint32 { range "1 .. 24"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list quality-of-service { key name; ordered-by user; description "Authorization settings for quality of service"; leaf name { description "Authorized traffic class"; type enumeration { enum conversational { description "Conversational quality of service"; } enum streaming { description "Streaming quality of service"; } enum interactive-1 { description "Interactive priority 1 quality of service"; } enum interactive-2 { description "Interactive priority 2 quality of service"; } enum interactive-3 { description "Interactive priority 3 quality of service"; } enum background { description "Background quality of service"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list access-control-rule { key name; ordered-by user; description "Authorization settings for access control rule identifier"; leaf name { description "Access control rule identifier"; type uint32 { range "0 .. 4294967295"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf authorization-code { description "Authorization code"; type enumeration { enum authorized { description "Authorized"; } enum denied-roaming { description "Deny access because of roaming class"; } enum denied-calendar-time { description "Deny access because of time of day"; } enum denied-quality-of-service { description "Deny access because of quality of service"; } enum denied-user-defined-reason-1 { description "Deny access due to proprietery operator definition (1)"; } enum denied-user-defined-reason-2 { description "Deny access due to proprietery operator definition (2)"; } enum denied-user-defined-reason-3 { description "Deny access due to proprietery operator definition (3)"; } enum denied-user-defined-reason-4 { description "Deny access due to proprietery operator definition (4)"; } enum denied-user-defined-reason-5 { description "Deny access due to proprietery operator definition (5)"; } enum denied-blacklisted { description "Deny access because rating group is blacklisted"; } enum denied-unknown { description "Deny access for unknown reason"; } enum denied-terminal { description "Deny access due to terminal limitations"; } } } } list access-control-group { key name; ordered-by user; description "Authorization settings for access control group"; leaf name { description "Access control group identifier"; type uint32 { range "1 .. 4294967295"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf authorization-code { description "Authorization code"; type enumeration { enum authorized { description "Authorized"; } enum denied-roaming { description "Deny access because of roaming class"; } enum denied-calendar-time { description "Deny access because of time of day"; } enum denied-quality-of-service { description "Deny access because of quality of service"; } enum denied-user-defined-reason-1 { description "Deny access due to proprietery operator definition (1)"; } enum denied-user-defined-reason-2 { description "Deny access due to proprietery operator definition (2)"; } enum denied-user-defined-reason-3 { description "Deny access due to proprietery operator definition (3)"; } enum denied-user-defined-reason-4 { description "Deny access due to proprietery operator definition (4)"; } enum denied-user-defined-reason-5 { description "Deny access due to proprietery operator definition (5)"; } enum denied-blacklisted { description "Deny access because rating group is blacklisted"; } enum denied-unknown { description "Deny access for unknown reason"; } enum denied-terminal { description "Deny access due to terminal limitations"; } } } } } container default-quality-of-service { presence "enable default-quality-of-service"; description "Default authorization settings for quality of service"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list access-control-rule { key name; ordered-by user; description "Authorization settings for access control rule identifier"; leaf name { description "Access control rule identifier"; type uint32 { range "0 .. 4294967295"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf authorization-code { description "Authorization code"; type enumeration { enum authorized { description "Authorized"; } enum denied-roaming { description "Deny access because of roaming class"; } enum denied-calendar-time { description "Deny access because of time of day"; } enum denied-quality-of-service { description "Deny access because of quality of service"; } enum denied-user-defined-reason-1 { description "Deny access due to proprietery operator definition (1)"; } enum denied-user-defined-reason-2 { description "Deny access due to proprietery operator definition (2)"; } enum denied-user-defined-reason-3 { description "Deny access due to proprietery operator definition (3)"; } enum denied-user-defined-reason-4 { description "Deny access due to proprietery operator definition (4)"; } enum denied-user-defined-reason-5 { description "Deny access due to proprietery operator definition (5)"; } enum denied-blacklisted { description "Deny access because rating group is blacklisted"; } enum denied-unknown { description "Deny access for unknown reason"; } enum denied-terminal { description "Deny access due to terminal limitations"; } } } } list access-control-group { key name; ordered-by user; description "Authorization settings for access control group"; leaf name { description "Access control group identifier"; type uint32 { range "1 .. 4294967295"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf authorization-code { description "Authorization code"; type enumeration { enum authorized { description "Authorized"; } enum denied-roaming { description "Deny access because of roaming class"; } enum denied-calendar-time { description "Deny access because of time of day"; } enum denied-quality-of-service { description "Deny access because of quality of service"; } enum denied-user-defined-reason-1 { description "Deny access due to proprietery operator definition (1)"; } enum denied-user-defined-reason-2 { description "Deny access due to proprietery operator definition (2)"; } enum denied-user-defined-reason-3 { description "Deny access due to proprietery operator definition (3)"; } enum denied-user-defined-reason-4 { description "Deny access due to proprietery operator definition (4)"; } enum denied-user-defined-reason-5 { description "Deny access due to proprietery operator definition (5)"; } enum denied-blacklisted { description "Deny access because rating group is blacklisted"; } enum denied-unknown { description "Deny access for unknown reason"; } enum denied-terminal { description "Deny access due to terminal limitations"; } } } } } } container default-roaming-class { description "Default authorization settings to use on no match"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list quality-of-service { key name; ordered-by user; description "Authorization settings for quality of service"; leaf name { description "Authorized traffic class"; type enumeration { enum conversational { description "Conversational quality of service"; } enum streaming { description "Streaming quality of service"; } enum interactive-1 { description "Interactive priority 1 quality of service"; } enum interactive-2 { description "Interactive priority 2 quality of service"; } enum interactive-3 { description "Interactive priority 3 quality of service"; } enum background { description "Background quality of service"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list access-control-rule { key name; ordered-by user; description "Authorization settings for access control rule identifier"; leaf name { description "Access control rule identifier"; type uint32 { range "0 .. 4294967295"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf authorization-code { description "Authorization code"; type enumeration { enum authorized { description "Authorized"; } enum denied-roaming { description "Deny access because of roaming class"; } enum denied-calendar-time { description "Deny access because of time of day"; } enum denied-quality-of-service { description "Deny access because of quality of service"; } enum denied-user-defined-reason-1 { description "Deny access due to proprietery operator definition (1)"; } enum denied-user-defined-reason-2 { description "Deny access due to proprietery operator definition (2)"; } enum denied-user-defined-reason-3 { description "Deny access due to proprietery operator definition (3)"; } enum denied-user-defined-reason-4 { description "Deny access due to proprietery operator definition (4)"; } enum denied-user-defined-reason-5 { description "Deny access due to proprietery operator definition (5)"; } enum denied-blacklisted { description "Deny access because rating group is blacklisted"; } enum denied-unknown { description "Deny access for unknown reason"; } enum denied-terminal { description "Deny access due to terminal limitations"; } } } } list access-control-group { key name; ordered-by user; description "Authorization settings for access control group"; leaf name { description "Access control group identifier"; type uint32 { range "1 .. 4294967295"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf authorization-code { description "Authorization code"; type enumeration { enum authorized { description "Authorized"; } enum denied-roaming { description "Deny access because of roaming class"; } enum denied-calendar-time { description "Deny access because of time of day"; } enum denied-quality-of-service { description "Deny access because of quality of service"; } enum denied-user-defined-reason-1 { description "Deny access due to proprietery operator definition (1)"; } enum denied-user-defined-reason-2 { description "Deny access due to proprietery operator definition (2)"; } enum denied-user-defined-reason-3 { description "Deny access due to proprietery operator definition (3)"; } enum denied-user-defined-reason-4 { description "Deny access due to proprietery operator definition (4)"; } enum denied-user-defined-reason-5 { description "Deny access due to proprietery operator definition (5)"; } enum denied-blacklisted { description "Deny access because rating group is blacklisted"; } enum denied-unknown { description "Deny access for unknown reason"; } enum denied-terminal { description "Deny access due to terminal limitations"; } } } } } container default-quality-of-service { presence "enable default-quality-of-service"; description "Default authorization settings for quality of service"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list access-control-rule { key name; ordered-by user; description "Authorization settings for access control rule identifier"; leaf name { description "Access control rule identifier"; type uint32 { range "0 .. 4294967295"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf authorization-code { description "Authorization code"; type enumeration { enum authorized { description "Authorized"; } enum denied-roaming { description "Deny access because of roaming class"; } enum denied-calendar-time { description "Deny access because of time of day"; } enum denied-quality-of-service { description "Deny access because of quality of service"; } enum denied-user-defined-reason-1 { description "Deny access due to proprietery operator definition (1)"; } enum denied-user-defined-reason-2 { description "Deny access due to proprietery operator definition (2)"; } enum denied-user-defined-reason-3 { description "Deny access due to proprietery operator definition (3)"; } enum denied-user-defined-reason-4 { description "Deny access due to proprietery operator definition (4)"; } enum denied-user-defined-reason-5 { description "Deny access due to proprietery operator definition (5)"; } enum denied-blacklisted { description "Deny access because rating group is blacklisted"; } enum denied-unknown { description "Deny access for unknown reason"; } enum denied-terminal { description "Deny access due to terminal limitations"; } } } } list access-control-group { key name; ordered-by user; description "Authorization settings for access control group"; leaf name { description "Access control group identifier"; type uint32 { range "1 .. 4294967295"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf authorization-code { description "Authorization code"; type enumeration { enum authorized { description "Authorized"; } enum denied-roaming { description "Deny access because of roaming class"; } enum denied-calendar-time { description "Deny access because of time of day"; } enum denied-quality-of-service { description "Deny access because of quality of service"; } enum denied-user-defined-reason-1 { description "Deny access due to proprietery operator definition (1)"; } enum denied-user-defined-reason-2 { description "Deny access due to proprietery operator definition (2)"; } enum denied-user-defined-reason-3 { description "Deny access due to proprietery operator definition (3)"; } enum denied-user-defined-reason-4 { description "Deny access due to proprietery operator definition (4)"; } enum denied-user-defined-reason-5 { description "Deny access due to proprietery operator definition (5)"; } enum denied-blacklisted { description "Deny access because rating group is blacklisted"; } enum denied-unknown { description "Deny access for unknown reason"; } enum denied-terminal { description "Deny access due to terminal limitations"; } } } } } } } } case case_2 { container all-time { presence "enable all-time"; description "Time-independent authorization settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list roaming-class { key name; ordered-by user; description "Authorization settings for roaming class "; leaf name { description "Roaming class identifier"; type uint32 { range "1 .. 24"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list quality-of-service { key name; ordered-by user; description "Authorization settings for quality of service"; leaf name { description "Authorized traffic class"; type enumeration { enum conversational { description "Conversational quality of service"; } enum streaming { description "Streaming quality of service"; } enum interactive-1 { description "Interactive priority 1 quality of service"; } enum interactive-2 { description "Interactive priority 2 quality of service"; } enum interactive-3 { description "Interactive priority 3 quality of service"; } enum background { description "Background quality of service"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list access-control-rule { key name; ordered-by user; description "Authorization settings for access control rule identifier"; leaf name { description "Access control rule identifier"; type uint32 { range "0 .. 4294967295"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf authorization-code { description "Authorization code"; type enumeration { enum authorized { description "Authorized"; } enum denied-roaming { description "Deny access because of roaming class"; } enum denied-calendar-time { description "Deny access because of time of day"; } enum denied-quality-of-service { description "Deny access because of quality of service"; } enum denied-user-defined-reason-1 { description "Deny access due to proprietery operator definition (1)"; } enum denied-user-defined-reason-2 { description "Deny access due to proprietery operator definition (2)"; } enum denied-user-defined-reason-3 { description "Deny access due to proprietery operator definition (3)"; } enum denied-user-defined-reason-4 { description "Deny access due to proprietery operator definition (4)"; } enum denied-user-defined-reason-5 { description "Deny access due to proprietery operator definition (5)"; } enum denied-blacklisted { description "Deny access because rating group is blacklisted"; } enum denied-unknown { description "Deny access for unknown reason"; } enum denied-terminal { description "Deny access due to terminal limitations"; } } } } list access-control-group { key name; ordered-by user; description "Authorization settings for access control group"; leaf name { description "Access control group identifier"; type uint32 { range "1 .. 4294967295"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf authorization-code { description "Authorization code"; type enumeration { enum authorized { description "Authorized"; } enum denied-roaming { description "Deny access because of roaming class"; } enum denied-calendar-time { description "Deny access because of time of day"; } enum denied-quality-of-service { description "Deny access because of quality of service"; } enum denied-user-defined-reason-1 { description "Deny access due to proprietery operator definition (1)"; } enum denied-user-defined-reason-2 { description "Deny access due to proprietery operator definition (2)"; } enum denied-user-defined-reason-3 { description "Deny access due to proprietery operator definition (3)"; } enum denied-user-defined-reason-4 { description "Deny access due to proprietery operator definition (4)"; } enum denied-user-defined-reason-5 { description "Deny access due to proprietery operator definition (5)"; } enum denied-blacklisted { description "Deny access because rating group is blacklisted"; } enum denied-unknown { description "Deny access for unknown reason"; } enum denied-terminal { description "Deny access due to terminal limitations"; } } } } } container default-quality-of-service { presence "enable default-quality-of-service"; description "Default authorization settings for quality of service"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list access-control-rule { key name; ordered-by user; description "Authorization settings for access control rule identifier"; leaf name { description "Access control rule identifier"; type uint32 { range "0 .. 4294967295"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf authorization-code { description "Authorization code"; type enumeration { enum authorized { description "Authorized"; } enum denied-roaming { description "Deny access because of roaming class"; } enum denied-calendar-time { description "Deny access because of time of day"; } enum denied-quality-of-service { description "Deny access because of quality of service"; } enum denied-user-defined-reason-1 { description "Deny access due to proprietery operator definition (1)"; } enum denied-user-defined-reason-2 { description "Deny access due to proprietery operator definition (2)"; } enum denied-user-defined-reason-3 { description "Deny access due to proprietery operator definition (3)"; } enum denied-user-defined-reason-4 { description "Deny access due to proprietery operator definition (4)"; } enum denied-user-defined-reason-5 { description "Deny access due to proprietery operator definition (5)"; } enum denied-blacklisted { description "Deny access because rating group is blacklisted"; } enum denied-unknown { description "Deny access for unknown reason"; } enum denied-terminal { description "Deny access due to terminal limitations"; } } } } list access-control-group { key name; ordered-by user; description "Authorization settings for access control group"; leaf name { description "Access control group identifier"; type uint32 { range "1 .. 4294967295"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf authorization-code { description "Authorization code"; type enumeration { enum authorized { description "Authorized"; } enum denied-roaming { description "Deny access because of roaming class"; } enum denied-calendar-time { description "Deny access because of time of day"; } enum denied-quality-of-service { description "Deny access because of quality of service"; } enum denied-user-defined-reason-1 { description "Deny access due to proprietery operator definition (1)"; } enum denied-user-defined-reason-2 { description "Deny access due to proprietery operator definition (2)"; } enum denied-user-defined-reason-3 { description "Deny access due to proprietery operator definition (3)"; } enum denied-user-defined-reason-4 { description "Deny access due to proprietery operator definition (4)"; } enum denied-user-defined-reason-5 { description "Deny access due to proprietery operator definition (5)"; } enum denied-blacklisted { description "Deny access because rating group is blacklisted"; } enum denied-unknown { description "Deny access for unknown reason"; } enum denied-terminal { description "Deny access due to terminal limitations"; } } } } } } container default-roaming-class { presence "enable default-roaming-class"; description "Default authorization settings for roaming class "; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list quality-of-service { key name; ordered-by user; description "Authorization settings for quality of service"; leaf name { description "Authorized traffic class"; type enumeration { enum conversational { description "Conversational quality of service"; } enum streaming { description "Streaming quality of service"; } enum interactive-1 { description "Interactive priority 1 quality of service"; } enum interactive-2 { description "Interactive priority 2 quality of service"; } enum interactive-3 { description "Interactive priority 3 quality of service"; } enum background { description "Background quality of service"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list access-control-rule { key name; ordered-by user; description "Authorization settings for access control rule identifier"; leaf name { description "Access control rule identifier"; type uint32 { range "0 .. 4294967295"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf authorization-code { description "Authorization code"; type enumeration { enum authorized { description "Authorized"; } enum denied-roaming { description "Deny access because of roaming class"; } enum denied-calendar-time { description "Deny access because of time of day"; } enum denied-quality-of-service { description "Deny access because of quality of service"; } enum denied-user-defined-reason-1 { description "Deny access due to proprietery operator definition (1)"; } enum denied-user-defined-reason-2 { description "Deny access due to proprietery operator definition (2)"; } enum denied-user-defined-reason-3 { description "Deny access due to proprietery operator definition (3)"; } enum denied-user-defined-reason-4 { description "Deny access due to proprietery operator definition (4)"; } enum denied-user-defined-reason-5 { description "Deny access due to proprietery operator definition (5)"; } enum denied-blacklisted { description "Deny access because rating group is blacklisted"; } enum denied-unknown { description "Deny access for unknown reason"; } enum denied-terminal { description "Deny access due to terminal limitations"; } } } } list access-control-group { key name; ordered-by user; description "Authorization settings for access control group"; leaf name { description "Access control group identifier"; type uint32 { range "1 .. 4294967295"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf authorization-code { description "Authorization code"; type enumeration { enum authorized { description "Authorized"; } enum denied-roaming { description "Deny access because of roaming class"; } enum denied-calendar-time { description "Deny access because of time of day"; } enum denied-quality-of-service { description "Deny access because of quality of service"; } enum denied-user-defined-reason-1 { description "Deny access due to proprietery operator definition (1)"; } enum denied-user-defined-reason-2 { description "Deny access due to proprietery operator definition (2)"; } enum denied-user-defined-reason-3 { description "Deny access due to proprietery operator definition (3)"; } enum denied-user-defined-reason-4 { description "Deny access due to proprietery operator definition (4)"; } enum denied-user-defined-reason-5 { description "Deny access due to proprietery operator definition (5)"; } enum denied-blacklisted { description "Deny access because rating group is blacklisted"; } enum denied-unknown { description "Deny access for unknown reason"; } enum denied-terminal { description "Deny access due to terminal limitations"; } } } } } container default-quality-of-service { presence "enable default-quality-of-service"; description "Default authorization settings for quality of service"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list access-control-rule { key name; ordered-by user; description "Authorization settings for access control rule identifier"; leaf name { description "Access control rule identifier"; type uint32 { range "0 .. 4294967295"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf authorization-code { description "Authorization code"; type enumeration { enum authorized { description "Authorized"; } enum denied-roaming { description "Deny access because of roaming class"; } enum denied-calendar-time { description "Deny access because of time of day"; } enum denied-quality-of-service { description "Deny access because of quality of service"; } enum denied-user-defined-reason-1 { description "Deny access due to proprietery operator definition (1)"; } enum denied-user-defined-reason-2 { description "Deny access due to proprietery operator definition (2)"; } enum denied-user-defined-reason-3 { description "Deny access due to proprietery operator definition (3)"; } enum denied-user-defined-reason-4 { description "Deny access due to proprietery operator definition (4)"; } enum denied-user-defined-reason-5 { description "Deny access due to proprietery operator definition (5)"; } enum denied-blacklisted { description "Deny access because rating group is blacklisted"; } enum denied-unknown { description "Deny access for unknown reason"; } enum denied-terminal { description "Deny access due to terminal limitations"; } } } } list access-control-group { key name; ordered-by user; description "Authorization settings for access control group"; leaf name { description "Access control group identifier"; type uint32 { range "1 .. 4294967295"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf authorization-code { description "Authorization code"; type enumeration { enum authorized { description "Authorized"; } enum denied-roaming { description "Deny access because of roaming class"; } enum denied-calendar-time { description "Deny access because of time of day"; } enum denied-quality-of-service { description "Deny access because of quality of service"; } enum denied-user-defined-reason-1 { description "Deny access due to proprietery operator definition (1)"; } enum denied-user-defined-reason-2 { description "Deny access due to proprietery operator definition (2)"; } enum denied-user-defined-reason-3 { description "Deny access due to proprietery operator definition (3)"; } enum denied-user-defined-reason-4 { description "Deny access due to proprietery operator definition (4)"; } enum denied-user-defined-reason-5 { description "Deny access due to proprietery operator definition (5)"; } enum denied-blacklisted { description "Deny access because rating group is blacklisted"; } enum denied-unknown { description "Deny access for unknown reason"; } enum denied-terminal { description "Deny access due to terminal limitations"; } } } } } } } } } } container bandwidth-control { presence "enable bandwidth-control"; description "Bandwidth control settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list throughput-limitation { key name; ordered-by user; description "Throughput limitation per context and service-id"; max-elements 64; leaf name { description "Identifier of the throughput-limitation profile"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf uplink-limitation { description "Uplink throughput limitation per context and service-id"; units "kbps"; type uint32 { range "1 .. 8640"; } } leaf downlink-limitation { description "Downlink throughput limitation per context and service-id"; units "kbps"; type uint32 { range "1 .. 16000"; } } leaf-list service-id { description "Service-identifier for which to apply the throughput limitation"; type string { length "1 .. 21"; } max-elements 1000; } } } container redirect-with-acknowledgement { presence "enable redirect-with-acknowledgement"; description "Settings for redirect with acknowledgement"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf acknowledgement-label { description "Acknowledgement label used to identify successfull redirect with user acknowledgement"; type string { length "1 .. 10"; } } container remove-acknowledgement { presence "enable remove-acknowledgement"; description "Settings for removal of acknowledgement parameter from request URI"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice remove_option_choice { case case_1 { leaf-list remove-for-service-identifiers { description "Remove acknowledgement parameter for Service identifiers"; type string { length "1 .. 21"; } max-elements 1000; } } case case_2 { leaf-list no-remove-for-service-identifiers { description "Do not remove acknowledgement parameter for Service identifiers"; type string { length "1 .. 21"; } max-elements 1000; } } } } } } grouping access_control_group_type { leaf name { description "Access control group identifier for access control group"; type uint32 { range "1 .. 4294967295"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list access-control-rule { description "Access control rule included in the access control group"; type string { length "1 .. 21"; } max-elements 512; } } grouping rating_group_cluster_type { description "Rating groups with common time-based configuration"; leaf name { description "Unique id for the rating-group cluster"; type uint32 { range "1 .. 4095"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container measurement { presence "enable measurement"; description "Default active time settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf resolution { description "Time measurement resolution for active usage"; default "1"; units "seconds"; type uint32 { range "1 .. 86400"; } } leaf inactivity { description "Time measurement inactivity for active usage"; default "60"; units "seconds"; type uint32 { range "1 .. 86400"; } } leaf reporting { description "Reporting method for time-based-charging"; default "no-reporting"; type enumeration { enum no-reporting { description "Do not report active usage"; } enum timestamp { description "Report start and stop timestamps for each period of active usage"; } enum timestamp-and-volume { description "Reports timestamps and used volume for each period of active usage"; } } } leaf method { description "Method to use for measurement of active usage"; default "duration"; type enumeration { enum inactivity { description "Use inactivity period but do not included it in usage"; } enum inactivity-included { description "Use inactivity period and include it in usage"; } enum duration { description "Measure the duration of the session"; } enum active-periods { description "Each resolution period with traffic is counted as active usage"; } } } } leaf-list rating-group { description "Rating group belonging to this cluster"; type string { length "1 .. 21"; } max-elements 256; } } grouping sampling_family_inet6_output_type { description "Configure output options for packet sampling"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf aggregate-export-interval { description "Interval of exporting aggregate accounting information"; default "90"; units "seconds"; type uint32 { range "90 .. 1800"; } } leaf flow-inactive-timeout { description "Interval of inactivity that marks a flow inactive"; default "60"; units "seconds"; type uint32 { range "15 .. 1800"; } } leaf flow-active-timeout { description "Interval after which an active flow is exported"; default "1800"; units "seconds"; type uint32 { range "60 .. 1800"; } } list flow-server { key name; description "Configure sending traffic aggregates in cflowd format"; max-elements 8; uses cflowd_sampling_inet6_sampling_type; } list interface { key name; description "Interfaces used to send monitored information"; max-elements 1; uses packet_export_intf_type; } list extension-service { key name; ordered-by user; description "Define the customer specific sampling configuration"; leaf name { description "Customer prefixed sampling service name"; type string { length "1 .. 63"; } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } grouping cflowd_sampling_inet6_sampling_type { leaf name { description "Name of host collecting cflowd packets"; type ipaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port { description "UDP port number on host collecting cflowd packets"; type uint16; mandatory true; } leaf routing-instance { description "Name of routing instance on which flow collector is reachable"; type string; } leaf autonomous-system-type { description "Type of autonomous system number to export"; default "origin"; type enumeration { enum origin { description "Export origin-AS numbers"; } enum peer { description "Export peer-AS numbers"; } } } container aggregation { description "Aggregations to perform for exported flows (version 8 only)"; uses aggregation_type; } leaf local-dump { description "Dump cflowd records to log file before exporting"; type empty; } leaf no-local-dump { description "Dump cflowd records to log file before exporting"; type empty; } leaf source-address { description "Source IPv4 address for cflowd packets"; type ipv4addr; } container version9 { presence "enable version9"; description "Export data in version 9 format"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container template { description "Template configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf template-name { description "Template name"; type string; mandatory true; } presence "enable template"; } } } grouping sampling_input_type { description "Configure input options for packet sampling"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf rate { description "Ratio of packets to be sampled (1 out of N)"; type uint16 { range "1 .. 65535"; } } leaf run-length { description "Number of samples after initial trigger"; type uint32 { range "0 .. 20"; } } leaf max-packets-per-second { description "Threshold of samples per second before dropping"; default "1000"; type uint16; } leaf maximum-packet-length { description "Maximum length of the sampled packet"; default "0"; units "bytes"; type uint32 { range "0 .. 9192"; } } } grouping sampling_instance_inet6_output_type { description "Configure output options for packet sampling"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf aggregate-export-interval { description "Interval of exporting aggregate accounting information"; default "90"; units "seconds"; type uint32 { range "90 .. 1800"; } } leaf flow-inactive-timeout { description "Interval of inactivity that marks a flow inactive"; default "60"; units "seconds"; type uint32 { range "15 .. 1800"; } } leaf flow-active-timeout { description "Interval after which an active flow is exported"; default "1800"; units "seconds"; type uint32 { range "60 .. 1800"; } } list flow-server { key name; description "Configure sending traffic aggregates in cflowd format"; max-elements 8; uses cflowd_instance_inet6_sampling_type; } list interface { key name; description "Interfaces used to send monitored information"; max-elements 1; uses packet_export_intf_type; } container inline-jflow { description "Inline processing of sampled packets"; uses packet_export_inline_instance; } list extension-service { key name; ordered-by user; description "Define the customer specific sampling configuration"; leaf name { description "Customer prefixed sampling service name"; type string { length "1 .. 63"; } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } grouping cflowd_instance_inet6_sampling_type { leaf name { description "Name of host collecting cflowd packets"; type ipaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port { description "UDP port number on host collecting cflowd packets"; type uint16; mandatory true; } leaf routing-instance { description "Name of routing instance on which flow collector is reachable"; type string; } leaf autonomous-system-type { description "Type of autonomous system number to export"; default "origin"; type enumeration { enum origin { description "Export origin-AS numbers"; } enum peer { description "Export peer-AS numbers"; } } } container aggregation { description "Aggregations to perform for exported flows (version 8 only)"; uses aggregation_type; } leaf local-dump { description "Dump cflowd records to log file before exporting"; type empty; } leaf no-local-dump { description "Dump cflowd records to log file before exporting"; type empty; } leaf source-address { description "Source IPv4 address for cflowd packets"; type ipv4addr; } container version9 { presence "enable version9"; description "Export data in version 9 format"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container template { description "Template configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf template-name { description "Template name"; type string; mandatory true; } presence "enable template"; } } container version-ipfix { presence "enable version-ipfix"; description "Export data in version ipfix format"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container template { description "Template configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf template-name { description "Template name"; type string; mandatory true; } presence "enable template"; } } } grouping packet_export_inline_instance { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-address { description "Address to use for generating monitored packets"; type ipaddr; mandatory true; } leaf flow-export-rate { description "Flow export rate of monitored packets in kpps"; type uint32 { range "1 .. 400"; } } } grouping sampling_instance_inet_global_output_type { description "Configure output options for packet sampling"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf aggregate-export-interval { description "Interval of exporting aggregate accounting information"; default "90"; units "seconds"; type uint32 { range "90 .. 1800"; } } leaf flow-inactive-timeout { description "Interval of inactivity that marks a flow inactive"; default "60"; units "seconds"; type uint32 { range "15 .. 1800"; } } leaf flow-active-timeout { description "Interval after which an active flow is exported"; default "1800"; units "seconds"; type uint32 { range "60 .. 1800"; } } container file { description "Configure parameters for dumping sampled packets"; choice enable-disable { case case_1 { leaf disable { description "Disable sampled packet dumps"; type empty; } } } leaf filename { description "Name of file to contain sampled packet dumps"; type string { length "1 .. 1024"; } mandatory true; } presence "enable file"; leaf files { description "Maximum number of sampled packet dump files"; default "10"; type uint32 { range "2 .. 10000"; } } leaf size { description "Maximum sample dump file size"; type string; } leaf world-readable { description "Allow any user to read the sampled dump"; type empty; } leaf no-world-readable { description "Allow any user to read the sampled dump"; type empty; } leaf stamp { description "Timestamp every packet in the dump"; type empty; } leaf no-stamp { description "Timestamp every packet in the dump"; type empty; } } list flow-server { key name; description "Configure sending traffic aggregates in cflowd format"; max-elements 8; uses cflowd_sampling_inet_type; } list interface { key name; description "Interfaces used to send monitored information"; max-elements 1; uses packet_export_intf_type; } container inline-jflow { description "Inline processing of sampled packets"; uses packet_export_inline; } list extension-service { key name; ordered-by user; description "Define the customer specific sampling configuration"; leaf name { description "Customer prefixed sampling service name"; type string { length "1 .. 63"; } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } grouping cflowd_sampling_inet_type { leaf name { description "Name of host collecting cflowd packets"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port { description "UDP port number on host collecting cflowd packets"; type uint16; mandatory true; } leaf routing-instance { description "Name of routing instance on which flow collector is reachable"; type string; } leaf autonomous-system-type { description "Type of autonomous system number to export"; default "origin"; type enumeration { enum origin { description "Export origin-AS numbers"; } enum peer { description "Export peer-AS numbers"; } } } container aggregation { description "Aggregations to perform for exported flows (version 8 only)"; uses aggregation_type; } leaf local-dump { description "Dump cflowd records to log file before exporting"; type empty; } leaf no-local-dump { description "Dump cflowd records to log file before exporting"; type empty; } leaf source-address { description "Source IPv4 address for cflowd packets"; type ipv4addr; } container version9 { presence "enable version9"; description "Export data in version 9 format"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container template { description "Template configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf template-name { description "Template name"; type string; mandatory true; } presence "enable template"; } } leaf version { description "Format of exported cflowd aggregates"; default "5"; type enumeration { enum 5 { description "Export cflowd aggregates in version 5 format"; } enum 8 { description "Export cflowd aggregates in version 8 format"; } enum 500 { description "Export cflowd aggregates in ASN 500 format"; } } } } grouping packet_export_inline { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-address { description "Address to use for generating monitored packets"; type ipv4addr; mandatory true; } leaf flow-export-rate { description "Flow export rate of monitored packets in kpps"; type uint32 { range "1 .. 400"; } } } grouping sampling_instance_inet_output_type { description "Configure output options for packet sampling"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf aggregate-export-interval { description "Interval of exporting aggregate accounting information"; default "90"; units "seconds"; type uint32 { range "90 .. 1800"; } } leaf flow-inactive-timeout { description "Interval of inactivity that marks a flow inactive"; default "60"; units "seconds"; type uint32 { range "15 .. 1800"; } } leaf flow-active-timeout { description "Interval after which an active flow is exported"; default "1800"; units "seconds"; type uint32 { range "60 .. 1800"; } } list flow-server { key name; description "Configure sending traffic aggregates in cflowd format"; max-elements 8; uses cflowd_instance_inet_sampling_type; } list interface { key name; description "Interfaces used to send monitored information"; max-elements 1; uses packet_export_intf_type; } container inline-jflow { description "Inline processing of sampled packets"; uses packet_export_inline_instance; } list extension-service { key name; ordered-by user; description "Define the customer specific sampling configuration"; leaf name { description "Customer prefixed sampling service name"; type string { length "1 .. 63"; } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } grouping cflowd_instance_inet_sampling_type { leaf name { description "Name of host collecting cflowd packets"; type ipaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port { description "UDP port number on host collecting cflowd packets"; type uint16; mandatory true; } leaf routing-instance { description "Name of routing instance on which flow collector is reachable"; type string; } leaf autonomous-system-type { description "Type of autonomous system number to export"; default "origin"; type enumeration { enum origin { description "Export origin-AS numbers"; } enum peer { description "Export peer-AS numbers"; } } } container aggregation { description "Aggregations to perform for exported flows (version 8 only)"; uses aggregation_type; } leaf local-dump { description "Dump cflowd records to log file before exporting"; type empty; } leaf no-local-dump { description "Dump cflowd records to log file before exporting"; type empty; } leaf source-address { description "Source IPv4 address for cflowd packets"; type ipv4addr; } container version9 { presence "enable version9"; description "Export data in version 9 format"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container template { description "Template configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf template-name { description "Template name"; type string; mandatory true; } presence "enable template"; } } container version-ipfix { presence "enable version-ipfix"; description "Export data in version ipfix format"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container template { description "Template configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf template-name { description "Template name"; type string; mandatory true; } presence "enable template"; } } leaf version { description "Format of exported cflowd aggregates"; default "5"; type enumeration { enum 5 { description "Export cflowd aggregates in version 5 format"; } enum 8 { description "Export cflowd aggregates in version 8 format"; } } } } grouping sampling_instance_input_type { description "Configure input options for packet sampling"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf rate { description "Ratio of packets to be sampled (1 out of N)"; type uint16 { range "1 .. 65535"; } } leaf run-length { description "Number of samples after initial trigger"; type uint32 { range "0 .. 20"; } } leaf max-packets-per-second { description "Threshold of samples per second before dropping"; default "1000"; type uint16; } leaf maximum-packet-length { description "Maximum length of the sampled packet"; default "0"; units "bytes"; type uint32 { range "0 .. 9192"; } } } grouping sampling_instance_mpls_output_type { description "Configure output options for packet sampling"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf aggregate-export-interval { description "Interval of exporting aggregate accounting information"; default "90"; units "seconds"; type uint32 { range "90 .. 1800"; } } leaf flow-inactive-timeout { description "Interval of inactivity that marks a flow inactive"; default "60"; units "seconds"; type uint32 { range "15 .. 1800"; } } leaf flow-active-timeout { description "Interval after which an active flow is exported"; default "1800"; units "seconds"; type uint32 { range "60 .. 1800"; } } list flow-server { key name; description "Configure sending traffic aggregates in cflowd format"; max-elements 8; uses cflowd_instance_mpls_sampling_type; } list interface { key name; description "Interfaces used to send monitored information"; max-elements 1; uses packet_export_intf_type; } } grouping cflowd_instance_mpls_sampling_type { leaf name { description "Name of host collecting cflowd packets"; type ipaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port { description "UDP port number on host collecting cflowd packets"; type uint16; mandatory true; } leaf routing-instance { description "Name of routing instance on which flow collector is reachable"; type string; } leaf autonomous-system-type { description "Type of autonomous system number to export"; default "origin"; type enumeration { enum origin { description "Export origin-AS numbers"; } enum peer { description "Export peer-AS numbers"; } } } container aggregation { description "Aggregations to perform for exported flows (version 8 only)"; uses aggregation_type; } leaf local-dump { description "Dump cflowd records to log file before exporting"; type empty; } leaf no-local-dump { description "Dump cflowd records to log file before exporting"; type empty; } leaf source-address { description "Source IPv4 address for cflowd packets"; type ipv4addr; } container version9 { presence "enable version9"; description "Export data in version 9 format"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container template { description "Template configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf template-name { description "Template name"; type string; mandatory true; } presence "enable template"; } } } grouping sampling_instance_vpls_output_type { description "Configure output options for packet sampling"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list flow-server { key name; description "Configure sending traffic aggregates in cflowd format"; max-elements 8; uses cflowd_instance_vpls_sampling_type; } container inline-jflow { description "Inline processing of sampled packets"; uses packet_export_inline_instance; } } grouping cflowd_instance_vpls_sampling_type { leaf name { description "Name of host collecting cflowd packets"; type ipaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port { description "UDP port number on host collecting cflowd packets"; type uint16; mandatory true; } leaf routing-instance { description "Name of routing instance on which flow collector is reachable"; type string; } container version-ipfix { presence "enable version-ipfix"; description "Export data in version ipfix format"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container template { description "Template configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf template-name { description "Template name"; type string; mandatory true; } presence "enable template"; } } } grouping sampling_traceoptions_type { description "Configure packet sampling traceoptions"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } } grouping satellite-policy-options { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list port-group-alias { key name; ordered-by user; description "Port group alias"; leaf name { description "(null)"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list pic { key name; ordered-by user; description "Satellite PIC information"; leaf name { description "PIC identifier"; type int32; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list port { description "Port id or range or all"; type uint32 { range "0 .. 1024"; } } } } list candidate-uplink-port-policy { key name; ordered-by user; description "Define a candidate uplink-port policy"; leaf name { description "Policy name"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf uplink-port-group { description "Uplink port group alias name"; type string; } leaf minimum-links { description "Minimum child links to keep extended-ports UP"; type uint16 { range "1 .. 32"; } } leaf holddown { description "Time to hold down after uplink failure"; units "seconds"; type uint32 { range "1 .. 600"; } } list term { key name; ordered-by user; description "Policy term"; leaf name { description "(null)"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Condition to match the satellite"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list product-model { description "Product Model Name"; type string { length "1 .. 64"; } } leaf uplink-port-group { description "Uplink port group alias name"; type string; } leaf minimum-links { description "Minimum child links to keep extended-ports UP"; type uint16 { range "1 .. 32"; } } leaf holddown { description "Time to hold down after uplink failure"; units "seconds"; type uint32 { range "1 .. 600"; } } } } } list environment-monitoring-policy { key name; ordered-by user; description "Define a environment monitoring policy"; leaf name { description "Policy name"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container alarm { presence "enable alarm"; description "Policy default alarm policy"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf linkdown { description "Policy default linkdown alarm"; type enumeration { enum ignore { description "Ignore ethernet linkdown"; } enum red { description "Raise major alarm for ethernet linkdown"; } enum yellow { description "Raise minor alarm for ethernet linkdown"; } } mandatory true; } } list term { key name; ordered-by user; description "Policy term"; leaf name { description "(null)"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Condition to match the satellite"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list product-model { description "Product Model Name"; type string { length "1 .. 64"; } } container alarm { presence "enable alarm"; description "Term alarm policy"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf linkdown { description "Set linkdown alarm"; type enumeration { enum ignore { description "Ignore ethernet linkdown"; } enum red { description "Raise major alarm for ethernet linkdown"; } enum yellow { description "Raise minor alarm for ethernet linkdown"; } } mandatory true; } } } } } } grouping sbc_traceoptions { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } container flag { presence "enable flag"; description "Tracing parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf configuration { description "Trace configuration events"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf ipc { description "Trace IPC events"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf device-monitor { description "Trace device monitor events"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf ui { description "Trace ui events"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf common { description "Trace common events"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf memory-pool { description "Trace memory-pool events"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf packet-capture { description "Trace packet capture events"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } leaf all { description "Minimal trace level for all components"; default "error"; type enumeration { enum trace { description "Trace functions entering and exiting"; } enum debug { description "Trace code flow, branching, positive style guide check"; } enum info { description "Summary logs for normal operations"; } enum warning { description "Failure-recovery or Failure of an external entity"; } enum error { description "Failure with short-term affect"; } } } } } grouping sbcc_apn_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf control-context { description "Environment definition for service aware charging and control"; type enumeration { enum single-bucket { description "Charging and control according to Service Aware Charging and Control version 2"; } enum 3gpp { description "Charging and control according to 3gpp standard (supports Ro and Gx interfaces)"; } enum multi-bucket { description "Charging and control according to CLCI and/or Gx dynamic-services-control"; } } mandatory true; } container bandwidth-control { presence "enable bandwidth-control"; description "Bandwidth control settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list throughput-limitation { key name; ordered-by user; description "Throughput limitation per context and service-id"; max-elements 64; leaf name { description "Identifier of the throughput-limitation profile"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf uplink-limitation { description "Uplink throughput limitation per context and service-id"; units "kbps"; type uint32 { range "1 .. 8640"; } } leaf downlink-limitation { description "Downlink throughput limitation per context and service-id"; units "kbps"; type uint32 { range "1 .. 16000"; } } leaf-list service-id { description "Service-identifier for which to apply the throughput limitation"; type string { length "1 .. 21"; } max-elements 1000; } } } container packet-inspection { description "Packet inspection settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container no-inspection { description "Service classification without packet inspection"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf service-class-default { description "Service class applied to all traffic on this APN"; type uint16 { range "1 .. 4096"; } mandatory true; } presence "enable no-inspection"; } } container block-based-charging { description "Block-based charging"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list profile { key name; description "Block-based charging profile"; max-elements 16; leaf name { description "Profile identifier"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container default-roaming-class { description "Default roaming class"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container default-service-class-group { description "Default service class settings for block-based charging"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice bbc-time-volume-choice { case case_1 { container active-time { presence "enable active-time"; description "Active time block settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf resolution { description "Time measurement resolution for active usage"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf inactivity { description "Time measurement inactivity for active usage"; units "seconds"; type uint32 { range "1 .. 3600"; } } } } case case_2 { container volume { presence "enable volume"; description "Volume block settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf uplink-resolution { description "Volume measurement resolution for uplink payload"; units "bytes"; type string; } leaf downlink-resolution { description "Volume measurement resolution for downlink payload"; units "bytes"; type string; } leaf total-resolution { description "Volume measurement resolution for total payload"; units "bytes"; type string; } } } } } list service-class-group { key name; description "Service class settings for block-based charging"; max-elements 32; leaf name { description "Service class group index"; type uint32 { range "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list service-class { description "Service classes and service class ranges"; type string; } choice bbc-time-volume-choice { case case_1 { container active-time { presence "enable active-time"; description "Active time block settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf resolution { description "Time measurement resolution for active usage"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf inactivity { description "Time measurement inactivity for active usage"; units "seconds"; type uint32 { range "1 .. 3600"; } } } } case case_2 { container volume { presence "enable volume"; description "Volume block settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf uplink-resolution { description "Volume measurement resolution for uplink payload"; units "bytes"; type string; } leaf downlink-resolution { description "Volume measurement resolution for downlink payload"; units "bytes"; type string; } leaf total-resolution { description "Volume measurement resolution for total payload"; units "bytes"; type string; } } } } } choice bbc-time-volume-choice { case case_1 { container duration-time { presence "enable duration-time"; description "Duration time block settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf resolution { description "Time measurement resolution for duration"; units "seconds"; type uint32 { range "1 .. 3600"; } } } } case case_2 { container volume { presence "enable volume"; description "Volume block settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf uplink-resolution { description "Volume measurement resolution for uplink payload"; units "bytes"; type string; } leaf downlink-resolution { description "Volume measurement resolution for downlink payload"; units "bytes"; type string; } leaf total-resolution { description "Volume measurement resolution for total payload"; units "bytes"; type string; } } } } } list roaming-class { key name; description "Roaming class"; max-elements 24; leaf name { description "Roaming class identifier"; type uint32 { range "1 .. 24"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container default-service-class-group { description "Default service class settings for block-based charging"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice bbc-time-volume-choice { case case_1 { container active-time { presence "enable active-time"; description "Active time block settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf resolution { description "Time measurement resolution for active usage"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf inactivity { description "Time measurement inactivity for active usage"; units "seconds"; type uint32 { range "1 .. 3600"; } } } } case case_2 { container volume { presence "enable volume"; description "Volume block settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf uplink-resolution { description "Volume measurement resolution for uplink payload"; units "bytes"; type string; } leaf downlink-resolution { description "Volume measurement resolution for downlink payload"; units "bytes"; type string; } leaf total-resolution { description "Volume measurement resolution for total payload"; units "bytes"; type string; } } } } } list service-class-group { key name; description "Service class settings for block-based charging"; max-elements 32; leaf name { description "Service class group index"; type uint32 { range "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list service-class { description "Service classes and service class ranges"; type string; } choice bbc-time-volume-choice { case case_1 { container active-time { presence "enable active-time"; description "Active time block settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf resolution { description "Time measurement resolution for active usage"; units "seconds"; type uint32 { range "1 .. 3600"; } } leaf inactivity { description "Time measurement inactivity for active usage"; units "seconds"; type uint32 { range "1 .. 3600"; } } } } case case_2 { container volume { presence "enable volume"; description "Volume block settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf uplink-resolution { description "Volume measurement resolution for uplink payload"; units "bytes"; type string; } leaf downlink-resolution { description "Volume measurement resolution for downlink payload"; units "bytes"; type string; } leaf total-resolution { description "Volume measurement resolution for total payload"; units "bytes"; type string; } } } } } choice bbc-time-volume-choice { case case_1 { container duration-time { presence "enable duration-time"; description "Duration time block settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf resolution { description "Time measurement resolution for duration"; units "seconds"; type uint32 { range "1 .. 3600"; } } } } case case_2 { container volume { presence "enable volume"; description "Volume block settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf uplink-resolution { description "Volume measurement resolution for uplink payload"; units "bytes"; type string; } leaf downlink-resolution { description "Volume measurement resolution for downlink payload"; units "bytes"; type string; } leaf total-resolution { description "Volume measurement resolution for total payload"; units "bytes"; type string; } } } } } } } container policy-control { description "Policy control"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container dynamic { description "Dynamic policy control"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list profile { key name; description "Policy control dynamic profile"; max-elements 32; leaf name { description "Profile identifier"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf diameter-application-system { description "Diameter application system"; type string { length "1 .. 64"; } mandatory true; } leaf quality-of-service { description "Quality of service settings"; default "3gpp"; type enumeration { enum diffserv { description "Use DiffServ quality of service"; } enum 3gpp { description "Use 3GPP quality of service"; } enum 3gpp-extended { description "Use 3GPP extended quality of service"; } } } leaf-list subscription-id { description "Subscription identifier"; type enumeration { enum msisdn { description "Use MSISDN as subscription identifier"; } enum nai { description "Use NAI as subscription identifier"; } enum imsi { description "Use IMSI as subscription identifier"; } enum address { description "Use mobile address as subscription identifier"; } } } leaf failure-action { description "Failure settings"; default "terminate-contexts"; type enumeration { enum terminate-contexts { description "Terminate associated contexts"; } enum use-static { description "Use the static rating configuration"; } } } } list gx-profile { key name; description "Settings for standard and enhanced Gx"; max-elements 32; leaf name { description "Profile identifier"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf diameter-application-system { description "Diameter application system"; type string { length "1 .. 64"; } mandatory true; } leaf-list subscription-id { description "Subscription identifier"; type enumeration { enum msisdn { description "Use MSISDN as subscription identifier"; } enum nai { description "Use NAI as subscription identifier"; } enum imsi { description "Use IMSI as subscription identifier"; } } } leaf selection-key { description "Set input parameter for selection of PCRF"; default "ip-address"; type enumeration { enum msisdn { description "Select PCRF based on modulo operation on msisdn"; } enum ip-address { description "Select PCRF based on modulo operation on ip-address"; } } } list pcrf-selection { key name; ordered-by user; description "Settings for selection of PCRF and P-CSCF"; leaf name { description "PCRF table entry"; type uint32 { range "0 .. 15"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf primary-pcrf { description "Diameter host identifier of primary PCRF"; type string { length "1 .. 64"; } } leaf secondary-pcrf { description "Diameter host identifier of secondary PCRF"; type string { length "1 .. 64"; } } leaf primary-pcscf { description "Primary P-CSCF IPv4 address"; type ipv4addr; } leaf secondary-pcscf { description "Secondary P-CSCF IPv4 address"; type ipv4addr; } } leaf failure-action { description "Failure settings"; default "reject-request"; type enumeration { enum reject-request { description "Reject PDP context activate and update requests"; } enum use-local { description "Use the local policy configuration for the IP session until it terminates"; } enum use-local-reestablish { description "Use the local policy configuration and try to reestablish connection periodically "; } } } leaf disable-gx-extensions { description "Do not allow use of Gx+ extensions"; type empty; } leaf qos-control { description "Enable support of QoS control over Gx"; type empty; } leaf deny-empty-context { description "Deny PDP context activation without authorized services"; type empty; } leaf rule-space-negotiation { description "Enable rule-space-negotiation over Gx"; type empty; } leaf immediate-credit-control { description "Immediate credit control for dynamic charging rules"; type empty; } leaf disconnect-ip-sessions { description "Delete all active IP sessions using a CRF if contact is lost or server has restarted"; type empty; } } leaf allow-external-update { description "Allow externally initiated update of rating information"; type empty; } } container static { description "Static policy control"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list profile { key name; description "Policy control static profile"; max-elements 16; uses fbc_static_rating_profile_type; } } } container rating-control { description "Rating control"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list profile { key name; description "Rating control profile"; max-elements 2; leaf name { description "Profile identifier"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf postpaid { description "Activate rating for post-paid subscribers"; type empty; } leaf no-postpaid { description "Activate rating for post-paid subscribers"; type empty; } } } container credit-control { description "Credit control"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list profile { key name; description "Credit control profile"; max-elements 32; leaf name { description "Profile identifier"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf diameter-application-system { description "Diameter application system"; type string { length "1 .. 64"; } mandatory true; } leaf request-duration { description "Credit validity duration time"; default "60"; units "minutes"; type uint32 { range "30 .. 300"; } } container request-quota { description "Proposed quota to request"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container best-effort { description "Quota settings for best effort traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf base-quota { description "Requested base quota"; type unsigned-float; } leaf bandwidth-factor { description "Bandwidth scaling factor"; default "100"; type int32 { range "100 .. 200"; } } } container conversational { description "Quota settings for conversational traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf base-quota { description "Requested base quota"; type unsigned-float; } leaf bandwidth-factor { description "Bandwidth scaling factor"; default "100"; type int32 { range "100 .. 200"; } } } container interactive { description "Quota settings for interactive traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf base-quota { description "Requested base quota"; type unsigned-float; } leaf bandwidth-factor { description "Bandwidth scaling factor"; default "100"; type int32 { range "100 .. 200"; } } } container streaming { description "Quota settings for streaming traffic"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf base-quota { description "Requested base quota"; type unsigned-float; } leaf bandwidth-factor { description "Bandwidth scaling factor"; default "100"; type int32 { range "100 .. 200"; } } } } leaf unit-type { description "Unit for proposed values"; type enumeration { enum money { description "Units are monetary values"; } enum volume { description "Units are volume-based"; } } mandatory true; } leaf provider-id { description "Provider identifier"; type uint16; } leaf-list subscription-id { description "Subscription identifier"; type enumeration { enum msisdn { description "Use MSISDN as subscription identifier"; } enum nai { description "Use NAI as subscription identifier"; } enum imsi { description "Use IMSI as subscription identifier"; } enum address { description "Use mobile address as subscription identifier"; } } } leaf apn-identifier { description "Include service provider APN name"; type empty; } leaf failure-action { description "Failure action settings"; default "terminate-contexts"; type enumeration { enum terminate-contexts { description "Terminate associated contexts"; } enum free-services { description "Allow free services"; } enum post-paid { description "Switch to post-paid handling of contexts"; } } } container quota-denied-action { description "Action to take when user quota is empty"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice empty_bucket_choice { case case_1 { leaf terminate-context { description "Terminate the PDP context"; type empty; } } case case_2 { leaf free-services { description "Allow context to access free services"; type empty; } } case case_3 { leaf-list allow-service-class { description "Allow access to service class"; type uint16 { range "1 .. 4096"; } max-elements 64; } } } } leaf quota-denied-redirect { description "Redirect non-free services if user quota is empty"; type empty; } leaf request-credit-on-activation { description "Send request to CCS on primary activation."; type empty; } leaf no-request-credit-on-activation { description "Send request to CCS on primary activation."; type empty; } } list ro-profile { key name; description "Ro-based credit control profile"; max-elements 32; leaf name { description "Profile identifier"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf diameter-application-system { description "Diameter application system"; type string { length "1 .. 64"; } mandatory true; } leaf-list additional-allowed-das { description "Additional diameter application system allowed for the profile"; type string { length "1 .. 64"; } max-elements 16; } leaf service-context-id { description "Credit-control service-context supported"; type string; } container ccr-avp { presence "enable ccr-avp"; description "Inclusion of optional attributes in credit control requests"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-user-plmn-id { description "Do not include user-plmn-id AVP in credit control requests"; type empty; } leaf no-ggsn-plmn-id { description "Do not include ggsn-plmn-id AVP in credit control requests"; type empty; } leaf apn-type { description "APN type to include in Credit Control Requests"; default "gi-apn"; type enumeration { enum gn-apn { description "Include Gn APN in CCR"; } enum gi-apn { description "Include Gi APN in CCR"; } } } } leaf no-preemptive-reservation { description "Do not allow OCS to reserve quota preemptively"; type empty; } container redirect { presence "enable redirect"; description "Settings for redirect"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf append-uri { description "Append the request URL to the redirect URL"; type empty; } leaf no-uri-formatting { description "Do not format URL according to included formatting codes"; type empty; } } container failure { presence "enable failure"; description "Failure handling settings for ro"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf failure-action { description "Failure action settings"; default "retry-and-terminate"; type enumeration { enum continue { description "Retry once, and then continue context without credit control"; } enum terminate { description "Terminate context"; } enum retry-and-terminate { description "Retry once, and then terminate context"; } } } container continue { presence "enable continue"; description "Settings for handling continue"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf timeout { description "Validity time for continue action"; default "30"; units "minutes"; type uint32 { range "1 .. 4294967295"; } } leaf no-reestablish { description "Don't reestablish credit session after communication failure"; type empty; } } } leaf no-initiate-session-on-activation { description "Don't initiate a credit session on context activation"; type empty; } } choice query-cc-as-choice { case case_1 { container query-cc-as { presence "enable query-cc-as"; description "Credit Control Application System (CC-AS) user query"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container credit-control-user { description "Ask CC-AS whether to use credit control"; uses fbc_credit_control_query_cc_as_type; } container no-credit-control-user { description "Settings to use if CC-AS forbids use credit control"; uses fbc_credit_control_query_cc_as_type; } } } case case_2 { container query-ocs { presence "enable query-ocs"; description "OCS user query"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container credit-control-user { presence "enable credit-control-user"; description "Settings to use if OCS enables credit control for the user"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf cc { description "Charging characteristics"; type uint32 { range "0 .. 65535"; } mandatory true; } } container no-credit-control-user { presence "enable no-credit-control-user"; description "Settings to use if OCS disables credit control for the user"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf cc { description "Charging characteristics"; type uint32 { range "0 .. 65535"; } mandatory true; } } container no-valid-answer { presence "enable no-valid-answer"; description "Settings to use if no valid answer is received from the OCS"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf cc { description "Charging characteristics"; type uint32 { range "0 .. 65535"; } mandatory true; } } } } } leaf quota-threshold { description "Low credit threshold"; default "0"; units "percent"; type uint32 { range "0 .. 10"; } } leaf allow-external-update { description "Allow externally initiated update of credit information"; type empty; } leaf roaming-class { description "Include SCAP roaming class"; type empty; } } container charging-unit { description "Charging unit"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list profile { key name; description "Charging unit profile"; max-elements 16; leaf name { description "Profile identifier"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf currency { description "(null)"; type string; } } } container resource-identification { description "Resource identification service settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf service-set { description "Resource identification service set for APN"; type string { } } } container authorization { presence "enable authorization"; description "Perform authorization"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf redirect-unauthorized { description "Redirect unauthorized services"; type empty; } } } grouping fbc_credit_control_query_cc_as_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf cc { description "Charging characteristics"; type uint32 { range "0 .. 65535"; } mandatory true; } leaf user-category { description "User category"; type uint32 { range "1 .. 63"; } mandatory true; } } grouping fbc_static_rating_profile_type { leaf name { description "Profile identifier"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice fbc_activation_time_choice { case case_1 { list activation-time { key name; description "Activation time for rates"; max-elements 12; leaf name { description "Activation time (hh:mm)"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list roaming-class { key name; description "Roaming class for rates"; max-elements 24; leaf name { description "Roaming class identifier"; type uint32 { range "1 .. 24"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list quality-of-service { key name; description "Quality of service for rates"; uses fbc_static_rating_qos_type; } container default-quality-of-service { description "Default quality of service for rates"; uses fbc_static_rating_qos_default_type; } } container default-roaming-class { description "Default roaming class for rates"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list quality-of-service { key name; description "Quality of service for rates"; uses fbc_static_rating_qos_type; } container default-quality-of-service { description "Default quality of service for rates"; uses fbc_static_rating_qos_default_type; } } } } case case_2 { container all-time { description "Time-independent rates"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list roaming-class { key name; description "Roaming class for rates"; max-elements 24; leaf name { description "Roaming class identifier"; type uint32 { range "1 .. 24"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list quality-of-service { key name; description "Quality of service for rates"; uses fbc_static_rating_qos_type; } container default-quality-of-service { description "Default quality of service for rates"; uses fbc_static_rating_qos_default_type; } } container default-roaming-class { description "Default roaming class for rates"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list quality-of-service { key name; description "Quality of service for rates"; uses fbc_static_rating_qos_type; } container default-quality-of-service { description "Default quality of service for rates"; uses fbc_static_rating_qos_default_type; } } } } } } grouping fbc_static_rating_qos_default_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list service-class { key name; description "Service class for rates"; uses fbc_static_rating_service_class_type; } leaf block-rate { description "Rate per block for volume-based and duration-time-based block charging"; default "0.0"; type unsigned-float; } } grouping fbc_static_rating_qos_type { leaf name { description "Quality of service"; type enumeration { enum conversational { description "Conversational quality of service"; } enum streaming { description "Streaming quality of service"; } enum interactive-1 { description "Interactive priority 1 quality of service"; } enum interactive-2 { description "Interactive priority 2 quality of service"; } enum interactive-3 { description "Interactive priority 3 quality of service"; } enum background { description "Background quality of service"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list service-class { key name; description "Service class"; max-elements 64; uses fbc_static_rating_service_class_type; } leaf block-rate { description "Rate per block for volume-based and duration-time-based block charging"; default "0.0"; type unsigned-float; } } grouping fbc_static_rating_service_class_type { leaf name { description "Service class identifier"; type uint16 { range "1 .. 4096"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf volume-rate { description "Rate per megabyte for volume-based charging"; default "0.0"; type unsigned-float; } leaf block-rate { description "Rate per block for volume-based and active-time-based block charging"; default "0.0"; type unsigned-float; } leaf authorization-code { description "Authorization code"; default "authorized"; type enumeration { enum authorized { description "Authorized"; } enum denied-roaming { description "Deny access because of roaming class"; } enum denied-time-of-day { description "Deny access because of time of day"; } enum denied-quality-of-service { description "Deny access because of quality of service"; } enum denied-cost-warning { description "Deny access because of cost warning"; } enum denied-volume-expired { description "Deny access because volume expired"; } enum denied-user-defined-reason-1 { description "Deny access due to proprietery operator definition (1)"; } enum denied-user-defined-reason-2 { description "Deny access due to proprietery operator definition (2)"; } enum denied-redirect-first-access { description "Deny access and redirect on first access of a service"; } enum denied-incompatible-user-application { description "Deny access because user application is not compatible with service"; } enum denied-unknown { description "Deny access for unknown reason"; } } } } grouping sbcc_node_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf realm { description "Origin realm for Diameter messages"; type string; mandatory true; } leaf host-name { description "Host name for Diameter messages"; type string { length "1 .. 64"; } mandatory true; } list diameter-host { key name; description "Diameter hosts"; max-elements 63; uses diameter_host_type; } list diameter-peer { key name; description "Diameter peers"; max-elements 16; uses diameter_peer_type; } list diameter-application-system { key name; description "Diameter application systems"; max-elements 32; uses diameter_application_system_type; } container subscription-update-nodes { description "External subscriber update server settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list peer { key "address port"; ordered-by user; description "External update node configuration"; max-elements 16; leaf address { description "IP address of external update node"; type ipv4addr; } leaf port { description "Port number of external update node"; type uint16; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list encryption { key name; ordered-by user; description "External update encryption configuration"; max-elements 2; leaf name { description "Secret shared with the external update nodes"; type unreadable; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf change-time { description "Activation time for secret"; type string { } mandatory true; } } } } grouping diameter_application_system_type { leaf name { description "Diameter application system identifier"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf destination-realm { description "Destination realm"; type string; mandatory true; } leaf application-id { description "Vendor-specific application identity"; type string; mandatory true; } list peer { key name; description "Diameter peers and priorities"; max-elements 5; leaf name { description "Diameter peer id"; type string { length "1 .. 64"; } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf priority { description "Priority of the peer"; default "255"; units "priority"; type uint32 { range "0 .. 255"; } } } leaf allow-cc-session-failover { description "Allow failover for credit control session"; type empty; } leaf timeout { description "Communication timeout"; default "3"; type uint32 { range "1 .. 60"; } } leaf request-window-size { description "Maximum number of outstanding requests"; default "30"; type uint32 { range "10 .. 32000"; } } leaf requests-per-second { description "Maximum requests per second"; type uint32 { range "0 .. 5000"; } } leaf access-type { description "Connection type"; default "agent"; type enumeration { enum direct { description "Direct access to the diameter application server"; } enum agent { description "The diameter application server is accessed via an agent"; } } } } grouping diameter_host_type { leaf name { description "Host identifier"; type string { length "1 .. 64"; } } leaf host-name { description "Diameter host specified as fully qualified domain name"; type string { length "1 .. 64"; } mandatory true; } } grouping diameter_peer_type { description "Type of Diameter peer"; leaf name { description "Peer identifier"; type string { length "1 .. 64"; } } leaf address { description "Peer address"; type ipv4addr; mandatory true; } leaf host { description "Diameter host identifier associated with the peer"; type string { length "1 .. 64"; } } leaf port { description "Peer port number"; type uint16; mandatory true; } container watchdog { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf timeout { description "Period between device watch dog requests"; default "30"; units "seconds"; type uint32 { range "3 .. 300"; } } } } grouping scripts_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container commit { description "Commit-time scripting mechanism"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf allow-transients { description "Allow loading of transient configuration changes"; type empty; } container traceoptions { description "Trace options for commit scripts"; uses script_traceoptions; } leaf refresh { description "Refresh all operation scripts from their source"; type empty; } leaf refresh-from { description "Refresh all operation scripts from a given base URL"; type string { length "1 .. 254"; } } leaf max-datasize { description "Maximum data segment size for scripts execution"; units "bytes"; type string; } leaf direct-access { description "Access the configuration directly from database"; type empty; } container dampen { presence "enable dampen"; description "Dampen execution of commit scripts"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container dampen-options { description "Dampen options for commit scripts"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf cpu-factor { description "CPU factor at which to pause"; type uint32 { range "1 .. 100"; } } leaf line-interval { description "Line interval at which to pause"; type uint32 { range "1 .. 4294967295"; } } leaf time-interval { description "Time to pause"; units "microseconds"; type uint32 { range "1 .. 4294967295"; } } } } list file { key name; ordered-by user; description "Commit script file"; uses commit_scripts_file_type; } } container op { description "Operations scripting"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf refresh { description "Refresh all operation scripts from their source"; type empty; } leaf refresh-from { description "Refresh all operation scripts from a given base URL"; type string { length "1 .. 254"; } } container traceoptions { description "Trace options for operation scripts"; uses script_traceoptions; } list file { key name; description "Configuration for each operation script"; uses op_scripts_file_type; } leaf no-allow-url { description "Do not allow the remote execution of op scripts"; type empty; } leaf max-datasize { description "Maximum data segment size for scripts execution"; units "bytes"; type string; } container dampen { presence "enable dampen"; description "Dampen execution of op scripts"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container dampen-options { description "Dampen options for op scripts"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf cpu-factor { description "CPU factor at which to pause"; type uint32 { range "1 .. 100"; } } leaf line-interval { description "Line interval at which to pause"; type uint32 { range "1 .. 4294967295"; } } leaf time-interval { description "Time to pause"; units "microseconds"; type uint32 { range "1 .. 4294967295"; } } } } } leaf load-scripts-from-flash { description "Load scripts from flash"; type empty; } leaf synchronize { description "Push all scripts to other RE on commit synchronize"; type empty; } } grouping commit_scripts_file_type { leaf name { description "Local filename of the script file"; type string { length "1 .. 254"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf optional { description "Allow commit to succeed if the script is missing"; type empty; } leaf source { description "URL of source for this script"; type string { length "1 .. 254"; } } leaf refresh { description "Refresh all operation scripts from their source"; type empty; } leaf refresh-from { description "Refresh all operation scripts from a given base URL"; type string { length "1 .. 254"; } } container checksum { description "Checksum of this script"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf md5 { description "MD5 checksum of this script"; type string { length "1 .. 254"; } } leaf sha1 { description "SHA1 checksum of this script"; type string { length "1 .. 254"; } } leaf sha-256 { description "SHA-256 checksum of this script"; type string { length "1 .. 254"; } } } } grouping op_scripts_file_type { leaf name { description "Local filename of the script file"; type string { length "1 .. 254"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf command { description "Command alias for the script file"; type string { length "1 .. 254"; } } container dampen { presence "enable dampen"; description "Dampen execution of the script"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container dampen-options { description "Dampen options for the script"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf cpu-factor { description "CPU factor at which to pause"; type uint32 { range "1 .. 100"; } } leaf line-interval { description "Line interval at which to pause"; type uint32 { range "1 .. 4294967295"; } } leaf time-interval { description "Time to pause"; units "microseconds"; type uint32 { range "1 .. 4294967295"; } } } } leaf description { description "Description of the script"; type string { length "1 .. 254"; } } leaf source { description "URL of source for this script"; type string { length "1 .. 254"; } } leaf allow-commands { description "Regular expression for commands to allow explicitly"; type regular-expression; } leaf refresh { description "Refresh all operation scripts from their source"; type empty; } leaf refresh-from { description "Refresh all operation scripts from a given base URL"; type string { length "1 .. 254"; } } list arguments { key name; description "Command line argument to the script"; leaf name { description "Name of the argument"; type string { length "1 .. 254"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf description { description "Description of the argument"; type string { length "1 .. 254"; } } } container checksum { description "Checksum of this script"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf md5 { description "MD5 checksum of this script"; type string { length "1 .. 254"; } } leaf sha1 { description "SHA1 checksum of this script"; type string { length "1 .. 254"; } } leaf sha-256 { description "SHA-256 checksum of this script"; type string { length "1 .. 254"; } } } } grouping script_traceoptions { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } } list flag { key name; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum all { description "Trace all operations"; } enum events { description "Trace important events"; } enum input { description "Trace script input data"; } enum offline { description "Generate data for offline development"; } enum output { description "Trace script output data"; } enum rpc { description "Trace script RPCs"; } enum xslt { description "Trace the XSLT library"; } } } } } grouping sdk-mgmtd-traceoptions-type { description "Trace options for App-engine management daemon"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Area of daemon to enable debugging output"; leaf name { description "(null)"; type enumeration { enum service-infrastructure { description "Trace service infrastructure code"; } enum routing-instance { description "Trace routing instance functionality code"; } enum config-handling { description "Trace configuration command handling functionality code"; } enum command-handling { description "Trace operational command handling functionality code"; } enum cli-show-commands { description "Trace show commands for JDAF message statistics"; } enum all { description "Trace all areas of App-engine management"; } } } } } grouping sdk-vmmd-traceoptions-type { description "App-engine virtual machine management service trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum init { description "Trace initialization events"; } enum configuration { description "Trace configuration events"; } enum ccif { description "Trace compute node interface events"; } enum pxe { description "Trace PXE related events"; } enum platform { description "Trace platform related events"; } enum heartbeat { description "Trace compute node heart beat related events"; } enum routing-instances { description "Trace routing instances related events"; } enum snmp { description "Trace SNMP events"; } enum miscellaneous { description "Trace miscellaneous events"; } enum all { description "Trace everything"; } } } } } grouping sec-object { description "Specify security-name"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf security-name { description "Specify v3 security-name"; type string { length "1 .. 32"; } mandatory true; } leaf context { description "Specify context name associated to this security-name"; type string; mandatory true; } } grouping securid-server-object { leaf name { description "Name of the SecurID server"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf configuration-file { description "Path to the SecurID server configuration (sdconf.rec) file"; type string { length "1 .. 1024"; } mandatory true; } } grouping security-authentication-key-chains { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list key-chain { key name; description "Key chain configuration"; leaf name { description "Name of authentication key chain"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf description { description "Text description of this authentication-key-chain"; type string { length "1 .. 80"; } } leaf tolerance { description "Clock skew tolerance"; default "3600"; units "seconds"; type uint32; } list key { key name; description "Authentication element configuration"; leaf name { description "Authentication element identifier"; type uint32 { range "0 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf secret { description "Authentication key"; type string { length "1 .. 126"; } mandatory true; } leaf start-time { description "Start time for key transmission (YYYY-MM-DD.HH:MM)"; type time; mandatory true; } leaf algorithm { description "Authentication algorithm"; default "md5"; type enumeration { enum md5 { description "Message Digest 5"; } enum hmac-sha-1 { description "Hash-based Message Authentication Code (SHA1) (96 bits)"; } } } leaf options { description "Protocol's transmission encoding format"; default "basic"; type enumeration { enum basic { description "Rudimentary encoding format"; } enum isis-enhanced { description "RFC 5310 based encoding"; } } } } } } grouping security-dhcpv6-options-type { description "Configure DHCPv6 options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container option-37 { presence "enable option-37"; description "Configure DHCPv6 remote identifier option"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container prefix { description "Configure DHCPv6 remote identifier prefix"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf host-name { description "Prefix router host name to DHCPv6 remote identifier"; type empty; } leaf logical-system-name { description "Prefix logical system name to DHCPv6 remote identifier"; type empty; } leaf routing-instance-name { description "Prefix routing instance name to DHCPv6 remote identifier"; type empty; } leaf vlan-name { description "Prefix vlan name to DHCPv6 remote identifier"; type empty; } leaf vlan-id { description "Prefix vlan tag to DHCPv6 remote identifier"; type empty; } } leaf use-interface-mac { description "Add incoming interface's MAC address to DHCPv6 remote identifier"; type empty; } leaf use-interface-index { description "Add interface index to DHCPv6 remote identifier"; type enumeration { enum logical { description "Use the logical interface index"; } enum device { description "Use the device interface index"; } } } leaf use-interface-name { description "Add interface name to DHCPv6 remote identifier"; type enumeration { enum logical { description "Use the logical interface name"; } enum device { description "Use the device interface name"; } } } leaf use-interface-description { description "Add interface description to DHCPv6 remote identifier"; type enumeration { enum logical { description "Use the logical interface description"; } enum device { description "Use the device interface description"; } } } leaf use-string { description "Add custom string to DHCPv6 remote identifier"; type string; } } container option-18 { presence "enable option-18"; description "Configure DHCPv6 interface identifier option"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container prefix { description "Configure DHCPv6 interface identifier prefix"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf host-name { description "Prefix router host name to DHCPv6 interface identifier"; type empty; } leaf logical-system-name { description "Prefix logical system name to DHCPv6 interface identifier"; type empty; } leaf routing-instance-name { description "Prefix routing instance name to DHCPv6 interface identifier"; type empty; } leaf vlan-name { description "Prefix vlan name to DHCPv6 interface identifier"; type empty; } leaf vlan-id { description "Prefix vlan tag to DHCPv6 interface identifier"; type empty; } } leaf use-interface-mac { description "Add incoming interface's MAC address to DHCPv6 circuit identifier"; type empty; } leaf use-interface-index { description "Add interface index to DHCPv6 interface identifier"; type enumeration { enum logical { description "Use the logical interface index"; } enum device { description "Use the device interface index"; } } } leaf use-interface-name { description "Add interface name to DHCPv6 remote identifier"; type enumeration { enum logical { description "Use the logical interface name"; } enum device { description "Use the device interface name"; } } } leaf use-interface-description { description "Add interface description to DHCPv6 interface identifier"; type enumeration { enum logical { description "Use the logical interface description"; } enum device { description "Use the device interface description"; } } } leaf use-string { description "Add custom string to DHCPv6 interface identifier"; type string; } } container option-16 { presence "enable option-16"; description "Configure DHCPv6 vendor class identifier option. Overwrite if exists"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf use-string { description "Add custom string to DHCPv6 vendor identifier"; type string; } } } grouping security-group-vpn { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container member { description "Group VPN member configuration"; uses gvpn-member; } } grouping gvpn-member { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container ike { description "Group VPN IKE configuration"; uses gvpn-member-ike; } container ipsec { description "Group VPN IPsec configuration"; uses gvpn-member-ipsec-vpn; } } grouping gvpn-member-ike { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for Group VPN Member"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum timer { description "Trace internal timer events"; } enum routing-socket { description "Trace routing socket messages"; } enum parse { description "Trace configuration processing"; } enum config { description "Trace configuration download processing"; } enum ike { description "Trace IKE module processing"; } enum policy-manager { description "Trace policy manager processing"; } enum general { description "Trace general events"; } enum database { description "Trace security associations database events"; } enum certificates { description "Trace certificate events"; } enum snmp { description "Trace SNMP operations"; } enum thread { description "Trace thread processing"; } enum high-availability { description "Trace high-availability operations"; } enum next-hop-tunnels { description "Trace next-hop-tunnels operations"; } enum all { description "Trace everything"; } } } } } list proposal { key name; ordered-by user; description "Define an IKE proposal"; uses gvpn-member-ike-proposal; } list policy { key name; ordered-by user; description "Define an IKE policy"; uses gvpn-member-ike-policy; } list gateway { key name; ordered-by user; description "Define an IKE gateway"; leaf name { description "Label for the remote (peer) gateway"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ike-policy { description "Name of the IKE policy"; type string { length "1 .. 32"; } mandatory true; } leaf-list address { description "Addresses or hostnames of peer:1 primary, upto 4 backups"; type hostname; max-elements 4; } leaf-list server-address { description "Server Addresses upto 4"; type ipv4addr; max-elements 4; } container local-identity { description "Set the local IKE identity"; choice identity-type { case case_1 { container inet { description "Use an IPv4 address"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf identity-ipv4 { description "The local IPv4 identity"; type ipv4addr; } } } case case_2 { container hostname { description "Use a fully-qualified domain name"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf identity-hostname { description "The local hostname"; type string; } } } case case_3 { container user-at-hostname { description "Use an e-mail address"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf identity-user { description "The local user-FQDN"; type string; } } } case case_4 { leaf distinguished-name { description "Use a distinguished name specified in local certificate"; type empty; } } } } leaf local-address { description "Local IPv4 address for group member"; type ipv4addr; mandatory true; } leaf routing-instance { description "Name of routing instance that hosts local address"; default "default"; type string; } } } grouping gvpn-member-ike-policy { leaf name { description "Name of policy"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf mode { description "Define the IKE mode for Phase 1"; default "main"; type enumeration { enum main { description "Main mode"; } enum aggressive { description "Aggressive mode"; } } } leaf description { description "Text description of IKE policy"; type string { length "1 .. 80"; } } leaf-list proposals { description "Name of the proposal"; type string { length "1 .. 32"; } } container certificate { description "Certificate configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf local-certificate { description "Local certificate identifier"; type string { } } leaf peer-certificate-type { description "Preferred type of certificate from peer"; default "x509-signature"; type enumeration { enum pkcs7 { description "PKCS7 encoding"; } enum x509-signature { description "X509 signature encoding"; } } } } leaf proposal-set { description "Types of default IKE proposal-set"; type enumeration { enum basic { description "IKE proposal-set for basic"; } enum compatible { description "IKE proposal-set for compatible"; } enum standard { description "IKE proposal-set for standard"; } } } container pre-shared-key { description "Define a preshared key"; choice key-choice { case case_1 { leaf ascii-text { description "Format as text"; type string { length "1 .. 255"; } } } case case_2 { leaf hexadecimal { description "Format as hexadecimal"; type string { length "1 .. 255"; } } } } } } grouping gvpn-member-ike-proposal { leaf name { description "Name of the IKE proposal"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf description { description "Text description of IKE proposal"; type string { length "1 .. 80"; } } leaf authentication-method { description "Define authentication method"; type enumeration { enum pre-shared-keys { description "Preshared keys"; } enum rsa-signatures { description "RSA signatures"; } enum dsa-signatures { description "DSA signatures"; } } mandatory true; } leaf dh-group { description "Define Diffie-Hellman group"; type enumeration { enum group1 { description "Diffie-Hellman Group 1"; } enum group2 { description "Diffie-Hellman Group 2"; } enum group5 { description "Diffie-Hellman Group 5"; } enum group14 { description "Diffie-Hellman Group 14"; } } } leaf authentication-algorithm { description "Define authentication algorithm"; type enumeration { enum md5 { description "MD5 authentication algorithm"; } enum sha1 { description "SHA1 authentication algorithm"; } } } leaf encryption-algorithm { description "Define encryption algorithm"; type enumeration { enum des-cbc { description "DES-CBC encryption algorithm"; } enum 3des-cbc { description "3DES-CBC encryption algorithm"; } enum aes-128-cbc { description "AES-CBC 128-bit encryption algorithm"; } enum aes-192-cbc { description "AES-CBC 192-bit encryption algorithm"; } enum aes-256-cbc { description "AES-CBC 256-bit encryption algorithm"; } } } leaf lifetime-seconds { description "Lifetime, in seconds"; default "180"; units "seconds"; type uint32 { range "180 .. 86400"; } } } grouping gvpn-member-ipsec-vpn { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list vpn { key name; ordered-by user; description "Define an IPSec VPN"; uses ipsec-gvpn-member-template; } } grouping ipsec-gvpn-member-template { description "Configure a Group VPN"; leaf name { description "Name of the VPN"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ike-gateway { description "Name of IKE gateway"; type string { length "1 .. 32"; } mandatory true; } leaf group-vpn-external-interface { description "MPLS-facing interface used for Group VPN"; type interface-name; } leaf group { description "Enable Group VPN by defining group id"; type uint32 { range "1 .. 65535"; } mandatory true; } leaf heartbeat-threshold { description "Define heartbeat threshold for Group VPN"; default "3"; type uint32 { range "0 .. 10"; } } leaf match-direction { description "Direction for which the rule match is applied"; type enumeration { enum input { description "Match on input to interface"; } enum output { description "Match on output from interface"; } } mandatory true; } leaf tunnel-mtu { description "Maximum transmit packet size"; default "1500"; type uint32 { range "256 .. 9192"; } } leaf df-bit { description "Specifies how to handle the Don't Fragment bit"; default "clear"; type enumeration { enum clear { description "Clear DF bit of outer header"; } enum set { description "Set DF bit of outer header"; } enum copy { description "Copy DF bit from inner header"; } } } } grouping security-ike { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options for IPSec key management"; uses security-traceoptions; } container respond-bad-spi { presence "enable respond-bad-spi"; description "Respond to IPSec packets with bad SPI values"; leaf max-responses { description "Maximum number of times to respond"; default "5"; type uint32 { range "1 .. 30"; } } } list proposal { key name; ordered-by user; description "Define an IKE proposal"; uses ike-proposal; } list policy { key name; ordered-by user; description "Define an IKE policy"; uses ike-policy; } list gateway { key name; ordered-by user; description "Define an IKE gateway"; leaf name { description "Label for the remote (peer) gateway"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ike-policy { description "Name of the IKE policy"; type string { length "1 .. 32"; } mandatory true; } choice remote-identifier { case case_1 { leaf-list address { description "Addresses or hostnames of peer:1 primary, upto 4 backups"; type string; } } case case_2 { container dynamic { description "Site to site peer with dynamic IP address"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice remote-id-type { case case_1 { container distinguished-name { presence "enable distinguished-name"; description "Use a distinguished name: "; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf container { description "Specify the container string"; type string; } leaf wildcard { description "Specify the wildcard string"; type string; } } } case case_2 { leaf hostname { description "Use a fully-qualified domain name"; type string; } } case case_3 { leaf inet { description "Use an IPV4 address to identify the dynamic peer"; type ipv4addr; } } case case_4 { leaf inet6 { description "Use an IPV6 address to identify the dynamic peer"; type ipv6addr; } } case case_5 { leaf user-at-hostname { description "Use an e-mail address"; type string; } } } leaf connections-limit { description "Maximum number of users connected to gateway"; type uint32; } leaf ike-user-type { description "Type of the IKE ID"; type enumeration { enum group-ike-id { description "Email address or FQDN shared as IKED ID by multiple users"; } enum shared-ike-id { description "Email address shared as IKED ID by multiple users"; } } } } } } container dead-peer-detection { presence "enable dead-peer-detection"; description "Enable RFC-3706 DPD"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf always-send { description "Send DPD messages periodically, regardless of traffic"; type empty; } leaf interval { description "The interval at which to send DPD messages"; default "10"; units "seconds"; type uint32 { range "10 .. 60"; } } leaf threshold { description "Maximum number of DPD retransmissions"; default "5"; type uint32 { range "1 .. 5"; } } } leaf no-nat-traversal { description "Disable IPSec NAT traversal"; type empty; } leaf nat-keepalive { description "Interval at which to send NAT keepalives"; default "5"; units "seconds"; type uint32 { range "1 .. 300"; } } container local-identity { description "Set the local IKE identity"; choice identity-type { case case_1 { container inet { description "Use an IPv4 address"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf identity-ipv4 { description "The local IPv4 identity"; type ipv4addr; } } } case case_2 { container inet6 { description "Use an IPv6 address"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf identity-ipv6 { description "The local IPv6 identity"; type ipv6addr; } } } case case_3 { container hostname { description "Use a fully-qualified domain name"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf identity-hostname { description "The local hostname"; type string; } } } case case_4 { container user-at-hostname { description "Use an e-mail address"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf identity-user { description "The local user-FQDN"; type string; } } } case case_5 { leaf distinguished-name { description "Use a distinguished name specified in local certificate"; type empty; } } } } container remote-identity { description "Set the remote IKE identity"; choice identity-type { case case_1 { container inet { description "Use an IPv4 address"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf identity-ipv4 { description "The remote IPv4 identity"; type ipv4addr; } } } case case_2 { container inet6 { description "Use an IPv6 address"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf identity-ipv6 { description "The remote IPv6 identity"; type ipv6addr; } } } case case_3 { container hostname { description "Use a fully-qualified domain name"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf identity-hostname { description "The remote hostname"; type string; } } } case case_4 { container user-at-hostname { description "Use an e-mail address"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf identity-user { description "The remote user-FQDN"; type string; } } } case case_5 { container distinguished-name { presence "enable distinguished-name"; description "Use a distinguished name: "; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf container { description "Specify the container string"; type string; } leaf wildcard { description "Specify the wildcard string"; type string; } } } } } leaf external-interface { description "External interface for IKE negotiations"; type interface-unit; mandatory true; } container xauth { description "Use extended authentication"; leaf access-profile { description "Access profile that contains authentication information"; type string; mandatory true; } presence "enable xauth"; } leaf general-ikeid { description "Accept peer IKE-ID in general"; type empty; } leaf version { description "Negotiate using either IKE v1 or IKE v2 protocol"; default "v1-only"; type enumeration { enum v1-only { description "The connection must be initiated using IKE version 1"; } enum v2-only { description "The connection must be initiated using IKE version 2"; } } } } } grouping ike-policy { leaf name { description "IKE peer address"; type ipv4addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf mode { description "Define the IKE first phase mode"; type enumeration { enum main { description "Main mode"; } enum aggressive { description "Aggressive mode"; } } } leaf description { description "Text description of IKE policy"; type string { length "1 .. 80"; } } leaf-list proposals { description "Name of the proposal"; type string { length "1 .. 32"; } } leaf local-certificate { description "File to read certificate from"; type string { length "1 .. 255"; } } leaf local-key-pair { description "File to read key-pair from"; type string { length "1 .. 255"; } } leaf encoding { description "Encoding to use for certificate or CRL on disk"; default "binary"; type enumeration { enum binary { description "DER encoding"; } enum pem { description "Privacy-enhanced-mail encoding, base64"; } } } leaf identity { description "Define the remote certificate name"; type string { length "1 .. 32"; } } container pre-shared-key { description "Define a preshared key"; choice key-choice { case case_1 { leaf ascii-text { description "Format as text"; type string { length "1 .. 255"; } } } case case_2 { leaf hexadecimal { description "Format as hexadecimal"; type string { length "1 .. 255"; } } } } } } grouping ike-proposal { leaf name { description "Name of the IKE proposal"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf description { description "Text description of IKE proposal"; type string { length "1 .. 80"; } } leaf authentication-method { description "Define authentication method"; type enumeration { enum pre-shared-keys { description "Preshared keys"; } enum rsa-signatures { description "RSA signatures"; } enum dsa-signatures { description "DSA signatures"; } } mandatory true; } leaf dh-group { description "Define Diffie-Hellman group"; type enumeration { enum group1 { description "Diffie-Hellman Group1"; } enum group2 { description "Diffie-Hellman Group2"; } enum group5 { description "Diffie-Hellman Group5"; } enum group14 { description "Diffie-Hellman Group14"; } enum group19 { description "Diffie-Hellman Group19"; } enum group20 { description "Diffie-Hellman Group20"; } } } leaf authentication-algorithm { description "Define authentication algorithm"; type enumeration { enum md5 { description "MD5 authentication algorithm"; } enum sha1 { description "SHA1 authentication algorithm"; } enum sha-256 { description "SHA 256-bit authentication algorithm"; } enum sha-384 { description "SHA 384-bit authentication algorithm"; } } } leaf encryption-algorithm { description "Define encryption algorithm"; type enumeration { enum des-cbc { description "DES-CBC encryption algorithm"; } enum 3des-cbc { description "3DES-CBC encryption algorithm"; } enum aes-128-cbc { description "AES-CBC 128-bit encryption algorithm"; } enum aes-192-cbc { description "AES-CBC 192-bit encryption algorithm"; } enum aes-256-cbc { description "AES-CBC 256-bit encryption algorithm"; } } } leaf lifetime-seconds { description "Lifetime, in seconds"; units "seconds"; type uint32 { range "180 .. 86400"; } } } grouping security-ipsec { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list proposal { key name; ordered-by user; description "Define an IPSec proposal"; uses ipsec-proposal; } list policy { key name; ordered-by user; description "Define an IPSec policy"; uses ipsec-policy; } list security-association { key name; ordered-by user; description "Define an IPSec security association"; uses ipsec-sa; } container internal { presence "enable internal"; description "Define an IPSec SA for internal RE-RE communication"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container security-association { description "Define an IPSec security association"; uses ipsec-internal-sa; } } container trusted-channel { presence "enable trusted-channel"; description "Define an IPSec SA for trusted-channel communication"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container security-association { description "Define an IPSec security association"; uses ipsec-trusted-channel-sa; } leaf-list port-exclusion-list { description "Define port exlusion list"; type uint32 { range "1 .. 65535"; } } } } grouping ipsec-internal-sa { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf description { description "Text description of internal security association"; type string { length "1 .. 80"; } } container manual { description "Define a manual security association"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list direction { key name; ordered-by user; description "Define the direction of the security association"; leaf name { description "(null)"; type enumeration { enum inbound { description "Inbound security association"; } enum outbound { description "Outbound security association"; } enum bidirectional { description "Bidirectional security association"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf protocol { description "Define an IPSec protocol for the security association"; type enumeration { enum ah { description "Authentication header"; } enum esp { description "Encapsulated Security Payload header"; } enum bundle { description "Bundle (AH authentication plus ESP encryption)"; } } mandatory true; } leaf spi { description "Define security parameter index"; type uint32 { range "256 .. 16639"; } mandatory true; } leaf auxiliary-spi { description "ESP security parameter index for IPSec SA bundle"; type uint32 { range "256 .. 16639"; } } container authentication { description "Define authentication parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf algorithm { description "Define authentication algorithm"; type enumeration { enum hmac-md5-96 { description "HMAC-MD5-96 authentication algorithm"; } enum hmac-sha1-96 { description "HMAC-SHA1-96 authentication algorithm"; } enum hmac-sha2-256 { description "HMAC-SHA2-256 authentication algorithm"; } enum hmac-sha-256-128 { description "HMAC-SHA-256-128 authentication algorithm"; } } mandatory true; } presence "enable authentication"; container key { description "Define an authentication key"; choice key-choice { case case_1 { leaf ascii-text { description "Format as text"; type string { length "1 .. 255"; } } } case case_2 { leaf hexadecimal { description "Format as hexadecimal"; type string { length "1 .. 255"; } } } } } } container encryption { description "Define encryption parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf algorithm { description "Define encryption algorithm"; type enumeration { enum des-cbc { description "DES-CBC encryption algorithm"; } enum 3des-cbc { description "3DES-CBC encryption algorithm"; } enum aes-128-cbc { description "AES-CBC 128-bit encryption algorithm"; } enum aes-192-cbc { description "AES-CBC 192-bit encryption algorithm"; } enum aes-256-cbc { description "AES-CBC 256-bit encryption algorithm"; } } mandatory true; } presence "enable encryption"; container key { description "Define an encryption key"; choice key-choice { case case_1 { leaf ascii-text { description "Format as text"; type string { length "1 .. 255"; } } } case case_2 { leaf hexadecimal { description "Format as hexadecimal"; type string { length "1 .. 255"; } } } } } } } } } grouping ipsec-policy { leaf name { description "Name of the IPSec policy"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf description { description "Text description of IPSec policy"; type string { length "1 .. 80"; } } container perfect-forward-secrecy { description "Define perfect forward secrecy"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf keys { description "Define Diffie-Hellman group"; type enumeration { enum group1 { description "Diffie-Hellman Group1"; } enum group2 { description "Diffie-Hellman Group2"; } enum group5 { description "Diffie-Hellman Group5"; } enum group14 { description "Diffie-Hellman Group14"; } enum group19 { description "Diffie-Hellman Group19"; } enum group20 { description "Diffie-Hellman Group20"; } } } } leaf-list proposals { description "Name of the proposal"; type string { length "1 .. 32"; } } leaf proposal-set { description "Types of default IPSEC proposal-set"; type enumeration { enum basic { description "IPSEC basic proposal-set"; } enum compatible { description "IPSEC compatible proposal-set"; } enum standard { description "IPSEC standard proposal-set"; } } } } grouping ipsec-proposal { leaf name { description "Name of the IPSec proposal"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf description { description "Text description of IPSec proposal"; type string { length "1 .. 80"; } } leaf protocol { description "Define an IPSec protocol for the proposal"; type enumeration { enum ah { description "Authentication header"; } enum esp { description "Encapsulated Security Payload header"; } enum bundle { description "Bundle (AH authentication plus ESP encryption)"; } } } leaf authentication-algorithm { description "Define authentication algorithm"; type enumeration { enum hmac-md5-96 { description "HMAC-MD5-96 authentication algorithm"; } enum hmac-sha1-96 { description "HMAC-SHA1-96 authentication algorithm"; } enum hmac-sha-256-128 { description "HMAC-SHA-256-128 authentication algorithm"; } enum hmac-sha-256-96 { description "HMAC-SHA-256-96 authentication algorithm (non-RFC compliant)"; } enum hmac-sha2-256 { description "HMAC-SHA2-256 authentication algorithm"; } } } leaf encryption-algorithm { description "Define encryption algorithm"; type enumeration { enum des-cbc { description "DES-CBC encryption algorithm"; } enum 3des-cbc { description "3DES-CBC encryption algorithm"; } enum aes-128-cbc { description "AES-CBC 128-bit encryption algorithm"; } enum aes-192-cbc { description "AES-CBC 192-bit encryption algorithm"; } enum aes-256-cbc { description "AES-CBC 256-bit encryption algorithm"; } } } leaf lifetime-seconds { description "Lifetime, in seconds"; units "seconds"; type uint32 { range "180 .. 86400"; } } } grouping ipsec-sa { leaf name { description "Name of IPSec security association"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf description { description "Text description of security association"; type string { length "1 .. 80"; } } leaf mode { description "Define security association mode"; default "tunnel"; type enumeration { enum transport { description "Transport mode"; } enum tunnel { description "Tunnel mode"; } } } choice sa_choice { case case_1 { container manual { description "Define a manual security association"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list direction { key name; ordered-by user; description "Define the direction of the security association"; leaf name { description "(null)"; type enumeration { enum inbound { description "Inbound security association"; } enum outbound { description "Outbound security association"; } enum bidirectional { description "Bidirectional security association"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf protocol { description "Define an IPSec protocol for the security association"; type enumeration { enum ah { description "Authentication header"; } enum esp { description "Encapsulated Security Payload header"; } enum bundle { description "Bundle (AH authentication plus ESP encryption)"; } } mandatory true; } leaf spi { description "Define security parameter index"; type uint32 { range "256 .. 16639"; } mandatory true; } leaf auxiliary-spi { description "ESP security parameter index for IPSec SA bundle"; type uint32 { range "256 .. 16639"; } } container authentication { description "Define authentication parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf algorithm { description "Define authentication algorithm"; type enumeration { enum hmac-md5-96 { description "HMAC-MD5-96 authentication algorithm"; } enum hmac-sha1-96 { description "HMAC-SHA1-96 authentication algorithm"; } enum hmac-sha2-256 { description "HMAC-SHA2-256 authentication algorithm"; } enum hmac-sha-256-128 { description "HMAC-SHA-256-128 authentication algorithm"; } } mandatory true; } presence "enable authentication"; container key { description "Define an authentication key"; choice key-choice { case case_1 { leaf ascii-text { description "Format as text"; type string { length "1 .. 255"; } } } case case_2 { leaf hexadecimal { description "Format as hexadecimal"; type string { length "1 .. 255"; } } } } } } container encryption { description "Define encryption parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf algorithm { description "Define encryption algorithm"; type enumeration { enum des-cbc { description "DES-CBC encryption algorithm"; } enum 3des-cbc { description "3DES-CBC encryption algorithm"; } enum aes-128-cbc { description "AES-CBC 128-bit encryption algorithm"; } enum aes-192-cbc { description "AES-CBC 192-bit encryption algorithm"; } enum aes-256-cbc { description "AES-CBC 256-bit encryption algorithm"; } } mandatory true; } presence "enable encryption"; container key { description "Define an encryption key"; choice key-choice { case case_1 { leaf ascii-text { description "Format as text"; type string { length "1 .. 255"; } } } case case_2 { leaf hexadecimal { description "Format as hexadecimal"; type string { length "1 .. 255"; } } } } } } } } } case case_2 { container dynamic { description "Define a dynamic security association"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf replay-window-size { description "Define replay protection window size"; type enumeration { enum 32 { description "32-packet window size"; } enum 64 { description "64-packet window size"; } } } leaf ipsec-policy { description "Name of the IPSec policy"; type string { length "1 .. 32"; } } } } } } grouping ipsec-trusted-channel-sa { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf description { description "Text description of trusted channel security association"; type string { length "1 .. 80"; } } container manual { description "Define a manual security association"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list direction { key name; ordered-by user; description "Define the direction of the security association"; leaf name { description "(null)"; type enumeration { enum inbound { description "Inbound security association"; } enum outbound { description "Outbound security association"; } enum bidirectional { description "Bidirectional security association"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf protocol { description "Define an IPSec protocol for the security association"; type enumeration { enum ah { description "Authentication header"; } enum esp { description "Encapsulated Security Payload header"; } enum bundle { description "Bundle (AH authentication plus ESP encryption)"; } } mandatory true; } leaf spi { description "Define security parameter index"; type uint32 { range "256 .. 16639"; } mandatory true; } leaf auxiliary-spi { description "ESP security parameter index for IPSec SA bundle"; type uint32 { range "256 .. 16639"; } } container authentication { description "Define authentication parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf algorithm { description "Define authentication algorithm"; type enumeration { enum hmac-md5-96 { description "HMAC-MD5-96 authentication algorithm"; } enum hmac-sha1-96 { description "HMAC-SHA1-96 authentication algorithm"; } enum hmac-sha2-256 { description "HMAC-SHA2-256 authentication algorithm"; } enum hmac-sha-256-128 { description "HMAC-SHA-256-128 authentication algorithm"; } } mandatory true; } presence "enable authentication"; container key { description "Define an authentication key"; choice key-choice { case case_1 { leaf ascii-text { description "Format as text"; type string { length "1 .. 255"; } } } case case_2 { leaf hexadecimal { description "Format as hexadecimal"; type string { length "1 .. 255"; } } } } } } container encryption { description "Define encryption parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf algorithm { description "Define encryption algorithm"; type enumeration { enum des-cbc { description "DES-CBC encryption algorithm"; } enum 3des-cbc { description "3DES-CBC encryption algorithm"; } enum aes-128-cbc { description "AES-CBC 128-bit encryption algorithm"; } enum aes-192-cbc { description "AES-CBC 192-bit encryption algorithm"; } enum aes-256-cbc { description "AES-CBC 256-bit encryption algorithm"; } } mandatory true; } presence "enable encryption"; container key { description "Define an encryption key"; choice key-choice { case case_1 { leaf ascii-text { description "Format as text"; type string { length "1 .. 255"; } } } case case_2 { leaf hexadecimal { description "Format as hexadecimal"; type string { length "1 .. 255"; } } } } } } } } } grouping security-macsec { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Tracing options for debugging protocol operation"; uses macsec-trace-options; } list connectivity-association { key name; ordered-by user; description "Configure connectivity association properties"; leaf name { description "Connectivity association name"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf security-mode { description "Connectivity association mode"; type enumeration { enum static-sak { description "Static secure association key mode (no MKA)"; } enum static-cak { description "Static connectivity association key mode (MKA and Pre-shared key)"; } } mandatory true; } list secure-channel { key name; ordered-by user; description "Configure secure channel properties"; leaf name { description "Secure channel name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container id { description "Secure channel identifier"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf mac-address { description "MAC addresses"; type mac-addr; mandatory true; } presence "enable id"; leaf port-id { description "Port identifier"; type uint32 { range "1 .. 65535"; } mandatory true; } } leaf direction { description "Secure channel direction"; type enumeration { enum inbound { description "(null)"; } enum outbound { description "(null)"; } } mandatory true; } leaf encryption { description "Enable Encryption"; type empty; } leaf offset { description "Confidentiality offset"; type enumeration { enum 0 { description "Confidentiality protected for all octets of MACSec PDU data"; } enum 30 { description "Confidentiality not protected for initial 30 octets of MACSec PDU data"; } enum 50 { description "Confidentiality not protected for initial 50 octets of MACSec PDU data"; } } } leaf include-sci { description "Include secure channel identifier in MAC Security PDU"; type empty; } list security-association { key name; ordered-by user; description "Security association"; leaf name { description "Security association number"; type uint32 { range "0 .. 3"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf key { description "Security association key in hexadecimal format of length 32"; type string { length 32; } } } } container mka { presence "enable mka"; description "Configure MAC Security Key Agreement protocol properties"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf transmit-interval { description "Configure MKA periodic transmit interval"; default "2000"; units "milliseconds"; type uint32 { range "2000 .. 10000"; } } leaf key-server-priority { description "Configure MKA key server priority"; default "16"; type uint32 { range "0 .. 255"; } } } container replay-protect { presence "enable replay-protect"; description "Configure replay protection"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf replay-window-size { description "Configure replay protection window size"; units "packets"; type uint32 { range "0 .. 65535"; } mandatory true; } } leaf no-encryption { description "Disable encryption"; type empty; } leaf offset { description "Confidentiality offset"; default "0"; type enumeration { enum 0 { description "Confidentiality provided for all octets of data"; } enum 30 { description "Confidentiality not provided for initial 30 octets of data"; } enum 50 { description "Confidentiality not provided for initial 50 octets of data"; } } } leaf include-sci { description "Include secure channel identifier in MAC Security PDU"; type empty; } container pre-shared-key { presence "enable pre-shared-key"; description "Configure pre-shared connectivity association key"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ckn { description "Connectivity association key name in hexadecimal format"; type string { length "2 .. 64"; } mandatory true; } leaf cak { description "Connectivity association key in hexadecimal format"; type string { length "1 .. 32"; } mandatory true; } } list exclude-protocol { key name; ordered-by user; description "Configure protocols to exclude from MAC Security"; leaf name { description "(null)"; type enumeration { enum cdp { description "Cisco Discovery Protocol"; } enum lldp { description "Link Level Discovery Protocol"; } enum lacp { description "Link Aggregation Control Protocol"; } } } } } list interfaces { key name; description "Interfaces on which macsec configuration is applied"; leaf name { description "(null)"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf connectivity-association { description "Connectivity association name"; type string; mandatory true; } container traceoptions { description "Tracing options of MKA protocol"; uses mka-trace-options; } } } grouping macsec-trace-options { description "Trace options for MACSec Protocol"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum config { description "Trace configuration messages"; } enum debug { description "Trace debug messages"; } enum normal { description "Trace normal messages"; } enum all { description "Trace all"; } } } } } grouping mka-trace-options { description "Trace options for MKA protocol"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum mka-packets { description "Trace MKA input and output packets"; } enum state { description "Trace MKA state information"; } enum to-secy { description "Trace MKA to SecY state changes"; } enum keys { description "Trace key creation/generation information"; } enum normal { description "Trace normal events"; } enum all { description "Trace all"; } } } } } grouping security-model-access { description "Security access configuration"; leaf name { description "SNMPv3 VACM security model"; type enumeration { enum any { description "Any security model"; } enum usm { description "User-based security model"; } enum v1 { description "SNMPv1 model"; } enum v2c { description "SNMPv2c model"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list security-level { key name; ordered-by user; description "Security level access configuration"; leaf name { description "SNMPv3 VACM security level"; type enumeration { enum none { description "None (noAuthNoPriv)"; } enum authentication { description "Authentication (authNoPriv)"; } enum privacy { description "Privacy and authentication (authPriv)"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf context-match { description "Type of match to perform on context-prefix"; default "exact"; type enumeration { enum exact { description "Exact match of prefix and context name"; } enum prefix { description "Only match the context prefix"; } } } leaf read-view { description "View used for read access"; type string { } } leaf write-view { description "View used for write access"; type string { } } leaf notify-view { description "View used to notifications"; type string { } } } } grouping security-option-82-type { description "DHCP option-82 processing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container circuit-id { presence "enable circuit-id"; description "Configure DHCP option 82 circuit id"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container prefix { description "Configure DHCP option 82 circuit id prefix"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf host-name { description "Add router host name to DHCP option-82 circuit id"; type empty; } leaf logical-system-name { description "Add logical system name to DHCP option-82 circuit id"; type empty; } leaf routing-instance-name { description "Add routing instance name to DHCP option-82 circuit id"; type empty; } } leaf use-interface-description { description "Use interface description instead of circuit identifier"; type enumeration { enum logical { description "Use the logical interface description"; } enum device { description "Use the device interface description"; } } } leaf use-vlan-id { description "Use VLAN id instead of name"; type empty; } } container remote-id { presence "enable remote-id"; description "Configure DHCP option 82 remote id"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf host-name { description "Add router host name to DHCP option-82 remote id"; type empty; } leaf use-interface-description { description "Use interface description instead of interface name"; type enumeration { enum logical { description "Use the logical interface description"; } enum device { description "Use the device interface description"; } } } leaf use-string { description "Use raw string instead of the default remote id"; type string; } leaf mac { description "Add chassis MAC Address to DHCP option-82 remote id"; type empty; } } container vendor-id { presence "enable vendor-id"; description "Configure DHCP option 82 vendor id"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf use-string { description "Use raw string instead of the default vendor id"; type string; } } } grouping security-pki { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list ca-profile { key name; ordered-by user; description "Certificate authority profile configuration"; leaf name { description "Name of certificate authority profile"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ca-identity { description "Certificate authority identifier"; type string; mandatory true; } leaf routing-instance { description "Use specified routing instance"; type string; } container enrollment { description "Enrollment parameters for certificate authority"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf url { description "Enrollment URL of certificate authority"; type string; } leaf retry { description "Number of enrollment retry attempts before aborting"; default "1000"; type uint32 { range "0 .. 1080"; } } leaf retry-interval { description "Interval in seconds between the enrollment retries"; default "600"; type uint32 { range "0 .. 3600"; } } } container revocation-check { description "Method for checking certificate revocations"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice revocation-check-options { case case_1 { leaf disable { description "Disable revocation check"; type empty; } } } container crl { description "Certificate revocation list configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container disable { leaf on-download-failure { description "Check revocation status with existing CRL file if present, otherwise skip. This feature must be enabled for manual CRL download."; type empty; } } list url { key name; ordered-by user; description "(null)"; leaf name { description "URL of CRL distribution point for certificate authority"; type string { length "1 .. 500"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf password { description "Password for authentication with the server"; type unreadable; } } leaf refresh-interval { description "CRL refresh interval"; units "hours"; type uint32 { range "0 .. 8784"; } } } } container administrator { description "Administrator information"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf email-address { description "Administrator e-mail to which to send certificate requests"; type string; } } } container auto-re-enrollment { description "Auto re-enroll of certificate"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list certificate-id { key name; ordered-by user; description "Auto re-enrollment configuration for certificate-id"; leaf name { description "Certificate identifier that needs auto re-enrollment"; type string { } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ca-profile-name { description "Name of certificate authority profile"; type string { } mandatory true; } leaf challenge-password { description "Password used by CA for enrollment and revocation"; type unreadable; mandatory true; } leaf re-enroll-trigger-time-percentage { description "Re-enrollment trigger time before expiration as percentage"; type uint32 { range "1 .. 99"; } mandatory true; } leaf re-generate-keypair { description "Generate new key-pair for auto-re-enrollment"; type empty; } container scep-encryption-algorithm { presence "enable scep-encryption-algorithm"; description "SCEP encryption algorithm"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice scep-encryption-algorithm-options { case case_1 { leaf des { description "Use DES as SCEP encryption algorithm"; type empty; } } case case_2 { leaf des3 { description "Use DES3 as SCEP encryption algorithm"; type empty; } } } } container scep-digest-algorithm { presence "enable scep-digest-algorithm"; description "SCEP digest algorithm"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice scep-digest-algorithm-options { case case_1 { leaf md5 { description "Use MD5 as SCEP digest algorithm"; type empty; } } case case_2 { leaf sha1 { description "Use SHA1 as SCEP digest algorithm"; type empty; } } } } } } container traceoptions { description "PKI trace options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum certificate-verification { description "PKI certificate verification tracing"; } enum online-crl-check { description "PKI online crl tracing"; } enum enrollment { description "PKI certificate enrollment tracing"; } enum all { description "Trace with all flags enabled"; } } } } } } grouping security-traceoptions { description "Trace options for key management process"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf rate-limit { description "Limit the incoming rate of trace messages"; default "0"; type uint32 { range "0 .. 4294967295"; } } container filter { description "Filter parameters for IKE traceoptions"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf fpc { description "FPC slot number"; type uint32 { range "0 .. 63"; } } leaf pic { description "PIC slot number"; type uint32 { range "0 .. 3"; } } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum timer { description "Trace internal timer events"; } enum routing-socket { description "Trace routing socket messages"; } enum parse { description "Trace configuration processing"; } enum config { description "Trace configuration download processing"; } enum ike { description "Trace IKE module processing"; } enum policy-manager { description "Trace policy manager processing"; } enum general { description "Trace general events"; } enum database { description "Trace security associations database events"; } enum certificates { description "Trace certificate events"; } enum snmp { description "Trace SNMP operations"; } enum thread { description "Trace thread processing"; } enum high-availability { description "Trace high-availability operations"; } enum next-hop-tunnels { description "Trace next-hop-tunnels operations"; } enum all { description "Trace everything"; } enum ams { description "Trace AMS events"; } enum lic { description "Trace License events"; } } } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } } grouping server-group-type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list server-group { key name; ordered-by user; description "One or more server groups"; leaf name { description "Server group name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list address { key name; ordered-by user; description "IP Address of one or more DHCP servers"; leaf name { description "IP Address of DHCP server"; type ipaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } grouping service_device_pool_object { leaf name { description "Service device pool name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list interface { key name; ordered-by user; description "Service device name"; leaf name { description "(null)"; type interface-unit; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } grouping service_identification_type { description "Configure service identification services"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf unescape-conversion { description "Unescape characters in URI before processing"; type empty; } container flow-limits { presence "enable flow-limits"; description "Settings for limitation of inspection flows"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf max-user-child { description "Maximum allowed flows per protocol and user"; default "150"; type uint32 { range "0 .. 400"; } } leaf max-node-flow { description "Maximum accepted flows in the node"; default "0"; type uint32 { range "0 .. 1000000"; } } leaf max-analyzer-routing { description "Maximum accepted dynamic routing rule per analyzer"; default "1000"; type uint32 { range "0 .. 5000"; } } } list http-wsp-rule { key name; ordered-by user; description "HTTP WSP rule"; max-elements 512; uses sid_http_wsp_rule_object; } list http-wsp-rule-set { key name; ordered-by user; description "Define a set of URI rules"; max-elements 256; leaf name { description "Name of the rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Rule to be included in this rule set"; max-elements 128; leaf name { description "Rule name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } list smtp-rule { key name; ordered-by user; description "SMTP rule"; max-elements 512; uses sid_smtp_rule_object; } list smtp-rule-set { key name; ordered-by user; description "Define a set of SMTP rules"; max-elements 256; leaf name { description "Name of the rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Rule to be included in this rule set"; max-elements 128; leaf name { description "Rule name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } list pop3-rule { key name; ordered-by user; description "POP3 rule"; max-elements 512; uses sid_pop3_rule_object; } list pop3-rule-set { key name; ordered-by user; description "Define a set of POP3 rules"; max-elements 256; leaf name { description "Name of the rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Rule to be included in this rule set"; max-elements 128; leaf name { description "Rule name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } list ftp-rule { key name; ordered-by user; description "FTP rule"; max-elements 512; uses sid_ftp_rule_object; } list ftp-rule-set { key name; ordered-by user; description "Define a set of FTP rules"; max-elements 256; leaf name { description "Name of the rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Rule to be included in this rule set"; max-elements 128; leaf name { description "Rule name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } list tftp-rule { key name; ordered-by user; description "Define a TFTP rule"; max-elements 512; uses sid_tftp_rule_object; } list tftp-rule-set { key name; ordered-by user; description "Define a set of TFTP rules"; max-elements 256; leaf name { description "Name of the rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Rule to be included in this rule set"; max-elements 128; leaf name { description "Rule name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } list rtsp-rule { key name; ordered-by user; description "RTSP rule"; max-elements 512; uses sid_rtsp_rule_object; } list rtsp-rule-set { key name; ordered-by user; description "Define a set of RTSP rules"; max-elements 256; leaf name { description "Name of the rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Rule to be included in this rule set"; max-elements 128; leaf name { description "Rule name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } list sip-rule { key name; ordered-by user; description "SIP rule"; max-elements 512; uses sid_sip_rule_object; } list sip-rule-set { key name; ordered-by user; description "Define a set of SIP rules"; max-elements 256; leaf name { description "Name of the rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Rule to be included in this rule set"; max-elements 128; leaf name { description "Rule name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } list msn-rule { key name; ordered-by user; description "MSN rule"; max-elements 512; uses sid_msn_rule_object; } list msn-rule-set { key name; ordered-by user; description "Define a set of MSN rules"; max-elements 256; leaf name { description "Name of the rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Rule to be included in this rule set"; max-elements 128; leaf name { description "Rule name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } list dns-rule { key name; ordered-by user; description "DNS rule"; max-elements 512; uses sid_dns_rule_object; } list dns-rule-set { key name; ordered-by user; description "Define a set of DNS rules"; max-elements 256; leaf name { description "Name of the rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Rule to be included in this rule set"; max-elements 128; leaf name { description "Rule name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } list header-rule { key name; ordered-by user; description "Header rule"; max-elements 512; uses sid_header_rule_object; } list header-rule-set { key name; ordered-by user; description "Define a set of header rules"; max-elements 256; leaf name { description "Name of the rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Rule to be included in this rule set"; max-elements 256; leaf name { description "Rule name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } list heuristic-rule { key name; ordered-by user; description "Heuristic rule"; max-elements 512; uses sid_heuristic_rule_object; } list heuristic-rule-set { key name; ordered-by user; description "Define a set of heuristic rules"; max-elements 256; leaf name { description "Name of the rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule { key name; ordered-by user; description "Rule to be included in this rule set"; max-elements 256; leaf name { description "Rule name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } list header-redirect-set { key name; ordered-by user; description "Define a set of header redirect rules"; max-elements 128; leaf name { description "Name of header redirect set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list cause { key name; ordered-by user; description "(null)"; max-elements 16; uses header_redirect_cause_type; } } list uri-redirect-set { key name; ordered-by user; description "Define a set of URI redirect rules"; max-elements 128; leaf name { description "Name of URI redirect set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list cause { key name; ordered-by user; description "(null)"; max-elements 16; uses uri_redirect_cause_type; } } } grouping header_redirect_cause_type { leaf name { description "Cause of redirection"; type enumeration { enum roaming { description "Traffic redirection because of roaming"; } enum calendar-time { description "Traffic redirection because of time-of-day change"; } enum quality-of-service { description "Traffic redirection because of QoS"; } enum volume-expired { description "Traffic redirection because of expiration of volume limit"; } enum cost-warning { description "Traffic redirection because of cost warning limit"; } enum user-defined-reason-1 { description "User-defined authorization code (1)"; } enum user-defined-reason-2 { description "User-defined authorization code (2)"; } enum user-defined-reason-3 { description "User-defined authorization code (3)"; } enum user-defined-reason-4 { description "User-defined authorization code (4)"; } enum user-defined-reason-5 { description "User-defined authorization code (5)"; } enum blacklisted { description "Traffic redirection because if blacklisted rating group"; } enum not-allowed { description "Traffic redirection because of disallowed service class"; } enum unsubscribed { description "Traffic redirection because of unsubscribed service class"; } enum credit-expiry { description "Traffic redirection because of expiration of credit"; } enum unknown { description "Traffic redirection because of unknown reason"; } enum terminal { description "Traffic redirection because of terminal denied access"; } enum default { description "Default traffic redirection rule"; } } } leaf destination-address { description "Redirect to this IP address"; type ipv4addr; } leaf destination-port { description "Redirect to this TCP/UDP port"; type uint16 { range "1 .. 65535"; } } } grouping service_interface_pool_object { leaf name { description "Service interface pool name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list interface { key name; ordered-by user; description "Service interface name"; leaf name { description "(null)"; type interface-unit; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } grouping service_point_type { leaf name { description "Service point name"; type string; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf service-point-type { description "Service point type"; default "sip"; type enumeration { enum sip { description "(null)"; } } } container transport-details { presence "enable transport-details"; description "IP address, port number and transport-protocols for the service-point"; leaf port-number { description "Port number"; type uint32 { range "0 .. 65535"; } } leaf ip-address { description "IP address"; type ipaddr; } leaf tcp { description "Transport protocol - TCP"; type empty; } leaf udp { description "Transport protocol - UDP"; type empty; } leaf fqdn { description "Fully Qualified Domain Name"; type string { length "1 .. 128"; } } } leaf service-interface { description "Associated service interface"; type interface-unit; mandatory true; } container service-policies { uses service_policies_type; } leaf default-media-realm { description "Use this realm for allocating media resources for calls initiated to/from this service-point"; type string { length "1 .. 4"; } } } grouping service_policies_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list new-transaction-input-policies { description "New transaction input policy name"; type string; max-elements 10; } leaf-list new-transaction-output-policies { description "New transaction output policy name"; type string; max-elements 10; } leaf-list new-registration-input-policies { description "New registration input policy name"; type string; max-elements 10; } leaf-list new-call-usage-input-policies { description "New call usage input policy name"; type string; max-elements 10; } leaf-list new-call-usage-output-policies { description "New call usage output policy name"; type string; max-elements 10; } } grouping service_set_ipsec_vpn_options_object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list trusted-ca { description "List of trusted certificate authority profiles"; type string; } container local-gateway { description "Address and routing instance for local gateway"; leaf address { description "Local gateway address"; type ipaddr; mandatory true; } presence "enable local-gateway"; leaf routing-instance { description "Name of routing instance that hosts local gateway"; default "default"; type string; } } leaf ike-access-profile { description "IKE access profile for dynamic peers"; type string { length "1 .. 32"; } } leaf passive-mode-tunneling { description "No active IP packet checks before IPSec encapsulation"; type empty; } leaf clear-dont-fragment-bit { description "Clear the do not fragment bit"; type empty; } leaf copy-dont-fragment-bit { description "Set the do not fragment bit"; type empty; } leaf set-dont-fragment-bit { description "Copy the do not fragment bit"; type empty; } leaf tunnel-mtu { description "Maximum transmit packet size"; type uint32 { range "256 .. 9192"; } } leaf no-anti-replay { description "Disable the anti-replay check"; type empty; } leaf anti-replay-window-size { description "Size of the anti-replay window"; type uint32 { range "64 .. 4096"; } } } grouping service_set_syslog_object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list host { key name; ordered-by user; description "(null)"; max-elements 10; leaf name { description "Name of host to notify"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list contents { key name; description "(null)"; leaf name { description "Facility type"; type enumeration { enum services { description "Adaptive Services PIC"; } } } choice level { case case_1 { leaf any { description "All levels"; type empty; } } case case_2 { leaf emergency { description "Panic conditions"; type empty; } } case case_3 { leaf alert { description "Conditions that should be corrected immediately"; type empty; } } case case_4 { leaf critical { description "Critical conditions"; type empty; } } case case_5 { leaf error { description "Error conditions"; type empty; } } case case_6 { leaf warning { description "Warning messages"; type empty; } } case case_7 { leaf notice { description "Conditions that should be handled specially"; type empty; } } case case_8 { leaf info { description "Informational messages"; type empty; } } case case_9 { leaf none { description "No messages"; type empty; } } } } leaf facility-override { description "Alternate facility for logging to remote host"; type enumeration { enum authorization { description "Authorization system"; } enum daemon { description "Various system processes"; } enum ftp { description "FTP process"; } enum kernel { description "Kernel"; } enum user { description "User processes"; } enum local0 { description "Local logging option number 0"; } enum local1 { description "Local logging option number 1"; } enum local2 { description "Local logging option number 2"; } enum local3 { description "Local logging option number 3"; } enum local4 { description "Local logging option number 4"; } enum local5 { description "Local logging option number 5"; } enum local6 { description "Local logging option number 6"; } enum local7 { description "Local logging option number 7"; } } } leaf log-prefix { description "Prefix for all logging to this host"; type string { } } leaf port { description "UDP port for syslogd on the host"; type uint16 { range "1 .. 65535"; } } container class { description "Syslog messages classes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container session-logs { presence "enable session-logs"; description "Allow syslog messages for session events"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container open { presence "enable open"; description "Allow syslog messages for session open events"; } container close { presence "enable close"; description "Allow syslog messages for session close events"; } } container packet-logs { presence "enable packet-logs"; description "Allow syslog messages for packet related events"; } container stateful-firewall-logs { presence "enable stateful-firewall-logs"; description "Allow syslog messages for stateful firewall events"; } container alg-logs { presence "enable alg-logs"; description "Allow syslog messages for ALG events"; } container nat-logs { presence "enable nat-logs"; description "Allow syslog messages for NAT events"; } container ids-logs { presence "enable ids-logs"; description "Allow syslog messages for IDS events"; } container pcp-logs { presence "enable pcp-logs"; description "PCP logs"; container map { presence "enable map"; description "Allow syslog messages for PCP"; } container debug { presence "enable debug"; description "Allow PCP debug syslogs"; } } } leaf source-address { description "Use specified address as source address"; type ipv4addr; } } leaf message-rate-limit { description "Maximum syslog messages per second allowed from this interface. Applies per member if set at aggregate level"; units "messages per second"; type uint32 { range "0 .. 2147483647"; } } } grouping service_set_type { leaf name { description "Service set name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container service-identification { description "Service identification settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container service-id { description "Service ID settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container default { description "Default ID for packet content"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf payload { description "Identifier for all payload"; type uint32 { range "0 .. 4294967295"; } } } } container service-class { description "Service class settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice default_sc_or_sc_mirrors_si { case case_1 { leaf default { description "Default service class"; type uint16 { range "1 .. 4096"; } } } case case_2 { leaf use-service-id { description "Use service ID for unmapped service classes"; type empty; } } } list map { key name; description "Map of service IDs to service classes"; max-elements 1000; uses sid_sc_to_scid_map_type; } } list header-rule-sets { key name; ordered-by user; description "List of service identification rule sets"; max-elements 10; leaf name { description "(null)"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list heuristic-rule-sets { key name; ordered-by user; description "List of heuristic rule sets"; max-elements 10; leaf name { description "A heuristic rule set"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list redirect-map { key name; ordered-by user; description "Mapping service identifiers to redirect sets"; leaf name { description "A redirect set"; type string { length "1 .. 63"; } } leaf-list service-id { description "Service identifier to redirect for the given redirect set"; type string { length "1 .. 21"; } max-elements 1000; } } leaf default-header-redirect-set { description "Default header redirect set for traffic redirection"; type string { length "1 .. 63"; } } leaf default-uri-redirect-set { description "Default URI redirect set for traffic redirection"; type string { length "1 .. 63"; } } leaf enable-http-pipeline { description "Enable HTTP pipeline support"; type empty; } container enable-wtp-reassembly { presence "enable enable-wtp-reassembly"; description "Enable WTP reassembly"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf max-reassembled-packets { description "Maximum number of reassembled packets"; default "3"; type uint32 { range "0 .. 255"; } } leaf max-reassembled-bytes { description "Maximum number of reassembled bytes"; default "0"; type uint32 { range "0 .. 362100"; } } } leaf enable-ftp-path-tracking { description "Enable FTP path tracking"; type empty; } container signaling-classification { presence "enable signaling-classification"; description "Settings for classification of session set-up and tear-down"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container setup { presence "enable setup"; description "Settings for connection set-up"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf wsp-connection-oriented { description "Service identifier for WSP connection oriented traffic"; type uint32 { range "0 .. 4294967295"; } } leaf tcp { description "Service identifier for TCP traffic"; type uint32 { range "0 .. 4294967295"; } } } container teardown { presence "enable teardown"; description "Settings for connection tear-down"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf wsp-connection-oriented { description "Service identifier for WSP connection oriented traffic"; type uint32 { range "0 .. 4294967295"; } } leaf tcp { description "Service identifier for TCP traffic"; type uint32 { range "0 .. 4294967295"; } } } } container unescape-conversion { description "Unescape characters in URI before processing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf http { description "HTTP requests"; type empty; } leaf wsp { description "WSP requests"; type empty; } leaf rtsp { description "RTSP requests"; type empty; } leaf sip { description "SIP requests"; type empty; } } } } grouping services-ike { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list proposal { key name; ordered-by user; description "Define an IKE proposal"; uses ike-proposal; } list policy { key name; ordered-by user; description "Define an IKE policy"; uses svc-ike-policy; } } grouping services-ipsec { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list proposal { key name; ordered-by user; description "Define an IPSec proposal"; uses ipsec-proposal; } list policy { key name; ordered-by user; description "Define an IPSec policy"; uses ipsec-policy; } } grouping session_management_apn_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf exclude-dedicated-signaling { description "Exclude dedicated signaling from session management handling"; type empty; } container idle-timeout { description "Idle timeout settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-supervision { description "Don't allow idle supervision"; type empty; } container radius { description "Timeout settings based on RADIUS"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf use-timeout { description "Use idle timeout received from RADIUS"; type empty; } leaf no-supervision { description "Don't allow RADIUS-based idle supervision"; type empty; } leaf measurement-type { description "Point of reference for time measurement"; default "since-update"; type enumeration { enum since-creation { description "Relative to the PDP context creation time"; } enum since-update { description "Relative to the last PDP context update time"; } } } } container sgsn-plmn-id { description "Timeout settings based on SGSN PLMN IDs"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list plmn { key name; description "Timeout settings based on SGSN PLMN"; uses sgsn_plmn_id_idle_timeout_type; } leaf no-supervision { description "Don't allow idle supervision based on SGSN PLMN ID"; type empty; } } container roaming { description "Timeout settings based on roaming"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf timeout { description "Maximum context idle time, a multiple of 15"; units "minutes"; type uint32 { range "1 .. 525600"; } } leaf no-supervision { description "Don't allow roaming-based idle supervision"; type empty; } leaf measurement-type { description "Point of reference for time measurement"; default "since-update"; type enumeration { enum since-creation { description "Relative to the PDP context creation time"; } enum since-update { description "Relative to the last PDP context update time"; } } } } container charging-profile { description "Timeout settings based on charging profile"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container profile0 { description "Profile 0"; leaf timeout { description "Maximum consecutive idle minutes for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } presence "enable profile0"; } container profile1 { description "Profile 1"; leaf timeout { description "Maximum consecutive idle minutes for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } presence "enable profile1"; } container profile2 { description "Profile 2"; leaf timeout { description "Maximum consecutive idle minutes for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } presence "enable profile2"; } container profile3 { description "Profile 3"; leaf timeout { description "Maximum consecutive idle minutes for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } presence "enable profile3"; } container profile4 { description "Profile 4"; leaf timeout { description "Maximum consecutive idle minutes for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } presence "enable profile4"; } container profile5 { description "Profile 5"; leaf timeout { description "Maximum consecutive idle minutes for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } presence "enable profile5"; } container profile6 { description "Profile 6"; leaf timeout { description "Maximum consecutive idle minutes for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } presence "enable profile6"; } container profile7 { description "Profile 7"; leaf timeout { description "Maximum consecutive idle minutes for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } presence "enable profile7"; } container profile8 { description "Profile 8"; leaf timeout { description "Maximum consecutive idle minutes for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } presence "enable profile8"; } container profile9 { description "Profile 9"; leaf timeout { description "Maximum consecutive idle minutes for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } presence "enable profile9"; } container profile10 { description "Profile 10"; leaf timeout { description "Maximum consecutive idle minutes for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } presence "enable profile10"; } container profile11 { description "Profile 11"; leaf timeout { description "Maximum consecutive idle minutes for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } presence "enable profile11"; } container profile12 { description "Profile 12"; leaf timeout { description "Maximum consecutive idle minutes for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } presence "enable profile12"; } container profile13 { description "Profile 13"; leaf timeout { description "Maximum consecutive idle minutes for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } presence "enable profile13"; } container profile14 { description "Profile 14"; leaf timeout { description "Maximum consecutive idle minutes for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } presence "enable profile14"; } container profile15 { description "Profile 15"; leaf timeout { description "Maximum consecutive idle minutes for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } presence "enable profile15"; } leaf no-supervision { description "Don't allow session supervision based on charging profile"; type empty; } leaf measurement-type { description "Point of reference for time measurement"; default "since-update"; type enumeration { enum since-creation { description "Relative to the PDP context creation time"; } enum since-update { description "Relative to the last PDP context update time"; } } } } container default { description "Default timeout settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf timeout { description "Maximum continuous idle time for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } } leaf no-supervision { description "Don't allow default idle supervision"; type empty; } leaf measurement-type { description "Point of reference for time measurement"; default "since-update"; type enumeration { enum since-creation { description "Relative to the PDP context creation time"; } enum since-update { description "Relative to the last PDP context update time"; } } } } } container session-timeout { description "Session timeout settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-supervision { description "Don't allow session supervision"; type empty; } container radius { description "Timeout settings based on RADIUS"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf use-timeout { description "Use session timeout received from RADIUS"; type empty; } leaf no-supervision { description "Don't allow RADIUS-based session supervision"; type empty; } leaf measurement-type { description "Point of reference for time measurement"; default "since-update"; type enumeration { enum since-creation { description "Relative to the PDP context creation time"; } enum since-update { description "Relative to the last PDP context update time"; } } } } container sgsn-plmn-id { description "Timeout settings based on SGSN PLMN IDs"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list plmn { key name; description "Timeout settings based on SGSN PLMN"; uses sgsn_plmn_id_session_timeout_type; } leaf no-supervision { description "Don't allow session supervision based on SGSN PLMN ID"; type empty; } } container roaming { description "Timeout settings based on roaming"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } } leaf no-supervision { description "Don't allow roaming-based session supervision"; type empty; } leaf measurement-type { description "Point of reference for time measurement"; default "since-update"; type enumeration { enum since-creation { description "Relative to the PDP context creation time"; } enum since-update { description "Relative to the last PDP context update time"; } } } } container charging-profile { description "Timeout settings based on charging profile"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container profile0 { description "Profile 0"; leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } presence "enable profile0"; } container profile1 { description "Profile 1"; leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } presence "enable profile1"; } container profile2 { description "Profile 2"; leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } presence "enable profile2"; } container profile3 { description "Profile 3"; leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } presence "enable profile3"; } container profile4 { description "Profile 4"; leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } presence "enable profile4"; } container profile5 { description "Profile 5"; leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } presence "enable profile5"; } container profile6 { description "Profile 6"; leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } presence "enable profile6"; } container profile7 { description "Profile 7"; leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } presence "enable profile7"; } container profile8 { description "Profile 8"; leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } presence "enable profile8"; } container profile9 { description "Profile 9"; leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } presence "enable profile9"; } container profile10 { description "Profile 10"; leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } presence "enable profile10"; } container profile11 { description "Profile 11"; leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } presence "enable profile11"; } container profile12 { description "Profile 12"; leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } presence "enable profile12"; } container profile13 { description "Profile 13"; leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } presence "enable profile13"; } container profile14 { description "Profile 14"; leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } presence "enable profile14"; } container profile15 { description "Profile 15"; leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } presence "enable profile15"; } leaf no-supervision { description "Don't allow session supervision based on charging profile"; type empty; } leaf measurement-type { description "Point of reference for time measurement"; default "since-update"; type enumeration { enum since-creation { description "Relative to the PDP context creation time"; } enum since-update { description "Relative to the last PDP context update time"; } } } } container default { description "Default timeout settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } } leaf no-supervision { description "Don't allow default session supervision"; type empty; } leaf measurement-type { description "Point of reference for time measurement"; default "since-update"; type enumeration { enum since-creation { description "Relative to the PDP context creation time"; } enum since-update { description "Relative to the last PDP context update time"; } } } } } } grouping session_management_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf dedicated-signaling-pdp { description "Enable session management for dedicated signaling PDP context"; type empty; } container idle-timeout { description "Idle timeout settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Timeout settings based on RADIUS"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf use-timeout { description "Use idle timeout received from RADIUS"; type empty; } leaf measurement-type { description "Point of reference for time measurement"; default "since-update"; type enumeration { enum since-creation { description "Relative to the PDP context creation time"; } enum since-update { description "Relative to the last PDP context update time"; } } } } container sgsn-plmn-id { description "Timeout settings based on SGSN PLMN IDs"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list plmn { key name; description "Timeout settings based on SGSN PLMN"; uses sgsn_plmn_id_idle_timeout_type; } } container roaming { description "Timeout settings based on roaming"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf timeout { description "Maximum consecutive idle minutes for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } presence "enable roaming"; leaf measurement-type { description "Point of reference for time measurement"; default "since-update"; type enumeration { enum since-creation { description "Relative to the PDP context creation time"; } enum since-update { description "Relative to the last PDP context update time"; } } } } container charging-profile { description "Timeout settings based on charging profile"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container profile0 { description "Profile 0"; leaf timeout { description "Maximum consecutive idle minutes for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } presence "enable profile0"; } container profile1 { description "Profile 1"; leaf timeout { description "Maximum consecutive idle minutes for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } presence "enable profile1"; } container profile2 { description "Profile 2"; leaf timeout { description "Maximum consecutive idle minutes for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } presence "enable profile2"; } container profile3 { description "Profile 3"; leaf timeout { description "Maximum consecutive idle minutes for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } presence "enable profile3"; } container profile4 { description "Profile 4"; leaf timeout { description "Maximum consecutive idle minutes for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } presence "enable profile4"; } container profile5 { description "Profile 5"; leaf timeout { description "Maximum consecutive idle minutes for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } presence "enable profile5"; } container profile6 { description "Profile 6"; leaf timeout { description "Maximum consecutive idle minutes for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } presence "enable profile6"; } container profile7 { description "Profile 7"; leaf timeout { description "Maximum consecutive idle minutes for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } presence "enable profile7"; } container profile8 { description "Profile 8"; leaf timeout { description "Maximum consecutive idle minutes for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } presence "enable profile8"; } container profile9 { description "Profile 9"; leaf timeout { description "Maximum consecutive idle minutes for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } presence "enable profile9"; } container profile10 { description "Profile 10"; leaf timeout { description "Maximum consecutive idle minutes for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } presence "enable profile10"; } container profile11 { description "Profile 11"; leaf timeout { description "Maximum consecutive idle minutes for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } presence "enable profile11"; } container profile12 { description "Profile 12"; leaf timeout { description "Maximum consecutive idle minutes for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } presence "enable profile12"; } container profile13 { description "Profile 13"; leaf timeout { description "Maximum consecutive idle minutes for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } presence "enable profile13"; } container profile14 { description "Profile 14"; leaf timeout { description "Maximum consecutive idle minutes for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } presence "enable profile14"; } container profile15 { description "Profile 15"; leaf timeout { description "Maximum consecutive idle minutes for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } presence "enable profile15"; } leaf measurement-type { description "Point of reference for time measurement"; default "since-update"; type enumeration { enum since-creation { description "Relative to the PDP context creation time"; } enum since-update { description "Relative to the last PDP context update time"; } } } } container default { description "Default timeout settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf timeout { description "Maximum consecutive idle minutes for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } presence "enable default"; leaf measurement-type { description "Point of reference for time measurement"; default "since-update"; type enumeration { enum since-creation { description "Relative to the PDP context creation time"; } enum since-update { description "Relative to the last PDP context update time"; } } } } } container session-timeout { description "Session timeout settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container radius { description "Timeout settings based on RADIUS"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf use-timeout { description "Use session timeout received from RADIUS"; type empty; } leaf measurement-type { description "Point of reference for time measurement"; default "since-update"; type enumeration { enum since-creation { description "Relative to the PDP context creation time"; } enum since-update { description "Relative to the last PDP context update time"; } } } } container sgsn-plmn-id { description "Timeout settings based on SGSN PLMN IDs"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list plmn { key name; description "Timeout settings based on SGSN PLMN"; uses sgsn_plmn_id_session_timeout_type; } } container roaming { description "Timeout settings based on SGSN PLMN IDs"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } presence "enable roaming"; leaf measurement-type { description "Point of reference for time measurement"; default "since-update"; type enumeration { enum since-creation { description "Relative to the PDP context creation time"; } enum since-update { description "Relative to the last PDP context update time"; } } } } container charging-profile { description "Timeout settings based on charging profile"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container profile0 { description "Profile 0"; leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } presence "enable profile0"; } container profile1 { description "Profile 1"; leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } presence "enable profile1"; } container profile2 { description "Profile 2"; leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } presence "enable profile2"; } container profile3 { description "Profile 3"; leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } presence "enable profile3"; } container profile4 { description "Profile 4"; leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } presence "enable profile4"; } container profile5 { description "Profile 5"; leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } presence "enable profile5"; } container profile6 { description "Profile 6"; leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } presence "enable profile6"; } container profile7 { description "Profile 7"; leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } presence "enable profile7"; } container profile8 { description "Profile 8"; leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } presence "enable profile8"; } container profile9 { description "Profile 9"; leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } presence "enable profile9"; } container profile10 { description "Profile 10"; leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } presence "enable profile10"; } container profile11 { description "Profile 11"; leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } presence "enable profile11"; } container profile12 { description "Profile 12"; leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } presence "enable profile12"; } container profile13 { description "Profile 13"; leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } presence "enable profile13"; } container profile14 { description "Profile 14"; leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } presence "enable profile14"; } container profile15 { description "Profile 15"; leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } presence "enable profile15"; } leaf measurement-type { description "Point of reference for time measurement"; default "since-update"; type enumeration { enum since-creation { description "Relative to the PDP context creation time"; } enum since-update { description "Relative to the last PDP context update time"; } } } } container default { description "Default timeout settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } presence "enable default"; leaf measurement-type { description "Point of reference for time measurement"; default "since-update"; type enumeration { enum since-creation { description "Relative to the PDP context creation time"; } enum since-update { description "Relative to the last PDP context update time"; } } } } } } grouping sfw_addr_object { leaf name { description "Match IP address"; type string; } leaf except { description "Match address not in this prefix"; type empty; } } grouping sfw_match_object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list source-address { key name; ordered-by user; description "Match IP source address"; uses sfw_addr_object; } list destination-address { key name; ordered-by user; description "Match IP destination address"; uses sfw_addr_object; } container destination-port { presence "enable destination-port"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice port_choice { case case_1 { container range { description "Range of ports"; leaf low { description "Lower limit of port range"; type uint16 { range "1 .. 65535"; } mandatory true; } presence "enable range"; leaf high { description "Upper limit of port range"; type uint16 { range "1 .. 65535"; } mandatory true; } } } } } list source-address-range { key "low high"; ordered-by user; description "Match IP source address range"; leaf low { description "Lower limit of address range"; type ipaddr; } leaf high { description "Upper limit of address range"; type ipaddr; } leaf except { description "Match address not in this prefix"; type empty; } } list source-prefix-list { key name; ordered-by user; description "One or more named lists of source prefixes to match"; leaf name { description "Name of prefix list to match against"; type string; } leaf except { description "Name of prefix list not to match against"; type empty; } } list destination-address-range { key "low high"; ordered-by user; description "Match IP destination address range"; leaf low { description "Lower limit of address range"; type ipaddr; } leaf high { description "Upper limit of address range"; type ipaddr; } leaf except { description "Match address not in this prefix"; type empty; } } list destination-prefix-list { key name; ordered-by user; description "One or more named lists of destination prefixes to match"; leaf name { description "Name of prefix list to match against"; type string; } leaf except { description "Name of prefix list not to match against"; type empty; } } leaf-list applications { description "Match one or more applications"; type string; } list application-sets { key name; ordered-by user; description "Match one or more application sets"; leaf name { description "(null)"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } grouping sfw_rule_object { leaf name { description "Rule name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf match-direction { description "Direction for which the rule match is applied"; type enumeration { enum input { description "Match on input to interface"; } enum output { description "Match on output from interface"; } enum input-output { description "Match on input to or output from interface"; } } mandatory true; } list term { key name; ordered-by user; description "Define a stateful firewall term"; leaf name { description "Term name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Define match criteria"; uses sfw_match_object; } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice designation { case case_1 { leaf accept { description "Accept the packet"; type empty; } } case case_2 { container discard { presence "enable discard"; description "Discard the packet"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } case case_3 { leaf reject { description "Reject the packet"; type empty; } } } leaf-list allow-ip-options { description "(null)"; type string; } leaf syslog { description "System log information about the packet"; type empty; } } } } grouping sgsn_address_type { leaf name { description "SGSN address or address prefix"; type ipv4prefix; } leaf rat-type { description "SGSN radio access type (RAT)"; type enumeration { enum utran { description "WCDMA/UMTS Terrestrial radio access network"; } enum geran { description "GSM/EDGE radio access network"; } enum wlan { description "Wireless local area network"; } } } } grouping sgsn_plmn_id_idle_timeout_type { leaf name { description "Public Land Mobile Network name"; type string { length "1 .. 20"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list plmn-id { key name; description "PLMN ID of the SGSN"; leaf name { description "SGSN Public Land Mobile Network identifier"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf timeout { description "Maximum continuous idle time for a context"; units "minutes"; type uint32 { range "1 .. 525600"; } mandatory true; } leaf measurement-type { description "Point of reference for time measurement"; default "since-update"; type enumeration { enum since-creation { description "Relative to the PDP context creation time"; } enum since-update { description "Relative to the last PDP context update time"; } } } } } grouping sgsn_plmn_id_session_timeout_type { leaf name { description "Public Land Mobile Network name"; type string { length "1 .. 20"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list plmn-id { key name; description "PLMN ID of the SGSN"; leaf name { description "SGSN Public Land Mobile Network identifier"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf timeout { description "Maximum duration for a context"; units "minutes"; type uint32 { range "15 .. 1440"; } mandatory true; } leaf measurement-type { description "Point of reference for time measurement"; default "since-update"; type enumeration { enum since-creation { description "Relative to the PDP context creation time"; } enum since-update { description "Relative to the last PDP context update time"; } } } } } grouping sgsn_type { leaf name { description "SGSN address or address prefix"; type ipv4prefix; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf home-plmn { description "SGSN is within the home PLMN"; type empty; } container gtp { description "GTP configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-path-management { description "SGSN does not support GTP path management"; type empty; } } } grouping sid_dns_rule_object { leaf name { description "Rule name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list term { key name; ordered-by user; description "Define a service identification term"; max-elements 128; leaf name { description "Term name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Define match criteria"; uses sid_dns_match_object; } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf payload { description "Identifier for all payload"; type uint32 { range "0 .. 4294967295"; } } leaf aggregated-volume { description "Volume type reported for aggregated charging"; default "bearer"; type enumeration { enum bearer { description "Count volume for bearer level"; } enum application { description "Count volume for application level"; } } } } } } grouping sid_dns_match_object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container dns { presence "enable dns"; description "Match DNS sessions"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container query-name { description "Match query name"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf is { description "Exact match"; type string { length "1 .. 256"; } } leaf-list not-is { description "Exclude exact match"; type string { length "1 .. 256"; } } leaf starts-with { description "Beginning matches"; type string { length "1 .. 256"; } } leaf-list not-starts-with { description "Beginning doesn't match"; type string { length "1 .. 256"; } } leaf ends-with { description "End matches"; type string { length "1 .. 256"; } } leaf-list not-ends-with { description "End doesn't match"; type string { length "1 .. 256"; } } leaf-list contains { description "Matches a substring"; type string { length "1 .. 256"; } } leaf-list not-contains { description "Doesn't match a substring"; type string { length "1 .. 256"; } } } container answer-name { presence "enable answer-name"; description "Match answer name"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf case { description "Consider case while processing"; type empty; } leaf-list contains { description "Matches a substring"; type string { length "1 .. 256"; } } leaf-list not-contains { description "Doesn't match a substring"; type string { length "1 .. 256"; } } } } } grouping sid_ftp_rule_object { leaf name { description "Rule name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list term { key name; ordered-by user; description "Define a service identification term"; max-elements 128; leaf name { description "Term name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Define match criteria"; uses sid_ftp_match_object; } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf payload { description "Identifier for all payload"; type uint32 { range "0 .. 4294967295"; } } leaf aggregated-volume { description "Volume type reported for aggregated charging"; default "bearer"; type enumeration { enum bearer { description "Count volume for bearer level"; } enum application { description "Count volume for application level"; } } } container activate-event-tracking { presence "enable activate-event-tracking"; description "Settings for event tracking"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } grouping sid_ftp_match_object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container ftp { presence "enable ftp"; description "Match FTP sessions"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container filename { presence "enable filename"; description "Match filename"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf case { description "Consider case while processing"; type empty; } leaf-list contains { description "Matches a substring"; type string { length "1 .. 256"; } } leaf-list not-contains { description "Doesn't match a substring"; type string { length "1 .. 256"; } } } container operation { description "Limit match to operation being performed"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf retrieve { description "Apply rule for RETR operation"; type empty; } leaf store { description "Apply rule for STORE operation"; type empty; } } } } grouping sid_header_rule_object { leaf name { description "Rule name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list term { key name; ordered-by user; description "Define a service identification term"; max-elements 128; leaf name { description "Term name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Define match criteria"; uses sid_header_match_object; } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container service-id { description "Override service ID"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf payload { description "Identifier for payload bytes"; type uint32 { range "0 .. 4294967295"; } } } container protocol-inspection { description "Protocol inspection settings for flow"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice rule_set { case case_1 { leaf http-wsp-rule-set { description "Apply a HTTS/WSP rule set for transactions"; type string { } } } case case_2 { leaf smtp-rule-set { description "Apply an SMTP rule set for transactions"; type string { } } } case case_3 { leaf pop3-rule-set { description "Apply a POP3 rule set for transactions"; type string { } } } case case_4 { leaf ftp-rule-set { description "Apply an FTP rule set for transactions"; type string { } } } case case_5 { leaf tftp-rule-set { description "Apply an TFTP rule set for transactions"; type string { } } } case case_6 { leaf rtsp-rule-set { description "Apply an FTP rule set for transactions"; type string { } } } case case_7 { leaf sip-rule-set { description "Apply an FTP rule set for transactions"; type string { } } } case case_8 { leaf msn-rule-set { description "Apply an MSN rule set for transactions"; type string { } } } case case_9 { leaf dns-rule-set { description "Apply a DNS rule set for transactions"; type string { } } } } } leaf redirect-unauthorized { description "Redirect the flow if not authorized"; type empty; } } } } grouping sid_header_match_object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list ms-prefix { description "Match MS prefix"; type ipv4prefix; max-elements 10; } leaf-list ms-address { description "Match MS address"; type ipv4addr; max-elements 10; } leaf-list network-prefix { description "Match network prefix"; type ipv4prefix; max-elements 10; } leaf-list network-address { description "Match network address"; type ipv4addr; max-elements 10; } leaf-list network-port { description "Match network port"; type string; max-elements 10; } leaf-list ms-port { description "Match MS port"; type string; max-elements 10; } leaf-list protocol { description "Match protocol type"; type string; max-elements 8; } } grouping sid_heuristic_rule_object { leaf name { description "Rule name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list term { key name; ordered-by user; description "Define a service identification term"; max-elements 128; leaf name { description "Term name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Define match criteria"; uses sid_heuristic_match_object; } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf payload { description "Identifier for all payload"; type uint32 { range "0 .. 4294967295"; } } } } } grouping sid_heuristic_match_object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list protocol { key name; ordered-by user; description "Match protocol sessions"; max-elements 1; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } grouping sid_http_wsp_rule_object { leaf name { description "Rule name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list term { key name; ordered-by user; description "Define a service identification term"; max-elements 128; leaf name { description "Term name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Define match criteria"; uses sid_http_wsp_match_object; } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf payload { description "Identifier for all payload"; type uint32 { range "0 .. 4294967295"; } } leaf redirect-unauthorized { description "Redirect the flow if not authorized"; type empty; } leaf aggregated-volume { description "Volume type reported for aggregated charging"; default "bearer"; type enumeration { enum bearer { description "Count volume for bearer level"; } enum application { description "Count volume for application level"; } } } container activate-event-tracking { presence "enable activate-event-tracking"; description "Settings for event tracking"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } grouping sid_http_wsp_match_object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container uri { description "Match URI settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container include-uri-handling { presence "enable include-uri-handling"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf case { description "Consider case while processing"; type empty; } } leaf is { description "Exact match"; type string { length "1 .. 256"; } } leaf-list not-is { description "Exclude exact match"; type string { length "1 .. 256"; } } leaf starts-with { description "Beginning matches"; type string { length "1 .. 256"; } } leaf-list not-starts-with { description "Beginning doesn't match"; type string { length "1 .. 256"; } } leaf ends-with { description "End matches"; type string { length "1 .. 256"; } } leaf-list not-ends-with { description "End doesn't match"; type string { length "1 .. 256"; } } leaf-list contains { description "Matches a substring"; type string { length "1 .. 256"; } } leaf-list not-contains { description "Doesn't match a substring"; type string { length "1 .. 256"; } } } container http { presence "enable http"; description "Match HTTP sessions"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container operation { description "Limit match to operation being performed"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf delete { description "Apply rule for delete"; type empty; } leaf get { description "Apply rule for get"; type empty; } leaf head { description "Apply rule for head"; type empty; } leaf options { description "Apply rule for options"; type empty; } leaf post { description "Apply rule for post"; type empty; } leaf put { description "Apply rule for put"; type empty; } leaf trace { description "Apply rule for trace"; type empty; } leaf connect { description "Apply rule for connect"; type empty; } } container header { description "HTTP header options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container host { description "HTTP 'host' header settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf is { description "Exact match"; type string { length "1 .. 256"; } } leaf-list not-is { description "Exclude exact match"; type string { length "1 .. 256"; } } leaf starts-with { description "Beginning matches"; type string { length "1 .. 256"; } } leaf-list not-starts-with { description "Beginning doesn't match"; type string { length "1 .. 256"; } } leaf ends-with { description "End matches"; type string { length "1 .. 256"; } } leaf-list not-ends-with { description "End doesn't match"; type string { length "1 .. 256"; } } leaf-list contains { description "Matches a substring"; type string { length "1 .. 256"; } } leaf-list not-contains { description "Doesn't match a substring"; type string { length "1 .. 256"; } } leaf case { description "Consider case while processing"; type empty; } } } container content-type { description "Content type contained in http body"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf case { description "Consider case while processing"; type empty; } leaf is { description "Exact match"; type string { length "1 .. 256"; } } leaf-list not-is { description "Exclude exact match"; type string { length "1 .. 256"; } } leaf starts-with { description "Beginning matches"; type string { length "1 .. 256"; } } leaf-list not-starts-with { description "Beginning doesn't match"; type string { length "1 .. 256"; } } leaf ends-with { description "End matches"; type string { length "1 .. 256"; } } leaf-list not-ends-with { description "End doesn't match"; type string { length "1 .. 256"; } } leaf-list contains { description "Matches a substring"; type string { length "1 .. 256"; } } leaf-list not-contains { description "Doesn't match a substring"; type string { length "1 .. 256"; } } } } container wsp { presence "enable wsp"; description "Match WSP sessions"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container operation { description "Limit match to operation being performed"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf delete { description "Apply rule for delete"; type empty; } leaf get { description "Apply rule for get"; type empty; } leaf head { description "Apply rule for head"; type empty; } leaf options { description "Apply rule for options"; type empty; } leaf post { description "Apply rule for post"; type empty; } leaf put { description "Apply rule for put"; type empty; } leaf trace { description "Apply rule for trace"; type empty; } leaf connect { description "Apply rule for connect"; type empty; } } container content-type { description "Content type contained in wsp body"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf case { description "Consider case while processing"; type empty; } leaf is { description "Exact match"; type string { length "1 .. 256"; } } leaf-list not-is { description "Exclude exact match"; type string { length "1 .. 256"; } } leaf starts-with { description "Beginning matches"; type string { length "1 .. 256"; } } leaf-list not-starts-with { description "Beginning doesn't match"; type string { length "1 .. 256"; } } leaf ends-with { description "End matches"; type string { length "1 .. 256"; } } leaf-list not-ends-with { description "End doesn't match"; type string { length "1 .. 256"; } } leaf-list contains { description "Matches a substring"; type string { length "1 .. 256"; } } leaf-list not-contains { description "Doesn't match a substring"; type string { length "1 .. 256"; } } } } container mms { presence "enable mms"; description "Match MMS sessions"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container mms-send { presence "enable mms-send"; description "Settings for send operation"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container any-mms-destination { presence "enable any-mms-destination"; description "Criteria for destinations"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf case { description "Consider case while processing"; type empty; } leaf-list contains { description "Matches a substring"; type string { length "1 .. 256"; } } leaf-list not-contains { description "Doesn't match a substring"; type string { length "1 .. 256"; } } } } container mms-retrieve { presence "enable mms-retrieve"; description "Settings for retrieve operation"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container mm-origin { presence "enable mm-origin"; description "Originator of MMS"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf case { description "Consider case while processing"; type empty; } leaf is { description "Exact match"; type string { length "1 .. 256"; } } leaf-list not-is { description "Exclude exact match"; type string { length "1 .. 256"; } } leaf starts-with { description "Beginning matches"; type string { length "1 .. 256"; } } leaf-list not-starts-with { description "Beginning doesn't match"; type string { length "1 .. 256"; } } leaf ends-with { description "End matches"; type string { length "1 .. 256"; } } leaf-list not-ends-with { description "End doesn't match"; type string { length "1 .. 256"; } } leaf-list contains { description "Matches a substring"; type string { length "1 .. 256"; } } leaf-list not-contains { description "Doesn't match a substring"; type string { length "1 .. 256"; } } } } leaf mms-notification { description "Match notification operation"; type empty; } leaf mms-forward { description "Match forward operation"; type empty; } leaf mms-acknowledge { description "Match acknowledge operation"; type empty; } leaf mms-read-report { description "Match read-report operation"; type empty; } } } grouping sid_msn_rule_object { leaf name { description "Rule name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list term { key name; ordered-by user; description "Define a service identification term"; max-elements 128; leaf name { description "Term name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Define match criteria"; uses sid_msn_match_object; } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf payload { description "Identifier for all payload"; type uint32 { range "0 .. 4294967295"; } } leaf aggregated-volume { description "Volume type reported for aggregated charging"; default "bearer"; type enumeration { enum bearer { description "Count volume for bearer level"; } enum application { description "Count volume for application level"; } } } container activate-event-tracking { presence "enable activate-event-tracking"; description "Settings for event tracking"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } grouping sid_msn_match_object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container msn { presence "enable msn"; description "Match MSN sessions"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } grouping sid_pop3_rule_object { leaf name { description "Rule name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list term { key name; ordered-by user; description "Define a service identification term"; max-elements 128; leaf name { description "Term name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Define match criteria"; uses sid_pop3_match_object; } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf payload { description "Identifier for all payload"; type uint32 { range "0 .. 4294967295"; } } leaf aggregated-volume { description "Volume type reported for aggregated charging"; default "bearer"; type enumeration { enum bearer { description "Count volume for bearer level"; } enum application { description "Count volume for application level"; } } } container activate-event-tracking { presence "enable activate-event-tracking"; description "Settings for event tracking"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } grouping sid_pop3_match_object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container pop3 { presence "enable pop3"; description "Match POP3 sessions"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container user { presence "enable user"; description "Match user"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf case { description "Consider case while processing"; type empty; } leaf is { description "Exact match"; type string { length "1 .. 256"; } } leaf-list not-is { description "Exclude exact match"; type string { length "1 .. 256"; } } leaf starts-with { description "Beginning matches"; type string { length "1 .. 256"; } } leaf-list not-starts-with { description "Beginning doesn't match"; type string { length "1 .. 256"; } } leaf ends-with { description "End matches"; type string { length "1 .. 256"; } } leaf-list not-ends-with { description "End doesn't match"; type string { length "1 .. 256"; } } leaf-list contains { description "Matches a substring"; type string { length "1 .. 256"; } } leaf-list not-contains { description "Doesn't match a substring"; type string { length "1 .. 256"; } } } container operation { description "Limit match to operation being performed"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf retr { description "Apply rule for retr single email operation"; type empty; } leaf top { description "Apply rule for get email header operation"; type empty; } leaf list { description "Apply rule for list server content operation"; type empty; } } } } grouping sid_rtsp_rule_object { leaf name { description "Rule name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list term { key name; ordered-by user; description "Define a service identification term"; max-elements 128; leaf name { description "Term name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Define match criteria"; uses sid_rtsp_match_object; } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf payload { description "Identifier for all payload"; type uint32 { range "0 .. 4294967295"; } } leaf aggregated-volume { description "Volume type reported for aggregated charging"; default "bearer"; type enumeration { enum bearer { description "Count volume for bearer level"; } enum application { description "Count volume for application level"; } } } container activate-event-tracking { presence "enable activate-event-tracking"; description "Settings for event tracking"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } grouping sid_rtsp_match_object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container rtsp { presence "enable rtsp"; description "Match RTSP sessions"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container uri { description "URI settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container include-uri-handling { presence "enable include-uri-handling"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf case { description "Consider case while processing"; type empty; } } leaf is { description "Exact match"; type string { length "1 .. 256"; } } leaf-list not-is { description "Exclude exact match"; type string { length "1 .. 256"; } } leaf starts-with { description "Beginning matches"; type string { length "1 .. 256"; } } leaf-list not-starts-with { description "Beginning doesn't match"; type string { length "1 .. 256"; } } leaf ends-with { description "End matches"; type string { length "1 .. 256"; } } leaf-list not-ends-with { description "End doesn't match"; type string { length "1 .. 256"; } } leaf-list contains { description "Matches a substring"; type string { length "1 .. 256"; } } leaf-list not-contains { description "Doesn't match a substring"; type string { length "1 .. 256"; } } } } } grouping sid_sc_to_scid_map_type { leaf name { description "Service class identifier"; type uint16 { range "1 .. 4096"; } } leaf-list service-id { description "Service identifier for service class"; type string { length "1 .. 9"; } max-elements 1000; } } grouping sid_sip_rule_object { leaf name { description "Rule name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list term { key name; ordered-by user; description "Define a service identification term"; max-elements 128; leaf name { description "Term name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Define match criteria"; uses sid_sip_match_object; } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf payload { description "Identifier for all payload"; type uint32 { range "0 .. 4294967295"; } } leaf aggregated-volume { description "Volume type reported for aggregated charging"; default "bearer"; type enumeration { enum bearer { description "Count volume for bearer level"; } enum application { description "Count volume for application level"; } } } container activate-event-tracking { presence "enable activate-event-tracking"; description "Settings for event tracking"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } grouping sid_sip_match_object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container sip { presence "enable sip"; description "Match SIP sessions"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container request-uri { description "URI settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container include-uri-handling { presence "enable include-uri-handling"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf case { description "Consider case while processing"; type empty; } } leaf is { description "Exact match"; type string { length "1 .. 256"; } } leaf-list not-is { description "Exclude exact match"; type string { length "1 .. 256"; } } leaf starts-with { description "Beginning matches"; type string { length "1 .. 256"; } } leaf-list not-starts-with { description "Beginning doesn't match"; type string { length "1 .. 256"; } } leaf ends-with { description "End matches"; type string { length "1 .. 256"; } } leaf-list not-ends-with { description "End doesn't match"; type string { length "1 .. 256"; } } leaf-list contains { description "Matches a substring"; type string { length "1 .. 256"; } } leaf-list not-contains { description "Doesn't match a substring"; type string { length "1 .. 256"; } } } container response-code { description "Response code settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list is { description "Exact match"; type string { length "1 .. 7"; } } } container via { description "Via settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container include-uri-handling { presence "enable include-uri-handling"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf case { description "Consider case while processing"; type empty; } } leaf starts-with { description "Beginning matches"; type string { length "1 .. 256"; } } leaf-list not-starts-with { description "Beginning doesn't match"; type string { length "1 .. 256"; } } leaf ends-with { description "End matches"; type string { length "1 .. 256"; } } leaf-list not-ends-with { description "End doesn't match"; type string { length "1 .. 256"; } } leaf-list contains { description "Matches a substring"; type string { length "1 .. 256"; } } leaf-list not-contains { description "Doesn't match a substring"; type string { length "1 .. 256"; } } } } } grouping sid_smtp_rule_object { leaf name { description "Rule name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list term { key name; ordered-by user; description "Define a service identification term"; max-elements 128; leaf name { description "Term name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Define match criteria"; uses sid_smtp_match_object; } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf payload { description "Identifier for all payload"; type uint32 { range "0 .. 4294967295"; } } leaf aggregated-volume { description "Volume type reported for aggregated charging"; default "bearer"; type enumeration { enum bearer { description "Count volume for bearer level"; } enum application { description "Count volume for application level"; } } } container activate-event-tracking { presence "enable activate-event-tracking"; description "Settings for event tracking"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } } grouping sid_smtp_match_object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container smtp { presence "enable smtp"; description "Match SMTP sessions"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container sender { presence "enable sender"; description "Match smtp sender"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf case { description "Consider case while processing"; type empty; } leaf is { description "Exact match"; type string { length "1 .. 256"; } } leaf-list not-is { description "Exclude exact match"; type string { length "1 .. 256"; } } leaf starts-with { description "Beginning matches"; type string { length "1 .. 256"; } } leaf-list not-starts-with { description "Beginning doesn't match"; type string { length "1 .. 256"; } } leaf ends-with { description "End matches"; type string { length "1 .. 256"; } } leaf-list not-ends-with { description "End doesn't match"; type string { length "1 .. 256"; } } leaf-list contains { description "Matches a substring"; type string { length "1 .. 256"; } } leaf-list not-contains { description "Doesn't match a substring"; type string { length "1 .. 256"; } } } } } grouping sid_tftp_rule_object { leaf name { description "Rule name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list term { key name; ordered-by user; description "Define a service identification term"; max-elements 128; leaf name { description "Term name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Define match criteria"; uses sid_tftp_match_object; } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf payload { description "Identifier for all payload"; type uint32 { range "0 .. 4294967295"; } } leaf aggregated-volume { description "Volume type reported for aggregated charging"; default "bearer"; type enumeration { enum bearer { description "Count volume for bearer level"; } enum application { description "Count volume for application level"; } } } } } } grouping sid_tftp_match_object { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container tftp { presence "enable tftp"; description "Match TFTP sessions"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container filename { presence "enable filename"; description "Match filename"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf case { description "Consider case while processing"; type empty; } leaf is { description "Exact match"; type string { length "1 .. 256"; } } leaf-list not-is { description "Exclude exact match"; type string { length "1 .. 256"; } } leaf starts-with { description "Beginning matches"; type string { length "1 .. 256"; } } leaf-list not-starts-with { description "Beginning doesn't match"; type string { length "1 .. 256"; } } leaf ends-with { description "End matches"; type string { length "1 .. 256"; } } leaf-list not-ends-with { description "End doesn't match"; type string { length "1 .. 256"; } } leaf-list contains { description "Matches a substring"; type string { length "1 .. 256"; } } leaf-list not-contains { description "Doesn't match a substring"; type string { length "1 .. 256"; } } } container operation { description "Limit match to operation being performed"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf read-request { description "Apply rule for read-request operation"; type empty; } leaf write-request { description "Apply rule for write-request operation"; type empty; } } } } grouping sid_to_rg_map_type { leaf name { description "Rating group identifier"; type uint32 { range "1 .. 4294967295"; } } leaf-list service-id { description "Service identifier for rating group"; type string { length "1 .. 21"; } max-elements 512; } } grouping signaling-realm { description "Signaling realm"; leaf name { description "Realm name"; type string; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } grouping sip_timers_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf inactive-call { description "Maximum time for signaling inactivity"; default "86400"; units "seconds"; type uint32 { range "300 .. 86400"; } } leaf timer-c { description "Maximum time to wait for final response on invite"; default "180"; units "seconds"; type uint32 { range "180 .. 300"; } } } grouping sm-ippool-group { description "Address pool group configuration"; leaf name { description "Address pool group name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list pools { key name; ordered-by user; description "(null)"; uses sm-ippool-group-pools; } } grouping sm-ippool-group-pools { leaf name { description "Address pool name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } grouping sm-ippool-pool { description "Address pool configuration"; leaf name { description "Address pool name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf service-mode { description "Service mode"; type enumeration { enum maintenance { description "Maintenance mode"; } } } container family { presence "enable family"; description "Address family"; choice family_type { case case_1 { container inet { presence "enable inet"; description "IPv4 address pool configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list network { key name; ordered-by user; description "Specify IPv4 network prefix"; leaf name { description "IPv4 network prefix"; type ipv4prefix-only; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf external-assigned { description "Assigned by an external authority"; type empty; } leaf allocation-prefix-length { description "Size of address allocation block"; type uint8 { range "22 .. 32"; } } list range { key name; ordered-by user; description "Specify ranges within the prefix"; leaf name { description "Range name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf low { description "Lower limit of the range"; type ipv4addr; mandatory true; } leaf high { description "Upper limit of the range"; type ipv4addr; mandatory true; } leaf external-assigned { description "Assigned by an external authority"; type empty; } } } } } case case_2 { container inet6 { presence "enable inet6"; description "IPv6 address pool configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list network { key name; ordered-by user; description "Specify IPv6 network prefix"; leaf name { description "IPv6 network prefix"; type ipv6prefix-only; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf external-assigned { description "Assigned by an external authority"; type empty; } leaf allocation-prefix-length { description "Size of address allocation block"; type uint8 { range "54 .. 64"; } } list range { key name; ordered-by user; description "Specify ranges within the prefix"; leaf name { description "Range name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf low { description "Lower limit of the range"; type ipv6prefix-only; mandatory true; } leaf high { description "Upper limit of the range"; type ipv6prefix-only; mandatory true; } leaf external-assigned { description "Addresses in this range are assigned to the client by an external authority"; type empty; } } } } } } } leaf ageing-window { description "Time in sec when the address should not be re-used"; default "2"; units "seconds"; type uint16 { range "1 .. 65535"; } } leaf pool-prefetch-threshold { description "Pool usage threshold to prefetch more addresses"; default "80"; units "percent"; type uint8 { range "1 .. 100"; } } leaf pool-snmp-trap-threshold { description "Pool usage threshold to generate SNMP trap"; default "80"; units "percent"; type uint8 { range "1 .. 100"; } } leaf default-pool { description "Pool usage as one of default pools or APN(s) specific"; type empty; } } grouping smid-type { description "Subscriber management configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Subscriber management trace options"; uses smid-traceoptions-type; } container maintain-subscriber { description "Options to maintain subscriber"; uses smid-maintain-subscriber-type; } leaf gres-route-flush-delay { description "Delay flushing routes after RE switchover"; type empty; } container enforce-strict-scale-limit-license { presence "enable enforce-strict-scale-limit-license"; description "Options to enforce strict scale limit license"; } } grouping smid-maintain-subscriber-type { description "Maintain subscriber options for subscriber management"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf interface-delete { description "Maintain subscriber on interface delete events"; type empty; } } grouping smid-traceoptions-type { description "Trace options for Subscriber management"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Subscriber management replication operations to include in debugging trace"; leaf name { description "(null)"; type enumeration { enum database { description "Database operations"; } enum ui { description "User Interface operations"; } enum general { description "Miscellaneous operations"; } enum session-db { description "Session database operations"; } enum server { description "Server operations"; } enum issu { description "ISSU operations"; } enum all { description "All operations"; } } } } } grouping smihelperd-type { description "Subscriber management helper configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Subscriber management helper trace options"; uses smihelperd-traceoptions-type; } } grouping smihelperd-traceoptions-type { description "Trace options for Subscriber management helper"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Subscriber management replication operations to include in debugging trace"; leaf name { description "(null)"; type enumeration { enum sdb { description "SDB operations"; } enum general { description "Miscellaneous operations"; } enum ui { description "User Interface operations"; } enum snmp { description "SNMP operations"; } enum all { description "All operations"; } } } } } grouping smpl-analyzer-type { leaf name { description "Analyzer name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container input { description "Ports and VLANs to monitor"; uses smpl-analyzer-input-type; } container output { description "Outgoing port or VLAN for mirrored packets"; uses smpl-analyzer-output-type; } } grouping smpl-analyzer-input-type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf rate { description "Ratio of packets to be sampled (1 out of N)"; type uint32 { range "1 .. 65535"; } } leaf maximum-packet-length { description "Maximum length of the mirrored packet"; units "bytes"; type uint32 { range "0 .. 9216"; } } container ingress { description "Ports and VLANs to monitor incoming traffic"; uses smpl-analyzer-ingress-type; } container egress { description "Ports and VLANs to monitor outgoing traffic"; uses smpl-analyzer-egress-type; } } grouping smpl-analyzer-egress-type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list interface { key name; ordered-by user; description "Port to monitor outgoing traffic"; uses analyzer-egress-interface-type; } list routing-instance { key name; description "Routing instances"; uses analyzer-egress-routing-instance-type; } list vlan { key name; ordered-by user; description "VLAN to monitor outgoing traffic"; uses analyzer-egress-vlan-type; } list bridge-domain { key name; ordered-by user; description "Bridge-domain to monitor outgoing traffic"; uses analyzer-egress-bridge-domain-type; } } grouping analyzer-egress-bridge-domain-type { leaf name { description "Bridge domain name, VLAN id or VLAN range string"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } grouping analyzer-egress-interface-type { leaf name { description "Logical interface name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } grouping analyzer-egress-routing-instance-type { leaf name { description "Routing instance name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list vlan { key name; ordered-by user; description "VLAN to monitor outgoing traffic"; uses analyzer-egress-vlan-type; } list bridge-domain { key name; ordered-by user; description "Bridge-domain to monitor outgoing traffic"; uses analyzer-egress-bridge-domain-type; } } grouping analyzer-egress-vlan-type { leaf name { description "VLAN name, VLAN id or VLAN range string"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } grouping smpl-analyzer-ingress-type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list interface { key name; ordered-by user; description "Port to monitor incoming traffic"; uses analyzer-ingress-interface-type; } list routing-instance { key name; description "Routing instances"; uses analyzer-ingress-routing-instance-type; } list vlan { key name; ordered-by user; description "VLAN to monitor incoming traffic"; uses analyzer-ingress-vlan-type; } list bridge-domain { key name; ordered-by user; description "Bridge-domain to monitor incoming traffic"; uses analyzer-ingress-bridge-domain-type; } } grouping analyzer-ingress-bridge-domain-type { leaf name { description "Bridge domain name, VLAN id or VLAN range string"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } grouping analyzer-ingress-interface-type { leaf name { description "Logical interface name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } grouping analyzer-ingress-routing-instance-type { leaf name { description "Routing instance name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list vlan { key name; ordered-by user; description "VLAN to monitor incoming traffic"; uses analyzer-ingress-vlan-type; } list bridge-domain { key name; ordered-by user; description "Bridge-domain to monitor incoming traffic"; uses analyzer-ingress-bridge-domain-type; } } grouping analyzer-ingress-vlan-type { leaf name { description "VLAN name, VLAN id or VLAN range string"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } grouping smpl-analyzer-output-type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice interface_or_vlan { case case_1 { leaf interface { description "Outgoing port for mirrored packets"; type interface-name; } } case case_2 { leaf next-hop-group { description "Next-hop-group through which to send port-mirror traffic"; type string; } } case case_3 { list routing-instance { key name; description "Routing instances"; max-elements 1; uses output-routing-instance-type; } } case case_4 { list vlan { key name; description "Outgoing VLAN for mirrored packets"; max-elements 1; uses pm-rspan-vlan; } } case case_5 { list bridge-domain { key name; description "Outgoing bridge-domain for mirrored packets"; max-elements 1; uses pm-rspan-bridge-domain; } } } } grouping sonet_options_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf vtmapping { description "VT mapping mode"; type enumeration { enum klm { description "KLM mode"; } enum itu-t { description "ITU-T mode"; } } } leaf fcs { description "Frame checksum"; type enumeration { enum 32 { description "32-bit mode"; } enum 16 { description "16-bit mode"; } } } leaf path-trace { description "Path trace string"; type string; } leaf loopback { description "Loopback mode"; type enumeration { enum local { description "Local loopback"; } enum remote { description "Remote loopback"; } } } container trigger { description "Defect triggers"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container lol { description "LOL defect trigger"; choice lol_choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before marking interface up or down for defect"; leaf up { description "Delay before marking interface up when defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before marking interface down when defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } container pll { description "PLL defect trigger"; choice pll_choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before marking interface up or down for defect"; leaf up { description "Delay before marking interface up when defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before marking interface down when defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } container lof { description "LOF defect trigger"; choice lof_choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before marking interface up or down for defect"; leaf up { description "Delay before marking interface up when defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before marking interface down when defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } container los { description "LOS defect trigger"; choice los_choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before marking interface up or down for defect"; leaf up { description "Delay before marking interface up when defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before marking interface down when defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } container ais-l { description "AIS-L defect trigger"; choice ais_l_choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before marking interface up or down for defect"; leaf up { description "Delay before marking interface up when defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before marking interface down when defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } container rfi-l { description "RFI-L defect trigger"; choice rfi_l_choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before marking interface up or down for defect"; leaf up { description "Delay before marking interface up when defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before marking interface down when defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } container ber-sd { description "BER-SD defect trigger"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice ber_sd_choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before marking interface up or down for defect"; leaf up { description "Delay before marking interface up when defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before marking interface down when defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } container ber-sf { description "BER-SF defect trigger"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice ber_sf_choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before marking interface up or down for defect"; leaf up { description "Delay before marking interface up when defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before marking interface down when defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } container ais-p { description "AIS-P defect trigger"; choice ais_p_choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before marking interface up or down for defect"; leaf up { description "Delay before marking interface up when defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before marking interface down when defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } container lop-p { description "LOP-P defect trigger"; choice lop_p_choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before marking interface up or down for defect"; leaf up { description "Delay before marking interface up when defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before marking interface down when defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } container rfi-p { description "RFI-P defect trigger"; choice rfi_p_choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before marking interface up or down for defect"; leaf up { description "Delay before marking interface up when defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before marking interface down when defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } container uneq-p { description "UNEQ-P defect trigger"; choice uneq_p_choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before marking interface up or down for defect"; leaf up { description "Delay before marking interface up when defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before marking interface down when defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } container plm-p { description "PLM-P defect trigger"; choice plm_p_choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before marking interface up or down for defect"; leaf up { description "Delay before marking interface up when defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before marking interface down when defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } container locd { description "LOCD defect trigger (ATM only)"; choice locd_choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before marking interface up or down for defect"; leaf up { description "Delay before marking interface up when defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before marking interface down when defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } container lcdp { description "LCD-P defect trigger (Ethernet WAN only)"; choice lcdp_choices { case case_1 { leaf ignore { description "Ignore the defect"; type empty; } } case case_2 { container hold-time { description "Delay before marking interface up or down for defect"; leaf up { description "Delay before marking interface up when defect is absent"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } presence "enable hold-time"; leaf down { description "Delay before marking interface down when defect occurs"; units "milliseconds"; type uint32 { range "1 .. 65534"; } mandatory true; } } } } } } container aps { description "Automatic Protection Switching"; uses aps_type; } choice payload_scrambler_choices { case case_1 { container payload-scrambler { presence "enable payload-scrambler"; description "Enable payload scrambling"; choice payload-choice { } } } case case_2 { leaf no-payload-scrambler { description "Do not enable payload scrambling"; type empty; } } } leaf z0-increment { description "Increment Z0 in SDH mode"; type empty; } leaf no-z0-increment { description "Increment Z0 in SDH mode"; type empty; } leaf loop-timing { description "Set loop timing for STM-1"; type empty; } leaf no-loop-timing { description "Set loop timing for STM-1"; type empty; } container bytes { description "Set SONET header bytes"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf e1-quiet { description "E1-quiet value"; type uint32 { range "0 .. 255"; } } leaf f1 { description "F1 user value"; type uint32 { range "0 .. 255"; } } leaf f2 { description "F2 user value"; type uint32 { range "0 .. 255"; } } leaf s1 { description "S1/Z1 value (stratum clock by convention)"; type uint32 { range "0 .. 255"; } } leaf z3 { description "Z3 user value"; type uint32 { range "0 .. 255"; } } leaf z4 { description "Z4 user value"; type uint32 { range "0 .. 255"; } } leaf c2 { description "C2 user value"; type uint32 { range "0 .. 255"; } } } leaf rfc-2615 { description "RFC 2615 compliance"; type empty; } leaf aggregate { description "Join a SONET aggregate"; type interface-device; } container mpls { description "MPLS options"; uses mpls_ifd_options; } } grouping source-class-name-object { leaf name { description "Class name"; type string; } } grouping ssd-traceoptions-type { description "Trace options for SSD"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Area of sdk-service daemon to enable debugging output"; leaf name { description "(null)"; type enumeration { enum infrastructure { description "Trace ssd infrastructure code"; } enum server { description "Trace ssd server functionality code"; } enum routing-instance { description "Trace ssd routing instance functionality code"; } enum client-management { description "Trace ssd client management code"; } enum interfaces-management { description "Trace ssd/jdaf interfaces management code"; } enum route-management { description "Trace ssd/jdaf route management code"; } enum nexthop-management { description "Trace ssd nexthop route management code"; } enum firewall-management { description "Trace JDAF-based firewall service"; } enum nexthop-group-management { description "Trace ssd nexthop group management code"; } enum cli { description "Trace ssd cli interaction code"; } enum cfg { description "Trace ssd cli interaction code"; } enum all { description "Trace all areas of ssd code"; } } } } } grouping ssl-initiation-config { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list profile { key name; ordered-by user; description "SSL client profile"; leaf name { description "Profile identifier"; type string { length "1 .. 63"; } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf enable-flow-tracing { description "Enable flow tracing for the profile"; type empty; } leaf protocol-version { description "Protocol SSL version accepted"; default "all"; type enumeration { enum all { description "SSL version 3 or TLS version 1"; } enum ssl3 { description "SSL version 3"; } enum tls1 { description "TLS version 1"; } } } leaf preferred-ciphers { description "Select preferred ciphers"; default "medium"; type enumeration { enum strong { description "Use ciphers with key strength of 168-bits or greater"; } enum medium { description "Use ciphers with key strength of 128-bits or greater"; } enum weak { description "Use ciphers with key strength of 40-bits or greater"; } enum custom { description "Configure custom cipher suite and order of preference"; } } } leaf-list custom-ciphers { description "Custom cipher list"; type enumeration { enum rsa-with-rc4-128-md5 { description "RSA, 128bit rc4, md5 hash"; } enum rsa-with-rc4-128-sha { description "RSA, 128bit rc4, sha hash"; } enum rsa-with-des-cbc-sha { description "RSA, des cbc, sha hash"; } enum rsa-with-3des-ede-cbc-sha { description "RSA, 3des ede/cbc, sha hash"; } enum rsa-with-aes-128-cbc-sha { description "RSA, 128 bit aes/cbc, sha hash"; } enum rsa-with-aes-256-cbc-sha { description "RSA, 256 bit aes/cbc, sha hash"; } enum rsa-export-with-rc4-40-md5 { description "RSA-export, 40 bit rc4, md5 hash"; } enum rsa-export-with-des40-cbc-sha { description "RSA-export, 40 bit des/cbc, sha hash"; } enum rsa-export1024-with-des-cbc-sha { description "RSA 1024 bit export, des/cbc, sha hash"; } enum rsa-export1024-with-rc4-56-md5 { description "RSA 1024 bit export, 56 bit rc4, md5 hash"; } enum rsa-export1024-with-rc4-56-sha { description "RSA 1024 bit export, 56 bit rc4, sha hash"; } enum rsa-with-null-md5 { description "RSA, no symmetric cipher, md5 hash"; } enum rsa-with-null-sha { description "RSA, no symmetric cipher, sha hash"; } } max-elements 64; } leaf enable-session-cache { description "Enable SSL session cache"; type empty; } leaf-list trusted-ca { description "List of trusted certificate authority profiles"; type string; max-elements 1024; } leaf client-certificate { description "Local certificate identifier"; type string { } } } } grouping ssl-proxy-config { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list profile { key name; ordered-by user; description "SSL Proxy profile"; leaf name { description "Profile identifier"; type string { length "1 .. 63"; } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf enable-flow-tracing { description "Enable flow tracing for the profile"; type empty; } leaf protocol-version { description "Protocol SSL version accepted"; default "all"; type enumeration { enum all { description "SSL version 3 or TLS version 1"; } enum ssl3 { description "SSL version 3"; } enum tls1 { description "TLS version 1"; } } } leaf preferred-ciphers { description "Select preferred ciphers"; default "medium"; type enumeration { enum strong { description "Use ciphers with key strength of 168-bits or greater"; } enum medium { description "Use ciphers with key strength of 128-bits or greater"; } enum weak { description "Use ciphers with key strength of 40-bits or greater"; } enum custom { description "Configure custom cipher suite and order of preference"; } } } leaf-list custom-ciphers { description "Custom cipher list"; type enumeration { enum rsa-with-rc4-128-md5 { description "RSA, 128bit rc4, md5 hash"; } enum rsa-with-rc4-128-sha { description "RSA, 128bit rc4, sha hash"; } enum rsa-with-des-cbc-sha { description "RSA, des cbc, sha hash"; } enum rsa-with-3des-ede-cbc-sha { description "RSA, 3des ede/cbc, sha hash"; } enum rsa-with-aes-128-cbc-sha { description "RSA, 128 bit aes/cbc, sha hash"; } enum rsa-with-aes-256-cbc-sha { description "RSA, 256 bit aes/cbc, sha hash"; } enum rsa-export-with-rc4-40-md5 { description "RSA-export, 40 bit rc4, md5 hash"; } enum rsa-export-with-des40-cbc-sha { description "RSA-export, 40 bit des/cbc, sha hash"; } enum rsa-export1024-with-des-cbc-sha { description "RSA 1024 bit export, des/cbc, sha hash"; } enum rsa-export1024-with-rc4-56-md5 { description "RSA 1024 bit export, 56 bit rc4, md5 hash"; } enum rsa-export1024-with-rc4-56-sha { description "RSA 1024 bit export, 56 bit rc4, sha hash"; } enum rsa-with-null-md5 { description "RSA, no symmetric cipher, md5 hash"; } enum rsa-with-null-sha { description "RSA, no symmetric cipher, sha hash"; } } max-elements 64; } leaf enable-session-cache { description "Enable SSL session cache"; type empty; } leaf-list trusted-ca { description "List of trusted certificate authority profiles"; type string; max-elements 1024; } leaf root-ca { description "Root certificate for interdicting server certificates in proxy mode"; type string { } mandatory true; } leaf-list whitelist { description "Addresses exempted from SSL Proxy "; type string; } container actions { description "Logging and traffic related actions"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ignore-server-auth-failure { description "Ignore server authentication failure"; type empty; } container log { presence "enable log"; description "Logging actions"; leaf all { description "Log all events"; type empty; } leaf sessions-dropped { description "Log only ssl session drop events"; type empty; } leaf sessions-allowed { description "Log ssl session allow events after an error"; type empty; } leaf sessions-ignored { description "Log session ignore events "; type empty; } leaf sessions-whitelisted { description "Log ssl session whitelist events "; type empty; } leaf errors { description "Log all error events "; type empty; } leaf warning { description "Log all warning events "; type empty; } leaf info { description "Log all information events "; type empty; } } } } } grouping ssl-termination-config { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list profile { key name; ordered-by user; description "SSL server profile"; leaf name { description "Profile identifier"; type string { length "1 .. 63"; } mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf enable-flow-tracing { description "Enable flow tracing for the profile"; type empty; } leaf protocol-version { description "Protocol SSL version accepted"; default "all"; type enumeration { enum all { description "SSL version 3 or TLS version 1"; } enum ssl3 { description "SSL version 3"; } enum tls1 { description "TLS version 1"; } } } leaf preferred-ciphers { description "Select preferred ciphers"; default "medium"; type enumeration { enum strong { description "Use ciphers with key strength of 168-bits or greater"; } enum medium { description "Use ciphers with key strength of 128-bits or greater"; } enum weak { description "Use ciphers with key strength of 40-bits or greater"; } enum custom { description "Configure custom cipher suite and order of preference"; } } } leaf-list custom-ciphers { description "Custom cipher list"; type enumeration { enum rsa-with-rc4-128-md5 { description "RSA, 128bit rc4, md5 hash"; } enum rsa-with-rc4-128-sha { description "RSA, 128bit rc4, sha hash"; } enum rsa-with-des-cbc-sha { description "RSA, des cbc, sha hash"; } enum rsa-with-3des-ede-cbc-sha { description "RSA, 3des ede/cbc, sha hash"; } enum rsa-with-aes-128-cbc-sha { description "RSA, 128 bit aes/cbc, sha hash"; } enum rsa-with-aes-256-cbc-sha { description "RSA, 256 bit aes/cbc, sha hash"; } enum rsa-export-with-rc4-40-md5 { description "RSA-export, 40 bit rc4, md5 hash"; } enum rsa-export-with-des40-cbc-sha { description "RSA-export, 40 bit des/cbc, sha hash"; } enum rsa-export1024-with-des-cbc-sha { description "RSA 1024 bit export, des/cbc, sha hash"; } enum rsa-export1024-with-rc4-56-md5 { description "RSA 1024 bit export, 56 bit rc4, md5 hash"; } enum rsa-export1024-with-rc4-56-sha { description "RSA 1024 bit export, 56 bit rc4, sha hash"; } enum rsa-with-null-md5 { description "RSA, no symmetric cipher, md5 hash"; } enum rsa-with-null-sha { description "RSA, no symmetric cipher, sha hash"; } } max-elements 64; } leaf enable-session-cache { description "Enable SSL session cache"; type empty; } leaf-list trusted-ca { description "List of trusted certificate authority profiles"; type string; max-elements 1024; } leaf server-certificate { description "Local certificate identifier"; type string { } mandatory true; } } } grouping ssl-traceoptions { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } leaf level { description "Level of debugging output"; default "brief"; type enumeration { enum brief { description "Brief debugging output"; } enum detail { description "Detailed debugging output"; } enum extensive { description "Extensive debugging output"; } enum verbose { description "Verbose debugging output"; } } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum cli-configuration { description "Trace CLI configuration events"; } enum termination { description "Trace termination service events"; } enum initiation { description "Trace initiation service events"; } enum proxy { description "Trace proxy service events"; } enum selected-profile { description "Trace events for profiles with enable-flow-tracing set"; } enum all { description "Trace everything"; } } } } } grouping stp-interface { leaf name { description "(null)"; type interface-device; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf priority { description "Interface priority (in increments of 16 - 0,16,..240)"; type uint16 { range "0 .. 255"; } } leaf cost { description "Cost of the interface"; type uint32 { range "1 .. 200000000"; } } leaf mode { description "Interface mode (P2P or shared)"; type enumeration { enum point-to-point { description "Interface mode is point-to-point"; } enum shared { description "Interface mode is shared"; } } } leaf edge { description "Port is an edge port"; type empty; } leaf access-trunk { description "Send/Receive untagged RSTP BPDUs on this interface"; type empty; } container bpdu-timeout-action { presence "enable bpdu-timeout-action"; description "Define action on BPDU expiry (Loop Protect)"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf block { description "Block the interface"; type empty; } leaf alarm { description "Generate an alarm"; type empty; } } leaf no-root-port { description "Do not allow the interface to become root (Root Protect)"; type empty; } } grouping stp-trace-options { description "Trace options for Spanning Tree Protocol"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container file { description "Trace file options"; uses trace_file_type; } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum events { description "Trace events to the protocol state machine"; } enum bpdu { description "Trace BPDU reception and transmission"; } enum timers { description "Trace protocol timers"; } enum port-information-state-machine { description "Trace port information state machine"; } enum port-receive-state-machine { description "Trace port receive state machine"; } enum port-role-select-state-machine { description "Trace port role selection state machine"; } enum port-role-transit-state-machine { description "Trace port role transit state machine"; } enum port-state-transit-state-machine { description "Trace port state transit state machine"; } enum port-migration-state-machine { description "Trace port migration state machine"; } enum port-transmit-state-machine { description "Trace port transmit state machine"; } enum topology-change-state-machine { description "Trace topology change state machine"; } enum bridge-detection-state-machine { description "Trace Bridge detection state machine"; } enum state-machine-variables { description "Trace when state machine variables change"; } enum ppmd { description "Trace state and events for ppmd process"; } enum all-failures { description "Trace all failure conditions"; } enum all { description "Trace all"; } } } leaf disable { description "Disable this trace flag"; type empty; } } } grouping subscription-type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf link-subscription { description "Link bandwidth percentage for RSVP reservation"; default "100"; type string; } leaf ct0 { description "Subscription percentage for traffic class 0"; default "100"; type string; } leaf ct1 { description "Subscription percentage for traffic class 1"; default "100"; type string; } leaf ct2 { description "Subscription percentage for traffic class 2"; default "100"; type string; } leaf ct3 { description "Subscription percentage for traffic class 3"; default "100"; type string; } } grouping svc-ike-policy { leaf name { description "Name of the IKE policy"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf description { description "Text description of IKE policy"; type string { length "1 .. 80"; } } leaf mode { description "Define the IKE first phase mode"; type enumeration { enum main { description "Main mode"; } enum aggressive { description "Aggressive mode"; } } } leaf version { description "Define the IKE version to use for the negotiation"; type enumeration { enum 1 { description "Initiate IKEv1 negotiation"; } enum 2 { description "Initiate IKEv2 negotiation"; } } } leaf-list proposals { description "Name of the proposal"; type string { length "1 .. 32"; } } container local-id { description "Define local identification"; choice id-type { case case_1 { leaf ipv4_addr { description "One or more IPv4 address identification values"; type ipv4addr; } } case case_2 { leaf fqdn { description "One or more fully qualified domain name values"; type string { length "1 .. 255"; } } } case case_3 { leaf key-id { description "One or more key ID identification values"; type string { length "1 .. 255"; } } } case case_4 { leaf ipv6-addr { description "One or more IPv6 address identification values"; type ipv6addr; } } } } leaf local-certificate { description "Local certificate identifier"; type string { } } container remote-id { description "Define remote identification"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf any-remote-id { description "Allow any remote ID"; type empty; } leaf-list ipv4_addr { description "One or more IPv4 address identification values"; type ipv4addr; } leaf-list fqdn { description "One or more fully qualified domain name values"; type string { length "1 .. 255"; } } leaf-list key-id { description "One or more key ID identification values"; type string { length "1 .. 255"; } } leaf-list ipv6-addr { description "One or more IPv6 address identification values"; type ipv6addr; } } container pre-shared-key { description "Define a preshared key"; choice key-choice { case case_1 { leaf ascii-text { description "Format as text"; type string { length "1 .. 255"; } } } case case_2 { leaf hexadecimal { description "Format as hexadecimal"; type string { length "1 .. 255"; } } } } } container respond-bad-spi { presence "enable respond-bad-spi"; description "Respond to IPSec packets with bad SPI values"; leaf max-responses { description "Maximum number of times to respond"; default "5"; type uint32 { range "1 .. 30"; } } } } grouping sw_rule_object { leaf name { description "Rule name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf match-direction { description "Direction for which the rule match is applied"; type enumeration { enum input { description "Match on input to interface"; } enum output { description "Match on output from interface"; } } mandatory true; } list term { key name; ordered-by user; description "Define a softwire term"; leaf name { description "Term name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice designation { case case_1 { leaf ds-lite { description "Apply DS-Lite softwire"; type string { length "1 .. 63"; } } } case case_2 { leaf v6rd { description "Apply 6rd softwire"; type string { length "1 .. 63"; } } } } } } } grouping syslog-object { leaf name { description "Facility type"; type enumeration { enum any { description "All facilities"; } enum authorization { description "Authorization system"; } enum daemon { description "Various system processes"; } enum ftp { description "FTP process"; } enum ntp { description "NTP process"; } enum security { description "Security related"; } enum kernel { description "Kernel"; } enum user { description "User processes"; } enum dfc { description "Dynamic flow capture"; } enum external { description "Local external applications"; } enum firewall { description "Firewall filtering system"; } enum pfe { description "Packet Forwarding Engine"; } enum conflict-log { description "Configuration conflict log"; } enum change-log { description "Configuration change log"; } enum interactive-commands { description "Commands executed by the UI"; } } } choice level { case case_1 { leaf any { description "All levels"; type empty; } } case case_2 { leaf emergency { description "Panic conditions"; type empty; } } case case_3 { leaf alert { description "Conditions that should be corrected immediately"; type empty; } } case case_4 { leaf critical { description "Critical conditions"; type empty; } } case case_5 { leaf error { description "Error conditions"; type empty; } } case case_6 { leaf warning { description "Warning messages"; type empty; } } case case_7 { leaf notice { description "Conditions that should be handled specially"; type empty; } } case case_8 { leaf info { description "Informational messages"; type empty; } } case case_9 { leaf none { description "No messages"; type empty; } } } } grouping system-id-ip-map { leaf name { description "(null)"; type mac-unicaset; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ip-address { description "Peer ID (IP Address)"; type ipv4prefix; } } grouping tacplus-server-object { leaf name { description "TACACS+ authentication server address"; type hostname; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf port { description "TACACS+ authentication server port number"; type uint16; } leaf secret { description "Shared secret with the authentication server"; type unreadable; } leaf timeout { description "Request timeout period"; default "3"; units "seconds"; type uint32 { range "1 .. 90"; } } leaf single-connection { description "Optimize TCP connection attempts"; type empty; } leaf source-address { description "Use specified address as source address"; type hostname; } } grouping te-class-object { leaf traffic-class { description "Traffic class"; type enumeration { enum ct0 { description "Traffic class 0"; } enum ct1 { description "Traffic class 1"; } enum ct2 { description "Traffic class 2"; } enum ct3 { description "Traffic class 3"; } } mandatory true; } leaf priority { description "Preemption priority for this class"; type uint32 { range "0 .. 7"; } mandatory true; } } grouping three-color-policer-type { description "Three-color policer"; leaf name { description "Policer name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf filter-specific { description "Three color policer is filter-specific"; type empty; } leaf logical-interface-policer { description "Policer is logical interface policer"; type empty; } leaf physical-interface-policer { description "Policer is physical interface policer"; type empty; } leaf shared-bandwidth-policer { description "Share policer bandwidth among bundle links"; type empty; } container action { description "Action for three-color policer"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list loss-priority { key name; ordered-by user; description "Loss priority for packet"; uses three-color-policer-action; } } choice rate-type-choice { case case_1 { container single-rate { presence "enable single-rate"; description "Single-rate policer"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice mode-choice { case case_1 { leaf color-blind { description "Color-blind mode"; type empty; } } case case_2 { leaf color-aware { description "Color-aware mode"; type empty; } } } leaf committed-information-rate { description "Bandwidth allowed for committed traffic"; units "bits per second"; type string; } leaf committed-burst-size { description "Burst size allowed for committed traffic"; units "bytes"; type string; } leaf excess-burst-size { description "Burst size allowed for excess traffic"; units "bytes"; type string; } } } case case_2 { container two-rate { presence "enable two-rate"; description "Two-rate policer"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice mode-choice { case case_1 { leaf color-blind { description "Color-blind mode"; type empty; } } case case_2 { leaf color-aware { description "Color-aware mode"; type empty; } } } leaf committed-information-rate { description "Bandwidth allowed for committed traffic"; units "bits per second"; type string; } leaf committed-burst-size { description "Burst size allowed for committed traffic "; units "bytes"; type string; } leaf peak-information-rate { description "Bandwidth allowed for peak traffic"; units "bits per second"; type string; } leaf peak-burst-size { description "Burst size allowed for peak traffic "; units "bytes"; type string; } } } } } grouping three-color-policer-action { description "Action for three-color policer"; leaf name { description "Loss priority for packet"; type enumeration { enum high { description "High loss priority"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container then { description "Action to take if the rate limits are exceeded"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf discard { description "Discard the packet"; type empty; } } } grouping to_fabric_object { description "Match traffic going to fabric"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf except { description "Match traffic switched locally and not going to fabric"; type empty; } } grouping trace_file_type { leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } mandatory true; } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "10"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } } grouping transaction-method-type { leaf name { description "(null)"; type enumeration { enum method-invite { description "(null)"; } enum method-options { description "(null)"; } enum method-refer { description "(null)"; } enum method-subscribe { description "(null)"; } enum method-publish { description "(null)"; } enum method-message { description "(null)"; } enum method-register { description "(null)"; } } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } grouping transaction_policy_type { leaf name { description "Policy name"; type string; mandatory true; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list term { key name; ordered-by user; description "Term definition"; max-elements 20; leaf name { description "Term name"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "From action"; uses new_transaction_from_type; } container then { description "Action"; uses new_transaction_then_type; } } } grouping new_transaction_then_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf accept { description "Accept the request"; type empty; } leaf reject { description "Reject the request"; type empty; } container route { description "How to route the request"; uses route_action; } leaf trace { description "Trace messages accepted on this policy"; type empty; } leaf admission-control { description "Admission controller for the request"; type string; } container message-manipulation { presence "enable message-manipulation"; description "Definitions of forward and reverse manipulations "; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list forward-manipulation { key name; ordered-by user; description "(null)"; max-elements 5; leaf name { description "Forward manipulation rules"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list reverse-manipulation { key name; ordered-by user; description "(null)"; max-elements 5; leaf name { description "Reverse manipulation rules"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } leaf signaling-realm { description "Signaling realm"; type string; } container on-3xx-response { presence "enable on-3xx-response"; description "Behavior on receiving a 3XX Response"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice _3xx_recursion { case case_1 { leaf recursion-limit { description "The number of recursion to manage"; default "16"; type uint32 { range "1 .. 16"; } } } } } } grouping route_action { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container next-hop { presence "enable next-hop"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice next-hop { case case_1 { container address { description "Static route by IP address"; uses routing-destination-address; } } case case_2 { leaf request-uri { description "Route by request-uri"; type empty; } } } } leaf egress-service-point { description "Exit point"; type string; } leaf server-cluster { description "Cluster name"; type string; } } grouping transport_protocol { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice transport-protocol { case case_1 { leaf udp { description "(null)"; type empty; } } case case_2 { leaf tcp { description "(null)"; type empty; } } } } grouping tty_port_object { description "RS-232 configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list authentication-order { description "(null)"; type enumeration { enum radius { description "Remote Authentication Dial-In User Service"; } enum tacplus { description "TACACS+ authentication services"; } enum password { description "Traditional password authentication"; } } } leaf log-out-on-disconnect { description "Log out the console session when cable is unplugged"; type empty; } leaf port-type { description "Switch console between RJ45 and mini-USB"; type enumeration { enum rj45 { description "Enable RJ45"; } enum mini-usb { description "Enable mini-USB"; } } } leaf disable { description "Disable console"; type empty; } leaf insecure { description "Disallow superuser access"; type empty; } leaf type { description "Terminal type"; type enumeration { enum ansi { description "ANSI-compatible terminal"; } enum vt100 { description "VT100-compatible terminal"; } enum small-xterm { description "Small (24-line) xterm window"; } enum xterm { description "Large (65-line) xterm window"; } } } leaf silent-with-modem { description "Make the console silent if modem is connected and no call is present on the modem"; type empty; } } grouping tunable-object { leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf tunable-value { description "Protocol tunable value"; type uint32; } } grouping tunnel_end_point { description "Define a tunnel end point"; leaf name { description "Tunnel end-point identifier (ASCII string)"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice l3-protocol { case case_1 { container ipv6 { presence "enable ipv6"; description "Enter an IPv6 tunnel"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-address { description "Tunnel source address"; type ipv6addr; mandatory true; } leaf destination-address { description "Tunnel destination address"; type ipv6addr; mandatory true; } } } case case_2 { container ipv4 { presence "enable ipv4"; description "Enter an IPv4 tunnel"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf source-address { description "Tunnel source address"; type ipv4addr; mandatory true; } leaf destination-address { description "Tunnel destination address"; type ipv4addr; mandatory true; } } } } choice tunnel-protocol { case case_1 { container gre { presence "enable gre"; description "Tunnel is GRE"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf key { description "Key for authentication"; type uint32; } } } } } grouping tunnel_interface_type { description "One or more tunnel interfaces on which to configure flow-tap service"; leaf name { description "Tunnel Interface name"; type interface-unit; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } grouping twamp-authentication-key-chain { leaf name { description "Name of authentication key chain"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list key-id { key name; description "Authentication element configuration"; leaf name { description "Authentication element identifier"; type string { length "1 .. 80"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf secret { description "Authentication key"; type string { length "1 .. 256"; } mandatory true; } } } grouping ufd-group-type { description "Uplink failure detection group type"; leaf name { description "Uplink failure detection group name"; type string { length "2 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list link-to-monitor { key name; ordered-by user; description "Uplinks to be monitored"; leaf name { description "Interface to be monitored"; type interface-unit; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } list link-to-disable { key name; ordered-by user; description "Downlinks to disable"; leaf name { description "Interface to disable"; type interface-unit; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } grouping unified-edge-mobile-options { description "Unified edge mobile options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Mobility config and operational command daemon trace options"; uses mobiled-traceoptions; } } grouping mobiled-traceoptions { description "Trace options for mobiled"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } leaf match { description "Regular expression for lines to be logged"; type regular-expression; } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum configuration { description "Trace configuration events"; } enum protocol { description "Trace protocol processing events"; } enum init { description "Trace events related to protocol daemon start-up"; } enum error { description "Trace events related to catestrophic errors in daemon"; } enum all { description "Trace everything"; } } } leaf send { description "Trace transmitted packets"; type empty; } leaf receive { description "Trace received packets"; type empty; } leaf detail { description "Trace detailed information"; type empty; } leaf disable { description "Disable this trace flag"; type empty; } } } grouping unified-edge-pcef { description "PCEF configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container traceoptions { description "Trace options related to PCEF"; uses pcef-traceoptions; } container event-trigger-profiles { description "Event trigger profiles"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list profile { key name; description "(null)"; uses evt-trigger-profile; } } container flow-descriptions { description "PCC flow descriptions"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list definition { key name; description "(null)"; uses pcc-flow; } } container pcc-action-profiles { description "PCC action profiles"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list definition { key name; description "(null)"; uses pcc-action-profile; } } container pcc-rules { description "PCC rules"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list definition { key name; description "(null)"; uses pcc-rule; } } container pcc-rulebases { description "PCC rulebases"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list definition { key name; ordered-by user; description "(null)"; uses pcc-rulebase; } } container profiles { description "PCEF profiles"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list definition { key name; ordered-by user; description "(null)"; uses pcef-profiles; } } } grouping evt-trigger-profile { description "Event trigger profile"; leaf name { description "Event trigger profile name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf rat-change { description "RAT change trigger"; type empty; } leaf sgsn-change { description "SGSN change trigger"; type empty; } leaf plmn-change { description "PLMN change trigger"; type empty; } leaf ip-can-change { description "IP-CAN change trigger"; type empty; } leaf tft-change { description "TFT change trigger"; type empty; } leaf rai-change { description "RAI change trigger"; type empty; } leaf user-location-change { description "User location change"; type empty; } leaf ue-timezone-change { description "UE timezone change"; type empty; } } grouping pcc-action-profile { description "PCC action profiles"; leaf name { description "PCC action profile identifier"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf qci { description "QOS class identifier"; type uint8 { range "1 .. 9"; } mandatory true; } container allocation-retention-priority { description "Allocation and retention priority"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf priority-level { description "Allocation and retention priority"; type uint8 { range "1 .. 15"; } mandatory true; } presence "enable allocation-retention-priority"; leaf preemption-capability { description "Pre-emption capability"; default "0"; type enumeration { enum 0 { description "Enable pre-emption capability"; } enum 1 { description "Disable pre-emption capability"; } } } leaf preemption-vulnerability { description "Pre-emption vulnerability"; default "0"; type enumeration { enum 0 { description "Enable pre-emption vulnerability"; } enum 1 { description "Disable pre-emption vulnerability"; } } } } container maximum-bit-rate { presence "enable maximum-bit-rate"; description "Maximum bit rate"; leaf uplink { description "Maximum bit rate uplink"; default "0"; units "kilobits"; type uint32 { range "0 .. 256000"; } } leaf downlink { description "Maximum bit rate downlink"; default "0"; units "kilobits"; type uint32 { range "0 .. 256000"; } } } container guaranteed-bit-rate { presence "enable guaranteed-bit-rate"; description "Guaranteed bit rate"; leaf uplink { description "Guaranteed bit rate uplink"; default "0"; units "kilobits"; type uint32 { range "0 .. 256000"; } } leaf downlink { description "Guaranteed bit rate downlink"; default "0"; units "kilobits"; type uint32 { range "0 .. 256000"; } } } leaf gate-status { description "Control gate status"; type enumeration { enum uplink { description "Enable uplink traffic"; } enum downlink { description "Enable downlink traffic"; } enum uplink-downlink { description "Enable uplink and downlink traffic"; } enum disable-both { description "Disable any traffic"; } } } container charging { description "Charing related configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf rating-group { description "Rating group"; type uint32 { range "0 .. 4294967294"; } } leaf service-identifier { description "Service identifier"; default "0"; type uint32 { range "0 .. 4294967294"; } } leaf charging-method { description "Charging method"; type enumeration { enum online { description "Use online charging method"; } enum offline { description "Use offline charging method"; } enum both { description "Use online and offline charging method"; } enum none { description "Use no charging"; } } } leaf measurement-method { description "Charging measure method"; default "volume-time"; type enumeration { enum none { description "No default measuring method for charging"; } enum volume { description "Volume based charging"; } enum time { description "Time based charging"; } enum volume-time { description "Volume and time based charging"; } enum event { description "Event based charging"; } } } container application-function-record-info { presence "enable application-function-record-info"; description "Application function record information"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf af-charging-identifier { description "Application function charging identifier"; type string { length "1 .. 63"; } } } leaf service-id-level-reporting { description "Toggle service-id level reporting"; type empty; } } } grouping pcc-flow { description "Configure PCC flow"; leaf name { description "PCC flow identifier"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf direction { description "PCC flow direction"; type enumeration { enum downlink { description "Downlink direction"; } enum uplink { description "Uplink direction"; } enum both { description "Both uplink and downlink directons"; } } } leaf protocol { description "PCC flow IPv4 protocol"; type uint8 { range "0 .. 255"; } } leaf-list local-ports { description "Local port or port list"; type uint16 { range "1 .. 65535"; } max-elements 3; } list local-port-range { key "low high"; ordered-by user; description "Local port range"; max-elements 3; leaf low { description "Lower limit of port range"; type uint16 { range "1 .. 65535"; } mandatory true; } leaf high { description "Upper limit of port range"; type uint16 { range "1 .. 65535"; } mandatory true; } } leaf-list remote-ports { description "Remote port or port list"; type uint16 { range "1 .. 65535"; } max-elements 3; } list remote-port-range { key "low high"; ordered-by user; description "Remote port range"; max-elements 3; leaf low { description "Lower limit of port range"; type uint16 { range "1 .. 65535"; } mandatory true; } leaf high { description "Upper limit of port range"; type uint16 { range "1 .. 65535"; } mandatory true; } } container remote-address { description "Remote address"; choice ip-address-type { case case_1 { leaf ipv4-address { description "IPv4 address for the flow"; type ipv4prefix; } } case case_2 { leaf ipv6-address { description "IPv6 address for the flow"; type ipv6prefix; } } } } leaf no-send-to-ue { description "Do not send this filter to UE"; type empty; } } grouping pcc-rule { description "PCC rules configuration"; leaf name { description "PCC Rule identifier"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container from { description "Aggregate of flows using same pcc-action-profile"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list flows { key name; ordered-by user; description "Associate PCC Flows"; max-elements 15; leaf name { description "PCC Flow identifier"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } container then { description "Specified pcc-action-profile"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf pcc-action-profile { description "PCC Action profile name"; type string { length "1 .. 63"; } } } } grouping pcc-rulebase { description "PCC rulebases"; leaf name { description "PCC Rulebase identifier"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list pcc-rule { key name; ordered-by user; description "(null)"; max-elements 32; leaf name { description "PCC rule name"; type string { length "1 .. 63"; } mandatory true; } leaf precedence { description "PCC rule precedence"; type uint16 { range "1 .. 4000"; } mandatory true; } } } grouping pcef-profiles { description "PCEF profiles"; leaf name { description "PCEF profile name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container dynamic-policy-control { description "Dynamic policy control"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container pcc-rules { description "PCC rules association"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule-assoc { key name; ordered-by user; description "(null)"; max-elements 32; uses profile-rule-assoc; } } list pcc-rulebases { key name; ordered-by user; description "PCC rulebase association"; leaf name { description "PCC rulebase name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf diameter-profile { description "Diameter profile name"; type string { length "1 .. 63"; } mandatory true; } presence "enable dynamic-policy-control"; leaf event-trigger-profile { description "Event trigger profile name"; type string { length "1 .. 63"; } } leaf session-failover-not-supported { description "Session failover not supported"; type empty; } leaf release { description "To override Gx release to R8|R9"; type enumeration { enum r8 { description "Gx release 8"; } enum r9 { description "Gx release 9"; } } } } container static-policy-control { description "Static policy control"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container pcc-rules { description "PCC rules association"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list rule-assoc { key name; ordered-by user; description "(null)"; max-elements 32; uses profile-rule-assoc; } } list pcc-rulebases { key name; ordered-by user; description "PCC rulebase association"; leaf name { description "PCC rulebase name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf-list activate-dedicated-bearers { description "Enable dedicated bearer activation on initial attach with qci"; type uint8 { range "1 .. 9"; } max-elements 9; } } } grouping pcef-traceoptions { description "Trace options related to PCEF"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf no-remote-trace { description "Disable remote tracing"; type empty; } container file { description "Trace file information"; leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "3"; type uint32 { range "2 .. 1000"; } } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } } leaf level { description "Level of debugging output"; default "error"; type enumeration { enum error { description "Match error conditions"; } enum warning { description "Match warning messages"; } enum notice { description "Match conditions that should be handled specially"; } enum info { description "Match informational messages"; } enum verbose { description "Match verbose messages"; } enum all { description "Match all levels"; } } } list flag { key name; ordered-by user; description "Tracing parameters"; leaf name { description "(null)"; type enumeration { enum init { description "Trace initialization events"; } enum config { description "Trace configuration events"; } enum general { description "Trace general events"; } enum high-availability { description "Trace high availability events"; } enum debug { description "Trace debug internal events"; } enum fsm { description "Trace fsm events"; } enum tftmgr { description "Trace tftmgr events"; } enum all { description "Trace everything"; } } } } } grouping profile-rule-assoc { leaf name { description "PCC rule name"; type string { length "1 .. 63"; } mandatory true; } leaf precedence { description "PCC rule precedence"; type uint16 { range "1 .. 4000"; } mandatory true; } } grouping upgrade-group-fpcs { description "Upgrade group fpcs"; leaf name { description "Member identifier"; type int32 { range "0 .. 7"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list fpcs { description "FPCs to be upgraded as a group in this member"; type uint32 { range "0 .. 15"; } } } grouping upgrade-group-type { description "Upgrade group"; leaf name { description "Upgrade group name"; type string { length "2 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list satellite { description "Satellite slot-id or range or all"; type string { length "1 .. 100"; } } } grouping uri_redirect_cause_type { leaf name { description "Cause of redirection"; type enumeration { enum roaming { description "Traffic redirection because of roaming"; } enum calendar-time { description "Traffic redirection because of time-of-day change"; } enum quality-of-service { description "Traffic redirection because of QoS"; } enum volume-expired { description "Traffic redirection because of expiration of volume limit"; } enum cost-warning { description "Traffic redirection because of cost warning limit"; } enum user-defined-reason-1 { description "User-defined authorization code (1)"; } enum user-defined-reason-2 { description "User-defined authorization code (2)"; } enum user-defined-reason-3 { description "User-defined authorization code (3)"; } enum user-defined-reason-4 { description "User-defined authorization code (4)"; } enum user-defined-reason-5 { description "User-defined authorization code (5)"; } enum blacklisted { description "Traffic redirection because if blacklisted rating group"; } enum not-allowed { description "Traffic redirection because of disallowed service class"; } enum unsubscribed { description "Traffic redirection because of unsubscribed service class"; } enum credit-expiry { description "Traffic redirection because of expiration of credit"; } enum unknown { description "Traffic redirection because of unknown reason"; } enum terminal { description "Traffic redirection because of terminal denied access"; } enum default { description "Default traffic redirection rule"; } } } leaf uri { description "Redirect to this URI"; type string { length "1 .. 256"; } } } grouping user_category_type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf cc-mask { description "Charging characteristics mask"; type string { length 4; } } container default { presence "enable default"; description "Default user category"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container rule-space { presence "enable rule-space"; description "Default rule space settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default { description "Default rule space to apply initially to all contexts"; type string { length "1 .. 64"; } mandatory true; } leaf default-secondary { description "Default rule space to apply to secondary contexts"; type string { length "1 .. 64"; } } } container pdp-context { description "PDP context settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf creation { description "PDP context creation state"; type enumeration { enum unblocked { description "No restrictions on PDP context creation"; } enum blocked { description "New PDP context creation fully blocked"; } } } } leaf policy-control-static-profile { description "Default static policy control profile"; type string { length "1 .. 64"; } } choice dynamic-profile-choice { case case_1 { leaf policy-control-dynamic-profile { description "Default dynamic policy control profile"; type string { length "1 .. 64"; } } } case case_2 { leaf policy-control-dynamic-gx-profile { description "Default policy control gx profile"; type string { length "1 .. 64"; } } } } leaf rating-control-profile { description "Default rating control profile"; type string { length "1 .. 64"; } } choice credit-control-choice { case case_1 { leaf credit-control-profile { description "Default credit control profile"; type string { length "1 .. 64"; } } } case case_2 { leaf credit-control-ro-profile { description "Default ro profile"; type string { length "1 .. 64"; } } } } leaf charging-unit-profile { description "Default charging unit profile"; type string { length "1 .. 64"; } } leaf block-based-charging-profile { description "Default block-based charging profile"; type string { length "1 .. 64"; } } leaf qos-control-profile { description "Default QoS control profile"; type string { length "1 .. 64"; } } } list category { key name; description "(null)"; max-elements 63; leaf name { description "User category identifier"; type uint32 { range "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list cc-values { description "CC values that select this category."; type uint32 { range "0 .. 65535"; } max-elements 64; } choice imsi-msisdn-choice { case case_1 { leaf imsi { description "IMSI regular expression that selects this category"; type regular-expression; } } case case_2 { leaf msisdn { description "MSISDN regular expression that selects this category"; type regular-expression; } } } container rule-space { presence "enable rule-space"; description "Default rule space settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf default { description "Default rule space to apply initially to all contexts"; type string { length "1 .. 64"; } mandatory true; } leaf default-secondary { description "Default rule space to apply to secondary contexts"; type string { length "1 .. 64"; } } } container pdp-context { description "PDP context settings"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf creation { description "PDP context creation state"; type enumeration { enum unblocked { description "No restrictions on PDP context creation"; } enum blocked { description "New PDP context creation fully blocked"; } } } } leaf policy-control-static-profile { description "Static policy-control profile"; type string { length "1 .. 64"; } } choice dynamic-profile-choice { case case_1 { leaf policy-control-dynamic-profile { description "Dynamic policy control profile"; type string { length "1 .. 64"; } } } case case_2 { leaf policy-control-dynamic-gx-profile { description "Gx policy control profile"; type string { length "1 .. 64"; } } } } leaf rating-control-profile { description "Rating control profile"; type string { length "1 .. 64"; } } choice credit-control-choice { case case_1 { leaf credit-control-profile { description "Credit control profile"; type string { length "1 .. 64"; } } } case case_2 { leaf credit-control-ro-profile { description "Ro profile"; type string { length "1 .. 64"; } } } } leaf charging-unit-profile { description "Charging unit profile"; type string { length "1 .. 64"; } } leaf block-based-charging-profile { description "Block-based charging profile"; type string { length "1 .. 64"; } } leaf qos-control-profile { description "QoS control profile"; type string { length "1 .. 64"; } } } } grouping v3-user-config { description "SNMPv3 user configuration"; leaf name { description "User name"; type string { length "1 .. 32"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice authentication { case case_1 { container authentication-md5 { description "Configure MD5 authentication"; uses auth-object; } } case case_2 { container authentication-sha { description "Configure SHA authentication"; uses auth-object; } } case case_3 { leaf authentication-none { description "Set no authentication for the user"; type empty; } } } choice privacy { case case_1 { container privacy-des { description "Configure DES privacy"; uses priv-object; } } case case_2 { container privacy-3des { description "Configure Triple DES privacy"; uses priv-object; } } case case_3 { container privacy-aes128 { description "Configure AES128 privacy"; uses priv-object; } } case case_4 { leaf privacy-none { description "Set no privacy for the user"; type empty; } } } } grouping auth-object { description "Authentication parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf authentication-password { description "User's authentication password"; type string { length "8 .. 1024"; } } leaf authentication-key { description "Encrypted key used for user authentication"; type unreadable; } } grouping priv-object { description "Privacy parameters"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf privacy-password { description "User's privacy password"; type string { length "8 .. 1024"; } } } grouping v6-relay-option-interface-id-type { description "DHCPv6 option-18 (interface-id) processing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container prefix { description "Add prefix to circuit/interface-id or remote-id"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf host-name { description "Add router host name to circuit / interface-id or remote-id"; type empty; } leaf logical-system-name { description "Add logical system name to circuit / interface-id or remote-id"; type empty; } leaf routing-instance-name { description "Add routing instance name to circuit / interface-id or remote-id"; type empty; } } leaf use-interface-description { description "Use interface description instead of circuit identifier"; type enumeration { enum logical { description "Use the logical interface description"; } enum device { description "Use the device interface description"; } } } leaf use-vlan-id { description "Use VLAN id instead of name"; type empty; } leaf no-vlan-interface-name { description "Not include vlan or interface name"; type empty; } leaf include-irb-and-l2 { description "Include IRB and L2interface name"; type empty; } leaf use-option-82 { description "Use option-82 circuit-id for interface-id"; type empty; } } grouping v6-relay-option-remote-id-type { description "DHCPv6 option-37 (remote-id) processing"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container prefix { description "Add prefix to circuit/interface-id or remote-id"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf host-name { description "Add router host name to circuit / interface-id or remote-id"; type empty; } leaf logical-system-name { description "Add logical system name to circuit / interface-id or remote-id"; type empty; } leaf routing-instance-name { description "Add routing instance name to circuit / interface-id or remote-id"; type empty; } } leaf use-interface-description { description "Use interface description instead of circuit identifier"; type enumeration { enum logical { description "Use the logical interface description"; } enum device { description "Use the device interface description"; } } } leaf use-vlan-id { description "Use VLAN id instead of name"; type empty; } leaf no-vlan-interface-name { description "Not include vlan or interface name"; type empty; } leaf include-irb-and-l2 { description "Include IRB and L2interface name"; type empty; } } grouping v6-server-group-type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list server-group { key name; ordered-by user; description "One or more server groups"; leaf name { description "DHCPv6 Server group name"; type string { length "1 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list address { key name; ordered-by user; description "IP Address of one or more DHCP servers"; leaf name { description "IP Address of DHCP server"; type ipaddr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } } grouping v6rd_object { leaf name { description "6rd concentrator name"; type string { length "1 .. 63"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf softwire-address { description "Softwire concentrator IPV4 prefix"; type ipv4addr; mandatory true; } leaf ipv4-prefix { description "6rd customer edge IPV4 prefix"; type ipv4prefix; mandatory true; } leaf v6rd-prefix { description "6rd domain's IPV6 prefix"; type ipv6prefix; mandatory true; } leaf mtu-v4 { description "MTU for the softwire tunnel"; type int32 { range "576 .. 9192"; } mandatory true; } } grouping vchassis_trace_file_type { leaf filename { description "Name of file in which to write trace information"; type string { length "1 .. 1024"; } mandatory true; } leaf replace { description "Replace trace file rather than appending to it"; type empty; } leaf size { description "Maximum trace file size"; type string; } leaf files { description "Maximum number of trace files"; default "10"; type uint32 { range "2 .. 1000"; } } leaf no-stamp { description "Do not timestamp trace file"; type empty; } leaf world-readable { description "Allow any user to read the log file"; type empty; } leaf no-world-readable { description "Allow any user to read the log file"; type empty; } } grouping version-ipfix-template { description "One or more version-ipfix templates for flow monitoring"; leaf name { description "Name of template"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf flow-active-timeout { description "Interval after which active flow is exported"; default "60"; type uint32 { range "10 .. 600"; } } leaf flow-inactive-timeout { description "Period of inactivity that marks a flow inactive"; default "60"; type uint32 { range "10 .. 600"; } } leaf template-id { description "Template id"; type uint32 { range "1024 .. 65535"; } } leaf option-template-id { description "Options template id"; type uint32 { range "1024 .. 65535"; } } leaf observation-domain-id { description "Observation Domain Id"; default "0"; type uint32 { range "0 .. 255"; } } container template-refresh-rate { presence "enable template-refresh-rate"; description "Template refresh rate"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf packets { description "In number of packets"; default "4800"; type uint32 { range "1 .. 480000"; } } leaf seconds { description "In number of seconds"; type uint32 { range "10 .. 600"; } } } container option-refresh-rate { presence "enable option-refresh-rate"; description "Option template refresh rate"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf packets { description "In number of packets"; default "4800"; type uint32 { range "1 .. 480000"; } } leaf seconds { description "In number of seconds"; type uint32 { range "10 .. 600"; } } } choice template-types { case case_1 { container ipv4-template { presence "enable ipv4-template"; description "IPv4 template configuration"; } } case case_2 { container ipv6-template { presence "enable ipv6-template"; description "IPv6 template configuration"; } } case case_3 { container vpls-template { presence "enable vpls-template"; description "VPLS template configuration"; } } } container flow-key { description "Flow key for the template"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf flow-direction { description "Include flow direction"; type empty; } leaf vlan-id { description "Include vlan ID"; type empty; } } } grouping version9-template { description "One or more version 9 templates for flow monitoring"; leaf name { description "Name of template"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf flow-active-timeout { description "Interval after which active flow is exported"; default "60"; type uint32 { range "10 .. 600"; } } leaf flow-inactive-timeout { description "Period of inactivity that marks a flow inactive"; default "60"; type uint32 { range "10 .. 600"; } } leaf template-id { description "Template id"; type uint32 { range "1024 .. 65535"; } } leaf option-template-id { description "Options template id"; type uint32 { range "1024 .. 65535"; } } leaf source-id { description "Source Id"; default "0"; type uint32 { range "0 .. 255"; } } container template-refresh-rate { presence "enable template-refresh-rate"; description "Template refresh rate"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf packets { description "In number of packets"; default "4800"; type uint32 { range "1 .. 480000"; } } leaf seconds { description "In number of seconds"; type uint32 { range "10 .. 600"; } } } container option-refresh-rate { presence "enable option-refresh-rate"; description "Option template refresh rate"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf packets { description "In number of packets"; default "4800"; type uint32 { range "1 .. 480000"; } } leaf seconds { description "In number of seconds"; type uint32 { range "10 .. 600"; } } } choice template-types { case case_1 { container mpls-ipv4-template { presence "enable mpls-ipv4-template"; description "MPLS-IPv4 template configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list label-position { description "One or more MPLS label positions"; type uint8 { range "1 .. 8"; } max-elements 3; } } } case case_2 { container mpls-template { presence "enable mpls-template"; description "MPLS template configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list label-position { description "One or more MPLS label positions"; type uint8 { range "1 .. 8"; } max-elements 3; } } } case case_3 { container ipv6-template { presence "enable ipv6-template"; description "IPv6 template configuration"; } } case case_4 { container peer-as-billing-template { presence "enable peer-as-billing-template"; description "Peer AS billing template configuration"; } } case case_5 { container ipv4-template { presence "enable ipv4-template"; description "IPv4 template configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container nexthop-options { presence "enable nexthop-options"; description "Additional information retrieved from nexthop"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice nexthop-types { case case_1 { container mpls { presence "enable mpls"; description "MPLS information retrieved from nexthop"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list label-position { description "One or more MPLS label positions"; type uint8 { range "1 .. 3"; } max-elements 3; } } } } } } } } container flow-key { description "Flow key for the template"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf flow-direction { description "Include flow direction"; type empty; } leaf vlan-id { description "Include vlan ID"; type empty; } } } grouping virtual-interface-indications-object { description "Virtual interface indications"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container virtual-interface-up { uses pgcp-virtual-interface-up-object; } container virtual-interface-down { uses pgcp-virtual-interface-down-object; } } grouping pgcp-virtual-interface-down-object { description "Virtual interface down"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf graceful { description "Configure graceful service change"; type enumeration { enum none { description "Suppress graceful-905 service change"; } enum graceful-905 { description "Termination taken out of service"; } } } leaf administrative { description "Configure administrative service change"; type enumeration { enum forced-905 { description "Termination taken out of service"; } enum forced-906 { description "Loss of lower layer connectivity"; } enum none { description "Suppress service change"; } } } } grouping pgcp-virtual-interface-up-object { description "Virtual interface up"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf warm { description "Configure warm-boot service change"; type enumeration { enum restart-900 { description "Service restored"; } enum none { description "Suppress restart-900 service change"; } } } leaf cancel-graceful { description "Configure cancel-graceful service change"; type enumeration { enum none { description "Suppress restart-918 service change"; } enum restart-918 { description "Cancel graceful"; } } } } grouping vlan-types { description "Virtual LAN"; leaf name { description "VLAN name"; type string { length "2 .. 64"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf description { description "Text description of VLANs"; type string { } } choice vlan-identifier-choice { case case_1 { leaf vlan-id { description "IEEE 802.1q VLAN identifier for VLAN"; type string; } } case case_2 { leaf-list vlan-id-list { description "Create VLAN for each of the vlan-id specified in the vlan-id-list"; type vlan-range; } } case case_3 { container vlan-tags { presence "enable vlan-tags"; description "IEEE 802.1q VLAN tags for VLANs"; leaf outer { description "[tpid.]vlan-id, tpid format is 0xNNNN and is optional"; type string { } mandatory true; } leaf inner { description "[tpid.]vlan-id, tpid format is 0xNNNN and is optional"; type string { } } } } } list interface { key name; ordered-by user; description "Interface name for this VLAN"; leaf name { description "(null)"; type string; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } leaf l3-interface { description "L3 interface name for this vlans"; type interface-unit; } container forwarding-options { description "Forwarding options configuration"; uses juniper-ethernet-switching-forwarding-options; } container multicast-snooping-options { description "Multicast snooping option configuration"; uses juniper-multicast-snooping-options; } container switch-options { description "VLANs switch-options configuration"; uses juniper-protocols-vlan; } leaf domain-type { description "Type of VLANs SVLAN/DVLAN"; type enumeration { enum bridge { description "Forwarding instance"; } } } leaf no-irb-layer-2-copy { description "Disable transmission of layer-2 copy of packets of IRB routing-interface"; type empty; } leaf service-id { description "Service id required if VLAN is of type MC-AE, and vlan-id all or vlan-id none or vlan-tags is configured"; type uint32 { range "1 .. 65535"; } } leaf mcae-mac-synchronize { description "Enable IRB MAC synchronization in this VLAN"; type empty; } leaf mcae-mac-flush { description "Enable IRB MAC flush in a/s mode for this VLAN on MCAE link up"; type empty; } leaf private-vlan { description "Type of secondary vlan for private vlan"; type enumeration { enum isolated { description "Isolated vlan"; } enum community { description "Community vlan"; } } } leaf isolated-vlan { description "VLAN id or name"; type string { } } leaf-list community-vlans { description "List of VLAN id or name"; type string; } container vxlan { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ovsdb-managed { description "Bridge-domain is managed remotely via VXLAN OVSDB Controller"; type empty; } leaf vni { description "VXLAN identifier"; type uint32 { range "1 .. 16777214"; } mandatory true; } presence "enable vxlan"; leaf multicast-group { description "Multicast group registered for VXLAN segment"; type ipv4addr; } leaf encapsulate-inner-vlan { description "Retain inner VLAN in the packet"; type empty; } leaf decapsulate-accept-inner-vlan { description "Accept VXLAN packets with inner VLAN"; type empty; } leaf unreachable-vtep-aging-timer { description "Unreachable VXLAN tunnel endpoint removal timer"; units "seconds"; type uint16 { range "300 .. 1800"; } } leaf ingress-node-replication { description "Enable ingress node replication"; type empty; } } } grouping juniper-ethernet-switching-forwarding-options { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container filter { description "Filtering for ethernet switching forwarding table"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of input filter to apply for forwarded packets"; type string; } leaf output { description "Name of output filter to apply for forwarded packets"; type string; } } container flood { description "Filtering for ethernet switching flood table"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf input { description "Name of input filter to apply for ethernet switching flood packets"; type string; } } container dhcp-relay { description "Dynamic Host Configuration Protocol relay configuration"; uses jdhcp-relay-type; } container dhcp-security { description "DHCP access security configuration"; uses jdhcp-security-type; } container fip-security { description "FCoE Initiation Protocol security configuration"; uses fip-security-type; } } grouping fip-security-type { leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list interface { key name; description "Configure access port security for this interface"; leaf name { description "(null)"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf fcoe-trusted { description "Make this interface trusted for FCoE"; type empty; } leaf no-fcoe-trusted { description "Make this interface trusted for FCoE"; type empty; } } leaf fc-map { description "FCoE MAC address prefix"; type string { } } container examine-vn2vf { presence "enable examine-vn2vf"; description "Enable FIP snooping on this VLAN"; } container examine-vn2vn { presence "enable examine-vn2vn"; description "Enable VN2VN FIP snooping on this VLAN"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf beacon-period { description "FCoE VN2VN beacon period"; default "8000"; units "milliseconds"; type uint32 { range "250 .. 90000"; } } } } grouping juniper-protocols-vlan { description "VLANs switch-options configuration"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container mac-table-size { description "Size of MAC address forwarding table"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf limit { description "Maximum number of MAC addresses"; type uint32 { range "16 .. 1048575"; } } leaf packet-action { description "Action when MAC limit is reached"; type enumeration { enum drop { description "Drop packets and do not learn. Default is forward"; } } } } container interface-mac-limit { description "Maximum MAC address learned per interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf limit { description "Maximum number of MAC addresses per interface"; type uint32 { range "1 .. 131071"; } } leaf packet-action { description "Action when MAC limit is reached"; type enumeration { enum none { description "Forward the packet"; } enum drop { description "Drop packets and do not learn. Default is forward"; } enum log { description "Do not drop the packet but generate an alarm, an SNMP trap or a system log entry"; } enum shutdown { description "Disable the interface and generate an alarm, an SNMP trap or a system log entry"; } enum drop-and-log { description "Drop the packet and generate an alarm, an SNMP trap or a system log entry"; } } } } container mac-move-limit { presence "enable mac-move-limit"; description "Number of MAC movements allowed on this VLAN"; leaf limit { description "Number of MAC movements allowed on this VLAN"; type uint32 { range "1 .. 4294967295"; } mandatory true; } leaf packet-action { description "Action to be taken in case the MAC movement limit is exceeded"; default "drop"; type enumeration { enum none { description "Take no action"; } enum drop { description "Drop the packet and do not generate an alarm"; } enum log { description "Do not drop the packet but generate an alarm, an SNMP trap, or a system log entry."; } enum shutdown { description "Disable the interface and generate an alarm, an SNMP trap, or a system log entry."; } enum drop-and-log { description "Drop the packet and generate an alarm, an SNMP trap, or a system log entry."; } } } } leaf mac-table-aging-time { description "Delay for discarding MAC address if no updates are received"; units "seconds"; type uint32 { range "10 .. 1000000"; } } leaf no-mac-learning { description "Disable dynamic MAC address learning"; type empty; } leaf mac-statistics { description "Enable MAC address statistics"; type empty; } list interface { key name; ordered-by user; description "Interface that connect this site to the VPN"; leaf name { description "Interface name"; type interface-name; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } container interface-mac-limit { description "Maximum number of MAC addresses learned on the interface"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf limit { description "Maximum number of MAC addresses per interface"; type uint32 { range "1 .. 131071"; } } leaf packet-action { description "Action when MAC limit is reached"; type enumeration { enum none { description "Forward the packet"; } enum drop { description "Drop packets and do not learn. Default is forward"; } enum log { description "Do not drop the packet but generate an alarm, an SNMP trap or a system log entry"; } enum shutdown { description "Disable the interface and generate an alarm, an SNMP trap or a system log entry"; } enum drop-and-log { description "Drop the packet and generate an alarm, an SNMP trap or a system log entry"; } } } } leaf action-priority { description "Blocking priority of this interface on mac move detection"; type uint32 { range "0 .. 7"; } } leaf remote-site-id { description "Site identifier associated with this interface"; type uint32 { range "1 .. 65534"; } } leaf target-attachment-identifier { description "FEC 129 VPWS target attachment identifier"; type string { } } leaf flow-label-transmit { description "Advertise capability to push Flow Label in transmit direction to remote PE"; type empty; } leaf flow-label-receive { description "Advertise capability to push Flow Label in receive direction to remote PE"; type empty; } leaf encapsulation-type { description "Encapsulation type for VPN"; type enumeration { enum atm-aal5 { description "ATM AAL/5 encapsulation"; } enum atm-cell { description "ATM port promiscuous mode cell encapsulation"; } enum atm-cell-port-mode { description "ATM port promiscuous mode cell encapsulation"; } enum atm-cell-vp-mode { description "ATM VP promiscuous mode cell encapsulation"; } enum atm-cell-vc-mode { description "ATM non-promiscuous cell encapsulation"; } enum frame-relay { description "Frame Relay encapsulation"; } enum ppp { description "PPP encapsulation"; } enum cisco-hdlc { description "Cisco-compatible HDLC encapsulation"; } enum ethernet-vlan { description "Ethernet VLAN encapsulation"; } enum ethernet { description "Ethernet encapsulation"; } enum interworking { description "Layer 2.5 interworking VPN"; } enum frame-relay-port-mode { description "Frame Relay port mode encapsulation"; } enum satop-t1 { description "SATOP-T1 based Layer 2 VPN"; } enum satop-e1 { description "SATOP-E1 based Layer 2 VPN"; } enum satop-t3 { description "SATOP-T3 based Layer 2 VPN"; } enum satop-e3 { description "SATOP-E3 based Layer 2 VPN"; } enum cesop { description "CESOP based Layer 2 VPN"; } } } leaf ignore-encapsulation-mismatch { description "Allow different encapsulation types on local and remote end"; type empty; } leaf mtu { description "MTU to be advertised to the remote end"; type uint16 { range "512 .. 65535"; } } leaf ignore-mtu-mismatch { description "Allow different MTU values on local and remote end"; type empty; } choice cword { case case_1 { leaf control-word { description "Adds control-word to the Layer 2 encapsulation"; type empty; } } case case_2 { leaf no-control-word { description "Disables control-word to the Layer 2 encapsulation"; type empty; } } } leaf pseudowire-status-tlv { description "Send pseudowire status TLV"; type empty; } container oam { description "OAM Configuration for VPN"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf ping-interval { description "Time interval between ping messages"; default "60"; units "seconds"; type uint16 { range "30 .. 3600"; } } container bfd-liveness-detection { description "Bidirectional Forwarding Detection (BFD) options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf version { description "BFD protocol version number"; default "automatic"; type enumeration { enum 0 { description "BFD version 0 (deprecated)"; } enum 1 { description "BFD version 1"; } enum automatic { description "Choose BFD version automatically"; } } } leaf minimum-interval { description "Minimum transmit and receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf minimum-receive-interval { description "Minimum receive interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf multiplier { description "Detection time multiplier"; default "3"; type uint32 { range "1 .. 255"; } } choice adaptation-choice { case case_1 { leaf no-adaptation { description "Disable adaptation"; type empty; } } } container transmit-interval { description "Transmit-interval options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf minimum-interval { description "Minimum transmit interval"; units "milliseconds"; type uint32 { range "1 .. 255000"; } } leaf threshold { description "High transmit interval triggering a trap"; units "milliseconds"; type uint32; } } container detection-time { description "Detection-time options"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf threshold { description "High detection-time triggering a trap"; units "milliseconds"; type uint32; } } } } leaf community { description "Community associated with this interface"; type string; } list static-mac { key name; ordered-by user; description "Static MAC addresses assigned to this interface"; leaf name { description "MAC address"; type mac-addr; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list vlan-id { key name; ordered-by user; description "VLAN ID of learning VLAN"; leaf name { description "Learning VLAN"; type uint32 { range "0 .. 4094"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } } } leaf no-mac-learning { description "Disable dynamic MAC address learning"; type empty; } leaf description { description "Text description"; type string; } } } grouping vlan_map { description "IEEE 802.1q Virtual LAN (VLAN) Tag mapping"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice operation_choices { case case_1 { leaf push { description "Push a VLAN tag"; type empty; } } case case_2 { leaf swap { description "Swap a VLAN tag"; type empty; } } case case_3 { leaf pop { description "Pop a VLAN tag"; type empty; } } case case_4 { leaf push-push { description "Push two VLAN tags"; type empty; } } case case_5 { leaf swap-push { description "Swap VLAN tag and push a new VLAN tag"; type empty; } } case case_6 { leaf swap-swap { description "Swap both outer and inner VLAN tags"; type empty; } } case case_7 { leaf pop-swap { description "Pop outer VLAN tag and swap inner VLAN tag"; type empty; } } case case_8 { leaf pop-pop { description "Pop both outer and inner VLAN tags"; type empty; } } } leaf tag-protocol-id { description "IEEE 802.1q Tag Protocol Identifier to rewrite"; type string { } } leaf inner-tag-protocol-id { description "IEEE 802.1q Tag Protocol ID to rewrite for inner tag"; type string { } } leaf vlan-id { description "VLAN ID to rewrite"; type string; } leaf inner-vlan-id { description "VLAN ID to rewrite for inner tag"; type uint32 { range "0 .. 4094"; } } } grouping vpls_filter { description "Define an VPLS firewall filter"; leaf name { description "Filter name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf-list accounting-profile { description "Accounting profile name"; type string; } leaf interface-specific { description "Defined counters are interface specific"; type empty; } leaf physical-interface-filter { description "Filter is physical interface filter"; type empty; } list term { key name; ordered-by user; description "Define a firewall term"; leaf name { description "Term name"; type string { } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf filter { description "Filter to include"; type string { } } container from { description "Define match criteria"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice interface-group_choice { case case_1 { leaf-list interface-group { description "Range of values"; type string; } } case case_2 { leaf-list interface-group-except { description "Range of values"; type string; } } } choice ether-type_choice { case case_1 { leaf-list ether-type { description "(null)"; type string; } } case case_2 { leaf-list ether-type-except { description "(null)"; type string; } } } choice vlan-ether-type_choice { case case_1 { leaf-list vlan-ether-type { description "(null)"; type string; } } case case_2 { leaf-list vlan-ether-type-except { description "(null)"; type string; } } } list destination-mac-address { key name; ordered-by user; description "Destination MAC address"; uses firewall_mac_addr_object; } list source-mac-address { key name; ordered-by user; description "Source MAC address"; uses firewall_mac_addr_object; } choice forwarding-class_choice { case case_1 { leaf-list forwarding-class { description "String name"; type string { } } } case case_2 { leaf-list forwarding-class-except { description "String name"; type string { } } } } choice loss-priority_choice { case case_1 { leaf-list loss-priority { description "(null)"; type enumeration { enum low { description "Loss priority low"; } enum high { description "Loss priority high"; } enum medium-low { description "Loss priority medium-low"; } enum medium-high { description "Loss priority medium-high"; } } } } case case_2 { leaf-list loss-priority-except { description "(null)"; type enumeration { enum low { description "Loss priority low"; } enum high { description "Loss priority high"; } enum medium-low { description "Loss priority medium-low"; } enum medium-high { description "Loss priority medium-high"; } } } } } choice learn-vlan-id_choice { case case_1 { leaf-list learn-vlan-id { description "Range of values"; type string; } } case case_2 { leaf-list learn-vlan-id-except { description "Range of values"; type string; } } } choice learn-vlan-1p-priority_choice { case case_1 { leaf-list learn-vlan-1p-priority { description "802.1p priority value 0-7"; type uint32 { range "0 .. 7"; } } } case case_2 { leaf-list learn-vlan-1p-priority-except { description "802.1p priority value 0-7"; type uint32 { range "0 .. 7"; } } } } choice user-vlan-id_choice { case case_1 { leaf-list user-vlan-id { description "Range of values"; type string; } } case case_2 { leaf-list user-vlan-id-except { description "Range of values"; type string; } } } choice user-vlan-1p-priority_choice { case case_1 { leaf-list user-vlan-1p-priority { description "802.1p priority value 0-7"; type uint32 { range "0 .. 7"; } } } case case_2 { leaf-list user-vlan-1p-priority-except { description "802.1p priority value 0-7"; type uint32 { range "0 .. 7"; } } } } choice learn-vlan-dei_choice { case case_1 { leaf-list learn-vlan-dei { description "DEI value 0-1"; type uint32 { range "0 .. 1"; } } } case case_2 { leaf-list learn-vlan-dei-except { description "DEI value 0-1"; type uint32 { range "0 .. 1"; } } } } choice traffic-type_choice { case case_1 { leaf-list traffic-type { description "(null)"; type enumeration { enum broadcast { description "Packets with broadcast ethernet address"; } enum multicast { description "Packets with multicast ethernet address"; } enum unknown-unicast { description "Packets for which destination ethernet address has not been learnt"; } enum known-unicast { description "Packets for which destination ethernet address has been learnt"; } } } } case case_2 { leaf-list traffic-type-except { description "(null)"; type enumeration { enum broadcast { description "Packets with broadcast ethernet address"; } enum multicast { description "Packets with multicast ethernet address"; } enum unknown-unicast { description "Packets for which destination ethernet address has not been learnt"; } enum known-unicast { description "Packets for which destination ethernet address has been learnt"; } } } } } list ip-source-address { key name; ordered-by user; description "Match IP source address"; uses firewall_addr_object; } list ip-destination-address { key name; ordered-by user; description "Match IP destination address"; uses firewall_addr_object; } list ip-address { key name; ordered-by user; description "Match IP source or destination address"; uses firewall_addr_object; } choice ip-protocol_choice { case case_1 { leaf-list ip-protocol { description "(null)"; type string; } } case case_2 { leaf-list ip-protocol-except { description "(null)"; type string; } } } choice dscp_choice { case case_1 { leaf-list dscp { description "(null)"; type string; } } case case_2 { leaf-list dscp-except { description "(null)"; type string; } } } choice ip-precedence_choice { case case_1 { leaf-list ip-precedence { description "(null)"; type string; } } case case_2 { leaf-list ip-precedence-except { description "(null)"; type string; } } } choice source-port_choice { case case_1 { leaf-list source-port { description "(null)"; type string; } } case case_2 { leaf-list source-port-except { description "(null)"; type string; } } } choice destination-port_choice { case case_1 { leaf-list destination-port { description "(null)"; type string; } } case case_2 { leaf-list destination-port-except { description "(null)"; type string; } } } choice port_choice { case case_1 { leaf-list port { description "(null)"; type string; } } case case_2 { leaf-list port-except { description "(null)"; type string; } } } leaf tcp-flags { description "Match TCP flags"; type string; } choice icmp-type_choice { case case_1 { leaf-list icmp-type { description "(null)"; type string; } } case case_2 { leaf-list icmp-type-except { description "(null)"; type string; } } } choice icmp-code_choice { case case_1 { leaf-list icmp-code { description "(null)"; type string; } } case case_2 { leaf-list icmp-code-except { description "(null)"; type string; } } } choice igmp-type_choice { } choice igmp-code_choice { } list interface { key name; ordered-by user; description "Match interface name"; uses match_interface_object; } list interface-set { key name; ordered-by user; description "Match interface in set"; uses match_interface_set_object; } list source-prefix-list { key name; ordered-by user; description "Match IP source prefixes in named list"; uses firewall_prefix_list; } list destination-prefix-list { key name; ordered-by user; description "Match IP destination prefixes in named list"; uses firewall_prefix_list; } list prefix-list { key name; ordered-by user; description "Match IP source or destination prefixes in named list"; uses firewall_prefix_list; } choice isid_choice { } choice isid-priority-code-point_choice { } choice isid-dei_choice { } list ipv6-destination-address { key name; ordered-by user; description "Match IPv6 destination address"; uses firewall_addr6_object; } list ipv6-source-address { key name; ordered-by user; description "Match IPv6 source address"; uses firewall_addr6_object; } list ipv6-address { key name; ordered-by user; description "Match IPv6 address"; uses firewall_addr6_object; } choice ipv6-next-header_choice { case case_1 { leaf-list ipv6-next-header { description "(null)"; type string; } } case case_2 { leaf-list ipv6-next-header-except { description "(null)"; type string; } } } choice ipv6-payload-protocol_choice { case case_1 { leaf-list ipv6-payload-protocol { description "(null)"; type string; } } case case_2 { leaf-list ipv6-payload-protocol-except { description "(null)"; type string; } } } choice ipv6-traffic-class_choice { case case_1 { leaf-list ipv6-traffic-class { description "(null)"; type string; } } case case_2 { leaf-list ipv6-traffic-class-except { description "(null)"; type string; } } } list ipv6-source-prefix-list { key name; ordered-by user; description "Match IPV6 source prefixes in named list"; uses firewall_prefix_list; } list ipv6-destination-prefix-list { key name; ordered-by user; description "Match IPV6 destination prefixes in named list"; uses firewall_prefix_list; } list ipv6-prefix-list { key name; ordered-by user; description "Match IP source or destination prefixes in named list"; uses firewall_prefix_list; } choice flex-mask_choice { case case_1 { container flexible-match-mask { description "Match flexible mask"; uses match_L2_flexible_mask; } } } choice flex-range_choice { case case_1 { container flexible-match-range { description "Match flexible range"; uses match_L2_flexible_range; } } } } container then { description "Action to take if the 'from' condition is matched"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice policer-choice { case case_1 { leaf policer { description "Name of policer to use to rate-limit traffic"; type string { } } } case case_2 { container three-color-policer { description "Police the packet using a three-color-policer"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice type-choice { case case_1 { leaf single-rate { description "Name of single-rate three-color policer to use to rate-limit traffic"; type string { } } } case case_2 { leaf two-rate { description "Name of two-rate three-color policer to use to rate-limit traffic"; type string { } } } } } } case case_3 { leaf hierarchical-policer { description "Name of hierarchical policer to use to rate-limit traffic"; type string { } } } } leaf count { description "Count the packet in the named counter"; type string { } } leaf loss-priority { description "Packet's loss priority"; type enumeration { enum low { description "Loss priority low"; } enum high { description "Loss priority high"; } enum medium-low { description "Loss priority medium-low"; } enum medium-high { description "Loss priority medium-high"; } } } leaf forwarding-class { description "Classify packet to forwarding class"; type string { } } choice designation { case case_1 { leaf accept { description "Accept the packet"; type empty; } } case case_2 { leaf discard { description "Discard the packet"; type empty; } } case case_3 { leaf next { description "Continue to next term in a filter"; type enumeration { enum term { description "Continue to next term in a filter"; } } } } } leaf port-mirror-instance { description "Port-mirror the packet to specified instance"; type string { } } leaf port-mirror { description "Port-mirror the packet"; type empty; } leaf next-hop-group { description "Use specified next-hop group"; type string; } choice policy-map-choice { case case_1 { leaf clear-policy-map { description "Clear the policy marking"; type empty; } } case case_2 { leaf policy-map { description "Policy map action"; type string { } } } } leaf sample { description "Sample the packet"; type empty; } } } leaf instance-shared { description "Filter is routing-instance shared"; type empty; } } grouping vrrp-group { description "Virtual Router Redundancy Protocol group"; leaf name { description "Identifier for VRRP group"; type uint32 { range "0 .. 255"; } } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } choice address { case case_1 { leaf-list virtual-address { description "One or more virtual IPv4 addresses"; type ipv4addr; } } case case_2 { leaf-list virtual-inet6-address { description "One or more virtual inet6 addresses"; type ipv6addr; } } } leaf virtual-link-local-address { description "Virtual link-local addresses"; type ipv6addr; } leaf priority { description "Virtual router election priority"; type uint32 { range "0 .. 255"; } } choice advertisement_type { case case_1 { leaf advertise-interval { description "Advertisement interval"; units "seconds"; type uint32 { range "1 .. 255"; } } } case case_2 { leaf fast-interval { description "Fast advertisement interval"; units "milliseconds"; type uint32 { range "10 .. 40950"; } } } case case_3 { leaf inet6-advertise-interval { description "Inet6 advertisement interval"; units "milliseconds"; type uint32 { range "100 .. 40000"; } } } } choice preempt_type { case case_1 { container preempt { presence "enable preempt"; description "Allow preemption"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf hold-time { description "Preemption hold time"; units "seconds"; type uint32 { range "0 .. 3600"; } } } } case case_2 { leaf no-preempt { description "Don't allow preemption"; type empty; } } } choice accept_type { case case_1 { leaf accept-data { description "Accept packets destined for virtual IP address"; type empty; } } case case_2 { leaf no-accept-data { description "Don't accept packets destined for virtual IP address"; type empty; } } } leaf authentication-type { description "Authentication type"; type enumeration { enum md5 { description "HMAC-MD5-96"; } enum simple { description "Simple password"; } } } leaf authentication-key { description "Authentication key"; type unreadable; } container track { description "Interfaces to track for VRRP group"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf priority-hold-time { description "Priority hold time"; units "seconds"; type uint32 { range "0 .. 3600"; } } list interface { key name; ordered-by user; description "Interface to track in VRRP group"; leaf name { description "Name of interface"; type interface-unit; } leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } list bandwidth-threshold { key name; description "Track bandwidth of interface"; leaf name { description "Interface speed below which priority cost is incurred"; units "bits per second"; type string; } leaf priority-cost { description "Value subtracted from priority when bandwidth is below threshold"; type uint32 { range "1 .. 254"; } } } leaf priority-cost { description "Value to subtract from priority when interface is down"; type uint32 { range "1 .. 254"; } } } list route { key "route_address routing-instance"; ordered-by user; description "Route to track in VRRP group"; leaf route_address { description "Route address"; type ipprefix-mandatory; } leaf routing-instance { description "Routing instance to which route belongs, or 'default'"; type string { } } leaf priority-cost { description "Value to subtract from priority when route is down"; type uint32 { range "1 .. 254"; } } } } container vrrp-inherit-from { description "VRRP group to follow for this VRRP group"; leaf-list apply-groups { description "Groups from which to inherit configuration data"; type string; } leaf-list apply-groups-except { description "Don't inherit configuration data from these groups"; type string; } leaf active-interface { description "Interface name of VRRP active group"; type interface-unit; mandatory true; } presence "enable vrrp-inherit-from"; leaf active-group { description "Identifier for VRRP active group"; type uint32 { range "0 .. 255"; } mandatory true; } } leaf advertisements-threshold { description "Number of vrrp advertisements missed before declaring master down"; type uint32 { range "1 .. 15"; } } } }