Junos chassis configuration module
Version: 2019-01-01
module junos-nfx-conf-chassis { yang-version 1; namespace "http://yang.juniper.net/junos-nfx/conf/chassis"; prefix jc-chassis; import junos-common-ddl-extensions { prefix junos; revision-date "2019-01-01"; } import junos-common-types { prefix jt; revision-date "2019-01-01"; } import junos-nfx-conf-root { prefix jc; revision-date "2019-01-01"; } organization "Juniper Networks, Inc."; contact "yang-support@juniper.net"; description "Junos chassis configuration module"; revision "2019-01-01" { description "Junos: 21.3R1.9"; } augment /jc:configuration { uses chassis-group; } augment /jc:configuration/jc:groups { uses chassis-group; } grouping chassis-group { container chassis { description "Chassis configuration"; uses chassis_type; } // container chassis } // grouping chassis-group grouping chassis_type { uses apply-advanced; container copy-tos-to-outer { description "Copy TOS from inner to outer header"; uses apply-advanced; container service-type { description "Service type for which the TOS copy is needed"; uses apply-advanced; leaf gre { type empty; description "Copy TOS for GRE Tunnel service"; } leaf mt { type empty; description "Copy TOS for MT Tunnel service"; } } // container service-type } // container copy-tos-to-outer container nssu { presence "enable nssu"; description "Nonstop Software Upgrade settings"; uses apply-advanced; list upgrade-group { key "name"; ordered-by user; description "Nonstop Software Upgrade group"; leaf name { type string { length "1 .. 254"; } } uses apply-advanced; leaf-list fpcs { type union { type string { pattern "<.*>|$.*"; } type uint32; } max-elements 16; description "FPCs associated with update-group"; } list member { key "name"; description "Member of virtual chassis configuration"; uses upgrade-group-fpcs; } // list member } // list upgrade-group leaf rcp-count { type union { type string { pattern "<.*>|$.*"; } type int32 { range "1 .. 8"; } } description "Parallel rcp count"; } leaf lc-reboot-delay { type union { type string { pattern "<.*>|$.*"; } type int32 { range "0 .. 600"; } } description "Delay between linecard reboot during NSSU"; } } // container nssu leaf no-power-budget { type empty; description "Disable Chassis Power Budget"; } container psu { description "Power Supply Unit redundancy configuration"; uses apply-advanced; container redundancy { description "PSU Redundancy settings"; uses apply-advanced; leaf n-plus-n { type empty; description "PSU redundancy: N+N configuration"; } } // container redundancy } // container psu leaf fpc-resync { type empty; description "Send and receive Nchip cells for newly onlined FPC"; } leaf craft-lockout { type empty; description "Disable craft interface input"; } container config-button { description "Config button behavior settings"; leaf no-rescue { type empty; description "Don't reset to rescue configuration"; } leaf no-clear { type empty; description "Don't reset to factory-default configuration"; } } // container config-button leaf routing-engine-power-off-button-disable { type empty; description "Disable RE power off button"; } choice source-route-choice { leaf source-route { type empty; status deprecated; description "Enable IP source-route processing"; } leaf no-source-route { type empty; status deprecated; description "Don't enable IP source-route processing"; } } // choice source-route-choice choice packet-scheduling-choice { leaf packet-scheduling { type empty; description "Enable DX2.0 packet scheduling"; } leaf no-packet-scheduling { type empty; description "Don't enable DX2.0 packet scheduling"; } } // choice packet-scheduling-choice leaf route-memory-enhanced { type empty; status deprecated; description "Enhance memory allocation for routes"; } leaf policer-drop-probability-low { type empty; description "Set policer probabilistic drop probability to Minimum"; } leaf policer-limit { type empty; description "Limit the policer tick unit to 32 bytes"; } leaf enhanced-policer { type empty; description "Enhanced Policer Counters"; } leaf effective-shaping-rate { type empty; description "Report effective shaping rate"; } container memory-enhanced { presence "enable memory-enhanced"; description "Enhance memory allocation"; uses apply-advanced; leaf route { type empty; description "Enhance memory allocation for routes"; } leaf filter { type empty; description "Enhance memory allocation for filter"; } leaf vpn-label { type empty; description "Enhance memory allocation for L3 VPN label"; } } // container memory-enhanced leaf vrf-mtu-check { type empty; description "Enable Internet Processor II-based MTU check"; } container icmp { description "ICMP protocol"; uses apply-advanced; leaf rate-limit { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 1000"; } } default "1"; description "Icmp rate-limit for non ttl-expired pkts in range"; } leaf per-iff-rate-limit { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "50 .. 500"; } } default "50"; description "Configure icmp per iff rate limit value in the range 50-500"; } } // container icmp container routing-performance { description "Alter routing performance"; uses apply-advanced; } // container routing-performance container icmp6 { description "ICMP version 6 protocol"; uses apply-advanced; leaf rate-limit { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 1000"; } } default "1"; description "Icmp rate-limit for non ttl-expired pkts in range"; } leaf per-iff-rate-limit { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "50 .. 500"; } } default "50"; description "Configure icmp6 per iff rate limit value in the range 50-500"; } } // container icmp6 leaf maximum-ecmp { type enumeration { enum "16" { value 0; description "Maximum 16 ECMP routes"; } enum "32" { value 1; description "Maximum 32 ECMP routes"; } enum "64" { value 2; description "Maximum 64 ECMP routes"; } enum "96" { value 3; description "Maximum 96 ECMP routes"; } enum "128" { value 4; description "Maximum 128 ECMP routes"; } enum "160" { junos:must "(!("system processes routing force-32-bit"))"; junos:must-message "32-bit rpd doesn't support ecmp greater than 128"; value 5; description "Maximum 160 ECMP routes"; } enum "192" { junos:must "(!("system processes routing force-32-bit"))"; junos:must-message "32-bit rpd doesn't support ecmp greater than 128"; value 6; description "Maximum 192 ECMP routes"; } enum "224" { junos:must "(!("system processes routing force-32-bit"))"; junos:must-message "32-bit rpd doesn't support ecmp greater than 128"; value 7; description "Maximum 224 ECMP routes"; } enum "256" { junos:must "(!("system processes routing force-32-bit"))"; junos:must-message "32-bit rpd doesn't support ecmp greater than 128"; value 8; description "Maximum 256 ECMP routes"; } enum "288" { junos:must "(!("system processes routing force-32-bit"))"; junos:must-message "32-bit rpd doesn't support ecmp greater than 128"; value 9; description "Maximum 288 ECMP routes"; } enum "320" { junos:must "(!("system processes routing force-32-bit"))"; junos:must-message "32-bit rpd doesn't support ecmp greater than 128"; value 10; description "Maximum 320 ECMP routes"; } enum "352" { junos:must "(!("system processes routing force-32-bit"))"; junos:must-message "32-bit rpd doesn't support ecmp greater than 128"; value 11; description "Maximum 352 ECMP routes"; } enum "384" { junos:must "(!("system processes routing force-32-bit"))"; junos:must-message "32-bit rpd doesn't support ecmp greater than 128"; value 12; description "Maximum 384 ECMP routes"; } enum "416" { junos:must "(!("system processes routing force-32-bit"))"; junos:must-message "32-bit rpd doesn't support ecmp greater than 128"; value 13; description "Maximum 416 ECMP routes"; } enum "448" { junos:must "(!("system processes routing force-32-bit"))"; junos:must-message "32-bit rpd doesn't support ecmp greater than 128"; value 14; description "Maximum 448 ECMP routes"; } enum "480" { junos:must "(!("system processes routing force-32-bit"))"; junos:must-message "32-bit rpd doesn't support ecmp greater than 128"; value 15; description "Maximum 480 ECMP routes"; } enum "512" { junos:must "(!("system processes routing force-32-bit"))"; junos:must-message "32-bit rpd doesn't support ecmp greater than 128"; value 16; description "Maximum 512 ECMP routes"; } } description "Maximum ECMP limit for nexthops"; } container ecmp-alb { junos:must "("chassis network-services enhanced-ip")"; junos:must-message "ecmp-alb requires enhanced-ip mode"; presence "enable ecmp-alb"; description "Enable adaptive load balancing for ECMP nexthops"; uses apply-advanced; leaf tolerance { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 100"; } } units "percent"; default "20"; description "Adaptive tolerance in percentage (default 20%)"; } } // container ecmp-alb container redundancy { description "Redundancy settings"; uses chassis_redundancy_type; } // container redundancy container routing-engine { description "Routing Engine settings"; uses chassis_routing_engine_type; } // container routing-engine container aggregated-devices { description "Aggregated devices configuration"; uses chassis_agg_dev_type; } // container aggregated-devices list disk-partition { key "name"; ordered-by user; description "Chassis disk monitor configuration"; leaf name { type enumeration { enum "/var" { value 0; description "Monitor /var partition"; } enum "/config" { value 1; description "Monitor /config partition"; } } description "Choose disk partition to monitor"; } uses apply-advanced; list level { key "name"; ordered-by user; description "Threshold level"; leaf name { type enumeration { enum "high" { value 0; description "Set high level of threshold"; } enum "full" { value 1; description "Set full level of threshold"; } } } uses apply-advanced; container free-space { description "Enter threshold value & choose the metric"; leaf thres-free { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 100"; } } description "Enter free space threshold value"; } choice thres-metric { leaf percent { type empty; description "Free space threshold in %"; } leaf mb { type empty; description "Free space threshold in MB"; } } // choice thres-metric } // container free-space } // list level } // list disk-partition container container-devices { description "Container devices configuration"; uses chassisd_agg_container_type; } // container container-devices container pseudowire-service { presence "enable pseudowire-service"; description "Pseudowire L3 termination device configuration"; uses chassis-pw-type; } // container pseudowire-service container provider-instance-devices { description "Provider instance devices configuration"; uses chassisd_provider_instance_type; } // container provider-instance-devices container redundancy-group { description "Redundancy group configuration"; uses chassisd-redundancy-group-type; } // container redundancy-group container fabric { description "Switch fabric settings"; uses chassis_fabric_type; } // container fabric list fpc { junos:must "((!(any ". <*> vpn-localization") || !("virtual-chassis")))"; junos:must-message "vpn-localization cannot be configured on virtual-chassis"; key "name"; description "Flexible PIC Concentrator parameters"; uses chassis_fpc_type; } // list fpc leaf disable-fm { type empty; description "Disable Fabric Manager"; } leaf disable-power-management { type empty; description "Disable Power Management in this chassis"; } leaf monitor-pem-inputs { type empty; description "Enable low current usage monitoring"; } leaf dedicated-ukern-cpu { junos:must "(!("chassis realtime-ukern-thread"))"; junos:must-message "dedicated-ukern-cpu and realtime-ukern-thread are mutually exclusive"; type empty; description "Run Microkernel on a dedicated CPU core"; } leaf realtime-ukern-thread { junos:must "(!("chassis dedicated-ukern-cpu"))"; junos:must-message "dedicated-ukern-cpu and realtime-ukern-thread are mutually exclusive"; type empty; description "Run Microkernel on a realtime CPU thread"; } container fpc-feb-connectivity { description "Connectivity between Flexible PIC Concentrators and Forwarding Engine Boards"; uses apply-advanced; list fpc { key "name"; leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "FPC slot number"; } uses apply-advanced; container feb { description "FEB slot number"; choice feb-slot-choice { leaf none { type empty; description "FPC not connected to any FEB"; } leaf feb-slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "FEB slot number"; } } // choice feb-slot-choice } // container feb } // list fpc } // container fpc-feb-connectivity container ioc-npc-connectivity { description "Connectivity between IOC and NPC"; uses apply-advanced; list ioc { key "name"; leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "IOC-FPC slot number"; } uses apply-advanced; container npc { description "NPC-FPC slot number"; choice npc-slot-choice { leaf none { type empty; description "IOC not connected to any NPC"; } leaf npc-slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "NPC-FPC slot number"; } } // choice npc-slot-choice } // container npc } // list ioc } // container ioc-npc-connectivity container pem { description "Power supply (PEM) parameters"; uses chassis_pem_type; } // container pem container sib { description "Switch Interface Board parameters"; uses chassis_sib_type; } // container sib list sfm { key "name"; description "Switching and Forwarding Module parameters"; uses chassis_sfm_type; } // list sfm container feb { description "Forwarding Engine Board parameters"; uses chassis_feb_type; } // container feb container afeb { description "Forwarding Engine Board parameters"; uses chassis_feb_type; } // container afeb container tfeb { description "Taz Forwarding Engine Board parameters"; uses chassis_feb_type; } // container tfeb container alarm { description "Global alarm settings"; uses chassis_alarm_type; } // container alarm leaf slow-pfe-alarm { type empty; description "Enable slow (potential) PFE alarm"; } leaf onbox-av-load-flavor { type enumeration { enum "heavy" { value 0; description "Allocates additional resources for improved performance"; } } description "Select onbox anti-virus traffic load flavor"; } leaf fpc-ifl-ae-statistics { type empty; description "Enable fpc ifl ae child statistics"; } leaf ppp-subscriber-services { type enumeration { enum "disable" { value 0; description "Disable PPP subscriber services"; } enum "enable" { value 1; description "Enable PPP subscriber services"; } } default "disable"; description "Select PPP subscriber services"; } leaf ambient-temperature { type enumeration { enum "55C" { value 0; description "55 degree celsius"; } enum "40C" { value 1; description "40 degree celsius"; } enum "25C" { value 2; description "25 degree celsius"; } enum "32C" { value 3; description "32 degree celsius"; } } description "Chassis ambient-temperature value in degree celsius"; } container resource-watch { description "Chassis routing engine resource watch configuration"; uses apply-advanced; leaf resource-watch-enable { type empty; description "Enable resource watch"; } leaf cpu-statistics { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 604800"; } } units "seconds"; description "Set statistics collection, 0 disable"; } leaf junos-statistics { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 604800"; } } units "seconds"; description "Set statistics collection, 0 disable"; } leaf orange-zone-enable { type empty; description "Enable orange zone"; } leaf orange-zone-threshold { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 99"; } } description "Set orange zone value (CPU idle %), default 20"; } leaf red-zone-enable { type empty; description "Enable red zone"; } leaf red-zone-cpu-threshold { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 99"; } } description "Set red zone value (CPU idle %), default 10"; } leaf red-zone-jkl-threshold { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 99"; } } description "Set red zone value (Junos load %), default 50"; } leaf red-zone-snmp-enable { type empty; description "Enable red zone snmp"; } } // container resource-watch leaf network-services { type enumeration { enum "ip" { value 0; description "IP network services"; } enum "ethernet" { junos:must "((!(any "interfaces <*> unit <*> family inet accounting source-class-usage") && (!(any "interfaces <*> unit <*> family inet accounting destination-class-usage") && (!(any "interfaces <*> unit <*> family inet6 accounting source-class-usage") && (!(any "interfaces <*> unit <*> family inet6 accounting destination-class-usage") && (!(any "logical-systems <*> interfaces <*> unit <*> family inet accounting source-class-usage") && (!(any "logical-systems <*> interfaces <*> unit <*> family inet accounting destination-class-usage") && (!(any "logical-systems <*> interfaces <*> unit <*> family inet6 accounting source-class-usage") && !(any "logical-systems <*> interfaces <*> unit <*> family inet6 accounting destination-class-usage")))))))))"; junos:must-message "Cannot configure 'accounting source-class-usage or destination-class-usage' under network-services ethernet"; junos:must "((!("routing-options forwarding-table unicast-reverse-path") && (!(any "routing-instances <*> routing-options forwarding-table unicast-reverse-path") && (!(any "logical-systems <*> routing-options forwarding-table unicast-reverse-path") && !(any "logical-systems <*> routing-instances <*> routing-options forwarding-table unicast-reverse-path")))))"; junos:must-message "Cannot configure 'unicast-reverse-path' under network-services ethernet"; junos:must "((!(any "interfaces <*> unit <*> family inet rpf-check") && (!(any "interfaces <*> unit <*> family inet6 rpf-check") && (!(any "logical-systems <*> interfaces <*> unit <*> family inet rpf-check") && !(any "logical-systems <*> interfaces <*> unit <*> family inet6 rpf-check")))))"; junos:must-message "Cannot configure 'rpf-check' under network-services ethernet"; junos:must "((!(any "policy-options policy-statement <*> then source-class") && (!(any "policy-options policy-statement <*> term <*> then source-class") && (!(any "policy-options policy-statement <*> then destination-class") && (!(any "policy-options policy-statement <*> term <*> then destination-class") && (!(any "policy-options policy-statement <*> from route-filter <*> <*> source-class") && (!(any "policy-options policy-statement <*> term <*> from route-filter <*> <*> source-class") && (!(any "policy-options policy-statement <*> from route-filter <*> <*> destination-class") && (!(any "policy-options policy-statement <*> term <*> from route-filter <*> <*> destination-class") && (!(any "logical-systems <*> policy-options policy-statement <*> then source-class") && (!(any "logical-systems <*> policy-options policy-statement <*> term <*> then source-class") && (!(any "logical-systems <*> policy-options policy-statement <*> then destination-class") && (!(any "logical-systems <*> policy-options policy-statement <*> term <*> then destination-class") && (!(any "logical-systems <*> policy-options policy-statement <*> from route-filter <*> <*> source-class") && (!(any "logical-systems <*> policy-options policy-statement <*> term <*> from route-filter <*> <*> source-class") && (!(any "logical-systems <*> policy-options policy-statement <*> from route-filter <*> <*> destination-class") && !(any "logical-systems <*> policy-options policy-statement <*> term <*> from route-filter <*> <*> destination-class")))))))))))))))))"; junos:must-message "Cannot configure 'destination-class|source-class' under network-services ethernet"; junos:must "((!("protocols bgp family inet any") && (!("protocols bgp family inet flow") && (!("protocols bgp family inet multicast") && (!(any "protocols bgp group <*> family inet any") && (!(any "protocols bgp group <*> family inet flow") && (!(any "protocols bgp group <*> family inet multicast") && (!(any "protocols bgp group <*> neighbor <*> family inet any") && (!(any "protocols bgp group <*> neighbor <*> family inet flow") && (!(any "protocols bgp group <*> neighbor <*> family inet multicast") && (!("protocols bgp family inet-vpn any") && (!("protocols bgp family inet-vpn flow") && (!("protocols bgp family inet-vpn multicast") && (!(any "protocols bgp group <*> family inet-vpn any") && (!(any "protocols bgp group <*> family inet-vpn flow") && (!(any "protocols bgp group <*> family inet-vpn multicast") && (!(any "protocols bgp group <*> neighbor <*> family inet-vpn any") && (!(any "protocols bgp group <*> neighbor <*> family inet-vpn flow") && (!(any "protocols bgp group <*> neighbor <*> family inet-vpn multicast") && (!("protocols bgp family inet6") && (!(any "protocols bgp group <*> family inet6") && (!(any "protocols bgp group <*> neighbor <*> family inet6") && (!("protocols bgp family inet6-vpn") && (!(any "protocols bgp group <*> family inet6-vpn") && (!(any "protocols bgp group <*> neighbor <*> family inet6-vpn") && (!("protocols bgp family inet-mvpn") && (!(any "protocols bgp group <*> family inet-mvpn") && (!(any "protocols bgp group <*> neighbor <*> family inet-mvpn") && (!("protocols bgp family inet6-mvpn") && (!(any "protocols bgp group <*> family inet6-mvpn") && (!(any "protocols bgp group <*> neighbor <*> family inet6-mvpn") && (!("protocols bgp family iso") && (!(any "protocols bgp group <*> family iso") && (!(any "protocols bgp group <*> neighbor <*> family iso") && (!("protocols bgp family iso-vpn") && (!(any "protocols bgp group <*> family iso-vpn") && (!(any "protocols bgp group <*> neighbor <*> family iso-vpn") && (!("protocols bgp family atmvpn") && (!(any "protocols bgp group <*> family atmvpn") && (!(any "protocols bgp group <*> neighbor <*> family atmvpn") && (!(any "logical-systems <*> protocols bgp family inet any") && (!(any "logical-systems <*> protocols bgp family inet flow") && (!(any "logical-systems <*> protocols bgp family inet multicast") && (!(any "logical-systems <*> protocols bgp group <*> family inet any") && (!(any "logical-systems <*> protocols bgp group <*> family inet flow") && (!(any "logical-systems <*> protocols bgp group <*> family inet multicast") && (!(any "logical-systems <*> protocols bgp group <*> neighbor <*> family inet any") && (!(any "logical-systems <*> protocols bgp group <*> neighbor <*> family inet flow") && (!(any "logical-systems <*> protocols bgp group <*> neighbor <*> family inet multicast") && (!(any "logical-systems <*> protocols bgp family inet-vpn any") && (!(any "logical-systems <*> protocols bgp family inet-vpn flow") && (!(any "logical-systems <*> protocols bgp family inet-vpn multicast") && (!(any "logical-systems <*> protocols bgp group <*> family inet-vpn any") && (!(any "logical-systems <*> protocols bgp group <*> family inet-vpn flow") && (!(any "logical-systems <*> protocols bgp group <*> family inet-vpn multicast") && (!(any "logical-systems <*> protocols bgp group <*> neighbor <*> family inet-vpn any") && (!(any "logical-systems <*> protocols bgp group <*> neighbor <*> family inet-vpn flow") && (!(any "logical-systems <*> protocols bgp group <*> neighbor <*> family inet-vpn multicast") && (!(any "logical-systems <*> protocols bgp family inet6") && (!(any "logical-systems <*> protocols bgp group <*> family inet6") && (!(any "logical-systems <*> protocols bgp group <*> neighbor <*> family inet6") && (!(any "logical-systems <*> protocols bgp family inet6-vpn") && (!(any "logical-systems <*> protocols bgp group <*> family inet6-vpn") && (!(any "protocols bgp group <*> neighbor <*> family inet6-vpn") && (!(any "logical-systems <*> protocols bgp family inet-mvpn") && (!(any "logical-systems <*> protocols bgp group <*> family inet-mvpn") && (!(any "protocols bgp group <*> neighbor <*> family inet-mvpn") && (!(any "logical-systems <*> protocols bgp family inet6-mvpn") && (!(any "logical-systems <*> protocols bgp group <*> family inet6-mvpn") && (!(any "logical-systems <*> protocols bgp group <*> neighbor <*> family inet6-mvpn") && (!(any "logical-systems <*> protocols bgp family iso") && (!(any "logical-systems <*> protocols bgp group <*> family iso") && (!(any "protocols bgp group <*> neighbor <*> family iso") && (!(any "logical-systems <*> protocols bgp family iso-vpn") && (!(any "logical-systems <*> protocols bgp group <*> family iso-vpn") && (!(any "logical-systems <*> protocols bgp group <*> neighbor <*> family iso-vpn") && (!(any "logical-systems <*> protocols bgp family atmvpn") && (!(any "logical-systems <*> protocols bgp group <*> family atmvpn") && !(any "protocols bgp group <*> neighbor <*> family atmvpn")))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))"; junos:must-message "Only BGP groups with 'family inet unicast, inet labeled-unicast, inet-vpn unicast, l2vpn and route-target' are supported under network-services ethernet"; value 1; description "Ethernet network services"; } enum "enhanced-ip" { value 2; description "Enhanced IP network services"; } enum "enhanced-ethernet" { value 3; description "Enhanced ethernet network services"; } enum "enhanced-mode" { value 4; description "Enhanced network services"; } enum "lan" { value 5; description "Ethernet LAN services"; } } description "Chassis network services configuration"; } leaf limited-ifl-scaling { type empty; description "Configured to limit IFL scaling to 64k"; } container alarm-port { description "Craft-interface parameters"; uses chassis_alarm_port_op_type; } // container alarm-port container usb { description "USB control flags"; uses apply-advanced; container storage { description "USB storage flags"; uses apply-advanced; leaf disable { type empty; description "Disable USB storage"; } } // container storage } // container usb container serdes { presence "enable serdes"; description "Serdes test mode for link training"; uses apply-advanced; leaf test-mode { type string; description "Serdes test mode"; } } // container serdes list lcc { key "name"; description "Line-card chassis configuration"; leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "LCC number"; } uses apply-advanced; list fpc { junos:must "((!(any ". <*> vpn-localization") || !("virtual-chassis")))"; junos:must-message "vpn-localization cannot be configured on virtual-chassis"; key "name"; description "Flexible PIC Concentrator parameters"; uses chassis_fpc_type; } // list fpc container pem { description "Power supply (PEM) parameters"; uses chassis_pem_type; } // container pem container spmb { description "Switch Processor Mezzanine Board parameters"; uses apply-advanced; } // container spmb choice state { leaf online-expected { type empty; description "LCC is expected to be online"; } leaf offline { type empty; description "LCC is expected to be offline"; } } // choice state } // list lcc container lcc-mode { description "Line card chassis mode T4000/T1600/EMPTY configuration"; uses apply-advanced; list lcc { key "name"; leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "LCC number"; } uses apply-advanced; leaf mode { type enumeration { enum "t1600" { value 0; description "LCC Mode will be set to t1600"; } enum "t4000" { value 1; description "LCC Mode will be set to t4000"; } enum "empty" { value 2; description "Setting LCC mode to empty will offline the LCC"; } } default "t1600"; description "Changing Mode of LCC will result in the restart of LCC"; } } // list lcc } // container lcc-mode list member { key "name"; description "Member chassis configuration"; leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 10"; } } description "Member number"; } uses apply-advanced; container fabric { description "Switch fabric settings"; uses chassis_fabric_type; } // container fabric list fpc { junos:must "((!(any ". <*> vpn-localization") || !("virtual-chassis")))"; junos:must-message "vpn-localization cannot be configured on virtual-chassis"; key "name"; description "Flexible PIC Concentrator parameters"; uses chassis_fpc_type; } // list fpc } // list member container license { presence "enable license"; description "Set license"; uses apply-advanced; leaf bandwidth { type union { type uint32; type string { pattern "<.*>|$.*"; } } description "Configure bandwidth of FPC"; } leaf scale { type enumeration { enum "base" { value 0; description "Base license"; } enum "advance" { value 1; description "Advance license"; } enum "premium" { value 2; description "Premium license"; } } description "Add scale license"; } } // container license container host-outbound { description "Host-out bound options "; uses apply-advanced; leaf media-interface { type empty; description "Enable processing of media interface features for Host gernated packets"; } } // container host-outbound container synchronization { description "Clock synchronization options"; uses apply-advanced; leaf switchover-mode { type enumeration { enum "non-revertive" { value 0; description "System uses current source as long as it is valid"; } enum "revertive" { value 1; description "Automatically switch to higher priority valid source"; } } default "revertive"; description "Should system revert to higher priority valid source"; } leaf switching-mode { type enumeration { enum "non-revertive" { value 0; description "System uses current source as long as it is valid"; } enum "revertive" { value 1; description "Automatically switch to higher priority valid source"; } } default "non-revertive"; description "Should system revert to higher priority valid source"; } leaf network-option { type enumeration { enum "option-1" { value 0; description "Option 1 (EEC1) synchronization networking"; } enum "option-2" { value 1; description "Option 2 (EEC2) synchronization networking"; } } description "EEC synchronization networking type"; } leaf selection-mode { type enumeration { enum "configured-quality" { value 0; description "Use source's configured ESMC quality"; } enum "received-quality" { junos:must "("chassis synchronization quality-mode-enable")"; junos:must-message "Cannot configure received-quality without quality-mode-enable"; value 1; description "Use source's received ESMC quality"; } } default "configured-quality"; description "Selection mode for incoming ESMC quality"; } leaf clock-mode { type enumeration { enum "free-run" { junos:must "(!("protocols ptp"))"; junos:must-message "Cannot configure free-running clock when ptp is configured"; value 0; description "Use the free-running local oscillator"; } enum "auto-select" { value 1; description "Select best clock source"; } } description "Synchronous Ethernet Clock selection mode"; } leaf quality-mode-enable { type empty; description "Enable Synchronous Ethernet ESMC Quality mode"; } leaf max-transmit-quality-level { type enumeration { enum "ePRTC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 0; description "Time quality of enhanced primary reference time clock"; } enum "PRTC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 1; description "Time quality of primary reference time clock"; } enum "ePRC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 2; description "Time quality of enhanced primary reference clock"; } enum "eEEC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 3; description "Time quality of enhanced ethernet equipment clock"; } enum "prc" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 4; description "Timing quality of a primary reference clock (option-1 only)"; } enum "ssu-a" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 5; description "Timing quality of a type I or IV slave clock (option-1 only)"; } enum "ssu-b" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 6; description "Timing quality of a type VI slave clock (option-1 only)"; } enum "sec" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 7; description "Timing quality of SDH equipment clock (option-1 only)"; } enum "prs" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 8; description "Clock traceable to primary reference source (option-2 only)"; } enum "stu" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 9; description "Clock traceable to unknown quality (option-2 only)"; } enum "st2" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 10; description "Clock traceable to stratum 2 (option-2 only)"; } enum "tnc" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 11; description "Clock traceable to transit node clock (option-2 only)"; } enum "st3e" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 12; description "Clock traceable to stratum 3E (option-2 only)"; } } description "Maximum transmit quality level"; } leaf enable-extended-ql-tlv { type empty; description "Enable enhanced ESMC QL support"; } leaf global-wait-to-restore { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 12"; } } units "min"; description "Global Port signal up state time before opening for ESMC"; } leaf minimum-quality { type enumeration { enum "prc" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 0; description "Timing quality of a primary reference clock (option-1 only)"; } enum "ssu-a" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 1; description "Timing quality of a type I or IV slave clock (option-1 only)"; } enum "ssu-b" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 2; description "Timing quality of a type VI slave clock (option-1 only)"; } enum "sec" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 3; description "Timing quality of SDH equipment clock (option-1 only)"; } enum "prs" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 4; description "Clock traceable to primary reference source (option-2 only)"; } enum "st2" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 5; description "Clock traceable to stratum 2 (option-2 only)"; } enum "tnc" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 6; description "Clock traceable to transit node clock (option-2 only)"; } enum "st3e" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 7; description "Clock traceable to stratum 3E (option-2 only)"; } enum "st3" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 8; description "Clock traceable to stratum 3 (option-2 only)"; } enum "st4" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 9; description "Clock traceable to stratum 4 free-run (option-2 only)"; } enum "smc" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 10; description "Clock traceable to self-timed SONET (option-2 only)"; } enum "stu" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 11; description "Clock traceable to unknown quality (option-2 only)"; } } description "Minimum quality threshold"; } leaf loop-prevention { type enumeration { enum "master-side" { value 0; description "Master side loop prevention"; } } description "Clock loop prevention"; } list port { key "name"; description "Clock synchronization ports"; leaf name { type enumeration { enum "auxiliary" { value 0; description "Auxiliary port"; } enum "gnss" { junos:must "(!("chassis synchronization source"))"; junos:must-message "must not configure SYNCE source along with port gnss"; junos:must "("protocols ptp")"; junos:must-message "must configure protocols ptp"; value 1; description "Global Navigation Satellite System - GPS or GLONASS port"; } enum "time-of-day" { value 2; description "Time of Day(TOD) port"; } } } uses apply-advanced; container client { presence "enable client"; description "Port client receiving external signals"; uses apply-advanced; container time-of-day-format { description "Time-of-day format as received on this port"; uses apply-advanced; choice format { leaf ascii { type string { length "1 .. 80"; } description "ASCII Time-of-day message format string"; } leaf nmea-custom-format { type empty; description "Customized NMEA format used when interfacing with GRU GPS Receiver Unit"; } leaf no-protocol { type empty; description "Used when interfacing with GRU GPS Receiver Unit to process PPS with no Time Of Day"; } } // choice format } // container time-of-day-format leaf cable-length-compensation { type union { type uint32; type string { pattern "<.*>|$.*"; } } description "Antenna cable length compensation in nanoseconds"; } leaf cable-delay-compensation { type union { type string { pattern "<.*>|$.*"; } type int32 { range "-100000000 .. 100000000"; } } description "GPS Receiver Unit to Router delay compensation in nanoseconds"; } leaf antenna-voltage { type enumeration { enum "3.3" { value 0; description "3.3 units"; } enum "5" { value 1; description "5 units"; } } description "Configure antenna voltage"; } leaf alarm-filter { type union { type string { pattern "<.*>|$.*"; } type int32 { range "1 .. 60"; } } default "36"; description "Set alarm filter window"; } leaf constellation { type enumeration { enum "gps" { value 0; description "Global Positioning Satellite(GPS) for clock recovery"; } enum "glonass" { value 1; description "Global Navigation Satellite System(GLONASS) constellation"; } enum "gps-and-glonass" { value 2; description "All constellations"; } enum "beidou" { value 3; description "BEIDOU for clock recovery constellations"; } enum "gps-beidou" { value 4; description "GPS and BEIDOU for clock recovery"; } enum "gps-beidou-qzss" { value 5; description "GPS ,BEIDOU and qzss for clock recovery"; } enum "galileo" { value 6; description "GALILEO for clock recovery"; } enum "gps-galileo" { value 7; description "GPS and GALILEO for clock recovery"; } enum "gps-qzss" { value 8; description "GPS and QZSS for clock recovery"; } enum "gps-glonass-qzss" { value 9; description "GPS,GLONASS and QZSS for clock recovery"; } enum "gps-galileo-qzss" { value 10; description "GPS , GALILEO and QZSS for clock recovery"; } } description "Configure constellation of satellites to use"; } leaf anti-jamming { type empty; description "Enable anti-jamming feature"; } leaf pps-loopback { type empty; description "Enable 1PPS loopback mode"; } leaf dump-gpsstats { type empty; description "Enable dumping gnss data"; } } // container client container server { presence "enable server"; description "The role of port is server which transmits signals out"; uses apply-advanced; container time-of-day-format { description "RS-232 port time-of-day format"; uses apply-advanced; choice format { leaf ascii { type string { length "1 .. 80"; } description "ASCII Time-of-day message format string"; } } // choice format } // container time-of-day-format } // container server } // list port list interfaces { key "name"; description "Interface(s) with upstream clock source"; leaf name { type enumeration { enum "external" { value 0; description "External clock interface"; } enum "external-0/0" { junos:must "("chassis synchronization interfaces external-0/0 signal-type")"; junos:must-message "Must configure 'chassis synchronization interfaces external-0/0 signal-type'"; value 1; description "External clock interface on SCB-0"; } enum "external-0/1" { junos:must "("chassis synchronization interfaces external-0/1 signal-type")"; junos:must-message "Must configure 'chassis synchronization interfaces external-0/1 signal-type'"; value 2; description "External clock interface on SCB-0"; } enum "external-1/0" { junos:must "("chassis synchronization interfaces external-1/0 signal-type")"; junos:must-message "Must configure 'chassis synchronization interfaces external-1/0 signal-type'"; value 3; description "External clock interface on SCB-1"; } enum "external-1/1" { junos:must "("chassis synchronization interfaces external-1/1 signal-type")"; junos:must-message "Must configure 'chassis synchronization interfaces external-1/1 signal-type'"; value 4; description "External clock interface on SCB-1"; } enum "external-a" { value 5; description "External-A clock interface"; } enum "external-b" { value 6; description "External-B clock interface"; } enum "external-0" { value 7; description "External-0 clock interface"; } enum "external-1" { value 8; description "External-1 clock interface"; } enum "external-2" { value 9; description "External-2 clock interface"; } enum "bits" { value 10; description "External BITS interface configuration"; } enum "bits-a" { value 11; description "External BITS interface A configuration"; } enum "bits-b" { value 12; description "External BITS interface B configuration"; } enum "gps-0" { value 13; description "External GPS interface A configuration"; } enum "gps-1" { value 14; description "External GPS interface B configuration"; } } } uses apply-advanced; leaf signal-type { type enumeration { enum "1mhz" { value 0; description "1 MHz clock signal"; } enum "5mhz" { value 1; description "5 MHz clock signal"; } enum "10mhz" { value 2; description "10 MHz clock signal"; } enum "2048khz" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 3; description "E1 unframed 2048Khz G.703 signal"; } enum "e1" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 4; description "E1-coded 2048 KHz signal on 120 ohm balanced line"; } enum "t1" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 5; description "T1-coded 1.544 MHz signal on 100 ohm balanced line"; } enum "cc-8k" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 6; description "Composite Clock 64kHz+8kHz"; } enum "cc-8k-400" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 7; description "Composite Clock 64kHz+8kHz+400Hz"; } enum "6312k" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 8; description "Japanese Standard 6312kHz"; } } description "Frequency for provided reference clocks"; } leaf pulse-per-second-enable { junos:must "((".. signal-type $$={1mhz}" || (".. signal-type $$={5mhz}" || ".. signal-type $$={10mhz}")))"; junos:must-message "Must configure signal-type to 1/5/10 MHz"; type empty; description "Enable pulse-per-second (PPS) receive on the interface"; } container e1-options { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; description "E1 interface-specific options"; uses apply-advanced; leaf line-encoding { type enumeration { enum "ami" { value 0; description "Automatic mark inversion"; } enum "hdb3" { value 1; description "High-density bipolar 3 code"; } } default "hdb3"; description "Line encoding"; } leaf framing { type enumeration { enum "g704" { value 0; description "G.704 framing format for E1 interfaces"; } enum "g704-no-crc4" { value 1; description "G.704 framing without CRC4 for E1 interfaces"; } } default "g704"; description "Framing mode"; } leaf sabit { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "4 .. 8"; } } default "4"; description "The sabit used for exchanging SSM quality"; } } // container e1-options container t1-options { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; description "T1 interface-specific options"; uses apply-advanced; leaf line-encoding { type enumeration { enum "ami" { value 0; description "Automatic mark inversion"; } enum "b8zs" { value 1; description "8-bit zero suppression"; } } default "b8zs"; description "Line encoding"; } leaf framing { type enumeration { enum "esf" { value 0; description "Extended Super Frame"; } enum "sf" { value 1; description "Super Frame"; } } default "esf"; description "Framing mode"; } } // container t1-options } // list interfaces container output { description "External clock interface related"; uses apply-advanced; list interfaces { key "name"; description "Interface(s) to output source to"; leaf name { type enumeration { enum "external" { junos:must "("chassis synchronization interfaces external signal-type")"; junos:must-message "Must configure 'chassis synchronization interfaces external signal-type'"; value 0; description "External clock interface"; } enum "external-0/0" { junos:must "("chassis synchronization interfaces external-0/0 signal-type")"; junos:must-message "Must configure 'chassis synchronization interfaces external-0/0 signal-type'"; value 1; description "External clock interface on SCB-0"; } enum "external-0/1" { junos:must "("chassis synchronization interfaces external-0/1 signal-type")"; junos:must-message "Must configure 'chassis synchronization interfaces external-0/1 signal-type'"; value 2; description "External clock interface on SCB-0"; } enum "external-1/0" { junos:must "("chassis synchronization interfaces external-1/0 signal-type")"; junos:must-message "Must configure 'chassis synchronization interfaces external-1/0 signal-type'"; value 3; description "External clock interface on SCB-1"; } enum "external-1/1" { junos:must "("chassis synchronization interfaces external-1/1 signal-type")"; junos:must-message "Must configure 'chassis synchronization interfaces external-1/1 signal-type'"; value 4; description "External clock interface on SCB-1"; } enum "external-a" { junos:must "("chassis synchronization interfaces external-a signal-type")"; junos:must-message "Must configure 'chassis synchronization interfaces external-a signal-type'"; value 5; description "External-A clock interface"; } enum "external-b" { junos:must "("chassis synchronization interfaces external-b signal-type")"; junos:must-message "Must configure 'chassis synchronization interfaces external-b signal-type'"; value 6; description "External-B clock interface"; } enum "bits" { value 7; description "External BITS interface configuration"; } enum "external-0" { junos:must "("chassis synchronization interfaces external-0 signal-type")"; junos:must-message "Must configure 'chassis synchronization interfaces external-0 signal-type'"; value 8; description "External-0 clock interface"; } enum "external-1" { junos:must "("chassis synchronization interfaces external-1 signal-type")"; junos:must-message "Must configure 'chassis synchronization interfaces external-1 signal-type'"; value 9; description "External-1 clock interface"; } enum "external-2" { junos:must "("chassis synchronization interfaces external-2 signal-type")"; junos:must-message "Must configure 'chassis synchronization interfaces external-2 signal-type'"; value 10; description "External-2 clock interface"; } } } uses apply-advanced; container ssm { description "SSM Message config"; uses apply-advanced; leaf option-2 { type enumeration { enum "GEN-1" { value 0; description "SSM Message type GEN-1"; } enum "GEN-2" { value 1; description "SSM Message type GEN-2"; } } description "Select generation"; } } // container ssm container squelch { presence "enable squelch"; description "Squelch a interface"; uses apply-advanced; leaf method { type enumeration { enum "ais" { value 0; description "Send AIS"; } enum "ql-dnu" { value 1; description "Send DNU Quality level out"; } enum "rai" { value 2; description "Method RAI"; } enum "shut" { value 3; description "Shutdown"; } } description "Type of Squelch to be done"; } } // container squelch leaf wander-filter-disable { type empty; description "Disables wander filtering"; } leaf holdover-mode-disable { type empty; description "Disables holdover"; } leaf source-mode { type enumeration { enum "chassis" { value 0; description "The chassis clock is output"; } enum "line" { value 1; description "The best line clock source is output"; } enum "equipment-clock" { value 2; description "The chassis clock is output"; } enum "ptp-clock" { value 3; description "The best line clock source is output"; } } default "line"; description "Source mode for selecting source to output"; } leaf tx-dnu-to-line-source-enable { type empty; description "Sets Tx QL to DNU/DUS on line source interface"; } leaf minimum-quality { type enumeration { enum "ePRTC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 0; description "Time quality of enhanced primary reference time clock"; } enum "PRTC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 1; description "Time quality of primary reference time clock"; } enum "ePRC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 2; description "Time quality of enhanced primary reference clock"; } enum "eEEC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 3; description "Time quality of enhanced ethernet equipment clock"; } enum "prc" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 4; description "Timing quality of a primary reference clock (option-1 only)"; } enum "ssu-a" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 5; description "Timing quality of a type I or IV slave clock (option-1 only)"; } enum "ssu-b" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 6; description "Timing quality of a type VI slave clock (option-1 only)"; } enum "sec" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 7; description "Timing quality of SDH equipment clock (option-1 only)"; } enum "prs" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 8; description "Clock traceable to primary reference source (option-2 only)"; } enum "st2" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 9; description "Clock traceable to stratum 2 (option-2 only)"; } enum "tnc" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 10; description "Clock traceable to transit node clock (option-2 only)"; } enum "st3e" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 11; description "Clock traceable to stratum 3E (option-2 only)"; } enum "st3" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 12; description "Clock traceable to stratum 3 (option-2 only)"; } enum "st4" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 13; description "Clock traceable to stratum 4 free-run (option-2 only)"; } enum "smc" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 14; description "Clock traceable to self-timed SONET (option-2 only)"; } enum "stu" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 15; description "Clock traceable to unknown quality (option-2 only)"; } } description "Minimum quality threshold"; } } // list interfaces } // container output container source { junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; junos:must "(!(("chassis synchronization primary" || "chassis synchronization secondary")))"; junos:must-message "primary or secondary cannot be configured with source"; description "ESMC source(s) related"; uses apply-advanced; container external-a { presence "enable external-a"; description "External Clock source A"; uses apply-advanced; leaf priority { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 5"; } } description "User priority for this clock"; } leaf request { type enumeration { enum "lockout" { value 0; description "Opt out of clock selection"; } enum "force-switch" { value 1; description "Switch to this interface as primary clock source"; } } description "Clock selection request criterion"; } leaf quality-level { type enumeration { enum "ePRTC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 0; description "Time quality of enhanced primary reference time clock"; } enum "PRTC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 1; description "Time quality of primary reference time clock"; } enum "ePRC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 2; description "Time quality of enhanced primary reference clock"; } enum "eEEC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 3; description "Time quality of enhanced ethernet equipment clock"; } enum "prc" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 4; description "Timing quality of a primary reference clock (option-1 only)"; } enum "ssu-a" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 5; description "Timing quality of a type I or IV slave clock (option-1 only)"; } enum "ssu-b" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 6; description "Timing quality of a type VI slave clock (option-1 only)"; } enum "sec" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 7; description "Timing quality of SDH equipment clock (option-1 only)"; } enum "prs" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 8; description "Clock traceable to primary reference source (option-2 only)"; } enum "st2" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 9; description "Clock traceable to stratum 2 (option-2 only)"; } enum "tnc" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 10; description "Clock traceable to transit node clock (option-2 only)"; } enum "st3e" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 11; description "Clock traceable to stratum 3E (option-2 only)"; } enum "st3" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 12; description "Clock traceable to stratum 3 (option-2 only)"; } enum "st4" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 13; description "Clock traceable to stratum 4 free-run (option-2 only)"; } enum "smc" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 14; description "Clock traceable to self-timed SONET (option-2 only)"; } enum "stu" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 15; description "Clock traceable to unknown quality (option-2 only)"; } } description "ESMC Clock EEC level"; } } // container external-a container external-b { presence "enable external-b"; description "External Clock source B"; uses apply-advanced; leaf priority { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 5"; } } description "User priority for this clock"; } leaf request { type enumeration { enum "lockout" { value 0; description "Opt out of clock selection"; } enum "force-switch" { value 1; description "Switch to this interface as primary clock source"; } } description "Clock selection request criterion"; } leaf quality-level { type enumeration { enum "ePRTC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 0; description "Time quality of enhanced primary reference time clock"; } enum "PRTC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 1; description "Time quality of primary reference time clock"; } enum "ePRC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 2; description "Time quality of enhanced primary reference clock"; } enum "eEEC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 3; description "Time quality of enhanced ethernet equipment clock"; } enum "prc" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 4; description "Timing quality of a primary reference clock (option-1 only)"; } enum "ssu-a" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 5; description "Timing quality of a type I or IV slave clock (option-1 only)"; } enum "ssu-b" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 6; description "Timing quality of a type VI slave clock (option-1 only)"; } enum "sec" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 7; description "Timing quality of SDH equipment clock (option-1 only)"; } enum "prs" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 8; description "Clock traceable to primary reference source (option-2 only)"; } enum "st2" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 9; description "Clock traceable to stratum 2 (option-2 only)"; } enum "tnc" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 10; description "Clock traceable to transit node clock (option-2 only)"; } enum "st3e" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 11; description "Clock traceable to stratum 3E (option-2 only)"; } enum "st3" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 12; description "Clock traceable to stratum 3 (option-2 only)"; } enum "st4" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 13; description "Clock traceable to stratum 4 free-run (option-2 only)"; } enum "smc" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 14; description "Clock traceable to self-timed SONET (option-2 only)"; } enum "stu" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 15; description "Clock traceable to unknown quality (option-2 only)"; } } description "ESMC Clock EEC level"; } } // container external-b container gps { presence "enable gps"; description "Global Positioning System 10MHz input"; uses apply-advanced; leaf priority { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 5"; } } description "User priority for this clock"; } leaf request { type enumeration { enum "lockout" { value 0; description "Opt out of clock selection"; } enum "force-switch" { value 1; description "Switch to this interface as primary clock source"; } } description "Clock selection request criterion"; } leaf no-ssm-support { type empty; description "No SSM support available for this interface"; } leaf quality-level { type enumeration { enum "ePRTC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 0; description "Time quality of enhanced primary reference time clock"; } enum "PRTC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 1; description "Time quality of primary reference time clock"; } enum "ePRC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 2; description "Time quality of enhanced primary reference clock"; } enum "eEEC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 3; description "Time quality of enhanced ethernet equipment clock"; } enum "prc" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 4; description "Timing quality of a primary reference clock (option-1 only)"; } enum "ssu-a" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 5; description "Timing quality of a type I or IV slave clock (option-1 only)"; } enum "ssu-b" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 6; description "Timing quality of a type VI slave clock (option-1 only)"; } enum "sec" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 7; description "Timing quality of SDH equipment clock (option-1 only)"; } enum "prs" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 8; description "Clock traceable to primary reference source (option-2 only)"; } enum "st2" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 9; description "Clock traceable to stratum 2 (option-2 only)"; } enum "tnc" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 10; description "Clock traceable to transit node clock (option-2 only)"; } enum "st3e" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 11; description "Clock traceable to stratum 3E (option-2 only)"; } enum "st3" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 12; description "Clock traceable to stratum 3 (option-2 only)"; } enum "st4" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 13; description "Clock traceable to stratum 4 free-run (option-2 only)"; } enum "smc" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 14; description "Clock traceable to self-timed SONET (option-2 only)"; } enum "stu" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 15; description "Clock traceable to unknown quality (option-2 only)"; } } description "ESMC Clock EEC level"; } } // container gps container gps-0 { presence "enable gps-0"; description "Global Positioning System input A"; uses apply-advanced; leaf priority { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 5"; } } description "User priority for this clock"; } leaf request { type enumeration { enum "lockout" { value 0; description "Opt out of clock selection"; } enum "force-switch" { value 1; description "Switch to this interface as primary clock source"; } } description "Clock selection request criterion"; } leaf wait-to-restore { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 12"; } } units "min"; description "Port signal up state time before opening for ESMC"; } leaf quality-level { type enumeration { enum "ePRTC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 0; description "Time quality of enhanced primary reference time clock"; } enum "PRTC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 1; description "Time quality of primary reference time clock"; } enum "ePRC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 2; description "Time quality of enhanced primary reference clock"; } enum "eEEC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 3; description "Time quality of enhanced ethernet equipment clock"; } enum "prc" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 4; description "Timing quality of a primary reference clock (option-1 only)"; } enum "ssu-a" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 5; description "Timing quality of a type I or IV slave clock (option-1 only)"; } enum "ssu-b" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 6; description "Timing quality of a type VI slave clock (option-1 only)"; } enum "sec" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 7; description "Timing quality of SDH equipment clock (option-1 only)"; } enum "prs" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 8; description "Clock traceable to primary reference source (option-2 only)"; } enum "st2" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 9; description "Clock traceable to stratum 2 (option-2 only)"; } enum "tnc" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 10; description "Clock traceable to transit node clock (option-2 only)"; } enum "st3e" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 11; description "Clock traceable to stratum 3E (option-2 only)"; } enum "st3" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 12; description "Clock traceable to stratum 3 (option-2 only)"; } enum "st4" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 13; description "Clock traceable to stratum 4 free-run (option-2 only)"; } enum "smc" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 14; description "Clock traceable to self-timed SONET (option-2 only)"; } enum "stu" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 15; description "Clock traceable to unknown quality (option-2 only)"; } } description "ESMC Clock EEC level"; } } // container gps-0 container gps-1 { presence "enable gps-1"; description "Global Positioning System input B"; uses apply-advanced; leaf priority { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 5"; } } description "User priority for this clock"; } leaf request { type enumeration { enum "lockout" { value 0; description "Opt out of clock selection"; } enum "force-switch" { value 1; description "Switch to this interface as primary clock source"; } } description "Clock selection request criterion"; } leaf wait-to-restore { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 12"; } } units "min"; description "Port signal up state time before opening for ESMC"; } leaf quality-level { type enumeration { enum "ePRTC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 0; description "Time quality of enhanced primary reference time clock"; } enum "PRTC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 1; description "Time quality of primary reference time clock"; } enum "ePRC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 2; description "Time quality of enhanced primary reference clock"; } enum "eEEC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 3; description "Time quality of enhanced ethernet equipment clock"; } enum "prc" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 4; description "Timing quality of a primary reference clock (option-1 only)"; } enum "ssu-a" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 5; description "Timing quality of a type I or IV slave clock (option-1 only)"; } enum "ssu-b" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 6; description "Timing quality of a type VI slave clock (option-1 only)"; } enum "sec" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 7; description "Timing quality of SDH equipment clock (option-1 only)"; } enum "prs" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 8; description "Clock traceable to primary reference source (option-2 only)"; } enum "st2" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 9; description "Clock traceable to stratum 2 (option-2 only)"; } enum "tnc" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 10; description "Clock traceable to transit node clock (option-2 only)"; } enum "st3e" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 11; description "Clock traceable to stratum 3E (option-2 only)"; } enum "st3" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 12; description "Clock traceable to stratum 3 (option-2 only)"; } enum "st4" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 13; description "Clock traceable to stratum 4 free-run (option-2 only)"; } enum "smc" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 14; description "Clock traceable to self-timed SONET (option-2 only)"; } enum "stu" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 15; description "Clock traceable to unknown quality (option-2 only)"; } } description "ESMC Clock EEC level"; } } // container gps-1 container bits { presence "enable bits"; description "External Building Integrated Timing Supply input"; uses apply-advanced; leaf priority { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 5"; } } description "User priority for this clock"; } leaf request { type enumeration { enum "lockout" { value 0; description "Opt out of clock selection"; } enum "force-switch" { value 1; description "Switch to this interface as primary clock source"; } } description "Clock selection request criterion"; } leaf no-ssm-support { type empty; description "No SSM support available for this interface"; } leaf quality-level { type enumeration { enum "ePRTC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 0; description "Time quality of enhanced primary reference time clock"; } enum "PRTC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 1; description "Time quality of primary reference time clock"; } enum "ePRC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 2; description "Time quality of enhanced primary reference clock"; } enum "eEEC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 3; description "Time quality of enhanced ethernet equipment clock"; } enum "prc" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 4; description "Timing quality of a primary reference clock (option-1 only)"; } enum "ssu-a" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 5; description "Timing quality of a type I or IV slave clock (option-1 only)"; } enum "ssu-b" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 6; description "Timing quality of a type VI slave clock (option-1 only)"; } enum "sec" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 7; description "Timing quality of SDH equipment clock (option-1 only)"; } enum "prs" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 8; description "Clock traceable to primary reference source (option-2 only)"; } enum "st2" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 9; description "Clock traceable to stratum 2 (option-2 only)"; } enum "tnc" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 10; description "Clock traceable to transit node clock (option-2 only)"; } enum "st3e" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 11; description "Clock traceable to stratum 3E (option-2 only)"; } enum "st3" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 12; description "Clock traceable to stratum 3 (option-2 only)"; } enum "st4" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 13; description "Clock traceable to stratum 4 free-run (option-2 only)"; } enum "smc" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 14; description "Clock traceable to self-timed SONET (option-2 only)"; } enum "stu" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 15; description "Clock traceable to unknown quality (option-2 only)"; } } description "ESMC Clock EEC level"; } } // container bits container bits-a { presence "enable bits-a"; description "External Building Integrated Timing Supply input A"; uses apply-advanced; leaf priority { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 5"; } } description "User priority for this clock"; } leaf request { type enumeration { enum "lockout" { value 0; description "Opt out of clock selection"; } enum "force-switch" { value 1; description "Switch to this interface as primary clock source"; } } description "Clock selection request criterion"; } leaf wait-to-restore { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 12"; } } units "min"; description "Port signal up state time before opening for ESMC"; } leaf quality-level { type enumeration { enum "ePRTC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 0; description "Time quality of enhanced primary reference time clock"; } enum "PRTC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 1; description "Time quality of primary reference time clock"; } enum "ePRC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 2; description "Time quality of enhanced primary reference clock"; } enum "eEEC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 3; description "Time quality of enhanced ethernet equipment clock"; } enum "prc" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 4; description "Timing quality of a primary reference clock (option-1 only)"; } enum "ssu-a" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 5; description "Timing quality of a type I or IV slave clock (option-1 only)"; } enum "ssu-b" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 6; description "Timing quality of a type VI slave clock (option-1 only)"; } enum "sec" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 7; description "Timing quality of SDH equipment clock (option-1 only)"; } enum "prs" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 8; description "Clock traceable to primary reference source (option-2 only)"; } enum "st2" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 9; description "Clock traceable to stratum 2 (option-2 only)"; } enum "tnc" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 10; description "Clock traceable to transit node clock (option-2 only)"; } enum "st3e" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 11; description "Clock traceable to stratum 3E (option-2 only)"; } enum "st3" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 12; description "Clock traceable to stratum 3 (option-2 only)"; } enum "st4" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 13; description "Clock traceable to stratum 4 free-run (option-2 only)"; } enum "smc" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 14; description "Clock traceable to self-timed SONET (option-2 only)"; } enum "stu" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 15; description "Clock traceable to unknown quality (option-2 only)"; } } description "ESMC Clock EEC level"; } } // container bits-a container bits-b { presence "enable bits-b"; description "External Building Integrated Timing Supply input B"; uses apply-advanced; leaf priority { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 5"; } } description "User priority for this clock"; } leaf request { type enumeration { enum "lockout" { value 0; description "Opt out of clock selection"; } enum "force-switch" { value 1; description "Switch to this interface as primary clock source"; } } description "Clock selection request criterion"; } leaf wait-to-restore { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 12"; } } units "min"; description "Port signal up state time before opening for ESMC"; } leaf quality-level { type enumeration { enum "ePRTC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 0; description "Time quality of enhanced primary reference time clock"; } enum "PRTC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 1; description "Time quality of primary reference time clock"; } enum "ePRC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 2; description "Time quality of enhanced primary reference clock"; } enum "eEEC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 3; description "Time quality of enhanced ethernet equipment clock"; } enum "prc" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 4; description "Timing quality of a primary reference clock (option-1 only)"; } enum "ssu-a" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 5; description "Timing quality of a type I or IV slave clock (option-1 only)"; } enum "ssu-b" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 6; description "Timing quality of a type VI slave clock (option-1 only)"; } enum "sec" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 7; description "Timing quality of SDH equipment clock (option-1 only)"; } enum "prs" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 8; description "Clock traceable to primary reference source (option-2 only)"; } enum "st2" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 9; description "Clock traceable to stratum 2 (option-2 only)"; } enum "tnc" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 10; description "Clock traceable to transit node clock (option-2 only)"; } enum "st3e" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 11; description "Clock traceable to stratum 3E (option-2 only)"; } enum "st3" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 12; description "Clock traceable to stratum 3 (option-2 only)"; } enum "st4" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 13; description "Clock traceable to stratum 4 free-run (option-2 only)"; } enum "smc" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 14; description "Clock traceable to self-timed SONET (option-2 only)"; } enum "stu" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 15; description "Clock traceable to unknown quality (option-2 only)"; } } description "ESMC Clock EEC level"; } } // container bits-b container virtual-port { junos:must "("protocols ptp profile-type $$={g.8275.1}")"; junos:must-message "Must configure ptp profile type g.8275.1"; junos:must "("protocols ptp virtual-port")"; junos:must-message "Must configure protocols ptp virtual-port"; presence "enable virtual-port"; description "Virtual port"; uses apply-advanced; leaf priority { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 5"; } } description "User priority for this clock"; } leaf request { type enumeration { enum "lockout" { value 0; description "Opt out of clock selection"; } enum "force-switch" { value 1; description "Switch to this interface as primary clock source"; } } description "Clock selection request criterion"; } leaf wait-to-restore { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 12"; } } units "min"; description "Port signal up state time before opening for ESMC"; } leaf quality-level { type enumeration { enum "ePRTC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 0; description "Time quality of enhanced primary reference time clock"; } enum "PRTC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 1; description "Time quality of primary reference time clock"; } enum "ePRC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 2; description "Time quality of enhanced primary reference clock"; } enum "eEEC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 3; description "Time quality of enhanced ethernet equipment clock"; } enum "prc" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 4; description "Timing quality of a primary reference clock (option-1 only)"; } enum "ssu-a" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 5; description "Timing quality of a type I or IV slave clock (option-1 only)"; } enum "ssu-b" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 6; description "Timing quality of a type VI slave clock (option-1 only)"; } enum "sec" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 7; description "Timing quality of SDH equipment clock (option-1 only)"; } enum "prs" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 8; description "Clock traceable to primary reference source (option-2 only)"; } enum "st2" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 9; description "Clock traceable to stratum 2 (option-2 only)"; } enum "tnc" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 10; description "Clock traceable to transit node clock (option-2 only)"; } enum "st3e" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 11; description "Clock traceable to stratum 3E (option-2 only)"; } enum "st3" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 12; description "Clock traceable to stratum 3 (option-2 only)"; } enum "st4" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 13; description "Clock traceable to stratum 4 free-run (option-2 only)"; } enum "smc" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 14; description "Clock traceable to self-timed SONET (option-2 only)"; } enum "stu" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 15; description "Clock traceable to unknown quality (option-2 only)"; } } description "ESMC Clock EEC level"; } } // container virtual-port list interfaces { key "name"; description "Interface(s) with upstream clock source"; leaf name { type string; } uses apply-advanced; leaf priority { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 5"; } } description "User priority for this clock"; } leaf request { type enumeration { enum "lockout" { value 0; description "Opt out of clock selection"; } enum "force-switch" { value 1; description "Switch to this interface as primary clock source"; } } description "Clock selection request criterion"; } leaf wait-to-restore { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 12"; } } units "min"; description "Port signal up state time before opening for ESMC"; } leaf no-ssm-support { type empty; description "No SSM support available for this interface"; } leaf hold-off-time { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "300 .. 1800"; } } units "milliseconds"; description "Port signal down state time before closing for ESMC"; } leaf aggregated-ether { junos:must "("interfaces $$-IFL")"; junos:must-message "System AE interface should be configured"; type string; description "Aggregated sources group name"; } leaf quality-level { type enumeration { enum "ePRTC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 0; description "Time quality of enhanced primary reference time clock"; } enum "PRTC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 1; description "Time quality of primary reference time clock"; } enum "ePRC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 2; description "Time quality of enhanced primary reference clock"; } enum "eEEC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 3; description "Time quality of enhanced ethernet equipment clock"; } enum "prc" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 4; description "Timing quality of a primary reference clock (option-1 only)"; } enum "ssu-a" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 5; description "Timing quality of a type I or IV slave clock (option-1 only)"; } enum "ssu-b" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 6; description "Timing quality of a type VI slave clock (option-1 only)"; } enum "sec" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 7; description "Timing quality of SDH equipment clock (option-1 only)"; } enum "prs" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 8; description "Clock traceable to primary reference source (option-2 only)"; } enum "st2" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 9; description "Clock traceable to stratum 2 (option-2 only)"; } enum "tnc" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 10; description "Clock traceable to transit node clock (option-2 only)"; } enum "st3e" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 11; description "Clock traceable to stratum 3E (option-2 only)"; } enum "st3" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 12; description "Clock traceable to stratum 3 (option-2 only)"; } enum "st4" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 13; description "Clock traceable to stratum 4 free-run (option-2 only)"; } enum "smc" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 14; description "Clock traceable to self-timed SONET (option-2 only)"; } enum "stu" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 15; description "Clock traceable to unknown quality (option-2 only)"; } } description "ESMC Clock EEC level"; } } // list interfaces } // container source container esmc-transmit { junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; junos:must "(!(("chassis synchronization primary" || "chassis synchronization secondary")))"; junos:must-message "primary or secondary cannot be configured with esmc-transmit"; description "ESMC transmit parameters"; uses apply-advanced; list interfaces { key "name"; ordered-by user; description "Interface(s) on which to permit ESMC transmit messages"; leaf name { type string; } uses apply-advanced; container squelch { junos:must "(!(("protocols ptp profile-type $$={g.8275.2}" && !("protocols ptp slave hybrid"))))"; junos:must-message "Must not configure squelch when using PTS mode i.e. g.8275.2 profile in non-hybrid mode"; presence "enable squelch"; description "Squelch a interface"; uses apply-advanced; leaf method { type enumeration { enum "ais" { value 0; description "Send AIS"; } enum "ql-dnu" { value 1; description "Send DNU Quality level out"; } enum "rai" { value 2; description "Method RAI"; } enum "shut" { value 3; description "Shutdown"; } } description "Type of Squelch to be done"; } leaf quality-level { type enumeration { enum "ePRTC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 0; description "Time quality of enhanced primary reference time clock"; } enum "PRTC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 1; description "Time quality of primary reference time clock"; } enum "ePRC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 2; description "Time quality of enhanced primary reference clock"; } enum "eEEC" { junos:must "("chassis synchronization enable-extended-ql-tlv")"; junos:must-message "Must configure 'chassis synchronization enable-extended-ql-tlv'"; junos:must "("chassis synchronization network-option")"; junos:must-message "Must configure 'chassis synchronization network-option'"; value 3; description "Time quality of enhanced ethernet equipment clock"; } enum "prc" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 4; description "Timing quality of a primary reference clock (option-1 only)"; } enum "ssu-a" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 5; description "Timing quality of a type I or IV slave clock (option-1 only)"; } enum "ssu-b" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 6; description "Timing quality of a type VI slave clock (option-1 only)"; } enum "sec" { junos:must "("chassis synchronization network-option option-1")"; junos:must-message "Must configure 'chassis synchronization network-option option-1'"; value 7; description "Timing quality of SDH equipment clock (option-1 only)"; } enum "prs" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 8; description "Clock traceable to primary reference source (option-2 only)"; } enum "st2" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 9; description "Clock traceable to stratum 2 (option-2 only)"; } enum "tnc" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 10; description "Clock traceable to transit node clock (option-2 only)"; } enum "st3e" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 11; description "Clock traceable to stratum 3E (option-2 only)"; } enum "st3" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 12; description "Clock traceable to stratum 3 (option-2 only)"; } enum "st4" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 13; description "Clock traceable to stratum 4 free-run (option-2 only)"; } enum "smc" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 14; description "Clock traceable to self-timed SONET (option-2 only)"; } enum "stu" { junos:must "("chassis synchronization network-option option-2")"; junos:must-message "Must configure 'chassis synchronization network-option option-2'"; value 15; description "Clock traceable to unknown quality (option-2 only)"; } } description "ESMC Quality level below which output is squelched"; } } // container squelch } // list interfaces } // container esmc-transmit container hold-interval { description "Hold interval"; uses apply-advanced; leaf switchover { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "30 .. 60"; } } units "sec"; default "30"; description "Switchover wait time after clock recovery"; } leaf configuration-change { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "15 .. 60"; } } units "sec"; default "15"; description "Clock select wait time after change in config"; } leaf restart { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "60 .. 180"; } } units "sec"; default "120"; description "Clock select wait time after reboot"; } } // container hold-interval leaf validation-interval { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "90 .. 86400"; } } units "seconds"; default "90"; description "Time between frequency measurements"; } leaf slave-free-run { type empty; description "Slave Clock running mode"; } leaf y-cable-line-termination { type empty; description "A single signal is wired to both CBs via Y-cable"; } leaf transmitter-enable { type empty; description "Control whether diagnostic timing signal is transmitted"; } leaf signal-type { type enumeration { enum "e1" { value 0; description "E1-coded 2048 Khz signal on 120 ohm balanced line"; } enum "t1" { value 1; description "T1-coded 1.544 Mhz signal on 100 ohm balanced line"; } enum "cc-8k" { value 2; description "Composite Clock 64kHz+8kHz"; } enum "cc-8k-400" { value 3; description "Composite Clock 64kHz+8kHz+400Hz"; } enum "6312k" { value 4; description "Japanese Standard 6312kHz"; } } default "t1"; description "Frequency for provided reference clocks"; } leaf primary { junos:must "((!("chassis synchronization source") || "chassis synchronization esmc-transmit"))"; junos:must-message "source or esmc-transmit cannot be configured with primary"; type enumeration { enum "external-a" { value 0; description "Use external-a as a primary source"; } enum "external-b" { value 1; description "Use external-b as a primary source"; } enum "bits-a" { value 2; description "Use bits-a as a primary source"; } enum "bits-b" { value 3; description "Use bits-b as a primary source"; } enum "gps-0" { junos:must "(!("chassis synchronization secondary gps-0"))"; junos:must-message "not allowed when gps-0 is already configured"; value 4; description "Use gps-0 as a primary source"; } enum "gps-1" { junos:must "(!("chassis synchronization secondary gps-1"))"; junos:must-message "not allowed when gps-1 is already configured"; value 5; description "Use gps-1 as a primary source"; } enum "fpc-0" { junos:must "(("chassis fpc 0 pic 0 recovered-clock" || "chassis fpc 0 pic 1 recovered-clock"))"; junos:must-message "Must configure recovered-clock for this fpc"; value 6; description "Use fpc-0 as a primary source"; } enum "fpc-1" { junos:must "(("chassis fpc 1 pic 0 recovered-clock" || "chassis fpc 1 pic 1 recovered-clock"))"; junos:must-message "Must configure recovered-clock for this fpc"; value 7; description "Use fpc-1 as a primary source"; } enum "fpc-2" { junos:must "(("chassis fpc 2 pic 0 recovered-clock" || "chassis fpc 2 pic 1 recovered-clock"))"; junos:must-message "Must configure recovered-clock for this fpc"; value 8; description "Use fpc-2 as a primary source"; } enum "fpc-3" { junos:must "(("chassis fpc 3 pic 0 recovered-clock" || "chassis fpc 3 pic 1 recovered-clock"))"; junos:must-message "Must configure recovered-clock for this fpc"; value 9; description "Use fpc-3 as a primary source"; } enum "fpc-4" { junos:must "(("chassis fpc 4 pic 0 recovered-clock" || "chassis fpc 4 pic 1 recovered-clock"))"; junos:must-message "Must configure recovered-clock for this fpc"; value 10; description "Use fpc-4 as a primary source"; } enum "fpc-5" { junos:must "(("chassis fpc 5 pic 0 recovered-clock" || "chassis fpc 5 pic 1 recovered-clock"))"; junos:must-message "Must configure recovered-clock for this fpc"; value 11; description "Use fpc-5 as a primary source"; } enum "fpc-6" { junos:must "(("chassis fpc 6 pic 0 recovered-clock" || "chassis fpc 6 pic 1 recovered-clock"))"; junos:must-message "Must configure recovered-clock for this fpc"; value 12; description "Use fpc-6 as a primary source"; } enum "fpc-7" { junos:must "(("chassis fpc 7 pic 0 recovered-clock" || "chassis fpc 7 pic 1 recovered-clock"))"; junos:must-message "Must configure recovered-clock for this fpc"; value 13; description "Use fpc-7 as a primary source"; } enum "fpc-8" { junos:must "(("chassis fpc 8 pic 0 recovered-clock" || "chassis fpc 8 pic 1 recovered-clock"))"; junos:must-message "Must configure recovered-clock for this fpc"; value 14; description "Use fpc-8 as a primary source"; } enum "fpc-9" { junos:must "(("chassis fpc 9 pic 0 recovered-clock" || "chassis fpc 9 pic 1 recovered-clock"))"; junos:must-message "Must configure recovered-clock for this fpc"; value 15; description "Use fpc-9 as a primary source"; } enum "fpc-10" { junos:must "(("chassis fpc 10 pic 0 recovered-clock" || "chassis fpc 10 pic 1 recovered-clock"))"; junos:must-message "Must configure recovered-clock for this fpc"; value 16; description "Use fpc-10 as a primary source"; } enum "fpc-11" { junos:must "(("chassis fpc 11 pic 0 recovered-clock" || "chassis fpc 11 pic 1 recovered-clock"))"; junos:must-message "Must configure recovered-clock for this fpc"; value 17; description "Use fpc-11 as a primary source"; } enum "fpc-12" { junos:must "(("chassis fpc 12 pic 0 recovered-clock" || "chassis fpc 12 pic 1 recovered-clock"))"; junos:must-message "Must configure recovered-clock for this fpc"; value 18; description "Use fpc-12 as a primary source"; } enum "fpc-13" { junos:must "(("chassis fpc 13 pic 0 recovered-clock" || "chassis fpc 13 pic 1 recovered-clock"))"; junos:must-message "Must configure recovered-clock for this fpc"; value 19; description "Use fpc-13 as a primary source"; } enum "fpc-14" { junos:must "(("chassis fpc 14 pic 0 recovered-clock" || "chassis fpc 14 pic 1 recovered-clock"))"; junos:must-message "Must configure recovered-clock for this fpc"; value 20; description "Use fpc-14 as a primary source"; } enum "fpc-15" { junos:must "(("chassis fpc 15 pic 0 recovered-clock" || "chassis fpc 15 pic 1 recovered-clock"))"; junos:must-message "Must configure recovered-clock for this fpc"; value 21; description "Use fpc-15 as a primary source"; } } description "Best choice synchronization reference source list"; } leaf secondary { junos:must "((!("chassis synchronization source") || "chassis synchronization esmc-transmit"))"; junos:must-message "source or esmc-transmit cannot be configured with secondary"; type enumeration { enum "external-a" { junos:must "(!("chassis synchronization primary external-a"))"; junos:must-message "external-a can be either primary or secondary"; value 0; description "Use external-a as a secondary source"; } enum "external-b" { junos:must "(!("chassis synchronization primary external-b"))"; junos:must-message "external-b can be either primary or secondary"; value 1; description "Use external-b as a secondary source"; } enum "bits-a" { junos:must "(!("chassis synchronization primary bits-a"))"; junos:must-message "bits-a can be either primary or secondary"; value 2; description "Use bits-a as a secondary source"; } enum "bits-b" { junos:must "(!("chassis synchronization primary bits-b"))"; junos:must-message "bits-b can be either primary or secondary"; value 3; description "Use bits-b as a secondary source"; } enum "gps-0" { junos:must "(!("chassis synchronization primary gps-0"))"; junos:must-message "gps-0 can be either primary or secondary"; value 4; description "Use gps-0 as a secondary source"; } enum "gps-1" { junos:must "(!("chassis synchronization primary gps-1"))"; junos:must-message "gps-1 can be either primary or secondary"; value 5; description "Use gps-1 as a secondary source"; } enum "fpc-0" { junos:must "(("chassis fpc 0 pic 0 recovered-clock" || "chassis fpc 0 pic 1 recovered-clock"))"; junos:must-message "Must configure recovered-clock for this fpc"; junos:must "(!("chassis synchronization primary fpc-0"))"; junos:must-message "fpc-0 can be either primary or secondary"; value 6; description "Use fpc-0 as a secondary source"; } enum "fpc-1" { junos:must "(("chassis fpc 1 pic 0 recovered-clock" || "chassis fpc 1 pic 1 recovered-clock"))"; junos:must-message "Must configure recovered-clock for this fpc"; junos:must "(!("chassis synchronization primary fpc-1"))"; junos:must-message "fpc-1 can be either primary or secondary"; value 7; description "Use fpc-1 as a secondary source"; } enum "fpc-2" { junos:must "(("chassis fpc 2 pic 0 recovered-clock" || "chassis fpc 2 pic 1 recovered-clock"))"; junos:must-message "Must configure recovered-clock for this fpc"; junos:must "(!("chassis synchronization primary fpc-2"))"; junos:must-message "fpc-2 can be either primary or secondary"; value 8; description "Use fpc-2 as a secondary source"; } enum "fpc-3" { junos:must "(("chassis fpc 3 pic 0 recovered-clock" || "chassis fpc 3 pic 1 recovered-clock"))"; junos:must-message "Must configure recovered-clock for this fpc"; junos:must "(!("chassis synchronization primary fpc-3"))"; junos:must-message "fpc-3 can be either primary or secondary"; value 9; description "Use fpc-3 as a secondary source"; } enum "fpc-4" { junos:must "(("chassis fpc 4 pic 0 recovered-clock" || "chassis fpc 4 pic 1 recovered-clock"))"; junos:must-message "Must configure recovered-clock for this fpc"; junos:must "(!("chassis synchronization primary fpc-4"))"; junos:must-message "fpc-4 can be either primary or secondary"; value 10; description "Use fpc-4 as a secondary source"; } enum "fpc-5" { junos:must "(("chassis fpc 5 pic 0 recovered-clock" || "chassis fpc 5 pic 1 recovered-clock"))"; junos:must-message "Must configure recovered-clock for this fpc"; junos:must "(!("chassis synchronization primary fpc-5"))"; junos:must-message "fpc-5 can be either primary or secondary"; value 11; description "Use fpc-5 as a secondary source"; } enum "fpc-6" { junos:must "(("chassis fpc 6 pic 0 recovered-clock" || "chassis fpc 6 pic 1 recovered-clock"))"; junos:must-message "Must configure recovered-clock for this fpc"; junos:must "(!("chassis synchronization primary fpc-6"))"; junos:must-message "fpc-6 can be either primary or secondary"; value 12; description "Use fpc-6 as a secondary source"; } enum "fpc-7" { junos:must "(("chassis fpc 7 pic 0 recovered-clock" || "chassis fpc 7 pic 1 recovered-clock"))"; junos:must-message "Must configure recovered-clock for this fpc"; junos:must "(!("chassis synchronization primary fpc-7"))"; junos:must-message "fpc-7 can be either primary or secondary"; value 13; description "Use fpc-7 as a secondary source"; } enum "fpc-8" { junos:must "(("chassis fpc 8 pic 0 recovered-clock" || "chassis fpc 8 pic 1 recovered-clock"))"; junos:must-message "Must configure recovered-clock for this fpc"; junos:must "(!("chassis synchronization primary fpc-8"))"; junos:must-message "fpc-8 can be either primary or secondary"; value 14; description "Use fpc-8 as a secondary source"; } enum "fpc-9" { junos:must "(("chassis fpc 9 pic 0 recovered-clock" || "chassis fpc 9 pic 1 recovered-clock"))"; junos:must-message "Must configure recovered-clock for this fpc"; junos:must "(!("chassis synchronization primary fpc-9"))"; junos:must-message "fpc-9 can be either primary or secondary"; value 15; description "Use fpc-9 as a secondary source"; } enum "fpc-10" { junos:must "(("chassis fpc 10 pic 0 recovered-clock" || "chassis fpc 10 pic 1 recovered-clock"))"; junos:must-message "Must configure recovered-clock for this fpc"; junos:must "(!("chassis synchronization primary fpc-10"))"; junos:must-message "fpc-10 can be either primary or secondary"; value 16; description "Use fpc-10 as a secondary source"; } enum "fpc-11" { junos:must "(("chassis fpc 11 pic 0 recovered-clock" || "chassis fpc 11 pic 1 recovered-clock"))"; junos:must-message "Must configure recovered-clock for this fpc"; junos:must "(!("chassis synchronization primary fpc-11"))"; junos:must-message "fpc-11 can be either primary or secondary"; value 17; description "Use fpc-11 as a secondary source"; } enum "fpc-12" { junos:must "(("chassis fpc 12 pic 0 recovered-clock" || "chassis fpc 12 pic 1 recovered-clock"))"; junos:must-message "Must configure recovered-clock for this fpc"; junos:must "(!("chassis synchronization primary fpc-12"))"; junos:must-message "fpc-12 can be either primary or secondary"; value 18; description "Use fpc-12 as a secondary source"; } enum "fpc-13" { junos:must "(("chassis fpc 13 pic 0 recovered-clock" || "chassis fpc 13 pic 1 recovered-clock"))"; junos:must-message "Must configure recovered-clock for this fpc"; junos:must "(!("chassis synchronization primary fpc-13"))"; junos:must-message "fpc-13 can be either primary or secondary"; value 19; description "Use fpc-13 as a secondary source"; } enum "fpc-14" { junos:must "(("chassis fpc 14 pic 0 recovered-clock" || "chassis fpc 14 pic 1 recovered-clock"))"; junos:must-message "Must configure recovered-clock for this fpc"; junos:must "(!("chassis synchronization primary fpc-14"))"; junos:must-message "fpc-14 can be either primary or secondary"; value 20; description "Use fpc-14 as a secondary source"; } enum "fpc-15" { junos:must "(("chassis fpc 15 pic 0 recovered-clock" || "chassis fpc 15 pic 1 recovered-clock"))"; junos:must-message "Must configure recovered-clock for this fpc"; junos:must "(!("chassis synchronization primary fpc-15"))"; junos:must-message "fpc-15 can be either primary or secondary"; value 21; description "Use fpc-15 as a secondary source"; } } description "Alternative choice synchronization reference source list"; } } // container synchronization container lcd { status deprecated; description "Chassis LCD"; uses apply-advanced; list fpc { key "name"; ordered-by user; leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "FPC slot number"; } choice menu-item { leaf maintenance-menu { type empty; description "LCD maintenance menu"; } } // choice menu-item choice enable-disable { leaf disable { type empty; description "Disable maintenance-menu"; } } // choice enable-disable } // list fpc choice menu-item { leaf maintenance-menu { type empty; description "LCD maintenance menu"; } } // choice menu-item choice enable-disable { leaf disable { type empty; description "Disable maintenance-menu"; } } // choice enable-disable } // container lcd container forwarding-options { description "Configure options to control packet forwarding"; uses apply-advanced; choice uft_object { container l2-profile-one { presence "enable l2-profile-one"; description "MAC: 288K L3-host: 16K LPM: 16K EM:0, needs reboot for VC; restarts PFE if standalone"; uses apply-advanced; leaf num-65-127-prefix { type union { type string { pattern "<.*>|$.*"; } type int32 { range "0 .. 4"; } } default "1"; description "IPV6 prefixes > 64, in multiples of 1K e.g 3 = 3x1K entries(default 1)"; } } // container l2-profile-one container l2-profile-two { presence "enable l2-profile-two"; description "MAC: 224K L3-host: 80K LPM: 16K EM:0, needs reboot for VC; restarts PFE if standalone"; uses apply-advanced; leaf num-65-127-prefix { type union { type string { pattern "<.*>|$.*"; } type int32 { range "0 .. 4"; } } default "1"; description "IPV6 prefixes > 64, in multiples of 1K e.g 3 = 3x1K entries(default 1)"; } } // container l2-profile-two container l2-profile-three { presence "enable l2-profile-three"; description "(default) MAC: 160K L3-host: 144K LPM: 16K, needs reboot for VC;restarts PFE if standalone"; uses apply-advanced; leaf num-65-127-prefix { type union { type string { pattern "<.*>|$.*"; } type int32 { range "0 .. 4"; } } default "1"; description "IPV6 prefixes > 64, in multiples of 1K e.g 3 = 3x1K entries(default 1)"; } } // container l2-profile-three container l3-profile { presence "enable l3-profile"; description "MAC: 96K L3-host: 208K LPM: 16K EM:0, needs reboot for VC; restarts PFE if standalone"; uses apply-advanced; leaf num-65-127-prefix { type union { type string { pattern "<.*>|$.*"; } type int32 { range "0 .. 4"; } } default "1"; description "IPV6 prefixes > 64, in multiples of 1K e.g 3 = 3x1K entries(default 1)"; } } // container l3-profile container lpm-profile { presence "enable lpm-profile"; description "MAC: 32K L3-host: 16K LPM: 128K EM:0, needs reboot for VC; restarts PFE if standalone"; uses apply-advanced; leaf prefix-65-127-disable { junos:must "(!(".. unicast-in-lpm"))"; junos:must-message "Cannot set both unicast-in-lpm and prefix-65-127-disable at the same time"; type empty; description "Disable IPV6 prefixes with length > 64"; } leaf unicast-in-lpm { type empty; description "Install unicast host entries in LPM table"; } } // container lpm-profile container exact-match-profile { presence "enable exact-match-profile"; description "MAC: 8K L3-host: 8K LPM: 16K EM: 64K, needs reboot for VC; restarts PFE if standalone"; uses apply-advanced; leaf num-65-127-prefix { type union { type string { pattern "<.*>|$.*"; } type int32 { range "0 .. 4"; } } default "1"; description "IPV6 prefixes > 64, in multiples of 1K e.g 3 = 3x1K entries(default 1)"; } } // container exact-match-profile container vxlan-gbp-profile { presence "enable vxlan-gbp-profile"; description "MAC: 48K L3-host: 48K LPM: 16K EM:32K, needs reboot for VC; restarts PFE if standalone"; } // container vxlan-gbp-profile container custom-profile { description "(Partition the shared banks, will automatically restart the PFE when configured)"; uses apply-advanced; container l2-entries { description "Customize l2 entries needed"; uses apply-advanced; leaf num-banks { type union { type string { pattern "<.*>|$.*"; } type int32 { range "0 .. 4"; } } default "0"; description "Number of banks needed for entries of this type"; } } // container l2-entries container l3-entries { description "Customize l3 entries needed"; uses apply-advanced; leaf num-banks { type union { type string { pattern "<.*>|$.*"; } type int32 { range "0 .. 4"; } } default "0"; description "Number of banks needed for entries of this type"; } } // container l3-entries container exact-match-entries { description "Customize exact match entries needed"; uses apply-advanced; leaf num-banks { type union { type string { pattern "<.*>|$.*"; } type int32 { range "0 .. 4"; } } default "0"; description "Number of banks needed for entries of this type"; } } // container exact-match-entries container lpm-entries { description "Customize lpm banks needed"; uses apply-advanced; leaf num-banks { type enumeration { enum "0" { value 0; } enum "2" { value 1; } enum "4" { value 2; } } default "0"; description "Number of banks needed for entries of this type"; } leaf prefix-65-127-disable { junos:must "(!(".. unicast-in-lpm"))"; junos:must-message "Cannot set both unicast-in-lpm and prefix-65-127-disable at the same time"; type empty; description "Disable IPV6 prefixes with length > 64"; } } // container lpm-entries leaf num-65-127-prefix { type union { type string { pattern "<.*>|$.*"; } type int32 { range "0 .. 4"; } } default "1"; description "IPV6 prefixes > 64, in multiples of 1K e.g 3 = 3x1K entries(default 1)"; } } // container custom-profile } // choice uft_object } // container forwarding-options leaf loopback-firewall-optimization { type empty; description "Optimal TCAM use,restarts PFE(for IP rsrved multicast dest & IP ttl=0/1,config explicitly)"; } leaf epacl-firewall-optimization { type empty; description "Maximizes Egress Port ACLs TCAM use and restarts PFE"; } container lcd-menu { junos:must "(!(".. lcd"))"; junos:must-message "Cannot mix 'lcd-menu' and 'lcd maintenance-menu' configurations"; description "Chassis LCD menu"; uses apply-advanced; list fpc { key "name"; ordered-by user; leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "FPC slot number"; } uses apply-advanced; list menu-item { key "name"; ordered-by user; description "LCD menu item"; leaf name { type string; description "LCD menu name"; } leaf disable { type empty; description "Disable LCD menu"; } } // list menu-item } // list fpc list menu-item { key "name"; ordered-by user; description "LCD menu item"; leaf name { type string; description "LCD menu name"; } leaf disable { type empty; description "Disable LCD menu"; } } // list menu-item } // container lcd-menu leaf fru-poweron-sequence { type string { junos:posix-pattern "^[0-9 ]+$"; junos:pattern-message "FRU in fru poweron sequence must be a number"; } description "FRUs power on sequence like 0 1 2 3 ... within double quotes"; } leaf fru-local-storage-disable { type empty; description "Disable and erase local storage on FPC.(FPC reboot required)"; } container psm { description "Power supply module"; uses apply-advanced; leaf max-power { type union { type uint32; type string { pattern "<.*>|$.*"; } } description "Configure power capacity for the PSM (W)"; } } // container psm leaf auto-image-upgrade { type empty; description "Auto image upgrade using DHCP"; } container route-localization { junos:must "((any "chassis fpc <*> route-localization fib-local" && !("chassis system-domains protected-system-domains")))"; junos:must-message "There must be at least one fpc with route-localization fib-local and no protected-system-domains"; description "Route-Localization settings"; uses apply-advanced; leaf inet { type empty; description "Route-Localization inet"; } leaf inet6 { type empty; description "Route-Localization inet6"; } } // container route-localization container state { description "Set SFB upgrade state."; uses apply-advanced; leaf cb-upgrade { type enumeration { enum "off" { value 0; description "Set after CB upgrade is complete"; } enum "on" { value 1; description "Set before the start of CB upgrade."; } } default "off"; description "Set CB upgrade state on/off."; } leaf sfb-upgrade { type enumeration { enum "off" { value 0; description "Set after SFB upgrade is complete"; } enum "on" { value 1; description "Set before the start of SFB upgrade."; } } default "off"; description "Set SFB upgrade state on/off."; } } // container state container multicast-loadbalance { presence "enable multicast-loadbalance"; description "Multicast load balancing settings"; uses chassis_ae_lb_type; } // container multicast-loadbalance leaf extended-statistics { type empty; description "Enable extended system statistics"; } container error { presence "enable error"; description "Error level configuration for all FPC"; uses chassis_fpc_error_type; } // container error container oss-map { description "Translate Operation Supported System's requirements"; uses apply-advanced; leaf model-name { type enumeration { enum "t640" { value 0; description "Set to T640's model"; } enum "t1600" { value 1; description "Set to T1600's model"; } } description "Override chassis model name for specific show/snmp output"; } } // container oss-map container jnu-management { description "JNU Management configuration"; uses apply-advanced; leaf mode { type enumeration { enum "feature-rich" { value 0; description "Feature Rich Mode"; } enum "bng-control-plane" { value 1; description "BNG control-plane mode"; } } description "JNU Mode"; } leaf satellite-name { type string; description "Satellite name"; } leaf device-group { type string; description "Satellite device group"; } list satellite { key "name"; ordered-by user; description "List of satellites"; leaf name { type string; description "Satellite name"; } uses apply-advanced; leaf device-group { type string; description "Satellite Device Group"; } leaf model { type string; description "Satellite model"; } leaf version { type string { junos:posix-pattern "^[[:digit:]][[:alnum:]_.-]+$"; junos:pattern-message "Version should begin with a number"; } description "Satellite version"; } } // list satellite leaf user { type string; description "Satellite User Name"; } leaf controller { type string; description "Controller Name"; } leaf authentication { type jt:unreadable; description "Authentication string"; } } // container jnu-management list satellite { key "name"; ordered-by user; description "List of available satellite configurations"; leaf name { type string; description "Satellite name"; } uses apply-advanced; } // list satellite leaf preserve-fpc-poweron-sequence { type empty; description "Preserve MPC poweron sequence for consistency across reboot"; } leaf auto-satellite-conversion { type empty; description "Enable remote conversion to satellite device-mode"; } container satellite-management { junos:must "(!("chassis aggregated-devices disable-lag-enhanced"))"; junos:must-message "To configure chassis satellite-management, chassis aggregated-devices disable-lag-enhanced must not be set"; presence "enable satellite-management"; description "Satellite management configuration"; uses apply-advanced; container designated-event-forwarding { presence "enable designated-event-forwarding"; description "Designated event forwarding"; } // container designated-event-forwarding container traceoptions { description "Global satelite discovery and provisioning trace options"; uses apply-advanced; leaf no-remote-trace { junos:must "("system tracing")"; junos:must-message "'no-remote-trace' is valid only when [system tracing] is configured"; type empty; description "Disable remote tracing"; } container file { description "Trace file information"; leaf filename { type string { junos:posix-pattern "![/ %]"; junos:pattern-message "Must not contain '/', % or a space"; length "1 .. 1024"; } description "Name of file in which to write trace information"; } leaf size { type string; description "Maximum trace file size"; } leaf files { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "2 .. 1000"; } } default "3"; description "Maximum number of trace files"; } choice world-readable-choice { leaf world-readable { type empty; description "Allow any user to read the log file"; } leaf no-world-readable { type empty; description "Don't allow any user to read the log file"; } } // choice world-readable-choice leaf match { type jt:regular-expression; description "Regular expression for lines to be logged"; } } // container file list flag { key "name"; ordered-by user; description "Tracing parameters"; leaf name { type enumeration { enum "parse" { value 0; description "Trace configuration parsing"; } enum "config-internal" { value 1; description "Trace configuration internals"; } enum "normal" { value 2; description "Trace normal events"; } enum "general" { value 3; description "Trace general events"; } enum "state" { value 4; description "Trace state transitions"; } enum "task" { value 5; description "Trace SDPD task processing"; } enum "timer" { value 6; description "Trace SDPD task timer processing"; } enum "krt" { value 7; description "Trace communication over routing socket"; } enum "lldp" { value 8; description "Trace LLDP events"; } enum "provision" { value 9; description "Trace provisioning events"; } enum "extended-port" { value 10; description "Trace extended-port events"; } enum "multi-chassis" { value 11; description "Trace multi-chassis events"; } enum "upgrade-group" { value 12; description "Trace sw-update events"; } enum "device" { value 13; description "Trace device FSM events"; } enum "tcp" { value 14; description "Trace TCP events"; } enum "interface" { value 15; description "Trace interface events"; } enum "cluster" { value 16; description "Trace cluster events"; } enum "all" { value 17; description "Trace everything"; } } } leaf disable { type empty; description "Disable this trace flag"; } } // list flag } // container traceoptions leaf cluster-policy { junos:must "("policy-options satellite-policies candidate-uplink-port-policy $$")"; junos:must-message "Satellite cluster-policy not defined"; type string; description "Cluster policy"; } list cluster { key "name"; description "Configure a satellite device cluster"; leaf name { type string { length "1 .. 16"; } description "Satellite cluster name"; } uses apply-advanced; leaf cluster-id { junos:must "(unique "chassis satellite-management cluster <*> cluster-id $$")"; junos:must-message "Cluster-id has to be unique among all provisioned clusters"; type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 32"; } } description "Satellite cluster identifier"; } leaf-list cascade-ports { type union { type jt:interface-device; type string { pattern "<.*>|$.*"; } } description "Cascade ports"; } leaf cluster-policy { junos:must "("policy-options satellite-policies candidate-uplink-port-policy $$")"; junos:must-message "Satellite cluster-policy not defined"; type string; description "Candidate uplink policy"; } list fpc { key "name"; leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "65 .. 254"; } } description "Satellite slot identifier"; } uses apply-advanced; leaf alias { junos:must "(unique "chassis satellite-management cluster <*> fpc <*> alias $$")"; junos:must-message "alias has to be unique among all provisioned satellite-devices"; junos:must "(unique "chassis satellite-management fpc <*> alias $$")"; junos:must-message "alias has to be unique among all provisioned satellite-devices"; type string { length "1 .. 16"; } description "Satellite alias"; } leaf description { type string { length "1 .. 64"; } description "Satellite description"; } leaf member-id { junos:must "(unique ".. .. fpc <*> member-id $$")"; junos:must-message "Member-id has to be unique among all members in a cluster"; type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 62"; } } description "Satellite member id"; } leaf system-id { junos:must "(unique "chassis satellite-management cluster <*> fpc <*> system-id $$")"; junos:must-message "System-id has to be unique among all provisioned satellite-devices"; junos:must "(unique "chassis satellite-management fpc <*> system-id $$")"; junos:must-message "System-id has to be unique among all provisioned satellite-devices"; type jt:mac-addr; description "Satellite system id"; } leaf cluster-policy { junos:must "("policy-options satellite-policies candidate-uplink-port-policy $$")"; junos:must-message "Satellite Cluster policy not defined"; type string; description "Candidate uplink policy"; } } // list fpc } // list cluster list fpc { key "name"; description "FPC identifier for a satellite device"; leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "65 .. 254"; } } description "Satellite slot identifier"; } uses apply-advanced; leaf serial-number { junos:must "(unique "chassis satellite-management fpc <*> serial-number $$")"; junos:must-message "serial-number has to be unique among all provisioned satellite-devices"; type string { length "1 .. 16"; } description "Satellite serial number"; } leaf system-id { junos:must "(unique "chassis satellite-management fpc <*> system-id $$")"; junos:must-message "System-id has to be unique among all provisioned satellite-devices"; type jt:mac-addr; description "Satellite system id"; } leaf target-mode { type empty; description "Enable target mode forwarding for extended-ports"; } leaf alias { junos:must "(unique "chassis satellite-management fpc <*> alias $$")"; junos:must-message "alias has to be unique among all provisioned satellite-devices"; type string { length "1 .. 16"; } description "Satellite alias"; } leaf description { type string { length "1 .. 64"; } description "Satellite description"; } container management-address { presence "enable management-address"; description "Satellite Management Interface IP"; uses apply-advanced; leaf address { junos:must "(unique "chassis satellite-management fpc <*> management-address address $$")"; junos:must-message "management interface IP address has to be unique among all provisioned satellite-devices"; type jt:ipv4prefix; description "Satellite Management Interface IP address"; } leaf gateway { type jt:ipv4addr; description "Satellite Management Interface Gateway IP address"; } } // container management-address leaf-list cascade-ports { type union { type jt:interface-device; type string { pattern "<.*>|$.*"; } } description "Cascade ports"; } leaf extended-ports-template { junos:must "("policy-options satellite-policies extended-ports-template $$")"; junos:must-message "Extended ports template not defined"; type string; description "Extended ports template"; } choice ufd_type { container uplink-failure-detection { presence "enable uplink-failure-detection"; description "Enable uplink-failure-detection"; uses apply-advanced; leaf candidate-uplink-policy { junos:must "("policy-options satellite-policies candidate-uplink-port-policy $$")"; junos:must-message "Candidate-uplink-port-policy not defined"; type string; description "Candidate uplink policy"; } } // container uplink-failure-detection } // choice ufd_type leaf environment-monitoring-policy { junos:must "("policy-options satellite-policies environment-monitoring-policy $$")"; junos:must-message "Environment monitoring policy not defined"; type string; description "Environment monitoring policy"; } choice forwarding-policy-type { container forwarding-policy { presence "enable forwarding-policy"; description "Enable a forwarding policy"; uses apply-advanced; leaf forwarding-policy-alias { junos:must "("policy-options satellite-policies forwarding-policy $$")"; junos:must-message "forwarding-policy not defined"; type string; description "Define forwarding policy alias"; } } // container forwarding-policy } // choice forwarding-policy-type } // list fpc leaf extended-ports-policy { junos:must "("policy-options satellite-policies extended-ports-policy $$")"; junos:must-message "Extended ports policy not defined"; type string; description "Extended ports policy"; } choice ufd_type { container uplink-failure-detection { presence "enable uplink-failure-detection"; description "Enable uplink-failure-detection"; uses apply-advanced; leaf candidate-uplink-policy { junos:must "("policy-options satellite-policies candidate-uplink-port-policy $$")"; junos:must-message "Candidate-uplink-port-policy not defined"; type string; description "Candidate uplink policy"; } } // container uplink-failure-detection } // choice ufd_type container psu { description "Power Supply Unit redundancy configuration"; uses apply-advanced; container redundancy { description "PSU Redundancy settings"; uses apply-advanced; leaf n-plus-n { type empty; description "PSU redundancy: N+N configuration"; } } // container redundancy } // container psu container environment-monitoring-policy { presence "enable environment-monitoring-policy"; description "Environment monitoring policy"; uses apply-advanced; leaf policy-name { junos:must "("policy-options satellite-policies environment-monitoring-policy $$")"; junos:must-message "Environment monitoring policy not defined"; type string; description "Default environment monitoring policy"; } } // container environment-monitoring-policy choice forwarding-policy-type { container forwarding-policy { presence "enable forwarding-policy"; description "Enable a forwarding policy"; uses apply-advanced; leaf forwarding-policy-alias { junos:must "("policy-options satellite-policies forwarding-policy $$")"; junos:must-message "forwarding-policy not defined"; type string; description "Define forwarding policy alias"; } } // container forwarding-policy } // choice forwarding-policy-type container redundancy-groups { description "Redundancy groups configuration"; uses apply-advanced; leaf chassis-id { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 4"; } } description "Chassis identifier"; } list rg-group { key "name"; ordered-by user; description "Redundancy groups"; uses redundancy-group-type; } // list rg-group } // container redundancy-groups container upgrade-groups { description "Upgrade group configuration"; uses apply-advanced; list upgrade-group { key "name"; description "Upgrade group"; uses upgrade-group-type; } // list upgrade-group } // container upgrade-groups container auto-satellite-conversion { description "Enable automatic satellite conversion"; uses apply-advanced; leaf-list satellite { type string { length "1 .. 100"; } ordered-by user; description "Satellite slot-id or range or all"; } } // container auto-satellite-conversion container single-home { description "Devices are connected to local aggregation device only"; uses apply-advanced; leaf-list satellite { type string { length "1 .. 100"; } ordered-by user; description "Satellite slot-id or range or all"; } } // container single-home leaf aging-timer { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "2 .. 60000"; } } units "minutes"; description "Aging-timer"; } leaf block-console-access { type empty; description "Block console access"; } container firewall { description "Define a firewall configuration"; uses apply-advanced; container family { description "Protocol family"; container bridge { description "Protocol family BRIDGE for firewall filter"; uses apply-advanced; list filter { key "name"; ordered-by user; uses satellite-bridge-filter; } // list filter } // container bridge container ethernet-switching { description "Protocol family Ethernet Switching for firewall filter"; uses apply-advanced; list filter { key "name"; ordered-by user; description "Define an Ethernet Switching firewall filter"; uses satellite-bridge-filter; } // list filter } // container ethernet-switching } // container family } // container firewall } // container satellite-management container periodic { description "Chassisd periodic options"; uses apply-advanced; leaf yield-cpu { type empty; description "Yield cpu in FRU periodic"; } leaf one-sib-per-check { type empty; description "Check one SIB per periodic"; } leaf no-sib-asic-stats { type empty; description "Disable asic statis for all SIBs in periodic"; } leaf slow-fpc-check { type empty; description "Slow FPC check in periodic"; } leaf ch-power-check-interval { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 60"; } } units "seconds"; default "0"; description "Chassis power check interval, 0=default"; } leaf re-check-interval { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 60"; } } units "seconds"; default "0"; description "Chassis RE check interval, 0=default"; } } // container periodic leaf turbotx-disable { type empty; description "Disable turbotx processing"; } container thermal-health-check { presence "enable thermal-health-check"; description "Enable Thermal Health check of the chassis"; uses apply-advanced; container fet-failure-check { presence "enable fet-failure-check"; uses apply-advanced; leaf action-onfail { type enumeration { enum "none" { value 0; description "No action when Oring FET detected"; } enum "auto-shutdown" { value 1; description "Shutdown when Oring FET detected"; } } default "none"; description "Set the action when Oring FET detected"; } } // container fet-failure-check } // container thermal-health-check container fpc-down-on-repeated-conn-drops { description "Bring FPC down if connection drops repeatedly"; uses apply-advanced; leaf max-drop-count { junos:must "("chassis fpc-down-on-repeated-conn-drops time-interval")"; junos:must-message "must configure drop-time-interval as well"; type union { type uint32; type string { pattern "<.*>|$.*"; } } default "0"; description "Number of connection drops to shutdown FPC"; } leaf time-interval { junos:must "("chassis fpc-down-on-repeated-conn-drops max-drop-count")"; junos:must-message "must configure max-drop-count as well"; type union { type uint32; type string { pattern "<.*>|$.*"; } } units "minutes"; default "0"; description "Interval in minutes over which connection drops are counted"; } } // container fpc-down-on-repeated-conn-drops container mode { presence "enable mode"; description "Bringup FRU in Standalone mode"; uses apply-advanced; container standalone { presence "enable standalone"; description "Bringup FRU in standalone mode1"; uses apply-advanced; list fpc { key "name"; leaf name { type string { length "1 .. 4"; } description "FPC slot number"; } uses apply-advanced; container loopback { description "Loopback Configuration for Mode & Type"; uses apply-advanced; leaf wan { type enumeration { enum "serdes" { value 0; description "Serdes type loopback"; } enum "retimer" { value 1; description "Retimer type loopback"; } } default "serdes"; } leaf fabric { type enumeration { enum "serdes" { value 0; description "Serdes type loopback"; } enum "retimer" { value 1; description "Retimer type loopback"; } } default "serdes"; } } // container loopback } // list fpc list fabric-card { key "name"; ordered-by user; description "Fabric Card Loopback setting"; uses chassis_fabric_card_type; } // list fabric-card } // container standalone } // container mode container system-domains { presence "enable system-domains"; description "Root and protected system domain configuration"; uses apply-advanced; leaf root-domain-id { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 3"; } } description "Root domain identifier"; } list protected-system-domains { key "name"; description "Protected system domain configuration"; uses juniper-protected-system-domain; } // list protected-system-domains container traceoptions { description "Protected system domain traceoptions"; uses juniper-protected-system-domain-traceoptions; } // container traceoptions } // container system-domains container network-slices { junos:must "("system commit synchronize")"; junos:must-message "[system commit synchronize] has to be configured"; presence "enable network-slices"; description "Network slices configuration"; uses apply-advanced; container guest-network-functions { presence "enable guest-network-functions"; description "Guest network function configuration"; uses apply-advanced; list gnf { key "name"; description "Guest network function"; uses juniper-gnf; } // list gnf } // container guest-network-functions leaf vlan-isolation { type empty; description "Enable VLAN isolation for Control Plane"; } } // container network-slices container cluster { description "Chassis cluster configuration"; uses apply-advanced; container traceoptions { description "Set chassis cluster traceoptions"; uses apply-advanced; leaf no-remote-trace { junos:must "("system tracing")"; junos:must-message "'no-remote-trace' is valid only when [system tracing] is configured"; type empty; description "Disable remote tracing"; } container file { description "Trace file information"; leaf filename { type string { junos:posix-pattern "![/ %]"; junos:pattern-message "Must not contain '/', % or a space"; length "1 .. 1024"; } description "Name of file in which to write trace information"; } leaf size { type string; description "Maximum trace file size"; } leaf files { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "2 .. 1000"; } } default "3"; description "Maximum number of trace files"; } choice world-readable-choice { leaf world-readable { type empty; description "Allow any user to read the log file"; } leaf no-world-readable { type empty; description "Don't allow any user to read the log file"; } } // choice world-readable-choice leaf match { type jt:regular-expression; description "Regular expression for lines to be logged"; } } // container file list flag { key "name"; ordered-by user; description "Tracing parameters"; leaf name { type enumeration { enum "cli" { value 0; description "Trace CLI events"; } enum "configuration" { value 1; description "Trace configuration events"; } enum "eventlib" { value 2; description "Trace event library events"; } enum "fsm" { value 3; description "Trace finite state machine events"; } enum "heartbeat" { value 4; description "Trace JSRPD heartbeats"; } enum "interface" { value 5; description "Trace interface related events"; } enum "routing-socket" { value 6; description "Trace routing socket events"; } enum "uspipc" { value 7; description "Trace USP IPC events"; } enum "init" { value 8; description "Trace initialization events"; } enum "socket" { value 9; description "Trace socket events"; } enum "snmp" { value 10; description "Trace snmp events"; } enum "ip-monitoring" { value 11; description "Trace IP monitoring events"; } enum "hw-monitoring" { value 12; description "Trace HW monitoring events"; } enum "fabric-monitoring" { value 13; description "Trace fabric monitoring events"; } enum "health-monitoring" { value 14; description "Trace health monitoring events"; } enum "schedule-monitoring" { value 15; description "Trace schedule monitoring events"; } enum "heartbeat-tlv" { value 16; description "Trace TLV based heart-beat"; } enum "ha-peer" { value 17; description "Trace HA peer related info"; } enum "srg" { value 18; description "Trace HA srg related info"; } enum "all" { value 19; description "Trace all events"; } } } } // list flag leaf level { type enumeration { enum "emergency" { value 0; description "Match emergency conditions"; } enum "alert" { value 1; description "Match alert conditions"; } enum "critical" { value 2; description "Match critical conditions"; } enum "error" { value 3; description "Match error conditions"; } enum "warning" { value 4; description "Match warning messages"; } enum "notice" { value 5; description "Match notice level messages"; } enum "info" { value 6; description "Match informational messages"; } enum "debug" { value 7; description "Match debug messages"; } enum "all" { value 8; description "Match all levels"; } } default "info"; description "Set level of tracing"; } } // container traceoptions leaf control-link-recovery { type empty; description "Enable automatic control link recovery"; } leaf health-monitoring { type empty; description "Enable ha health monitoring"; } leaf reth-count { type union { type string { pattern "<.*>|$.*"; } type uint16; } description "Number of redundant ethernet interfaces"; } container control-interface { description "Disable/enable HA control-link interface"; uses apply-advanced; list node { key "name"; ordered-by user; description "Set node specific parameters"; leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 1"; } } description "Node identifier"; } leaf disable { type empty; description "Disable HA control interface"; } } // list node } // container control-interface list redundant-interface { key "name"; max-elements 10; ordered-by user; description "Redundant peer configuration"; leaf name { type union { type jt:interface-device; type string { pattern "<.*>|$.*"; } } description "Redundant backend L3 interface"; } uses apply-advanced; leaf mapping-interface { type union { type jt:interface-device; type string { pattern "<.*>|$.*"; } } description "Mapping interface to L3 redundant interface"; } } // list redundant-interface list fabric-member { key "name"; ordered-by user; description "Fabric member interface configuration"; leaf name { junos:must "(any "interfaces <*> fabric-options member-interfaces $$")"; junos:must-message "Interface must be defined under 'interfaces <fab*> fabric-option member-interfaces'"; type union { type jt:interface-device; type string { pattern "<.*>|$.*"; } } description "Fabric member interface"; } uses apply-advanced; leaf vlan-id { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 4094"; } } description "VLAN ID for fabric member interface"; } container virtual-interface { presence "enable virtual-interface"; description "Name of the virtual mapped hsxe interface"; uses apply-advanced; leaf virtual-interface-name { type string { junos:posix-pattern "^hsxe[0-3]$"; junos:pattern-message "Only valid hsxe0-3 interfaces are allowed"; length "1 .. 5"; } description "Name of the hsxe interface"; } } // container virtual-interface } // list fabric-member list control-ports { key "fpc port"; ordered-by user; description "Enable specific chassis cluster control ports"; leaf fpc { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "FPC slot number"; } leaf port { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 2"; } } description "Port number"; } } // list control-ports leaf heartbeat-interval { type union { type string { pattern "<.*>|$.*"; } type uint32; } units "milliseconds"; default "1000"; description "Interval between successive heartbeats"; } leaf heartbeat-threshold { type union { type string { pattern "<.*>|$.*"; } type uint32; } default "3"; description "Number of consecutive missed heartbeats to indicate device failure"; } container network-management { description "Define parameters for network management"; uses apply-advanced; leaf cluster-master { type empty; description "Enable in-band management on cluster-master"; } } // container network-management list node { key "name"; ordered-by user; status deprecated; description "Set the list of nodes in the cluster"; leaf name { type enumeration { enum "0" { value 0; description "Node identifier 0"; } enum "1" { value 1; description "Node identifier 1"; } } description "Node identifier"; } uses apply-advanced; } // list node list redundancy-group { key "name"; ordered-by user; description "Set redundancy-group parameters"; leaf name { type union { type string { pattern "<.*>|$.*"; } type uint8; } description "Redundancy-group number"; } uses apply-advanced; list node { key "name"; ordered-by user; description "Set node specific parameters"; leaf name { type enumeration { enum "0" { value 0; description "Node identifier 0"; } enum "1" { value 1; description "Node identifier 1"; } } description "Node identifier"; } leaf priority { type union { type string { pattern "<.*>|$.*"; } type uint8 { range "1 .. 254"; } } description "Priority of the node in the redundancy-group"; } } // list node container preempt { presence "enable preempt"; description "Allow preemption of primaryship based on priority"; uses apply-advanced; leaf delay { type union { type string { pattern "<.*>|$.*"; } type uint16 { range "1 .. 21600"; } } units "seconds"; description "Time to wait before taking over mastership"; } leaf limit { type union { type string { pattern "<.*>|$.*"; } type uint16 { range "1 .. 50"; } } description "Max number of preemptive failovers allowed"; } leaf period { type union { type string { pattern "<.*>|$.*"; } type uint16 { range "1 .. 1400"; } } units "seconds"; description "Time period during which the limit is applied"; } } // container preempt leaf gratuitous-arp-count { type union { type string { pattern "<.*>|$.*"; } type uint8 { range "1 .. 16"; } } description "Number of gratuitous ARPs to send on an active interface after failover"; } leaf hold-down-interval { type union { type string { pattern "<.*>|$.*"; } type uint16 { range "0 .. 1800"; } } units "seconds"; description "RG failover interval. RG0(300-1800) RG1+(0-1800)"; } list interface-monitor { key "name"; ordered-by user; description "Define interfaces to monitor"; leaf name { junos:must "("interfaces $$")"; junos:must-message "Interface must be defined before configuring monitoring"; type union { type jt:interface-device; type string { pattern "<.*>|$.*"; } } description "Name of the interface to monitor"; } leaf weight { type union { type string { pattern "<.*>|$.*"; } type uint16 { range "0 .. 255"; } } description "Weight assigned to this interface that influences failover"; } } // list interface-monitor container ip-monitoring { description "Define parameters for IP monitoring feature"; uses apply-advanced; leaf global-weight { type union { type string { pattern "<.*>|$.*"; } type uint16 { range "0 .. 255"; } } default "255"; description "Define global weight for IP monitoring"; } leaf global-threshold { type union { type string { pattern "<.*>|$.*"; } type uint16 { range "0 .. 255"; } } default "0"; description "Define global threshold for IP monitoring"; } leaf retry-interval { type union { type string { pattern "<.*>|$.*"; } type uint16 { range "1 .. 30"; } } default "1"; description "Define the time interval in seconds between retries."; } leaf retry-count { type union { type string { pattern "<.*>|$.*"; } type uint16 { range "5 .. 15"; } } default "5"; description "Number of retries needed to declare reachablity failure"; } container family { description "Define protocol family"; uses apply-advanced; container inet { description "Define IPv4 related parameters"; uses apply-advanced; list address { key "name"; description "Define IP address related parameters"; uses ip-monitoring-address-type; } // list address } // container inet } // container family } // container ip-monitoring } // list redundancy-group container configuration-synchronize { description "Cluster configuration action"; uses apply-advanced; leaf no-secondary-bootup-auto { type empty; description "Disable auto configuration synchronize on secondary bootup"; } } // container configuration-synchronize leaf use-actual-mac-on-physical-interfaces { type empty; description "Use Hypervisor provided MAC for physical interfaces on virtual platforms"; } leaf use-active-child-mac-on-reth { type empty; description "Copy Child's physical MAC on RETH parent's current MAC"; } } // container cluster container high-availability { presence "enable high-availability"; description "Enable High Availability mode"; uses apply-advanced; container local-id { description "Local Identifier"; leaf id { junos:must "(!("chassis high-availability peer-id $$"))"; junos:must-message "high-availability local-id must be different with peer-id"; junos:must "("chassis high-availability peer-id")"; junos:must-message "high-availability peer-id must be defined"; type union { type string { pattern "<.*>|$.*"; } type uint8 { range "1 .. 10"; } } description "Local identifier number"; } leaf local-ip { type jt:ipaddr; description "Local IPv4/IPv6 address"; } } // container local-id list peer-id { key "name"; ordered-by user; description "Peer related information"; leaf name { junos:must "(!("chassis high-availability local-id $$"))"; junos:must-message "high-availability local-id must be different with peer-id"; junos:must "("chassis high-availability local-id")"; junos:must-message "high-availability local-id must be defined"; type union { type string { pattern "<.*>|$.*"; } type uint8 { range "1 .. 10"; } } description "Peer Identifier"; } uses apply-advanced; leaf desc { type string { length "1 .. 255"; } description "Peer Description"; } leaf peer-ip { type jt:ipaddr; description "Peer IPv4/IPv6 address"; } leaf interface { junos:must "(!(("protocols l2-learning global-mode switching" && "interfaces $$ family ethernet-switching")))"; junos:must-message "Referenced interface must not be ethernet-switching interface of switching mode"; type union { type jt:interface-name; type string { pattern "<.*>|$.*"; } } description "Name of the interface"; } leaf routing-instance { junos:must "("routing-instances $$ instance-type virtual-router")"; junos:must-message "'instance-type' for the referenced routing-instance must be configured as virtual-router"; junos:must "(("routing-instances $$" || any "tenants <*> routing-instances $$"))"; junos:must-message "referenced routing-instance must be defined"; type string { junos:posix-pattern "!^((__.*__)|(all)|(.*[ ].*)|("")|(.{129,}))$"; junos:pattern-message "Must be a non-reserved string of 128 characters or less with no spaces."; } description "Routing instance to locate the peer route"; } leaf vpn-profile { junos:must "("security ipsec vpn $$ ha-link-encryption")"; junos:must-message "Referenced vpn object must have ha-link-encryption flag defined"; junos:must "("security ipsec vpn $$")"; junos:must-message "Referenced vpn object must be defined under [edit security ipsec vpn]"; type string { length "1 .. 255"; } description "VPN Profile name for HA link Encryption"; } container liveness-detection { presence "enable liveness-detection"; description "Bidirectional Forwarding Detection options for the peer"; uses apply-advanced; leaf version { type enumeration { enum "0" { value 0; description "BFD version 0 (deprecated)"; } enum "1" { value 1; description "BFD version 1"; } enum "automatic" { value 2; description "Choose BFD version automatically"; } } default "automatic"; description "BFD protocol version number"; } leaf minimum-interval { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 255000"; } } units "milliseconds"; description "Minimum transmit and receive interval"; } leaf minimum-transmit-interval { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 255000"; } } units "milliseconds"; status deprecated; description "Minimum transmit interval"; } leaf minimum-receive-interval { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 255000"; } } units "milliseconds"; description "Minimum receive interval"; } leaf multiplier { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 255"; } } default "3"; description "Detection time multiplier"; } choice adaptation-choice { leaf no-adaptation { type empty; description "Disable adaptation"; } } // choice adaptation-choice container transmit-interval { description "Transmit-interval options"; uses apply-advanced; leaf minimum-interval { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 255000"; } } units "milliseconds"; description "Minimum transmit interval"; } leaf threshold { type union { type uint32; type string { pattern "<.*>|$.*"; } } units "milliseconds"; description "High transmit interval triggering a trap"; } } // container transmit-interval container detection-time { description "Detection-time options"; uses apply-advanced; leaf threshold { type union { type uint32; type string { pattern "<.*>|$.*"; } } units "milliseconds"; description "High detection-time triggering a trap"; } } // container detection-time } // container liveness-detection } // list peer-id container traceoptions { description "Set chassis l3-ha traceoptions"; uses apply-advanced; leaf no-remote-trace { junos:must "("system tracing")"; junos:must-message "'no-remote-trace' is valid only when [system tracing] is configured"; type empty; description "Disable remote tracing"; } container file { description "Trace file information"; leaf filename { type string { junos:posix-pattern "![/ %]"; junos:pattern-message "Must not contain '/', % or a space"; length "1 .. 1024"; } description "Name of file in which to write trace information"; } leaf size { type string; description "Maximum trace file size"; } leaf files { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "2 .. 1000"; } } default "3"; description "Maximum number of trace files"; } choice world-readable-choice { leaf world-readable { type empty; description "Allow any user to read the log file"; } leaf no-world-readable { type empty; description "Don't allow any user to read the log file"; } } // choice world-readable-choice leaf match { type jt:regular-expression; description "Regular expression for lines to be logged"; } } // container file list flag { key "name"; ordered-by user; description "Tracing parameters"; leaf name { type enumeration { enum "cli" { value 0; description "Trace CLI events"; } enum "configuration" { value 1; description "Trace configuration events"; } enum "eventlib" { value 2; description "Trace event library events"; } enum "fsm" { value 3; description "Trace finite state machine events"; } enum "heartbeat" { value 4; description "Trace JSRPD heartbeats"; } enum "interface" { value 5; description "Trace interface related events"; } enum "routing-socket" { value 6; description "Trace routing socket events"; } enum "uspipc" { value 7; description "Trace USP IPC events"; } enum "init" { value 8; description "Trace initialization events"; } enum "socket" { value 9; description "Trace socket events"; } enum "snmp" { value 10; description "Trace snmp events"; } enum "ip-monitoring" { value 11; description "Trace IP monitoring events"; } enum "hw-monitoring" { value 12; description "Trace HW monitoring events"; } enum "fabric-monitoring" { value 13; description "Trace fabric monitoring events"; } enum "health-monitoring" { value 14; description "Trace health monitoring events"; } enum "schedule-monitoring" { value 15; description "Trace schedule monitoring events"; } enum "heartbeat-tlv" { value 16; description "Trace TLV based heart-beat"; } enum "ha-peer" { value 17; description "Trace HA peer related info"; } enum "srg" { value 18; description "Trace HA srg related info"; } enum "all" { value 19; description "Trace all events"; } } } } // list flag leaf level { type enumeration { enum "emergency" { value 0; description "Match emergency conditions"; } enum "alert" { value 1; description "Match alert conditions"; } enum "critical" { value 2; description "Match critical conditions"; } enum "error" { value 3; description "Match error conditions"; } enum "warning" { value 4; description "Match warning messages"; } enum "notice" { value 5; description "Match notice level messages"; } enum "info" { value 6; description "Match informational messages"; } enum "debug" { value 7; description "Match debug messages"; } enum "all" { value 8; description "Match all levels"; } } default "info"; description "Set level of tracing"; } } // container traceoptions list services-redundancy-group { key "name"; ordered-by user; description "Define the services level failover domain"; leaf name { type union { type string { pattern "<.*>|$.*"; } type uint16 { range "0 .. 256"; } } description "Services redundancy group identifier"; } uses apply-advanced; list shutdown-on-failure { key "name"; ordered-by user; description "Interfaces to be shut down in case of internal failures"; leaf name { type union { type jt:interface-device; type string { pattern "<.*>|$.*"; } } description "Name of the interface"; } uses apply-advanced; } // list shutdown-on-failure container peer-id { presence "enable peer-id"; description "Peer related information"; uses apply-advanced; leaf id { junos:must "("chassis high-availability peer-id $$")"; junos:must-message "above peer-id should be configured at chassis high-availability stanza"; junos:must "("chassis high-availability peer-id")"; junos:must-message "high-availability peer-id must be defined"; type union { type string { pattern "<.*>|$.*"; } type uint8 { range "1 .. 10"; } } description "Peer Identifier"; } } // container peer-id container floating-ip { description "Designated floating IP for activeness probe"; uses apply-advanced; leaf ip-address { type jt:ipv4addr; description "IPv4 address"; } } // container floating-ip container activeness-probe { description "The probe destination IP for activeness determination"; uses apply-advanced; container dest-ip { description "Destination IPV4 address"; uses apply-advanced; leaf ip-address { type jt:ipv4addr; description "Destination IPV4 address"; } leaf routing-instance { junos:must "("routing-instances $$ instance-type virtual-router")"; junos:must-message "'instance-type' for the referenced routing-instance must be configured as virtual-router"; junos:must "(("routing-instances $$" || any "tenants <*> routing-instances $$"))"; junos:must-message "referenced routing-instance must be defined"; type string { junos:posix-pattern "!^((__.*__)|(all)|(.*[ ].*)|("")|(.{129,}))$"; junos:pattern-message "Must be a non-reserved string of 128 characters or less with no spaces."; } description "Routing instance"; } } // container dest-ip } // container activeness-probe container monitor { description "Configure the BFD and IP monitoring"; uses apply-advanced; list ip { key "name"; ordered-by user; description "Destination IPV4 address for monitoring"; leaf name { type jt:ipv4addr; description "Destination IPV4 address"; } uses apply-advanced; leaf routing-instance { junos:must "("routing-instances $$ instance-type virtual-router")"; junos:must-message "'instance-type' for the referenced routing-instance must be configured as virtual-router"; junos:must "(("routing-instances $$" || any "tenants <*> routing-instances $$"))"; junos:must-message "referenced routing-instance must be defined"; type string { junos:posix-pattern "!^((__.*__)|(all)|(.*[ ].*)|("")|(.{129,}))$"; junos:pattern-message "Must be a non-reserved string of 128 characters or less with no spaces."; } description "Routing instance to locate the destination route"; } } // list ip list bfd-liveliness { key "name"; ordered-by user; description "Configure BFD monitoring"; leaf name { type jt:ipv4addr; description "Destination IPV4 address for BFD monitoring"; } uses apply-advanced; leaf src-ip { type jt:ipv4addr; description "Source IPV4 address for BFD monitoring"; } leaf routing-instance { junos:must "("routing-instances $$ instance-type virtual-router")"; junos:must-message "'instance-type' for the referenced routing-instance must be configured as virtual-router"; junos:must "(("routing-instances $$" || any "tenants <*> routing-instances $$"))"; junos:must-message "referenced routing-instance must be defined"; type string { junos:posix-pattern "!^((__.*__)|(all)|(.*[ ].*)|("")|(.{129,}))$"; junos:pattern-message "Must be a non-reserved string of 128 characters or less with no spaces."; } description "Routing instance to locate the route"; } leaf session-type { type enumeration { enum "singlehop" { junos:must "(".. interface")"; junos:must-message "Interface should be mentioned for singlehop bfd monitoring sessions"; value 0; description "Single hop"; } enum "multihop" { value 1; description "Multihop"; } } description "BFD Mon Session Type"; } leaf interface { junos:must "("interfaces $$-IFL family inet")"; junos:must-message "Family inet must be defined on this logical interface"; junos:must "(!(".. session-type multihop"))"; junos:must-message "Interface name not allowed for multihop bfd monitoring sessions"; junos:must "(!(("protocols l2-learning global-mode switching" && "interfaces $$ family ethernet-switching")))"; junos:must-message "Referenced interface must not be ethernet-switching interface of switching mode"; type union { type jt:interface-name; type string { pattern "<.*>|$.*"; } } description "Name of the interface for single-hop sessions"; } } // list bfd-liveliness } // container monitor container active-signal-route { description "Configure the active signal route"; uses apply-advanced; leaf ip-address { type jt:ipv4addr; description "Active IPv4 address"; } leaf routing-instance { junos:must "("routing-instances $$ instance-type virtual-router")"; junos:must-message "'instance-type' for the referenced routing-instance must be configured as virtual-router"; junos:must "(("routing-instances $$" || any "tenants <*> routing-instances $$"))"; junos:must-message "referenced routing-instance must be defined"; type string { junos:posix-pattern "!^((__.*__)|(all)|(.*[ ].*)|("")|(.{129,}))$"; junos:pattern-message "Must be a non-reserved string of 128 characters or less with no spaces."; } description "Routing instance to install the active signal route"; } } // container active-signal-route container backup-signal-route { description "Configure the backup signal route"; uses apply-advanced; leaf ip-address { type jt:ipv4addr; description "Backup IPv4 address"; } leaf routing-instance { junos:must "("routing-instances $$ instance-type virtual-router")"; junos:must-message "'instance-type' for the referenced routing-instance must be configured as virtual-router"; junos:must "(("routing-instances $$" || any "tenants <*> routing-instances $$"))"; junos:must-message "referenced routing-instance must be defined"; type string { junos:posix-pattern "!^((__.*__)|(all)|(.*[ ].*)|("")|(.{129,}))$"; junos:pattern-message "Must be a non-reserved string of 128 characters or less with no spaces."; } description "Routing instance to install the backup signal route"; } } // container backup-signal-route leaf process-packet-on-backup { type empty; description "Enable PFE to process packets on backup node"; } leaf activeness-priority { type union { type string { pattern "<.*>|$.*"; } type uint8 { range "1 .. 254"; } } description "Activeness Priority of the node for this SRG"; } } // list services-redundancy-group } // container high-availability list node { key "name"; description "Set node specific parameters"; leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 1"; } } description "Node identifier"; } uses apply-advanced; list fpc { junos:must "((!(any ". <*> vpn-localization") || !("virtual-chassis")))"; junos:must-message "vpn-localization cannot be configured on virtual-chassis"; key "name"; description "Flexible PIC Concentrator parameters"; uses chassis_fpc_type; } // list fpc } // list node } // grouping chassis_type grouping apply-advanced { description "Apply advanced configuration logic"; leaf-list apply-groups { type string; ordered-by user; description "Groups from which to inherit configuration data"; } leaf-list apply-groups-except { type string; ordered-by user; description "Don't inherit configuration data from these groups"; } list apply-macro { key "name"; ordered-by user; description "Macro and parameters for commit script expansion"; uses apply-macro-type; } // list apply-macro } // grouping apply-advanced grouping apply-macro-type { description "Macro data for commit-script expansion"; leaf name { type string; description "Name of the macro to be expanded"; } list data { key "name"; uses macro-data-type; } // list data } // grouping apply-macro-type grouping chassis-pw-type { uses apply-advanced; leaf device-count { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 18000"; } } description "Number of pseudo-wire ps devices"; } } // grouping chassis-pw-type grouping chassis_ae_lb_type { uses apply-advanced; leaf disable { type empty; description "Disable Multicast load balancing"; } leaf hash-mode { type enumeration { enum "crc-sgip" { value 0; description "CRC of Source IP and Group IP"; } enum "crc-gip" { value 1; description "CRC of Group IP only"; } enum "crc-sip" { value 2; description "CRC of Source IP only"; } enum "simple-sgip" { value 3; description "Simple hash of Source IP and Group IP"; } enum "simple-gip" { value 4; description "Simple hash of Group IP"; } enum "simple-sip" { value 5; description "Simple hash of Source IP"; } enum "balanced" { value 6; description "Round-Robin balancing"; } } description "PFE hash mode"; } } // grouping chassis_ae_lb_type grouping chassis_agg_dev_type { uses apply-advanced; leaf ae-20 { type empty; status deprecated; description "Run AE over Container nexthops Infrastructure"; } container ethernet { description "Aggregated device options for Ethernet"; uses chassisd_agg_enet_type; } // container ethernet container sonet { description "Aggregated device options for SONET"; uses chassisd_agg_pos_type; } // container sonet leaf maximum-links { type union { type int32; type string { pattern "<.*>|$.*"; } } description "Maximum links limit for aggregated devices (16, 32, or 64)"; } } // grouping chassis_agg_dev_type grouping chassis_alarm_port_op_type { uses apply-advanced; container input { description "Input alarm port"; uses apply-advanced; list port { key "name"; ordered-by user; description "Input Port"; leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 3"; } } description "Alarm port ID"; } uses apply-advanced; leaf active { type enumeration { enum "low" { value 0; description "Active signal of alarm IO port to low(default)"; } enum "high" { value 1; description "Active signal of alarm IO port to high"; } } description "Active signal of alarm IO input port"; } leaf admin-state { type enumeration { enum "disabled" { value 0; description "Administrative state of alarm IO port to disable(default)"; } enum "enabled" { value 1; description "Administrative state of alarm IO port to enabled"; } } description "Administrative state of alarm IO input port"; } container description { description "Alarm description of alarm IO input port"; uses apply-advanced; leaf descr { type string; description "Description to be used for alarm IO output port"; } } // container description leaf severity { type enumeration { enum "critical" { value 0; description "Alarm severity of alarm IO input port to ciritical(default)"; } enum "major" { value 1; description "Alarm severity of alarm IO input port to major"; } enum "minor" { value 2; description "Alarm severity of alarm IO input port to minor"; } enum "warning" { value 3; description "Alarm severity of alarm IO input port to warning"; } } description "Set alarm severity of alarm IO input port"; } } // list port } // container input container output { description "Output alarm port"; uses apply-advanced; list port { key "name"; ordered-by user; description "Output port"; leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1"; } } description "Alarm IO output port ID"; } uses apply-advanced; leaf admin-state { type enumeration { enum "disabled" { value 0; description "Administrative state of alarm IO port to disable(default)"; } enum "enabled" { value 1; description "Administrative state of alarm IO port to enabled"; } } description "Administrative state of alarm IO output port"; } container description { description "Alarm description of alarm IO output port"; uses apply-advanced; leaf descr { type string; description "Description to be used for alarm IO output port"; } } // container description } // list port } // container output } // grouping chassis_alarm_port_op_type grouping chassis_alarm_type { uses apply-advanced; container management-ethernet { description "Management Ethernet alarms"; uses chassis_alarm_ethernet_type; } // container management-ethernet container otn-odu { description "OTN ODU alarms"; uses chassis_alarm_otn_odu_type; } // container otn-odu container otn-otu { description "OTN OTU alarms"; uses chassis_alarm_otn_otu_type; } // container otn-otu container sonet { description "SONET alarms"; uses chassis_alarm_sonet_type; } // container sonet container t3 { description "DS3 alarms"; uses chassis_alarm_ds3_type; } // container t3 container ds1 { description "DS1 alarms"; uses chassis_alarm_ds1_type; } // container ds1 container ethernet { description "Ethernet alarms"; uses chassis_alarm_ethernet_type; } // container ethernet container l2-chan-err-ethernet { description "L2 channel error ethernet alarms"; uses chassis_alarm_l2_chan_err_type; } // container l2-chan-err-ethernet container integrated-services { description "Integrated services alarms"; uses chassis_alarm_integrated_services_type; } // container integrated-services container services { description "Services PIC alarms"; uses chassis_alarm_services_type; } // container services container serial { description "Serial alarms"; uses chassis_alarm_serial_type; } // container serial container fibre-channel { description "Fibre Channel alarms"; uses chassis_alarm_fibre-channel_type; } // container fibre-channel leaf pem-absence { type enumeration { enum "ignore" { value 0; description "Ignore the power supply module absence alarm"; } } description "Power supply module absence"; } container relay { description "Alarm relays"; uses chassis_alarm_relay_type; } // container relay } // grouping chassis_alarm_type grouping chassis_alarm_ds1_type { uses apply-advanced; leaf ais { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Alarm indicator signal"; } leaf ylw { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Yellow alarm"; } } // grouping chassis_alarm_ds1_type grouping chassis_alarm_ds3_type { uses apply-advanced; leaf ais { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Alarm indicator signal"; } leaf exz { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Excessive zeros"; } leaf ferf { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Far-end failure"; } leaf idle { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Idle alarm"; } leaf lcv { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Line code violation"; } leaf lof { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Loss of frame"; } leaf los { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Loss of signal"; } leaf pll { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Phase-locked loop out of lock"; } leaf ylw { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Yellow alarm"; } } // grouping chassis_alarm_ds3_type grouping chassis_alarm_ethernet_type { uses apply-advanced; leaf link-down { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Link has gone down"; } } // grouping chassis_alarm_ethernet_type grouping chassis_alarm_fibre-channel_type { uses apply-advanced; leaf link-down { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Link has gone down"; } } // grouping chassis_alarm_fibre-channel_type grouping chassis_alarm_integrated_services_type { uses apply-advanced; leaf failure { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Integrated Services failure"; } } // grouping chassis_alarm_integrated_services_type grouping chassis_alarm_l2_chan_err_type { uses apply-advanced; leaf l2-channel-errors { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Received L2 channel error"; } leaf l2-channel-error-threshold { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 4294967295"; } } description "L2 channel error threshold - 50,000 as default"; } } // grouping chassis_alarm_l2_chan_err_type grouping chassis_alarm_otn_odu_type { uses apply-advanced; leaf odu-bdi { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "ODU backward-defect-indicator, ODU-BDI failure"; } leaf odu-ttim { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "ODU trail-trace-identifier-mismatch, ODU-TTIM failure"; } leaf odu-ptim { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "ODU payload-type-mismatch, ODU-PTIM failure"; } } // grouping chassis_alarm_otn_odu_type grouping chassis_alarm_otn_otu_type { uses apply-advanced; leaf oc-los { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Loss of signal, LOS failure"; } leaf oc-lof { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Loss of framing, LOF failure"; } leaf oc-lom { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Loss of multiframe, LOM failure"; } leaf wavelength-lock { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Wavelength lock alarm"; } leaf otu-bdi { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "OTU backward-defect-indicator, OTU-BDI failure"; } leaf otu-iae { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "OTU incoming-alignment-error, OTU-IAE failure"; } leaf otu-ttim { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "OTU trail-trace-identifier-mismatch, OTU-TTIM failure"; } leaf otu-fec-excessive-errs { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "OTU fec-excessive-errors, OTU-FEC_EXE failure"; } } // grouping chassis_alarm_otn_otu_type grouping chassis_alarm_relay_type { uses apply-advanced; container input { description "Input relays"; uses apply-advanced; list port { key "name"; ordered-by user; leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 3"; } } description "Relay port number"; } uses apply-advanced; leaf mode { type enumeration { enum "open" { value 0; description "Normally open"; } enum "close" { value 1; description "Normally closed"; } } description "Relay mode in de-active state"; } leaf trigger { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Relay triggered"; } } // list port } // container input container output { description "Output relays"; uses apply-advanced; list port { key "name"; ordered-by user; leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 3"; } } description "Relay port number"; } uses apply-advanced; leaf mode { type enumeration { enum "open" { value 0; description "Normally open"; } enum "close" { value 1; description "Normally closed"; } } description "Relay mode in de-active state"; } leaf temperature { type empty; description "Trigger on temperature alarm red"; } leaf input-relay { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 3"; } } description "Trigger on input relay trigger"; } } // list port } // container output } // grouping chassis_alarm_relay_type grouping chassis_alarm_serial_type { uses apply-advanced; leaf loss-of-rx-clock { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "RX clock absent"; } leaf loss-of-tx-clock { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "TX clock absent"; } leaf dcd-absent { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "DCD signal absent"; } leaf cts-absent { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "CTS signal absent"; } leaf dsr-absent { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "DSR signal absent"; } leaf tm-absent { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "TM signal absent"; } } // grouping chassis_alarm_serial_type grouping chassis_alarm_services_type { uses apply-advanced; leaf pic-reset { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Services PIC reset"; } leaf pic-hold-reset { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Services PIC held in reset"; } leaf linkdown { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Services PIC linkdown"; } leaf rx-errors { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Services PIC excessive rx errors"; } leaf tx-errors { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Services PIC excessive tx errors"; } leaf sw-down { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Services PIC software problem"; } leaf hw-down { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Services PIC hardware problem"; } } // grouping chassis_alarm_services_type grouping chassis_alarm_sonet_type { uses apply-advanced; leaf lol { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Loss of light"; } leaf pll { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Phase locked loop out of lock"; } leaf lof { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Loss of framing, LOF failure"; } leaf los { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Loss of signal, LOS failure"; } leaf ais-l { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Line alarm indication signal, AIS-L failure"; } leaf ais-p { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Path alarm indication signal, AIS-P failure"; } leaf lop-p { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Loss of pointer, LOP-P failure"; } leaf ber-sd { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Signal Degrade (SD), bit error rate > 1E-6"; } leaf ber-sf { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Signal Fail (SF), bit error rate > 1E-3"; } leaf rfi-l { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Line remote failure indication, RFI-L, line FERF"; } leaf rfi-p { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Path remote failure indication, RFI-P, STS path yellow"; } leaf uneq-p { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "STS Path (C2) unequipped, UNEQ-P failure"; } leaf locd { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "Loss of cell delineation (ATM only)"; } leaf plm-p { type enumeration { enum "red" { value 0; description "Assert red system alarm"; } enum "yellow" { value 1; description "Assert yellow system alarm"; } enum "ignore" { value 2; description "Do not assert any alarm signals"; } } description "STS payload label (C2) mismatch, PLM-P failure"; } } // grouping chassis_alarm_sonet_type grouping chassis_fabric_card_type { leaf name { type string { length "1 .. 5"; } description "Fabric Card slot number"; } uses apply-advanced; container loopback { description "Loopback Configuration for Mode & Type"; uses apply-advanced; leaf serdes { type empty; description "Fabric Card serdes setting"; } leaf retimer { type empty; description "Fabric card retimer setting"; } } // container loopback } // grouping chassis_fabric_card_type grouping chassis_fabric_type { uses apply-advanced; leaf upgrade-mode { type enumeration { enum "default" { value 0; description "Fabric upgrade"; } enum "t4000" { junos:must "(!(any "class-of-service schedulers <*> drop-profile-map loss-priority <*> protocol non-tcp drop-profile <*>"))"; junos:must-message "protocol based classification not allowed, only 'any' protocol config allowed"; junos:must "(!(any "class-of-service schedulers <*> drop-profile-map loss-priority <*> protocol tcp drop-profile <*>"))"; junos:must-message "protocol based classification not allowed, only 'any' protocol config allowed"; value 1; description "T4000 Fabric upgrade"; } enum "3d-fabric" { junos:must "(!(any "class-of-service schedulers <*> drop-profile-map loss-priority <*> protocol non-tcp drop-profile <*>"))"; junos:must-message "protocol based classification not allowed, only 'any' protocol config allowed"; junos:must "(!(any "class-of-service schedulers <*> drop-profile-map loss-priority <*> protocol tcp drop-profile <*>"))"; junos:must-message "protocol based classification not allowed, only 'any' protocol config allowed"; value 2; description "TXP-3D Fabric upgrade"; } } description "Enable online switch fabric upgrade"; } container event { description "Fabric events"; uses apply-advanced; container link-failure { presence "enable link-failure"; description "Fabric link failure"; uses apply-advanced; container action { presence "enable action"; description "Fabric action to be taken"; uses apply-advanced; } // container action } // container link-failure } // container event container oam { description "Fabric OAM configuration"; uses apply-advanced; leaf detection-disable { type empty; description "Disable fabric OAM"; } } // container oam container degraded { presence "enable degraded"; description "Degraded fabric configuration"; uses apply-advanced; leaf action-fpc-restart-disable { type empty; description "Limit degraded fabric actions to Plane restart only"; } leaf degraded-fpc-bad-plane-threshold { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "4 .. 18"; } } default "4"; description "No of bad planes to declare a FPC degraded"; } leaf degraded-fabric-detection-enable { type empty; description "Enable degraded FPC detection"; } leaf fpc-restart { type empty; description "Restart fpc on zero planes"; } leaf auto-recovery-disable { type empty; description "Disable fabric degraded auto recovery"; } leaf fpc-offline-on-blackholing { type empty; description "Offline FPC on fabric blackholing"; } } // container degraded container redundancy-mode { description "Fabric redundancy mode"; uses apply-advanced; choice mode { leaf redundant { type empty; description "Fabric is configured in redundant mode"; } leaf increased-bandwidth { type empty; description "Fabric is configured in increased bandwidth mode"; } } // choice mode } // container redundancy-mode leaf disable-grant-bypass { type empty; description "Disable fabric grant-bypass mode"; } } // grouping chassis_fabric_type grouping chassis_feb_type { uses apply-advanced; container sanity-poll { description "FPC register sanity poll"; uses apply-advanced; leaf retry-count { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 30"; } } default "10"; description "Number of retries before reporting error"; } container on-error { description "Actions to be taken if inconsistencies are detected"; uses apply-advanced; leaf raise-alarm { type empty; description "Raise emergency alarm"; } leaf power { type enumeration { enum "cycle" { value 0; description "Write coredump and reboot FPC"; } enum "off" { value 1; description "Power down FPC indefinitely"; } } description "Power cycle or power off FPC"; } leaf write-coredump { type empty; description "Write coredump and continue"; } } // container on-error } // container sanity-poll list slot { key "name"; ordered-by user; leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "FEB slot number"; } uses apply-advanced; container sanity-poll { description "FPC register sanity poll"; uses apply-advanced; leaf retry-count { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 30"; } } default "10"; description "Number of retries before reporting error"; } container on-error { description "Actions to be taken if inconsistencies are detected"; uses apply-advanced; leaf raise-alarm { type empty; description "Raise emergency alarm"; } leaf power { type enumeration { enum "cycle" { value 0; description "Write coredump and reboot FPC"; } enum "off" { value 1; description "Power down FPC indefinitely"; } } description "Power cycle or power off FPC"; } leaf write-coredump { type empty; description "Write coredump and continue"; } } // container on-error } // container sanity-poll leaf power { type enumeration { enum "off" { value 0; description "Do not provide power to FEBs"; } enum "on" { value 1; description "Provide power to FEBs"; } } description "Power FEBs on or off"; } choice mode { } // choice mode leaf port-mirror-instance { junos:must "(!("forwarding-options port-mirroring instance $$ input-parameters-instance"))"; junos:must-message "Derived instance cannot be binded"; junos:must "(((!("chassis network-services lan") && ("forwarding-options port-mirroring instance $$" || "forwarding-options analyzer $$")) || "chassis network-services lan"))"; junos:must-message "Referenced port-mirroring instance does not exist"; junos:must "(("forwarding-options port-mirroring instance $$" || "forwarding-options analyzer $$"))"; junos:must-message "Referenced port-mirroring/analyzer instance does not exist"; type string { length "1 .. 64"; } description "Associate a port mirroring instance with the FEB"; } leaf sampling-instance { junos:must "("forwarding-options sampling instance $$")"; junos:must-message "Referenced sampling instance does not exist"; type string { length "1 .. 64"; } description "Associate a sampling instance with the FEB"; } leaf ucode-imem-remap { type empty; description "Remap the PIC microcode to IMEM on FEB"; } container inline-services { uses apply-advanced; leaf report-zero-oif-gw-on-discard { type empty; description "Jflow reports value zero in OIF and GW when traffic is not forwarded"; } leaf flex-flow-sizing { junos:must "(!((".. flow-table-size ipv4-flow-table-size" || (".. flow-table-size ipv6-flow-table-size" || (".. flow-table-size vpls-flow-table-size" || (".. flow-table-size bridge-flow-table-size" || ".. flow-table-size mpls-flow-table-size"))))))"; junos:must-message "flex-flow-sizing and flow-table-size are mutually exclusive"; type empty; description "No fixed size allocation of flow tables for proto families"; } leaf use-extended-flow-memory { type empty; description "Use extended memory for flow records"; } container flow-table-size { uses apply-advanced; leaf ipv4-flow-table-size { junos:must "(!(".. .. flex-flow-sizing"))"; junos:must-message "flex-flow-sizing and flow-table-size are mutually exclusive"; type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 245"; } } description "IPv4 flow table size in units of 256k"; } leaf ipv6-flow-table-size { junos:must "(!(".. .. flex-flow-sizing"))"; junos:must-message "flex-flow-sizing and flow-table-size are mutually exclusive"; type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 245"; } } description "IPv6 flow table size in units of 256k"; } leaf vpls-flow-table-size { junos:must "(!(".. .. flex-flow-sizing"))"; junos:must-message "flex-flow-sizing and flow-table-size are mutually exclusive"; type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 245"; } } description "VPLS flow table size in units of 256k"; } leaf bridge-flow-table-size { junos:must "(!(".. .. flex-flow-sizing"))"; junos:must-message "flex-flow-sizing and flow-table-size are mutually exclusive"; type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 245"; } } description "BRIDGE flow table size in units of 256k"; } leaf ipv6-extended-attrib { type empty; description "Enable extended flow attribute"; } leaf mpls-flow-table-size { junos:must "(!(".. .. flex-flow-sizing"))"; junos:must-message "flex-flow-sizing and flow-table-size are mutually exclusive"; type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 245"; } } description "MPLS flow table size in units of 256k"; } } // container flow-table-size } // container inline-services container inline-video-monitoring { uses apply-advanced; leaf maximum-flows-count { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "16 .. 8192"; } } description "Maximum number of inline video monitoring flows per PFE instance"; } } // container inline-video-monitoring container openflow { description "Openflow configuration"; uses apply-advanced; leaf access-list-partition { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 100"; } } units "percents"; description "Space reserved for openflow access-list rules"; } } // container openflow } // list slot } // grouping chassis_feb_type grouping chassis_fpc_error_type { description "Chassis Fpc Error level"; uses apply-advanced; container fatal { description "FPC Fatal errors (default threshold = 1)"; uses chassis_fpc_error_level_major_fatal; } // container fatal container major { description "FPC Major Level errors (default threshold = 1)"; uses chassis_fpc_error_level_major_fatal; } // container major container minor { description "FPC Minor Level errors (default threshold = 10)"; uses chassis_fpc_error_level_minor; } // container minor list override-cmerror { key "name"; max-elements 100; ordered-by user; description "Error configuration override"; uses chassis_fru_cmerror_override_type; } // list override-cmerror container scope { description "Error scope"; uses chassis_fpc_scope_type; } // container scope } // grouping chassis_fpc_error_type grouping chassis_fpc_error_level_major_fatal { uses apply-advanced; leaf threshold { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 1024"; } } description "Error count at which to take the action"; } list action { key "name"; ordered-by user; description "Configure the action for this level"; leaf name { type enumeration { enum "reset" { junos:must "(!(".. .. action offline"))"; junos:must-message "'reset' and 'offline' cannot be both configured"; value 0; description "Reset FPC"; } enum "offline" { junos:must "(!(".. .. action reset"))"; junos:must-message "'offline' and 'reset' cannot be both configured"; value 1; description "Offline FPC"; } enum "alarm" { value 2; description "Raise FPC alarm"; } enum "get-state" { value 3; description "Retreive FPC state for debugging"; } enum "log" { value 4; description "Log occurence to system log file"; } enum "disable-pfe" { value 5; description "Disable PFE interfaces on FPC"; } enum "reset-pfe" { junos:must "(!(".. .. action offline-pfe"))"; junos:must-message "'reset-pfe' and 'offline-pfe' cannot be both configured"; junos:must "(!(".. .. action disable-pfe"))"; junos:must-message "'reset-pfe' and 'disable-pfe' cannot be both configured"; value 6; description "Reset PFE on FPC"; } enum "offline-pic" { value 7; description "Offline PICs associated with PFE on FPC"; } enum "trap" { value 8; description "Raise FPC trap"; } } } uses apply-advanced; } // list action } // grouping chassis_fpc_error_level_major_fatal grouping chassis_fpc_error_level_minor { uses apply-advanced; leaf threshold { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 1024"; } } description "Error count at which to take the action"; } list action { key "name"; ordered-by user; description "Configure the action for this level"; leaf name { type enumeration { enum "reset" { junos:must "(!(".. .. action offline"))"; junos:must-message "'reset' and 'offline' cannot be both configured"; value 0; description "Reset FPC"; } enum "offline" { junos:must "(!(".. .. action reset"))"; junos:must-message "'offline' and 'reset' cannot be both configured"; value 1; description "Offline FPC"; } enum "alarm" { value 2; description "Raise FPC alarm"; } enum "get-state" { value 3; description "Retreive FPC state for debugging"; } enum "log" { value 4; description "Log occurence to system log file"; } enum "disable-pfe" { value 5; description "Disable PFE interfaces on FPC"; } enum "reset-pfe" { junos:must "(!(".. .. action offline-pfe"))"; junos:must-message "'reset-pfe' and 'offline-pfe' cannot be both configured"; junos:must "(!(".. .. action disable-pfe"))"; junos:must-message "'reset-pfe' and 'disable-pfe' cannot be both configured"; value 6; description "Reset PFE on FPC"; } enum "offline-pic" { value 7; description "Offline PICs associated with PFE on FPC"; } enum "trap" { value 8; description "Raise FPC trap"; } } } uses apply-advanced; } // list action } // grouping chassis_fpc_error_level_minor grouping chassis_fpc_scope_type { description "Chassis Fpc Error Scope"; uses apply-advanced; container board { description "Board level scope"; uses chassis_fpc_scope_category; } // container board container pfe { description "Forwarding engine scope "; uses chassis_fpc_scope_category; } // container pfe } // grouping chassis_fpc_scope_type grouping chassis_fpc_scope_category { description "Chassis Fpc Error Category"; uses apply-advanced; container category { description "FPC error category"; uses chassis_fpc_scope_category_type; } // container category } // grouping chassis_fpc_scope_category grouping chassis_fpc_scope_category_type { description "Chassis Fpc Category level"; uses apply-advanced; container functional { description "FPC functional category"; uses chassis_fpc_scope_category_error_type; } // container functional container memory { description "FPC memory category"; uses chassis_fpc_scope_category_error_type; } // container memory container io { description "FPC input-output category"; uses chassis_fpc_scope_category_error_type; } // container io container storage { description "FPC storage category"; uses chassis_fpc_scope_category_error_type; } // container storage container switch { description "FPC switch category"; uses chassis_fpc_scope_category_error_type; } // container switch container processing { description "FPC processing category"; uses chassis_fpc_scope_category_error_type; } // container processing } // grouping chassis_fpc_scope_category_type grouping chassis_fpc_scope_category_error_type { description "Chassis Fpc Error level"; uses apply-advanced; container fatal { description "FPC Fatal errors (default threshold = 1)"; uses chassis_fpc_error_level_type; } // container fatal container major { description "FPC Major Level errors (default threshold = 1)"; uses chassis_fpc_error_level_type; } // container major container minor { description "FPC Minor Level errors (default threshold = 10)"; uses chassis_fpc_error_level_type; } // container minor } // grouping chassis_fpc_scope_category_error_type grouping chassis_fpc_error_level_type { uses apply-advanced; leaf threshold { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 4294967295"; } } description "Error count at which to take the action (0 - valid for minor only)"; } list action { key "name"; ordered-by user; description "Configure the action for this level"; leaf name { type enumeration { enum "reset" { junos:must "(!(".. .. action disable-pfe"))"; junos:must-message "'reset' and 'disable-pfe' cannot be both configured"; junos:must "(!(".. .. action offline"))"; junos:must-message "'reset' and 'offline' cannot be both configured"; value 0; description "Reset FPC"; } enum "offline" { value 1; description "Offline FPC"; } enum "alarm" { value 2; description "Raise FPC alarm"; } enum "get-state" { value 3; description "Retreive FPC state for debugging"; } enum "log" { value 4; description "Log occurence to system log file"; } enum "disable-pfe" { value 5; description "Disable PFE interfaces on FPC"; } enum "reset-pfe" { value 6; description "Reset PFE on FPC"; } enum "offline-pic" { value 7; description "Offline PICs associated with PFE on FPC"; } enum "trap" { value 8; description "Raise trap"; } } } uses apply-advanced; } // list action } // grouping chassis_fpc_error_level_type grouping chassis_fpc_type { leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "FPC slot number"; } uses apply-advanced; container auto-speed-detection { description "Disables auto-speed detection"; uses apply-advanced; choice auto-speed-detections { leaf disable { type empty; description "Disables automatic speed detection"; } } // choice auto-speed-detections } // container auto-speed-detection container ukern-trace { description "Set ukern trace"; uses apply-advanced; container log { description "Set ukern-trace log"; uses apply-advanced; leaf app-type { type enumeration { enum "dfw" { value 0; description "All dfw ukern-trace logs"; } } description "Name of application with ukern-trace logs"; } leaf logging { type enumeration { enum "off" { value 0; description "Disable logging"; } enum "on" { value 1; description "Enable logging"; } } description "Enable or Disable ukern-trace logging of an app-type"; } } // container log } // container ukern-trace container sanity-poll { description "FPC register sanity poll"; uses apply-advanced; leaf retry-count { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 30"; } } default "10"; description "Number of retries before reporting error"; } container on-error { description "Actions to be taken if inconsistencies are detected"; uses apply-advanced; leaf raise-alarm { type empty; description "Raise emergency alarm"; } leaf power { type enumeration { enum "cycle" { value 0; description "Write coredump and reboot FPC"; } enum "off" { value 1; description "Power down FPC indefinitely"; } } description "Power cycle or power off FPC"; } leaf write-coredump { type empty; description "Write coredump and continue"; } } // container on-error } // container sanity-poll container forwarding-options { description "Configure options to control packet forwarding"; uses apply-advanced; choice uft_object { container l2-profile-one { presence "enable l2-profile-one"; description "MAC: 288K L3-host: 16K LPM: 16K EM:0, needs reboot for VC; restarts PFE if standalone"; uses apply-advanced; leaf num-65-127-prefix { type union { type string { pattern "<.*>|$.*"; } type int32 { range "0 .. 4"; } } default "1"; description "IPV6 prefixes > 64, in multiples of 1K e.g 3 = 3x1K entries(default 1)"; } } // container l2-profile-one container l2-profile-two { presence "enable l2-profile-two"; description "MAC: 224K L3-host: 80K LPM: 16K EM:0, needs reboot for VC; restarts PFE if standalone"; uses apply-advanced; leaf num-65-127-prefix { type union { type string { pattern "<.*>|$.*"; } type int32 { range "0 .. 4"; } } default "1"; description "IPV6 prefixes > 64, in multiples of 1K e.g 3 = 3x1K entries(default 1)"; } } // container l2-profile-two container l2-profile-three { presence "enable l2-profile-three"; description "(default) MAC: 160K L3-host: 144K LPM: 16K, needs reboot for VC;restarts PFE if standalone"; uses apply-advanced; leaf num-65-127-prefix { type union { type string { pattern "<.*>|$.*"; } type int32 { range "0 .. 4"; } } default "1"; description "IPV6 prefixes > 64, in multiples of 1K e.g 3 = 3x1K entries(default 1)"; } } // container l2-profile-three container l3-profile { presence "enable l3-profile"; description "MAC: 96K L3-host: 208K LPM: 16K EM:0, needs reboot for VC; restarts PFE if standalone"; uses apply-advanced; leaf num-65-127-prefix { type union { type string { pattern "<.*>|$.*"; } type int32 { range "0 .. 4"; } } default "1"; description "IPV6 prefixes > 64, in multiples of 1K e.g 3 = 3x1K entries(default 1)"; } } // container l3-profile container lpm-profile { presence "enable lpm-profile"; description "MAC: 32K L3-host: 16K LPM: 128K EM:0, needs reboot for VC; restarts PFE if standalone"; uses apply-advanced; leaf prefix-65-127-disable { junos:must "(!(".. unicast-in-lpm"))"; junos:must-message "Cannot set both unicast-in-lpm and prefix-65-127-disable at the same time"; type empty; description "Disable IPV6 prefixes with length > 64"; } leaf unicast-in-lpm { type empty; description "Install unicast host entries in LPM table"; } } // container lpm-profile container exact-match-profile { presence "enable exact-match-profile"; description "MAC: 8K L3-host: 8K LPM: 16K EM: 64K, needs reboot for VC; restarts PFE if standalone"; uses apply-advanced; leaf num-65-127-prefix { type union { type string { pattern "<.*>|$.*"; } type int32 { range "0 .. 4"; } } default "1"; description "IPV6 prefixes > 64, in multiples of 1K e.g 3 = 3x1K entries(default 1)"; } } // container exact-match-profile container vxlan-gbp-profile { presence "enable vxlan-gbp-profile"; description "MAC: 48K L3-host: 48K LPM: 16K EM:32K, needs reboot for VC; restarts PFE if standalone"; } // container vxlan-gbp-profile container custom-profile { description "(Partition the shared banks, will automatically restart the PFE when configured)"; uses apply-advanced; container l2-entries { description "Customize l2 entries needed"; uses apply-advanced; leaf num-banks { type union { type string { pattern "<.*>|$.*"; } type int32 { range "0 .. 4"; } } default "0"; description "Number of banks needed for entries of this type"; } } // container l2-entries container l3-entries { description "Customize l3 entries needed"; uses apply-advanced; leaf num-banks { type union { type string { pattern "<.*>|$.*"; } type int32 { range "0 .. 4"; } } default "0"; description "Number of banks needed for entries of this type"; } } // container l3-entries container exact-match-entries { description "Customize exact match entries needed"; uses apply-advanced; leaf num-banks { type union { type string { pattern "<.*>|$.*"; } type int32 { range "0 .. 4"; } } default "0"; description "Number of banks needed for entries of this type"; } } // container exact-match-entries container lpm-entries { description "Customize lpm banks needed"; uses apply-advanced; leaf num-banks { type enumeration { enum "0" { value 0; } enum "2" { value 1; } enum "4" { value 2; } } default "0"; description "Number of banks needed for entries of this type"; } leaf prefix-65-127-disable { junos:must "(!(".. unicast-in-lpm"))"; junos:must-message "Cannot set both unicast-in-lpm and prefix-65-127-disable at the same time"; type empty; description "Disable IPV6 prefixes with length > 64"; } } // container lpm-entries leaf num-65-127-prefix { type union { type string { pattern "<.*>|$.*"; } type int32 { range "0 .. 4"; } } default "1"; description "IPV6 prefixes > 64, in multiples of 1K e.g 3 = 3x1K entries(default 1)"; } } // container custom-profile } // choice uft_object } // container forwarding-options list pic { key "name"; description "Physical Interface Card number"; uses chassis_pic_type; } // list pic container optical-options { description "Integrated Photonic Line Card settings"; uses apply-advanced; choice disable-edfa-choice { leaf disable-edfa { type empty; description "Disable both EDFA"; } leaf no-disable-edfa { type empty; description "Don't disable both EDFA"; } } // choice disable-edfa-choice choice disable-osc-choice { leaf disable-osc { type empty; description "Disable OSC"; } leaf no-disable-osc { type empty; description "Don't disable OSC"; } } // choice disable-osc-choice list wavelength { key "name"; description "Wavelength Selective Switch"; leaf name { type enumeration { enum "1568.77" { value 0; description "1568.77 nm/191.1003 THz 50/100Ghz spacing"; } enum "1568.36" { value 1; description "1568.36 nm/191.15000 THz 6.25/12.5/50GHz spacing"; } enum "1568.31" { value 2; description "1568.31 nm/191.15625 THz 6.25GHz spacing"; } enum "1568.26" { value 3; description "1568.26 nm/191.16250 THz 6.25/12.5GHz spacing"; } enum "1568.21" { value 4; description "1568.21 nm/191.16875 THz 6.25GHz spacing"; } enum "1568.16" { value 5; description "1568.16 nm/191.17500 THz 6.25/12.5GHz spacing"; } enum "1568.11" { value 6; description "1568.11 nm/191.18125 THz 6.25GHz spacing"; } enum "1568.05" { value 7; description "1568.05 nm/191.18750 THz 6.25/12.5GHz spacing"; } enum "1568.00" { value 8; description "1568.00 nm/191.19375 THz 6.25GHz spacing"; } enum "1567.95" { value 9; description "1567.95 nm/191.20000 THz 6.25/12.5/50/100GHz spacing"; } enum "1567.90" { value 10; description "1567.90 nm/191.20625 THz 6.25GHz spacing"; } enum "1567.85" { value 11; description "1567.85 nm/191.21250 THz 6.25/12.5GHz spacing"; } enum "1567.80" { value 12; description "1567.80 nm/191.21875 THz 6.25GHz spacing"; } enum "1567.75" { value 13; description "1567.75 nm/191.22500 THz 6.25/12.5GHz spacing"; } enum "1567.70" { value 14; description "1567.70 nm/191.23125 THz 6.25GHz spacing"; } enum "1567.64" { value 15; description "1567.64 nm/191.23750 THz 6.25/12.5GHz spacing"; } enum "1567.59" { value 16; description "1567.59 nm/191.24375 THz 6.25GHz spacing"; } enum "1567.54" { value 17; description "1567.54 nm/191.25000 THz 6.25/12.5/50GHz spacing"; } enum "1567.49" { value 18; description "1567.49 nm/191.25625 THz 6.25GHz spacing"; } enum "1567.44" { value 19; description "1567.44 nm/191.26250 THz 6.25/12.5GHz spacing"; } enum "1567.39" { value 20; description "1567.39 nm/191.26875 THz 6.25GHz spacing"; } enum "1567.34" { value 21; description "1567.34 nm/191.27500 THz 6.25/12.5GHz spacing"; } enum "1567.29" { value 22; description "1567.29 nm/191.28125 THz 6.25GHz spacing"; } enum "1567.23" { value 23; description "1567.23 nm/191.28750 THz 6.25/12.5GHz spacing"; } enum "1567.18" { value 24; description "1567.18 nm/191.29375 THz 6.25GHz spacing"; } enum "1567.13" { value 25; description "1567.13 nm/191.30000 THz 6.25/12.5/50/100GHz spacing"; } enum "1567.08" { value 26; description "1567.08 nm/191.30625 THz 6.25GHz spacing"; } enum "1567.03" { value 27; description "1567.03 nm/191.31250 THz 6.25/12.5GHz spacing"; } enum "1566.98" { value 28; description "1566.98 nm/191.31875 THz 6.25GHz spacing"; } enum "1566.93" { value 29; description "1566.93 nm/191.32500 THz 6.25/12.5GHz spacing"; } enum "1566.88" { value 30; description "1566.88 nm/191.33125 THz 6.25GHz spacing"; } enum "1566.83" { value 31; description "1566.83 nm/191.33750 THz 6.25/12.5GHz spacing"; } enum "1566.77" { value 32; description "1566.77 nm/191.34375 THz 6.25GHz spacing"; } enum "1566.72" { value 33; description "1566.72 nm/191.35000 THz 6.25/12.5/50GHz spacing"; } enum "1566.67" { value 34; description "1566.67 nm/191.35625 THz 6.25GHz spacing"; } enum "1566.62" { value 35; description "1566.62 nm/191.36250 THz 6.25/12.5GHz spacing"; } enum "1566.57" { value 36; description "1566.57 nm/191.36875 THz 6.25GHz spacing"; } enum "1566.52" { value 37; description "1566.52 nm/191.37500 THz 6.25/12.5/75GHz spacing"; } enum "1566.47" { value 38; description "1566.47 nm/191.38125 THz 6.25GHz spacing"; } enum "1566.42" { value 39; description "1566.42 nm/191.38750 THz 6.25/12.5GHz spacing"; } enum "1566.36" { value 40; description "1566.36 nm/191.39375 THz 6.25GHz spacing"; } enum "1566.31" { value 41; description "1566.31 nm/191.40000 THz 6.25/12.5/50/100GHz spacing"; } enum "1566.26" { value 42; description "1566.26 nm/191.40625 THz 6.25GHz spacing"; } enum "1566.21" { value 43; description "1566.21 nm/191.41250 THz 6.25/12.5GHz spacing"; } enum "1566.16" { value 44; description "1566.16 nm/191.41875 THz 6.25GHz spacing"; } enum "1566.11" { value 45; description "1566.11 nm/191.42500 THz 6.25/12.5GHz spacing"; } enum "1566.06" { value 46; description "1566.06 nm/191.43125 THz 6.25GHz spacing"; } enum "1566.01" { value 47; description "1566.01 nm/191.43750 THz 6.25/12.5GHz spacing"; } enum "1565.96" { value 48; description "1565.96 nm/191.44375 THz 6.25GHz spacing"; } enum "1565.90" { value 49; description "1565.90 nm/191.45000 THz 6.25/12.5/50/75GHz spacing"; } enum "1565.85" { value 50; description "1565.85 nm/191.45625 THz 6.25GHz spacing"; } enum "1565.80" { value 51; description "1565.80 nm/191.46250 THz 6.25/12.5GHz spacing"; } enum "1565.75" { value 52; description "1565.75 nm/191.46875 THz 6.25GHz spacing"; } enum "1565.70" { value 53; description "1565.70 nm/191.47500 THz 6.25/12.5GHz spacing"; } enum "1565.65" { value 54; description "1565.65 nm/191.48125 THz 6.25GHz spacing"; } enum "1565.60" { value 55; description "1565.60 nm/191.48750 THz 6.25/12.5GHz spacing"; } enum "1565.55" { value 56; description "1565.55 nm/191.49375 THz 6.25GHz spacing"; } enum "1565.50" { value 57; description "1565.50 nm/191.50000 THz 6.25/12.5/50/100GHz spacing"; } enum "1565.44" { value 58; description "1565.44 nm/191.50625 THz 6.25GHz spacing"; } enum "1565.39" { value 59; description "1565.39 nm/191.51250 THz 6.25/12.5GHz spacing"; } enum "1565.34" { value 60; description "1565.34 nm/191.51875 THz 6.25GHz spacing"; } enum "1565.29" { value 61; description "1565.29 nm/191.52500 THz 6.25/12.5/75GHz spacing"; } enum "1565.24" { value 62; description "1565.24 nm/191.53125 THz 6.25GHz spacing"; } enum "1565.19" { value 63; description "1565.19 nm/191.53750 THz 6.25/12.5GHz spacing"; } enum "1565.14" { value 64; description "1565.14 nm/191.54375 THz 6.25GHz spacing"; } enum "1565.09" { value 65; description "1565.09 nm/191.55000 THz 6.25/12.5/50GHz spacing"; } enum "1565.04" { value 66; description "1565.04 nm/191.55625 THz 6.25GHz spacing"; } enum "1564.99" { value 67; description "1564.99 nm/191.56250 THz 6.25/12.5GHz spacing"; } enum "1564.93" { value 68; description "1564.93 nm/191.56875 THz 6.25GHz spacing"; } enum "1564.88" { value 69; description "1564.88 nm/191.57500 THz 6.25/12.5GHz spacing"; } enum "1564.83" { value 70; description "1564.83 nm/191.58125 THz 6.25GHz spacing"; } enum "1564.78" { value 71; description "1564.78 nm/191.58750 THz 6.25/12.5GHz spacing"; } enum "1564.73" { value 72; description "1564.73 nm/191.59375 THz 6.25GHz spacing"; } enum "1564.68" { value 73; description "1564.68 nm/191.60000 THz 6.25/12.5/50/75/100GHz spacing"; } enum "1564.63" { value 74; description "1564.63 nm/191.60625 THz 6.25GHz spacing"; } enum "1564.58" { value 75; description "1564.58 nm/191.61250 THz 6.25/12.5GHz spacing"; } enum "1564.53" { value 76; description "1564.53 nm/191.61875 THz 6.25GHz spacing"; } enum "1564.47" { value 77; description "1564.47 nm/191.62500 THz 6.25/12.5GHz spacing"; } enum "1564.42" { value 78; description "1564.42 nm/191.63125 THz 6.25GHz spacing"; } enum "1564.37" { value 79; description "1564.37 nm/191.63750 THz 6.25/12.5GHz spacing"; } enum "1564.32" { value 80; description "1564.32 nm/191.64375 THz 6.25GHz spacing"; } enum "1564.27" { value 81; description "1564.27 nm/191.65000 THz 6.25/12.5/50GHz spacing"; } enum "1564.22" { value 82; description "1564.22 nm/191.65625 THz 6.25GHz spacing"; } enum "1564.17" { value 83; description "1564.17 nm/191.66250 THz 6.25/12.5GHz spacing"; } enum "1564.12" { value 84; description "1564.12 nm/191.66875 THz 6.25GHz spacing"; } enum "1564.07" { value 85; description "1564.07 nm/191.67500 THz 6.25/12.5/75GHz spacing"; } enum "1564.02" { value 86; description "1564.02 nm/191.68125 THz 6.25GHz spacing"; } enum "1563.96" { value 87; description "1563.96 nm/191.68750 THz 6.25/12.5GHz spacing"; } enum "1563.91" { value 88; description "1563.91 nm/191.69375 THz 6.25GHz spacing"; } enum "1563.86" { value 89; description "1563.86 nm/191.70000 THz 6.25/12.5/50/100GHz spacing"; } enum "1563.81" { value 90; description "1563.81 nm/191.70625 THz 6.25GHz spacing"; } enum "1563.76" { value 91; description "1563.76 nm/191.71250 THz 6.25/12.5GHz spacing"; } enum "1563.71" { value 92; description "1563.71 nm/191.71875 THz 6.25GHz spacing"; } enum "1563.66" { value 93; description "1563.66 nm/191.72500 THz 6.25/12.5GHz spacing"; } enum "1563.61" { value 94; description "1563.61 nm/191.73125 THz 6.25GHz spacing"; } enum "1563.56" { value 95; description "1563.56 nm/191.73750 THz 6.25/12.5GHz spacing"; } enum "1563.51" { value 96; description "1563.51 nm/191.74375 THz 6.25GHz spacing"; } enum "1563.45" { value 97; description "1563.45 nm/191.75000 THz 6.25/12.5/50/75GHz spacing"; } enum "1563.40" { value 98; description "1563.40 nm/191.75625 THz 6.25GHz spacing"; } enum "1563.35" { value 99; description "1563.35 nm/191.76250 THz 6.25/12.5GHz spacing"; } enum "1563.30" { value 100; description "1563.30 nm/191.76875 THz 6.25GHz spacing"; } enum "1563.25" { value 101; description "1563.25 nm/191.77500 THz 6.25/12.5GHz spacing"; } enum "1563.20" { value 102; description "1563.20 nm/191.78125 THz 6.25GHz spacing"; } enum "1563.15" { value 103; description "1563.15 nm/191.78750 THz 6.25/12.5GHz spacing"; } enum "1563.10" { value 104; description "1563.10 nm/191.79375 THz 6.25GHz spacing"; } enum "1563.05" { value 105; description "1563.05 nm/191.80000 THz 6.25/12.5/50/100GHz spacing"; } enum "1563.00" { value 106; description "1563.00 nm/191.80625 THz 6.25GHz spacing"; } enum "1562.95" { value 107; description "1562.95 nm/191.81250 THz 6.25/12.5GHz spacing"; } enum "1562.89" { value 108; description "1562.89 nm/191.81875 THz 6.25GHz spacing"; } enum "1562.84" { value 109; description "1562.84 nm/191.82500 THz 6.25/12.5/75GHz spacing"; } enum "1562.79" { value 110; description "1562.79 nm/191.83125 THz 6.25GHz spacing"; } enum "1562.74" { value 111; description "1562.74 nm/191.83750 THz 6.25/12.5GHz spacing"; } enum "1562.69" { value 112; description "1562.69 nm/191.84375 THz 6.25GHz spacing"; } enum "1562.64" { value 113; description "1562.64 nm/191.85000 THz 6.25/12.5/50GHz spacing"; } enum "1562.59" { value 114; description "1562.59 nm/191.85625 THz 6.25GHz spacing"; } enum "1562.54" { value 115; description "1562.54 nm/191.86250 THz 6.25/12.5GHz spacing"; } enum "1562.49" { value 116; description "1562.49 nm/191.86875 THz 6.25GHz spacing"; } enum "1562.44" { value 117; description "1562.44 nm/191.87500 THz 6.25/12.5GHz spacing"; } enum "1562.39" { value 118; description "1562.39 nm/191.88125 THz 6.25GHz spacing"; } enum "1562.33" { value 119; description "1562.33 nm/191.88750 THz 6.25/12.5GHz spacing"; } enum "1562.28" { value 120; description "1562.28 nm/191.89375 THz 6.25GHz spacing"; } enum "1562.23" { value 121; description "1562.23 nm/191.90000 THz 6.25/12.5/50/75/100GHz spacing"; } enum "1562.18" { value 122; description "1562.18 nm/191.90625 THz 6.25GHz spacing"; } enum "1562.13" { value 123; description "1562.13 nm/191.91250 THz 6.25/12.5GHz spacing"; } enum "1562.08" { value 124; description "1562.08 nm/191.91875 THz 6.25GHz spacing"; } enum "1562.03" { value 125; description "1562.03 nm/191.92500 THz 6.25/12.5GHz spacing"; } enum "1561.98" { value 126; description "1561.98 nm/191.93125 THz 6.25GHz spacing"; } enum "1561.93" { value 127; description "1561.93 nm/191.93750 THz 6.25/12.5GHz spacing"; } enum "1561.88" { value 128; description "1561.88 nm/191.94375 THz 6.25GHz spacing"; } enum "1561.83" { value 129; description "1561.83 nm/191.95000 THz 6.25/12.5/50GHz spacing"; } enum "1561.77" { value 130; description "1561.77 nm/191.95625 THz 6.25GHz spacing"; } enum "1561.72" { value 131; description "1561.72 nm/191.96250 THz 6.25/12.5GHz spacing"; } enum "1561.67" { value 132; description "1561.67 nm/191.96875 THz 6.25GHz spacing"; } enum "1561.62" { value 133; description "1561.62 nm/191.97500 THz 6.25/12.5/75GHz spacing"; } enum "1561.57" { value 134; description "1561.57 nm/191.98125 THz 6.25GHz spacing"; } enum "1561.52" { value 135; description "1561.52 nm/191.98750 THz 6.25/12.5GHz spacing"; } enum "1561.47" { value 136; description "1561.47 nm/191.99375 THz 6.25GHz spacing"; } enum "1561.42" { value 137; description "1561.42 nm/192.00000 THz 6.25/12.5/50/100GHz spacing"; } enum "1561.37" { value 138; description "1561.37 nm/192.00625 THz 6.25GHz spacing"; } enum "1561.32" { value 139; description "1561.32 nm/192.01250 THz 6.25/12.5GHz spacing"; } enum "1561.27" { value 140; description "1561.27 nm/192.01875 THz 6.25GHz spacing"; } enum "1561.22" { value 141; description "1561.22 nm/192.02500 THz 6.25/12.5GHz spacing"; } enum "1561.16" { value 142; description "1561.16 nm/192.03125 THz 6.25GHz spacing"; } enum "1561.11" { value 143; description "1561.11 nm/192.03750 THz 6.25/12.5GHz spacing"; } enum "1561.06" { value 144; description "1561.06 nm/192.04375 THz 6.25GHz spacing"; } enum "1561.01" { value 145; description "1561.01 nm/192.05000 THz 6.25/12.5/50G/75Hz spacing"; } enum "1560.96" { value 146; description "1560.96 nm/192.05625 THz 6.25GHz spacing"; } enum "1560.91" { value 147; description "1560.91 nm/192.06250 THz 6.25/12.5GHz spacing"; } enum "1560.86" { value 148; description "1560.86 nm/192.06875 THz 6.25GHz spacing"; } enum "1560.81" { value 149; description "1560.81 nm/192.07500 THz 6.25/12.5GHz spacing"; } enum "1560.76" { value 150; description "1560.76 nm/192.08125 THz 6.25GHz spacing"; } enum "1560.71" { value 151; description "1560.71 nm/192.08750 THz 6.25/12.5GHz spacing"; } enum "1560.66" { value 152; description "1560.66 nm/192.09375 THz 6.25GHz spacing"; } enum "1560.61" { value 153; description "1560.61 nm/192.10000 THz 6.25/12.5/50/100GHz spacing"; } enum "1560.56" { value 154; description "1560.56 nm/192.10625 THz 6.25GHz spacing"; } enum "1560.50" { value 155; description "1560.50 nm/192.11250 THz 6.25/12.5GHz spacing"; } enum "1560.45" { value 156; description "1560.45 nm/192.11875 THz 6.25GHz spacing"; } enum "1560.40" { value 157; description "1560.40 nm/192.12500 THz 6.25/12.5/75GHz spacing"; } enum "1560.35" { value 158; description "1560.35 nm/192.13125 THz 6.25GHz spacing"; } enum "1560.30" { value 159; description "1560.30 nm/192.13750 THz 6.25/12.5GHz spacing"; } enum "1560.25" { value 160; description "1560.25 nm/192.14375 THz 6.25GHz spacing"; } enum "1560.20" { value 161; description "1560.20 nm/192.15000 THz 6.25/12.5/50GHz spacing"; } enum "1560.15" { value 162; description "1560.15 nm/192.15625 THz 6.25GHz spacing"; } enum "1560.10" { value 163; description "1560.10 nm/192.16250 THz 6.25/12.5GHz spacing"; } enum "1560.05" { value 164; description "1560.05 nm/192.16875 THz 6.25GHz spacing"; } enum "1560.00" { value 165; description "1560.00 nm/192.17500 THz 6.25/12.5GHz spacing"; } enum "1559.95" { value 166; description "1559.95 nm/192.18125 THz 6.25GHz spacing"; } enum "1559.90" { value 167; description "1559.90 nm/192.18750 THz 6.25/12.5GHz spacing"; } enum "1559.84" { value 168; description "1559.84 nm/192.19375 THz 6.25GHz spacing"; } enum "1559.79" { value 169; description "1559.79 nm/192.20000 THz 6.25/12.5/50/75/100GHz spacing"; } enum "1559.74" { value 170; description "1559.74 nm/192.20625 THz 6.25GHz spacing"; } enum "1559.69" { value 171; description "1559.69 nm/192.21250 THz 6.25/12.5GHz spacing"; } enum "1559.64" { value 172; description "1559.64 nm/192.21875 THz 6.25GHz spacing"; } enum "1559.59" { value 173; description "1559.59 nm/192.22500 THz 6.25/12.5GHz spacing"; } enum "1559.54" { value 174; description "1559.54 nm/192.23125 THz 6.25GHz spacing"; } enum "1559.49" { value 175; description "1559.49 nm/192.23750 THz 6.25/12.5GHz spacing"; } enum "1559.44" { value 176; description "1559.44 nm/192.24375 THz 6.25GHz spacing"; } enum "1559.39" { value 177; description "1559.39 nm/192.25000 THz 6.25/12.5/50GHz spacing"; } enum "1559.34" { value 178; description "1559.34 nm/192.25625 THz 6.25GHz spacing"; } enum "1559.29" { value 179; description "1559.29 nm/192.26250 THz 6.25/12.5GHz spacing"; } enum "1559.24" { value 180; description "1559.24 nm/192.26875 THz 6.25GHz spacing"; } enum "1559.19" { value 181; description "1559.19 nm/192.27500 THz 6.25/12.5/75GHz spacing"; } enum "1559.14" { value 182; description "1559.14 nm/192.28125 THz 6.25GHz spacing"; } enum "1559.08" { value 183; description "1559.08 nm/192.28750 THz 6.25/12.5GHz spacing"; } enum "1559.03" { value 184; description "1559.03 nm/192.29375 THz 6.25GHz spacing"; } enum "1558.98" { value 185; description "1558.98 nm/192.30000 THz 6.25/12.5/50/100GHz spacing"; } enum "1558.93" { value 186; description "1558.93 nm/192.30625 THz 6.25GHz spacing"; } enum "1558.88" { value 187; description "1558.88 nm/192.31250 THz 6.25/12.5GHz spacing"; } enum "1558.83" { value 188; description "1558.83 nm/192.31875 THz 6.25GHz spacing"; } enum "1558.78" { value 189; description "1558.78 nm/192.32500 THz 6.25/12.5GHz spacing"; } enum "1558.73" { value 190; description "1558.73 nm/192.33125 THz 6.25GHz spacing"; } enum "1558.68" { value 191; description "1558.68 nm/192.33750 THz 6.25/12.5GHz spacing"; } enum "1558.63" { value 192; description "1558.63 nm/192.34375 THz 6.25GHz spacing"; } enum "1558.58" { value 193; description "1558.58 nm/192.35000 THz 6.25/12.5/50/75GHz spacing"; } enum "1558.53" { value 194; description "1558.53 nm/192.35625 THz 6.25GHz spacing"; } enum "1558.48" { value 195; description "1558.48 nm/192.36250 THz 6.25/12.5GHz spacing"; } enum "1558.43" { value 196; description "1558.43 nm/192.36875 THz 6.25GHz spacing"; } enum "1558.38" { value 197; description "1558.38 nm/192.37500 THz 6.25/12.5GHz spacing"; } enum "1558.32" { value 198; description "1558.32 nm/192.38125 THz 6.25GHz spacing"; } enum "1558.27" { value 199; description "1558.27 nm/192.38750 THz 6.25/12.5GHz spacing"; } enum "1558.22" { value 200; description "1558.22 nm/192.39375 THz 6.25GHz spacing"; } enum "1558.17" { value 201; description "1558.17 nm/192.40000 THz 6.25/12.5/50/100GHz spacing"; } enum "1558.12" { value 202; description "1558.12 nm/192.40625 THz 6.25GHz spacing"; } enum "1558.07" { value 203; description "1558.07 nm/192.41250 THz 6.25/12.5GHz spacing"; } enum "1558.02" { value 204; description "1558.02 nm/192.41875 THz 6.25GHz spacing"; } enum "1557.97" { value 205; description "1557.97 nm/192.42500 THz 6.25/12.5/75GHz spacing"; } enum "1557.92" { value 206; description "1557.92 nm/192.43125 THz 6.25GHz spacing"; } enum "1557.87" { value 207; description "1557.87 nm/192.43750 THz 6.25/12.5GHz spacing"; } enum "1557.82" { value 208; description "1557.82 nm/192.44375 THz 6.25GHz spacing"; } enum "1557.77" { value 209; description "1557.77 nm/192.45000 THz 6.25/12.5/50GHz spacing"; } enum "1557.72" { value 210; description "1557.72 nm/192.45625 THz 6.25GHz spacing"; } enum "1557.67" { value 211; description "1557.67 nm/192.46250 THz 6.25/12.5GHz spacing"; } enum "1557.62" { value 212; description "1557.62 nm/192.46875 THz 6.25GHz spacing"; } enum "1557.57" { value 213; description "1557.57 nm/192.47500 THz 6.25/12.5GHz spacing"; } enum "1557.52" { value 214; description "1557.52 nm/192.48125 THz 6.25GHz spacing"; } enum "1557.46" { value 215; description "1557.46 nm/192.48750 THz 6.25/12.5GHz spacing"; } enum "1557.41" { value 216; description "1557.41 nm/192.49375 THz 6.25GHz spacing"; } enum "1557.36" { value 217; description "1557.36 nm/192.50000 THz 6.25/12.5/50/75/100GHz spacing"; } enum "1557.31" { value 218; description "1557.31 nm/192.50625 THz 6.25GHz spacing"; } enum "1557.26" { value 219; description "1557.26 nm/192.51250 THz 6.25/12.5GHz spacing"; } enum "1557.21" { value 220; description "1557.21 nm/192.51875 THz 6.25GHz spacing"; } enum "1557.16" { value 221; description "1557.16 nm/192.52500 THz 6.25/12.5GHz spacing"; } enum "1557.11" { value 222; description "1557.11 nm/192.53125 THz 6.25GHz spacing"; } enum "1557.06" { value 223; description "1557.06 nm/192.53750 THz 6.25/12.5GHz spacing"; } enum "1557.01" { value 224; description "1557.01 nm/192.54375 THz 6.25GHz spacing"; } enum "1556.96" { value 225; description "1556.96 nm/192.55000 THz 6.25/12.5/50GHz spacing"; } enum "1556.91" { value 226; description "1556.91 nm/192.55625 THz 6.25GHz spacing"; } enum "1556.86" { value 227; description "1556.86 nm/192.56250 THz 6.25/12.5GHz spacing"; } enum "1556.81" { value 228; description "1556.81 nm/192.56875 THz 6.25GHz spacing"; } enum "1556.76" { value 229; description "1556.76 nm/192.57500 THz 6.25/12.5/75GHz spacing"; } enum "1556.71" { value 230; description "1556.71 nm/192.58125 THz 6.25GHz spacing"; } enum "1556.66" { value 231; description "1556.66 nm/192.58750 THz 6.25/12.5GHz spacing"; } enum "1556.61" { value 232; description "1556.61 nm/192.59375 THz 6.25GHz spacing"; } enum "1556.55" { value 233; description "1556.55 nm/192.60000 THz 6.25/12.5/50/100GHz spacing"; } enum "1556.50" { value 234; description "1556.50 nm/192.60625 THz 6.25GHz spacing"; } enum "1556.45" { value 235; description "1556.45 nm/192.61250 THz 6.25/12.5GHz spacing"; } enum "1556.40" { value 236; description "1556.40 nm/192.61875 THz 6.25GHz spacing"; } enum "1556.35" { value 237; description "1556.35 nm/192.62500 THz 6.25/12.5GHz spacing"; } enum "1556.30" { value 238; description "1556.30 nm/192.63125 THz 6.25GHz spacing"; } enum "1556.25" { value 239; description "1556.25 nm/192.63750 THz 6.25/12.5GHz spacing"; } enum "1556.20" { value 240; description "1556.20 nm/192.64375 THz 6.25GHz spacing"; } enum "1556.15" { value 241; description "1556.15 nm/192.65000 THz 6.25/12.5/50/75GHz spacing"; } enum "1556.10" { value 242; description "1556.10 nm/192.65625 THz 6.25GHz spacing"; } enum "1556.05" { value 243; description "1556.05 nm/192.66250 THz 6.25/12.5GHz spacing"; } enum "1556.00" { value 244; description "1556.00 nm/192.66875 THz 6.25GHz spacing"; } enum "1555.95" { value 245; description "1555.95 nm/192.67500 THz 6.25/12.5GHz spacing"; } enum "1555.90" { value 246; description "1555.90 nm/192.68125 THz 6.25GHz spacing"; } enum "1555.85" { value 247; description "1555.85 nm/192.68750 THz 6.25/12.5GHz spacing"; } enum "1555.80" { value 248; description "1555.80 nm/192.69375 THz 6.25GHz spacing"; } enum "1555.75" { value 249; description "1555.75 nm/192.70000 THz 6.25/12.5/50/100GHz spacing"; } enum "1555.70" { value 250; description "1555.70 nm/192.70625 THz 6.25GHz spacing"; } enum "1555.65" { value 251; description "1555.65 nm/192.71250 THz 6.25/12.5GHz spacing"; } enum "1555.60" { value 252; description "1555.60 nm/192.71875 THz 6.25GHz spacing"; } enum "1555.55" { value 253; description "1555.55 nm/192.72500 THz 6.25/12.5/75GHz spacing"; } enum "1555.49" { value 254; description "1555.49 nm/192.73125 THz 6.25GHz spacing"; } enum "1555.44" { value 255; description "1555.44 nm/192.73750 THz 6.25/12.5GHz spacing"; } enum "1555.39" { value 256; description "1555.39 nm/192.74375 THz 6.25GHz spacing"; } enum "1555.34" { value 257; description "1555.34 nm/192.75000 THz 6.25/12.5/50GHz spacing"; } enum "1555.29" { value 258; description "1555.29 nm/192.75625 THz 6.25GHz spacing"; } enum "1555.24" { value 259; description "1555.24 nm/192.76250 THz 6.25/12.5GHz spacing"; } enum "1555.19" { value 260; description "1555.19 nm/192.76875 THz 6.25GHz spacing"; } enum "1555.14" { value 261; description "1555.14 nm/192.77500 THz 6.25/12.5GHz spacing"; } enum "1555.09" { value 262; description "1555.09 nm/192.78125 THz 6.25GHz spacing"; } enum "1555.04" { value 263; description "1555.04 nm/192.78750 THz 6.25/12.5GHz spacing"; } enum "1554.99" { value 264; description "1554.99 nm/192.79375 THz 6.25GHz spacing"; } enum "1554.94" { value 265; description "1554.94 nm/192.80000 THz 6.25/12.5/50/75/100GHz spacing"; } enum "1554.89" { value 266; description "1554.89 nm/192.80625 THz 6.25GHz spacing"; } enum "1554.84" { value 267; description "1554.84 nm/192.81250 THz 6.25/12.5GHz spacing"; } enum "1554.79" { value 268; description "1554.79 nm/192.81875 THz 6.25GHz spacing"; } enum "1554.74" { value 269; description "1554.74 nm/192.82500 THz 6.25/12.5GHz spacing"; } enum "1554.69" { value 270; description "1554.69 nm/192.83125 THz 6.25GHz spacing"; } enum "1554.64" { value 271; description "1554.64 nm/192.83750 THz 6.25/12.5GHz spacing"; } enum "1554.59" { value 272; description "1554.59 nm/192.84375 THz 6.25GHz spacing"; } enum "1554.54" { value 273; description "1554.54 nm/192.85000 THz 6.25/12.5/50GHz spacing"; } enum "1554.49" { value 274; description "1554.49 nm/192.85625 THz 6.25GHz spacing"; } enum "1554.44" { value 275; description "1554.44 nm/192.86250 THz 6.25/12.5GHz spacing"; } enum "1554.39" { value 276; description "1554.39 nm/192.86875 THz 6.25GHz spacing"; } enum "1554.34" { value 277; description "1554.34 nm/192.87500 THz 6.25/12.5/75GHz spacing"; } enum "1554.29" { value 278; description "1554.29 nm/192.88125 THz 6.25GHz spacing"; } enum "1554.23" { value 279; description "1554.23 nm/192.88750 THz 6.25/12.5GHz spacing"; } enum "1554.18" { value 280; description "1554.18 nm/192.89375 THz 6.25GHz spacing"; } enum "1554.13" { value 281; description "1554.13 nm/192.90000 THz 6.25/12.5/50/100GHz spacing"; } enum "1554.08" { value 282; description "1554.08 nm/192.90625 THz 6.25GHz spacing"; } enum "1554.03" { value 283; description "1554.03 nm/192.91250 THz 6.25/12.5GHz spacing"; } enum "1553.98" { value 284; description "1553.98 nm/192.91875 THz 6.25GHz spacing"; } enum "1553.93" { value 285; description "1553.93 nm/192.92500 THz 6.25/12.5GHz spacing"; } enum "1553.88" { value 286; description "1553.88 nm/192.93125 THz 6.25GHz spacing"; } enum "1553.83" { value 287; description "1553.83 nm/192.93750 THz 6.25/12.5GHz spacing"; } enum "1553.78" { value 288; description "1553.78 nm/192.94375 THz 6.25GHz spacing"; } enum "1553.73" { value 289; description "1553.73 nm/192.95000 THz 6.25/12.5/50/75GHz spacing"; } enum "1553.68" { value 290; description "1553.68 nm/192.95625 THz 6.25GHz spacing"; } enum "1553.63" { value 291; description "1553.63 nm/192.96250 THz 6.25/12.5GHz spacing"; } enum "1553.58" { value 292; description "1553.58 nm/192.96875 THz 6.25GHz spacing"; } enum "1553.53" { value 293; description "1553.53 nm/192.97500 THz 6.25/12.5GHz spacing"; } enum "1553.48" { value 294; description "1553.48 nm/192.98125 THz 6.25GHz spacing"; } enum "1553.43" { value 295; description "1553.43 nm/192.98750 THz 6.25/12.5GHz spacing"; } enum "1553.38" { value 296; description "1553.38 nm/192.99375 THz 6.25GHz spacing"; } enum "1553.33" { value 297; description "1553.33 nm/193.00000 THz 6.25/12.5/50/100GHz spacing"; } enum "1553.28" { value 298; description "1553.28 nm/193.00625 THz 6.25GHz spacing"; } enum "1553.23" { value 299; description "1553.23 nm/193.01250 THz 6.25/12.5GHz spacing"; } enum "1553.18" { value 300; description "1553.18 nm/193.01875 THz 6.25GHz spacing"; } enum "1553.13" { value 301; description "1553.13 nm/193.02500 THz 6.25/12.5/75GHz spacing"; } enum "1553.08" { value 302; description "1553.08 nm/193.03125 THz 6.25GHz spacing"; } enum "1553.03" { value 303; description "1553.03 nm/193.03750 THz 6.25/12.5GHz spacing"; } enum "1552.98" { value 304; description "1552.98 nm/193.04375 THz 6.25GHz spacing"; } enum "1552.93" { value 305; description "1552.93 nm/193.05000 THz 6.25/12.5/50GHz spacing"; } enum "1552.88" { value 306; description "1552.88 nm/193.05625 THz 6.25GHz spacing"; } enum "1552.83" { value 307; description "1552.83 nm/193.06250 THz 6.25/12.5GHz spacing"; } enum "1552.78" { value 308; description "1552.78 nm/193.06875 THz 6.25GHz spacing"; } enum "1552.73" { value 309; description "1552.73 nm/193.07500 THz 6.25/12.5GHz spacing"; } enum "1552.68" { value 310; description "1552.68 nm/193.08125 THz 6.25GHz spacing"; } enum "1552.62" { value 311; description "1552.62 nm/193.08750 THz 6.25/12.5GHz spacing"; } enum "1552.57" { value 312; description "1552.57 nm/193.09375 THz 6.25GHz spacing"; } enum "1552.52" { value 313; description "1552.52 nm/193.10000 THz 6.25/12.5/50/75/100GHz spacing"; } enum "1552.47" { value 314; description "1552.47 nm/193.10625 THz 6.25GHz spacing"; } enum "1552.42" { value 315; description "1552.42 nm/193.11250 THz 6.25/12.5GHz spacing"; } enum "1552.37" { value 316; description "1552.37 nm/193.11875 THz 6.25GHz spacing"; } enum "1552.32" { value 317; description "1552.32 nm/193.12500 THz 6.25/12.5GHz spacing"; } enum "1552.27" { value 318; description "1552.27 nm/193.13125 THz 6.25GHz spacing"; } enum "1552.22" { value 319; description "1552.22 nm/193.13750 THz 6.25/12.5GHz spacing"; } enum "1552.17" { value 320; description "1552.17 nm/193.14375 THz 6.25GHz spacing"; } enum "1552.12" { value 321; description "1552.12 nm/193.15000 THz 6.25/12.5/50GHz spacing"; } enum "1552.07" { value 322; description "1552.07 nm/193.15625 THz 6.25GHz spacing"; } enum "1552.02" { value 323; description "1552.02 nm/193.16250 THz 6.25/12.5GHz spacing"; } enum "1551.97" { value 324; description "1551.97 nm/193.16875 THz 6.25GHz spacing"; } enum "1551.92" { value 325; description "1551.92 nm/193.17500 THz 6.25/12.5/75GHz spacing"; } enum "1551.87" { value 326; description "1551.87 nm/193.18125 THz 6.25GHz spacing"; } enum "1551.82" { value 327; description "1551.82 nm/193.18750 THz 6.25/12.5GHz spacing"; } enum "1551.77" { value 328; description "1551.77 nm/193.19375 THz 6.25GHz spacing"; } enum "1551.72" { value 329; description "1551.72 nm/193.20000 THz 6.25/12.5/50/100GHz spacing"; } enum "1551.67" { value 330; description "1551.67 nm/193.20625 THz 6.25GHz spacing"; } enum "1551.62" { value 331; description "1551.62 nm/193.21250 THz 6.25/12.5GHz spacing"; } enum "1551.57" { value 332; description "1551.57 nm/193.21875 THz 6.25GHz spacing"; } enum "1551.52" { value 333; description "1551.52 nm/193.22500 THz 6.25/12.5GHz spacing"; } enum "1551.47" { value 334; description "1551.47 nm/193.23125 THz 6.25GHz spacing"; } enum "1551.42" { value 335; description "1551.42 nm/193.23750 THz 6.25/12.5GHz spacing"; } enum "1551.37" { value 336; description "1551.37 nm/193.24375 THz 6.25GHz spacing"; } enum "1551.32" { value 337; description "1551.32 nm/193.25000 THz 6.25/12.5/50/75GHz spacing"; } enum "1551.27" { value 338; description "1551.27 nm/193.25625 THz 6.25GHz spacing"; } enum "1551.22" { value 339; description "1551.22 nm/193.26250 THz 6.25/12.5GHz spacing"; } enum "1551.17" { value 340; description "1551.17 nm/193.26875 THz 6.25GHz spacing"; } enum "1551.12" { value 341; description "1551.12 nm/193.27500 THz 6.25/12.5GHz spacing"; } enum "1551.07" { value 342; description "1551.07 nm/193.28125 THz 6.25GHz spacing"; } enum "1551.02" { value 343; description "1551.02 nm/193.28750 THz 6.25/12.5GHz spacing"; } enum "1550.97" { value 344; description "1550.97 nm/193.29375 THz 6.25GHz spacing"; } enum "1550.92" { value 345; description "1550.92 nm/193.30000 THz 6.25/12.5/50/100GHz spacing"; } enum "1550.87" { value 346; description "1550.87 nm/193.30625 THz 6.25GHz spacing"; } enum "1550.82" { value 347; description "1550.82 nm/193.31250 THz 6.25/12.5GHz spacing"; } enum "1550.77" { value 348; description "1550.77 nm/193.31875 THz 6.25GHz spacing"; } enum "1550.72" { value 349; description "1550.72 nm/193.32500 THz 6.25/12.5/75GHz spacing"; } enum "1550.67" { value 350; description "1550.67 nm/193.33125 THz 6.25GHz spacing"; } enum "1550.62" { value 351; description "1550.62 nm/193.33750 THz 6.25/12.5GHz spacing"; } enum "1550.57" { value 352; description "1550.57 nm/193.34375 THz 6.25GHz spacing"; } enum "1550.52" { value 353; description "1550.52 nm/193.35000 THz 6.25/12.5/50GHz spacing"; } enum "1550.47" { value 354; description "1550.47 nm/193.35625 THz 6.25GHz spacing"; } enum "1550.42" { value 355; description "1550.42 nm/193.36250 THz 6.25/12.5GHz spacing"; } enum "1550.37" { value 356; description "1550.37 nm/193.36875 THz 6.25GHz spacing"; } enum "1550.32" { value 357; description "1550.32 nm/193.37500 THz 6.25/12.5GHz spacing"; } enum "1550.27" { value 358; description "1550.27 nm/193.38125 THz 6.25GHz spacing"; } enum "1550.22" { value 359; description "1550.22 nm/193.38750 THz 6.25/12.5GHz spacing"; } enum "1550.17" { value 360; description "1550.17 nm/193.39375 THz 6.25GHz spacing"; } enum "1550.12" { value 361; description "1550.12 nm/193.40000 THz 6.25/12.5/50/75/100GHz spacing"; } enum "1550.07" { value 362; description "1550.07 nm/193.40625 THz 6.25GHz spacing"; } enum "1550.02" { value 363; description "1550.02 nm/193.41250 THz 6.25/12.5GHz spacing"; } enum "1549.97" { value 364; description "1549.97 nm/193.41875 THz 6.25GHz spacing"; } enum "1549.92" { value 365; description "1549.92 nm/193.42500 THz 6.25/12.5GHz spacing"; } enum "1549.87" { value 366; description "1549.87 nm/193.43125 THz 6.25GHz spacing"; } enum "1549.82" { value 367; description "1549.82 nm/193.43750 THz 6.25/12.5GHz spacing"; } enum "1549.77" { value 368; description "1549.77 nm/193.44375 THz 6.25GHz spacing"; } enum "1549.72" { value 369; description "1549.72 nm/193.45000 THz 6.25/12.5/50GHz spacing"; } enum "1549.67" { value 370; description "1549.67 nm/193.45625 THz 6.25GHz spacing"; } enum "1549.62" { value 371; description "1549.62 nm/193.46250 THz 6.25/12.5GHz spacing"; } enum "1549.57" { value 372; description "1549.57 nm/193.46875 THz 6.25GHz spacing"; } enum "1549.52" { value 373; description "1549.52 nm/193.47500 THz 6.25/12.5/75GHz spacing"; } enum "1549.47" { value 374; description "1549.47 nm/193.48125 THz 6.25GHz spacing"; } enum "1549.42" { value 375; description "1549.42 nm/193.48750 THz 6.25/12.5GHz spacing"; } enum "1549.37" { value 376; description "1549.37 nm/193.49375 THz 6.25GHz spacing"; } enum "1549.32" { value 377; description "1549.32 nm/193.50000 THz 6.25/12.5/50/100GHz spacing"; } enum "1549.26" { value 378; description "1549.26 nm/193.50625 THz 6.25GHz spacing"; } enum "1549.21" { value 379; description "1549.21 nm/193.51250 THz 6.25/12.5GHz spacing"; } enum "1549.16" { value 380; description "1549.16 nm/193.51875 THz 6.25GHz spacing"; } enum "1549.11" { value 381; description "1549.11 nm/193.52500 THz 6.25/12.5GHz spacing"; } enum "1549.06" { value 382; description "1549.06 nm/193.53125 THz 6.25GHz spacing"; } enum "1549.01" { value 383; description "1549.01 nm/193.53750 THz 6.25/12.5GHz spacing"; } enum "1548.96" { value 384; description "1548.96 nm/193.54375 THz 6.25GHz spacing"; } enum "1548.91" { value 385; description "1548.91 nm/193.55000 THz 6.25/12.5/50G/75Hz spacing"; } enum "1548.86" { value 386; description "1548.86 nm/193.55625 THz 6.25GHz spacing"; } enum "1548.81" { value 387; description "1548.81 nm/193.56250 THz 6.25/12.5GHz spacing"; } enum "1548.76" { value 388; description "1548.76 nm/193.56875 THz 6.25GHz spacing"; } enum "1548.71" { value 389; description "1548.71 nm/193.57500 THz 6.25/12.5GHz spacing"; } enum "1548.66" { value 390; description "1548.66 nm/193.58125 THz 6.25GHz spacing"; } enum "1548.61" { value 391; description "1548.61 nm/193.58750 THz 6.25/12.5GHz spacing"; } enum "1548.56" { value 392; description "1548.56 nm/193.59375 THz 6.25GHz spacing"; } enum "1548.51" { value 393; description "1548.51 nm/193.60000 THz 6.25/12.5/50/100GHz spacing"; } enum "1548.46" { value 394; description "1548.46 nm/193.60625 THz 6.25GHz spacing"; } enum "1548.41" { value 395; description "1548.41 nm/193.61250 THz 6.25/12.5GHz spacing"; } enum "1548.36" { value 396; description "1548.36 nm/193.61875 THz 6.25GHz spacing"; } enum "1548.31" { value 397; description "1548.31 nm/193.62500 THz 6.25/12.5/75GHz spacing"; } enum "1548.26" { value 398; description "1548.26 nm/193.63125 THz 6.25GHz spacing"; } enum "1548.21" { value 399; description "1548.21 nm/193.63750 THz 6.25/12.5GHz spacing"; } enum "1548.16" { value 400; description "1548.16 nm/193.64375 THz 6.25GHz spacing"; } enum "1548.11" { value 401; description "1548.11 nm/193.65000 THz 6.25/12.5/50GHz spacing"; } enum "1548.06" { value 402; description "1548.06 nm/193.65625 THz 6.25GHz spacing"; } enum "1548.02" { value 403; description "1548.02 nm/193.66250 THz 6.25/12.5GHz spacing"; } enum "1547.97" { value 404; description "1547.97 nm/193.66875 THz 6.25GHz spacing"; } enum "1547.92" { value 405; description "1547.92 nm/193.67500 THz 6.25/12.5GHz spacing"; } enum "1547.87" { value 406; description "1547.87 nm/193.68125 THz 6.25GHz spacing"; } enum "1547.82" { value 407; description "1547.82 nm/193.68750 THz 6.25/12.5GHz spacing"; } enum "1547.77" { value 408; description "1547.77 nm/193.69375 THz 6.25GHz spacing"; } enum "1547.72" { value 409; description "1547.72 nm/193.70000 THz 6.25/12.5/50/75/100GHz spacing"; } enum "1547.67" { value 410; description "1547.67 nm/193.70625 THz 6.25GHz spacing"; } enum "1547.62" { value 411; description "1547.62 nm/193.71250 THz 6.25/12.5GHz spacing"; } enum "1547.57" { value 412; description "1547.57 nm/193.71875 THz 6.25GHz spacing"; } enum "1547.52" { value 413; description "1547.52 nm/193.72500 THz 6.25/12.5GHz spacing"; } enum "1547.47" { value 414; description "1547.47 nm/193.73125 THz 6.25GHz spacing"; } enum "1547.42" { value 415; description "1547.42 nm/193.73750 THz 6.25/12.5GHz spacing"; } enum "1547.37" { value 416; description "1547.37 nm/193.74375 THz 6.25GHz spacing"; } enum "1547.32" { value 417; description "1547.32 nm/193.75000 THz 6.25/12.5/50GHz spacing"; } enum "1547.27" { value 418; description "1547.27 nm/193.75625 THz 6.25GHz spacing"; } enum "1547.22" { value 419; description "1547.22 nm/193.76250 THz 6.25/12.5GHz spacing"; } enum "1547.17" { value 420; description "1547.17 nm/193.76875 THz 6.25GHz spacing"; } enum "1547.12" { value 421; description "1547.12 nm/193.77500 THz 6.25/12.5/75GHz spacing"; } enum "1547.07" { value 422; description "1547.07 nm/193.78125 THz 6.25GHz spacing"; } enum "1547.02" { value 423; description "1547.02 nm/193.78750 THz 6.25/12.5GHz spacing"; } enum "1546.97" { value 424; description "1546.97 nm/193.79375 THz 6.25GHz spacing"; } enum "1546.92" { value 425; description "1546.92 nm/193.80000 THz 6.25/12.5/50/100GHz spacing"; } enum "1546.87" { value 426; description "1546.87 nm/193.80625 THz 6.25GHz spacing"; } enum "1546.82" { value 427; description "1546.82 nm/193.81250 THz 6.25/12.5GHz spacing"; } enum "1546.77" { value 428; description "1546.77 nm/193.81875 THz 6.25GHz spacing"; } enum "1546.72" { value 429; description "1546.72 nm/193.82500 THz 6.25/12.5GHz spacing"; } enum "1546.67" { value 430; description "1546.67 nm/193.83125 THz 6.25GHz spacing"; } enum "1546.62" { value 431; description "1546.62 nm/193.83750 THz 6.25/12.5GHz spacing"; } enum "1546.57" { value 432; description "1546.57 nm/193.84375 THz 6.25GHz spacing"; } enum "1546.52" { value 433; description "1546.52 nm/193.85000 THz 6.25/12.5/50/75GHz spacing"; } enum "1546.47" { value 434; description "1546.47 nm/193.85625 THz 6.25GHz spacing"; } enum "1546.42" { value 435; description "1546.42 nm/193.86250 THz 6.25/12.5GHz spacing"; } enum "1546.37" { value 436; description "1546.37 nm/193.86875 THz 6.25GHz spacing"; } enum "1546.32" { value 437; description "1546.32 nm/193.87500 THz 6.25/12.5GHz spacing"; } enum "1546.27" { value 438; description "1546.27 nm/193.88125 THz 6.25GHz spacing"; } enum "1546.22" { value 439; description "1546.22 nm/193.88750 THz 6.25/12.5GHz spacing"; } enum "1546.17" { value 440; description "1546.17 nm/193.89375 THz 6.25GHz spacing"; } enum "1546.12" { value 441; description "1546.12 nm/193.90000 THz 6.25/12.5/50/100GHz spacing"; } enum "1546.07" { value 442; description "1546.07 nm/193.90625 THz 6.25GHz spacing"; } enum "1546.02" { value 443; description "1546.02 nm/193.91250 THz 6.25/12.5GHz spacing"; } enum "1545.97" { value 444; description "1545.97 nm/193.91875 THz 6.25GHz spacing"; } enum "1545.92" { value 445; description "1545.92 nm/193.92500 THz 6.25/12.5/75GHz spacing"; } enum "1545.87" { value 446; description "1545.87 nm/193.93125 THz 6.25GHz spacing"; } enum "1545.82" { value 447; description "1545.82 nm/193.93750 THz 6.25/12.5GHz spacing"; } enum "1545.77" { value 448; description "1545.77 nm/193.94375 THz 6.25GHz spacing"; } enum "1545.72" { value 449; description "1545.72 nm/193.95000 THz 6.25/12.5/50GHz spacing"; } enum "1545.67" { value 450; description "1545.67 nm/193.95625 THz 6.25GHz spacing"; } enum "1545.62" { value 451; description "1545.62 nm/193.96250 THz 6.25/12.5GHz spacing"; } enum "1545.57" { value 452; description "1545.57 nm/193.96875 THz 6.25GHz spacing"; } enum "1545.52" { value 453; description "1545.52 nm/193.97500 THz 6.25/12.5GHz spacing"; } enum "1545.47" { value 454; description "1545.47 nm/193.98125 THz 6.25GHz spacing"; } enum "1545.42" { value 455; description "1545.42 nm/193.98750 THz 6.25/12.5GHz spacing"; } enum "1545.37" { value 456; description "1545.37 nm/193.99375 THz 6.25GHz spacing"; } enum "1545.32" { value 457; description "1545.32 nm/194.00000 THz 6.25/12.5/50/75/100GHz spacing"; } enum "1545.27" { value 458; description "1545.27 nm/194.00625 THz 6.25GHz spacing"; } enum "1545.22" { value 459; description "1545.22 nm/194.01250 THz 6.25/12.5GHz spacing"; } enum "1545.17" { value 460; description "1545.17 nm/194.01875 THz 6.25GHz spacing"; } enum "1545.12" { value 461; description "1545.12 nm/194.02500 THz 6.25/12.5GHz spacing"; } enum "1545.07" { value 462; description "1545.07 nm/194.03125 THz 6.25GHz spacing"; } enum "1545.02" { value 463; description "1545.02 nm/194.03750 THz 6.25/12.5GHz spacing"; } enum "1544.97" { value 464; description "1544.97 nm/194.04375 THz 6.25GHz spacing"; } enum "1544.92" { value 465; description "1544.92 nm/194.05000 THz 6.25/12.5/50GHz spacing"; } enum "1544.87" { value 466; description "1544.87 nm/194.05625 THz 6.25GHz spacing"; } enum "1544.82" { value 467; description "1544.82 nm/194.06250 THz 6.25/12.5GHz spacing"; } enum "1544.77" { value 468; description "1544.77 nm/194.06875 THz 6.25GHz spacing"; } enum "1544.72" { value 469; description "1544.72 nm/194.07500 THz 6.25/12.5/75GHz spacing"; } enum "1544.68" { value 470; description "1544.68 nm/194.08125 THz 6.25GHz spacing"; } enum "1544.63" { value 471; description "1544.63 nm/194.08750 THz 6.25/12.5GHz spacing"; } enum "1544.58" { value 472; description "1544.58 nm/194.09375 THz 6.25GHz spacing"; } enum "1544.53" { value 473; description "1544.53 nm/194.10000 THz 6.25/12.5/50/100GHz spacing"; } enum "1544.48" { value 474; description "1544.48 nm/194.10625 THz 6.25GHz spacing"; } enum "1544.43" { value 475; description "1544.43 nm/194.11250 THz 6.25/12.5GHz spacing"; } enum "1544.38" { value 476; description "1544.38 nm/194.11875 THz 6.25GHz spacing"; } enum "1544.33" { value 477; description "1544.33 nm/194.12500 THz 6.25/12.5GHz spacing"; } enum "1544.28" { value 478; description "1544.28 nm/194.13125 THz 6.25GHz spacing"; } enum "1544.23" { value 479; description "1544.23 nm/194.13750 THz 6.25/12.5GHz spacing"; } enum "1544.18" { value 480; description "1544.18 nm/194.14375 THz 6.25GHz spacing"; } enum "1544.13" { value 481; description "1544.13 nm/194.15000 THz 6.25/12.5/50/75GHz spacing"; } enum "1544.08" { value 482; description "1544.08 nm/194.15625 THz 6.25GHz spacing"; } enum "1544.03" { value 483; description "1544.03 nm/194.16250 THz 6.25/12.5GHz spacing"; } enum "1543.98" { value 484; description "1543.98 nm/194.16875 THz 6.25GHz spacing"; } enum "1543.93" { value 485; description "1543.93 nm/194.17500 THz 6.25/12.5GHz spacing"; } enum "1543.88" { value 486; description "1543.88 nm/194.18125 THz 6.25GHz spacing"; } enum "1543.83" { value 487; description "1543.83 nm/194.18750 THz 6.25/12.5GHz spacing"; } enum "1543.78" { value 488; description "1543.78 nm/194.19375 THz 6.25GHz spacing"; } enum "1543.73" { value 489; description "1543.73 nm/194.20000 THz 6.25/12.5/50/100GHz spacing"; } enum "1543.68" { value 490; description "1543.68 nm/194.20625 THz 6.25GHz spacing"; } enum "1543.63" { value 491; description "1543.63 nm/194.21250 THz 6.25/12.5GHz spacing"; } enum "1543.58" { value 492; description "1543.58 nm/194.21875 THz 6.25GHz spacing"; } enum "1543.53" { value 493; description "1543.53 nm/194.22500 THz 6.25/12.5/75GHz spacing"; } enum "1543.48" { value 494; description "1543.48 nm/194.23125 THz 6.25GHz spacing"; } enum "1543.43" { value 495; description "1543.43 nm/194.23750 THz 6.25/12.5GHz spacing"; } enum "1543.38" { value 496; description "1543.38 nm/194.24375 THz 6.25GHz spacing"; } enum "1543.33" { value 497; description "1543.33 nm/194.25000 THz 6.25/12.5/50GHz spacing"; } enum "1543.28" { value 498; description "1543.28 nm/194.25625 THz 6.25GHz spacing"; } enum "1543.23" { value 499; description "1543.23 nm/194.26250 THz 6.25/12.5GHz spacing"; } enum "1543.18" { value 500; description "1543.18 nm/194.26875 THz 6.25GHz spacing"; } enum "1543.13" { value 501; description "1543.13 nm/194.27500 THz 6.25/12.5GHz spacing"; } enum "1543.08" { value 502; description "1543.08 nm/194.28125 THz 6.25GHz spacing"; } enum "1543.04" { value 503; description "1543.04 nm/194.28750 THz 6.25/12.5GHz spacing"; } enum "1542.99" { value 504; description "1542.99 nm/194.29375 THz 6.25GHz spacing"; } enum "1542.94" { value 505; description "1542.94 nm/194.30000 THz 6.25/12.5/50/75/100GHz spacing"; } enum "1542.89" { value 506; description "1542.89 nm/194.30625 THz 6.25GHz spacing"; } enum "1542.84" { value 507; description "1542.84 nm/194.31250 THz 6.25/12.5GHz spacing"; } enum "1542.79" { value 508; description "1542.79 nm/194.31875 THz 6.25GHz spacing"; } enum "1542.74" { value 509; description "1542.74 nm/194.32500 THz 6.25/12.5GHz spacing"; } enum "1542.69" { value 510; description "1542.69 nm/194.33125 THz 6.25GHz spacing"; } enum "1542.64" { value 511; description "1542.64 nm/194.33750 THz 6.25/12.5GHz spacing"; } enum "1542.59" { value 512; description "1542.59 nm/194.34375 THz 6.25GHz spacing"; } enum "1542.54" { value 513; description "1542.54 nm/194.35000 THz 6.25/12.5/50GHz spacing"; } enum "1542.49" { value 514; description "1542.49 nm/194.35625 THz 6.25GHz spacing"; } enum "1542.44" { value 515; description "1542.44 nm/194.36250 THz 6.25/12.5GHz spacing"; } enum "1542.39" { value 516; description "1542.39 nm/194.36875 THz 6.25GHz spacing"; } enum "1542.34" { value 517; description "1542.34 nm/194.37500 THz 6.25/12.5/75GHz spacing"; } enum "1542.29" { value 518; description "1542.29 nm/194.38125 THz 6.25GHz spacing"; } enum "1542.24" { value 519; description "1542.24 nm/194.38750 THz 6.25/12.5GHz spacing"; } enum "1542.19" { value 520; description "1542.19 nm/194.39375 THz 6.25GHz spacing"; } enum "1542.14" { value 521; description "1542.14 nm/194.40000 THz 6.25/12.5/50/100GHz spacing"; } enum "1542.09" { value 522; description "1542.09 nm/194.40625 THz 6.25GHz spacing"; } enum "1542.04" { value 523; description "1542.04 nm/194.41250 THz 6.25/12.5GHz spacing"; } enum "1541.99" { value 524; description "1541.99 nm/194.41875 THz 6.25GHz spacing"; } enum "1541.94" { value 525; description "1541.94 nm/194.42500 THz 6.25/12.5GHz spacing"; } enum "1541.89" { value 526; description "1541.89 nm/194.43125 THz 6.25GHz spacing"; } enum "1541.84" { value 527; description "1541.84 nm/194.43750 THz 6.25/12.5GHz spacing"; } enum "1541.80" { value 528; description "1541.80 nm/194.44375 THz 6.25GHz spacing"; } enum "1541.75" { value 529; description "1541.75 nm/194.45000 THz 6.25/12.5/50/75GHz spacing"; } enum "1541.70" { value 530; description "1541.70 nm/194.45625 THz 6.25GHz spacing"; } enum "1541.65" { value 531; description "1541.65 nm/194.46250 THz 6.25/12.5GHz spacing"; } enum "1541.60" { value 532; description "1541.60 nm/194.46875 THz 6.25GHz spacing"; } enum "1541.55" { value 533; description "1541.55 nm/194.47500 THz 6.25/12.5GHz spacing"; } enum "1541.50" { value 534; description "1541.50 nm/194.48125 THz 6.25GHz spacing"; } enum "1541.45" { value 535; description "1541.45 nm/194.48750 THz 6.25/12.5GHz spacing"; } enum "1541.40" { value 536; description "1541.40 nm/194.49375 THz 6.25GHz spacing"; } enum "1541.35" { value 537; description "1541.35 nm/194.50000 THz 6.25/12.5/50/100GHz spacing"; } enum "1541.30" { value 538; description "1541.30 nm/194.50625 THz 6.25GHz spacing"; } enum "1541.25" { value 539; description "1541.25 nm/194.51250 THz 6.25/12.5GHz spacing"; } enum "1541.20" { value 540; description "1541.20 nm/194.51875 THz 6.25GHz spacing"; } enum "1541.15" { value 541; description "1541.15 nm/194.52500 THz 6.25/12.5/75GHz spacing"; } enum "1541.10" { value 542; description "1541.10 nm/194.53125 THz 6.25GHz spacing"; } enum "1541.05" { value 543; description "1541.05 nm/194.53750 THz 6.25/12.5GHz spacing"; } enum "1541.00" { value 544; description "1541.00 nm/194.54375 THz 6.25GHz spacing"; } enum "1540.95" { value 545; description "1540.95 nm/194.55000 THz 6.25/12.5/50GHz spacing"; } enum "1540.90" { value 546; description "1540.90 nm/194.55625 THz 6.25GHz spacing"; } enum "1540.85" { value 547; description "1540.85 nm/194.56250 THz 6.25/12.5GHz spacing"; } enum "1540.80" { value 548; description "1540.80 nm/194.56875 THz 6.25GHz spacing"; } enum "1540.76" { value 549; description "1540.76 nm/194.57500 THz 6.25/12.5GHz spacing"; } enum "1540.71" { value 550; description "1540.71 nm/194.58125 THz 6.25GHz spacing"; } enum "1540.66" { value 551; description "1540.66 nm/194.58750 THz 6.25/12.5GHz spacing"; } enum "1540.61" { value 552; description "1540.61 nm/194.59375 THz 6.25GHz spacing"; } enum "1540.56" { value 553; description "1540.56 nm/194.60000 THz 6.25/12.5/50/75/100GHz spacing"; } enum "1540.51" { value 554; description "1540.51 nm/194.60625 THz 6.25GHz spacing"; } enum "1540.46" { value 555; description "1540.46 nm/194.61250 THz 6.25/12.5GHz spacing"; } enum "1540.41" { value 556; description "1540.41 nm/194.61875 THz 6.25GHz spacing"; } enum "1540.36" { value 557; description "1540.36 nm/194.62500 THz 6.25/12.5GHz spacing"; } enum "1540.31" { value 558; description "1540.31 nm/194.63125 THz 6.25GHz spacing"; } enum "1540.26" { value 559; description "1540.26 nm/194.63750 THz 6.25/12.5GHz spacing"; } enum "1540.21" { value 560; description "1540.21 nm/194.64375 THz 6.25GHz spacing"; } enum "1540.16" { value 561; description "1540.16 nm/194.65000 THz 6.25/12.5/50GHz spacing"; } enum "1540.11" { value 562; description "1540.11 nm/194.65625 THz 6.25GHz spacing"; } enum "1540.06" { value 563; description "1540.06 nm/194.66250 THz 6.25/12.5GHz spacing"; } enum "1540.01" { value 564; description "1540.01 nm/194.66875 THz 6.25GHz spacing"; } enum "1539.96" { value 565; description "1539.96 nm/194.67500 THz 6.25/12.5/50/75GHz spacing"; } enum "1539.91" { value 566; description "1539.91 nm/194.68125 THz 6.25GHz spacing"; } enum "1539.86" { value 567; description "1539.86 nm/194.68750 THz 6.25/12.5GHz spacing"; } enum "1539.82" { value 568; description "1539.82 nm/194.69375 THz 6.25GHz spacing"; } enum "1539.77" { value 569; description "1539.77 nm/194.70000 THz 6.25/12.5/50/100GHz spacing"; } enum "1539.72" { value 570; description "1539.72 nm/194.70625 THz 6.25GHz spacing"; } enum "1539.67" { value 571; description "1539.67 nm/194.71250 THz 6.25/12.5GHz spacing"; } enum "1539.62" { value 572; description "1539.62 nm/194.71875 THz 6.25GHz spacing"; } enum "1539.57" { value 573; description "1539.57 nm/194.72500 THz 6.25/12.5GHz spacing"; } enum "1539.52" { value 574; description "1539.52 nm/194.73125 THz 6.25GHz spacing"; } enum "1539.47" { value 575; description "1539.47 nm/194.73750 THz 6.25/12.5GHz spacing"; } enum "1539.42" { value 576; description "1539.42 nm/194.74375 THz 6.25GHz spacing"; } enum "1539.37" { value 577; description "1539.37 nm/194.75000 THz 6.25/12.5/50/75GHz spacing"; } enum "1539.32" { value 578; description "1539.32 nm/194.75625 THz 6.25GHz spacing"; } enum "1539.27" { value 579; description "1539.27 nm/194.76250 THz 6.25/12.5GHz spacing"; } enum "1539.22" { value 580; description "1539.22 nm/194.76875 THz 6.25GHz spacing"; } enum "1539.17" { value 581; description "1539.17 nm/194.77500 THz 6.25/12.5GHz spacing"; } enum "1539.12" { value 582; description "1539.12 nm/194.78125 THz 6.25GHz spacing"; } enum "1539.07" { value 583; description "1539.07 nm/194.78750 THz 6.25/12.5GHz spacing"; } enum "1539.03" { value 584; description "1539.03 nm/194.79375 THz 6.25GHz spacing"; } enum "1538.98" { value 585; description "1538.98 nm/194.80000 THz 6.25/12.5/50/100GHz spacing"; } enum "1538.93" { value 586; description "1538.93 nm/194.80625 THz 6.25GHz spacing"; } enum "1538.88" { value 587; description "1538.88 nm/194.81250 THz 6.25/12.5GHz spacing"; } enum "1538.83" { value 588; description "1538.83 nm/194.81875 THz 6.25GHz spacing"; } enum "1538.78" { value 589; description "1538.78 nm/194.82500 THz 6.25/12.5/75GHz spacing"; } enum "1538.73" { value 590; description "1538.73 nm/194.83125 THz 6.25GHz spacing"; } enum "1538.68" { value 591; description "1538.68 nm/194.83750 THz 6.25/12.5GHz spacing"; } enum "1538.63" { value 592; description "1538.63 nm/194.84375 THz 6.25GHz spacing"; } enum "1538.58" { value 593; description "1538.58 nm/194.85000 THz 6.25/12.5/50GHz spacing"; } enum "1538.53" { value 594; description "1538.53 nm/194.85625 THz 6.25GHz spacing"; } enum "1538.48" { value 595; description "1538.48 nm/194.86250 THz 6.25/12.5GHz spacing"; } enum "1538.43" { value 596; description "1538.43 nm/194.86875 THz 6.25GHz spacing"; } enum "1538.38" { value 597; description "1538.38 nm/194.87500 THz 6.25/12.5/75GHz spacing"; } enum "1538.33" { value 598; description "1538.33 nm/194.88125 THz 6.25GHz spacing"; } enum "1538.28" { value 599; description "1538.28 nm/194.88750 THz 6.25/12.5GHz spacing"; } enum "1538.24" { value 600; description "1538.24 nm/194.89375 THz 6.25GHz spacing"; } enum "1538.19" { value 601; description "1538.19 nm/194.90000 THz 6.25/12.5/50/75/100GHz spacing"; } enum "1538.14" { value 602; description "1538.14 nm/194.90625 THz 6.25GHz spacing"; } enum "1538.09" { value 603; description "1538.09 nm/194.91250 THz 6.25/12.5GHz spacing"; } enum "1538.04" { value 604; description "1538.04 nm/194.91875 THz 6.25GHz spacing"; } enum "1537.99" { value 605; description "1537.99 nm/194.92500 THz 6.25/12.5GHz spacing"; } enum "1537.94" { value 606; description "1537.94 nm/194.93125 THz 6.25GHz spacing"; } enum "1537.89" { value 607; description "1537.89 nm/194.93750 THz 6.25/12.5GHz spacing"; } enum "1537.84" { value 608; description "1537.84 nm/194.94375 THz 6.25GHz spacing"; } enum "1537.79" { value 609; description "1537.79 nm/194.95000 THz 6.25/12.5/50GHz spacing"; } enum "1537.74" { value 610; description "1537.74 nm/194.95625 THz 6.25GHz spacing"; } enum "1537.69" { value 611; description "1537.69 nm/194.96250 THz 6.25/12.5GHz spacing"; } enum "1537.64" { value 612; description "1537.64 nm/194.96875 THz 6.25GHz spacing"; } enum "1537.59" { value 613; description "1537.59 nm/194.97500 THz 6.25/12.5/75GHz spacing"; } enum "1537.55" { value 614; description "1537.55 nm/194.98125 THz 6.25GHz spacing"; } enum "1537.50" { value 615; description "1537.50 nm/194.98750 THz 6.25/12.5GHz spacing"; } enum "1537.45" { value 616; description "1537.45 nm/194.99375 THz 6.25GHz spacing"; } enum "1537.40" { value 617; description "1537.40 nm/195.00000 THz 6.25/12.5/50/100GHz spacing"; } enum "1537.35" { value 618; description "1537.35 nm/195.00625 THz 6.25GHz spacing"; } enum "1537.30" { value 619; description "1537.30 nm/195.01250 THz 6.25/12.5GHz spacing"; } enum "1537.25" { value 620; description "1537.25 nm/195.01875 THz 6.25GHz spacing"; } enum "1537.20" { value 621; description "1537.20 nm/195.02500 THz 6.25/12.5GHz spacing"; } enum "1537.15" { value 622; description "1537.15 nm/195.03125 THz 6.25GHz spacing"; } enum "1537.10" { value 623; description "1537.10 nm/195.03750 THz 6.25/12.5GHz spacing"; } enum "1537.05" { value 624; description "1537.05 nm/195.04375 THz 6.25GHz spacing"; } enum "1537.00" { value 625; description "1537.00 nm/195.05000 THz 6.25/12.5/50/75GHz spacing"; } enum "1536.95" { value 626; description "1536.95 nm/195.05625 THz 6.25GHz spacing"; } enum "1536.90" { value 627; description "1536.90 nm/195.06250 THz 6.25/12.5GHz spacing"; } enum "1536.86" { value 628; description "1536.86 nm/195.06875 THz 6.25GHz spacing"; } enum "1536.81" { value 629; description "1536.81 nm/195.07500 THz 6.25/12.5GHz spacing"; } enum "1536.76" { value 630; description "1536.76 nm/195.08125 THz 6.25GHz spacing"; } enum "1536.71" { value 631; description "1536.71 nm/195.08750 THz 6.25/12.5GHz spacing"; } enum "1536.66" { value 632; description "1536.66 nm/195.09375 THz 6.25GHz spacing"; } enum "1536.61" { value 633; description "1536.61 nm/195.10000 THz 6.25/12.5/50/100GHz spacing"; } enum "1536.56" { value 634; description "1536.56 nm/195.10625 THz 6.25GHz spacing"; } enum "1536.51" { value 635; description "1536.51 nm/195.11250 THz 6.25/12.5GHz spacing"; } enum "1536.46" { value 636; description "1536.46 nm/195.11875 THz 6.25GHz spacing"; } enum "1536.41" { value 637; description "1536.41 nm/195.12500 THz 6.25/12.5/75GHz spacing"; } enum "1536.36" { value 638; description "1536.36 nm/195.13125 THz 6.25GHz spacing"; } enum "1536.31" { value 639; description "1536.31 nm/195.13750 THz 6.25/12.5GHz spacing"; } enum "1536.26" { value 640; description "1536.26 nm/195.14375 THz 6.25GHz spacing"; } enum "1536.22" { value 641; description "1536.22 nm/195.15000 THz 6.25/12.5/50GHz spacing"; } enum "1536.17" { value 642; description "1536.17 nm/195.15625 THz 6.25GHz spacing"; } enum "1536.12" { value 643; description "1536.12 nm/195.16250 THz 6.25/12.5GHz spacing"; } enum "1536.07" { value 644; description "1536.07 nm/195.16875 THz 6.25GHz spacing"; } enum "1536.02" { value 645; description "1536.02 nm/195.17500 THz 6.25/12.5GHz spacing"; } enum "1535.97" { value 646; description "1535.97 nm/195.18125 THz 6.25GHz spacing"; } enum "1535.92" { value 647; description "1535.92 nm/195.18750 THz 6.25/12.5GHz spacing"; } enum "1535.87" { value 648; description "1535.87 nm/195.19375 THz 6.25GHz spacing"; } enum "1535.82" { value 649; description "1535.82 nm/195.20000 THz 6.25/12.5/50/75/100GHz spacing"; } enum "1535.77" { value 650; description "1535.77 nm/195.20625 THz 6.25GHz spacing"; } enum "1535.72" { value 651; description "1535.72 nm/195.21250 THz 6.25/12.5GHz spacing"; } enum "1535.67" { value 652; description "1535.67 nm/195.21875 THz 6.25GHz spacing"; } enum "1535.63" { value 653; description "1535.63 nm/195.22500 THz 6.25/12.5GHz spacing"; } enum "1535.58" { value 654; description "1535.58 nm/195.23125 THz 6.25GHz spacing"; } enum "1535.53" { value 655; description "1535.53 nm/195.23750 THz 6.25/12.5GHz spacing"; } enum "1535.48" { value 656; description "1535.48 nm/195.24375 THz 6.25GHz spacing"; } enum "1535.43" { value 657; description "1535.43 nm/195.25000 THz 6.25/12.5/50GHz spacing"; } enum "1535.38" { value 658; description "1535.38 nm/195.25625 THz 6.25GHz spacing"; } enum "1535.33" { value 659; description "1535.33 nm/195.26250 THz 6.25/12.5GHz spacing"; } enum "1535.28" { value 660; description "1535.28 nm/195.26875 THz 6.25GHz spacing"; } enum "1535.23" { value 661; description "1535.23 nm/195.27500 THz 6.25/12.5/75GHz spacing"; } enum "1535.18" { value 662; description "1535.18 nm/195.28125 THz 6.25GHz spacing"; } enum "1535.13" { value 663; description "1535.13 nm/195.28750 THz 6.25/12.5GHz spacing"; } enum "1535.08" { value 664; description "1535.08 nm/195.29375 THz 6.25GHz spacing"; } enum "1535.04" { value 665; description "1535.04 nm/195.30000 THz 6.25/12.5/50/100GHz spacing"; } enum "1534.99" { value 666; description "1534.99 nm/195.30625 THz 6.25GHz spacing"; } enum "1534.94" { value 667; description "1534.94 nm/195.31250 THz 6.25/12.5GHz spacing"; } enum "1534.89" { value 668; description "1534.89 nm/195.31875 THz 6.25GHz spacing"; } enum "1534.84" { value 669; description "1534.84 nm/195.32500 THz 6.25/12.5GHz spacing"; } enum "1534.79" { value 670; description "1534.79 nm/195.33125 THz 6.25GHz spacing"; } enum "1534.74" { value 671; description "1534.74 nm/195.33750 THz 6.25/12.5GHz spacing"; } enum "1534.69" { value 672; description "1534.69 nm/195.34375 THz 6.25GHz spacing"; } enum "1534.64" { value 673; description "1534.64 nm/195.35000 THz 6.25/12.5/50/75GHz spacing"; } enum "1534.59" { value 674; description "1534.59 nm/195.35625 THz 6.25GHz spacing"; } enum "1534.54" { value 675; description "1534.54 nm/195.36250 THz 6.25/12.5GHz spacing"; } enum "1534.50" { value 676; description "1534.50 nm/195.36875 THz 6.25GHz spacing"; } enum "1534.45" { value 677; description "1534.45 nm/195.37500 THz 6.25/12.5GHz spacing"; } enum "1534.40" { value 678; description "1534.40 nm/195.38125 THz 6.25GHz spacing"; } enum "1534.35" { value 679; description "1534.35 nm/195.38750 THz 6.25/12.5GHz spacing"; } enum "1534.30" { value 680; description "1534.30 nm/195.39375 THz 6.25GHz spacing"; } enum "1534.25" { value 681; description "1534.25 nm/195.40000 THz 6.25/12.5/50/100GHz spacing"; } enum "1534.20" { value 682; description "1534.20 nm/195.40625 THz 6.25GHz spacing"; } enum "1534.15" { value 683; description "1534.15 nm/195.41250 THz 6.25/12.5GHz spacing"; } enum "1534.10" { value 684; description "1534.10 nm/195.41875 THz 6.25GHz spacing"; } enum "1534.05" { value 685; description "1534.05 nm/195.42500 THz 6.25/12.5/75GHz spacing"; } enum "1534.00" { value 686; description "1534.00 nm/195.43125 THz 6.25GHz spacing"; } enum "1533.96" { value 687; description "1533.96 nm/195.43750 THz 6.25/12.5GHz spacing"; } enum "1533.91" { value 688; description "1533.91 nm/195.44375 THz 6.25GHz spacing"; } enum "1533.86" { value 689; description "1533.86 nm/195.45000 THz 6.25/12.5/50GHz spacing"; } enum "1533.81" { value 690; description "1533.81 nm/195.45625 THz 6.25GHz spacing"; } enum "1533.76" { value 691; description "1533.76 nm/195.46250 THz 6.25/12.5GHz spacing"; } enum "1533.71" { value 692; description "1533.71 nm/195.46875 THz 6.25GHz spacing"; } enum "1533.66" { value 693; description "1533.66 nm/195.47500 THz 6.25/12.5GHz spacing"; } enum "1533.61" { value 694; description "1533.61 nm/195.48125 THz 6.25GHz spacing"; } enum "1533.56" { value 695; description "1533.56 nm/195.48750 THz 6.25/12.5GHz spacing"; } enum "1533.51" { value 696; description "1533.51 nm/195.49375 THz 6.25GHz spacing"; } enum "1533.47" { value 697; description "1533.47 nm/195.50000 THz 6.25/12.5/50/75/100GHz spacing"; } enum "1533.42" { value 698; description "1533.42 nm/195.50625 THz 6.25GHz spacing"; } enum "1533.37" { value 699; description "1533.37 nm/195.51250 THz 6.25/12.5GHz spacing"; } enum "1533.32" { value 700; description "1533.32 nm/195.51875 THz 6.25GHz spacing"; } enum "1533.27" { value 701; description "1533.27 nm/195.52500 THz 6.25/12.5GHz spacing"; } enum "1533.22" { value 702; description "1533.22 nm/195.53125 THz 6.25GHz spacing"; } enum "1533.17" { value 703; description "1533.17 nm/195.53750 THz 6.25/12.5GHz spacing"; } enum "1533.12" { value 704; description "1533.12 nm/195.54375 THz 6.25GHz spacing"; } enum "1533.07" { value 705; description "1533.07 nm/195.55000 THz 6.25/12.5/50GHz spacing"; } enum "1533.02" { value 706; description "1533.02 nm/195.55625 THz 6.25GHz spacing"; } enum "1532.98" { value 707; description "1532.98 nm/195.56250 THz 6.25/12.5GHz spacing"; } enum "1532.93" { value 708; description "1532.93 nm/195.56875 THz 6.25GHz spacing"; } enum "1532.88" { value 709; description "1532.88 nm/195.57500 THz 6.25/12.5/75GHz spacing"; } enum "1532.83" { value 710; description "1532.83 nm/195.58125 THz 6.25GHz spacing"; } enum "1532.78" { value 711; description "1532.78 nm/195.58750 THz 6.25/12.5GHz spacing"; } enum "1532.73" { value 712; description "1532.73 nm/195.59375 THz 6.25GHz spacing"; } enum "1532.68" { value 713; description "1532.68 nm/195.60000 THz 6.25/12.5/50/100GHz spacing"; } enum "1532.63" { value 714; description "1532.63 nm/195.60625 THz 6.25GHz spacing"; } enum "1532.58" { value 715; description "1532.58 nm/195.61250 THz 6.25/12.5GHz spacing"; } enum "1532.53" { value 716; description "1532.53 nm/195.61875 THz 6.25GHz spacing"; } enum "1532.49" { value 717; description "1532.49 nm/195.62500 THz 6.25/12.5GHz spacing"; } enum "1532.44" { value 718; description "1532.44 nm/195.63125 THz 6.25GHz spacing"; } enum "1532.39" { value 719; description "1532.39 nm/195.63750 THz 6.25/12.5GHz spacing"; } enum "1532.34" { value 720; description "1532.34 nm/195.64375 THz 6.25GHz spacing"; } enum "1532.29" { value 721; description "1532.29 nm/195.65000 THz 6.25/12.5/50/75GHz spacing"; } enum "1532.24" { value 722; description "1532.24 nm/195.65625 THz 6.25GHz spacing"; } enum "1532.19" { value 723; description "1532.19 nm/195.66250 THz 6.25/12.5GHz spacing"; } enum "1532.14" { value 724; description "1532.14 nm/195.66875 THz 6.25GHz spacing"; } enum "1532.09" { value 725; description "1532.09 nm/195.67500 THz 6.25/12.5GHz spacing"; } enum "1532.04" { value 726; description "1532.04 nm/195.68125 THz 6.25GHz spacing"; } enum "1532.00" { value 727; description "1532.00 nm/195.68750 THz 6.25/12.5GHz spacing"; } enum "1531.95" { value 728; description "1531.95 nm/195.69375 THz 6.25GHz spacing"; } enum "1531.90" { value 729; description "1531.90 nm/195.70000 THz 6.25/12.5/50/100GHz spacing"; } enum "1531.85" { value 730; description "1531.85 nm/195.70625 THz 6.25GHz spacing"; } enum "1531.80" { value 731; description "1531.80 nm/195.71250 THz 6.25/12.5GHz spacing"; } enum "1531.75" { value 732; description "1531.75 nm/195.71875 THz 6.25GHz spacing"; } enum "1531.70" { value 733; description "1531.70 nm/195.72500 THz 6.25/12.5/75GHz spacing"; } enum "1531.65" { value 734; description "1531.65 nm/195.73125 THz 6.25GHz spacing"; } enum "1531.60" { value 735; description "1531.60 nm/195.73750 THz 6.25/12.5GHz spacing"; } enum "1531.56" { value 736; description "1531.56 nm/195.74375 THz 6.25GHz spacing"; } enum "1531.51" { value 737; description "1531.51 nm/195.75000 THz 6.25/12.5/50GHz spacing"; } enum "1531.46" { value 738; description "1531.46 nm/195.75625 THz 6.25GHz spacing"; } enum "1531.41" { value 739; description "1531.41 nm/195.76250 THz 6.25/12.5GHz spacing"; } enum "1531.36" { value 740; description "1531.36 nm/195.76875 THz 6.25GHz spacing"; } enum "1531.31" { value 741; description "1531.31 nm/195.77500 THz 6.25/12.5GHz spacing"; } enum "1531.26" { value 742; description "1531.26 nm/195.78125 THz 6.25GHz spacing"; } enum "1531.21" { value 743; description "1531.21 nm/195.78750 THz 6.25/12.5GHz spacing"; } enum "1531.16" { value 744; description "1531.16 nm/195.79375 THz 6.25GHz spacing"; } enum "1531.12" { value 745; description "1531.12 nm/195.80000 THz 6.25/12.5/50/75/100GHz spacing"; } enum "1531.07" { value 746; description "1531.07 nm/195.80625 THz 6.25GHz spacing"; } enum "1531.02" { value 747; description "1531.02 nm/195.81250 THz 6.25/12.5GHz spacing"; } enum "1530.97" { value 748; description "1530.97 nm/195.81875 THz 6.25GHz spacing"; } enum "1530.92" { value 749; description "1530.92 nm/195.82500 THz 6.25/12.5GHz spacing"; } enum "1530.87" { value 750; description "1530.87 nm/195.83125 THz 6.25GHz spacing"; } enum "1530.82" { value 751; description "1530.82 nm/195.83750 THz 6.25/12.5GHz spacing"; } enum "1530.77" { value 752; description "1530.77 nm/195.84375 THz 6.25GHz spacing"; } enum "1530.72" { value 753; description "1530.72 nm/195.85000 THz 6.25/12.5/50GHz spacing"; } enum "1530.68" { value 754; description "1530.68 nm/195.85625 THz 6.25GHz spacing"; } enum "1530.63" { value 755; description "1530.63 nm/195.86250 THz 6.25/12.5GHz spacing"; } enum "1530.58" { value 756; description "1530.58 nm/195.86875 THz 6.25GHz spacing"; } enum "1530.53" { value 757; description "1530.53 nm/195.87500 THz 6.25/12.5/75GHz spacing"; } enum "1530.48" { value 758; description "1530.48 nm/195.88125 THz 6.25GHz spacing"; } enum "1530.43" { value 759; description "1530.43 nm/195.88750 THz 6.25/12.5GHz spacing"; } enum "1530.38" { value 760; description "1530.38 nm/195.89375 THz 6.25GHz spacing"; } enum "1530.33" { value 761; description "1530.33 nm/195.90000 THz 6.25/12.5/50/100GHz spacing"; } enum "1530.29" { value 762; description "1530.29 nm/195.90625 THz 6.25GHz spacing"; } enum "1530.24" { value 763; description "1530.24 nm/195.91250 THz 6.25/12.5GHz spacing"; } enum "1530.19" { value 764; description "1530.19 nm/195.91875 THz 6.25GHz spacing"; } enum "1530.14" { value 765; description "1530.14 nm/195.92500 THz 6.25/12.5GHz spacing"; } enum "1530.09" { value 766; description "1530.09 nm/195.93125 THz 6.25GHz spacing"; } enum "1530.04" { value 767; description "1530.04 nm/195.93750 THz 6.25/12.5GHz spacing"; } enum "1529.99" { value 768; description "1529.99 nm/195.94375 THz 6.25GHz spacing"; } enum "1529.94" { value 769; description "1529.94 nm/195.95000 THz 6.25/12.5/50/75GHz spacing"; } enum "1529.89" { value 770; description "1529.89 nm/195.95625 THz 6.25GHz spacing"; } enum "1529.85" { value 771; description "1529.85 nm/195.96250 THz 6.25/12.5GHz spacing"; } enum "1529.80" { value 772; description "1529.80 nm/195.96875 THz 6.25GHz spacing"; } enum "1529.75" { value 773; description "1529.75 nm/195.97500 THz 6.25/12.5GHz spacing"; } enum "1529.70" { value 774; description "1529.70 nm/195.98125 THz 6.25GHz spacing"; } enum "1529.65" { value 775; description "1529.65 nm/195.98750 THz 6.25/12.5GHz spacing"; } enum "1529.60" { value 776; description "1529.60 nm/195.99375 THz 6.25GHz spacing"; } enum "1529.55" { value 777; description "1529.55 nm/196.00000 THz 6.25/12.5/50/100GHz spacing"; } enum "1529.50" { value 778; description "1529.50 nm/196.00625 THz 6.25GHz spacing"; } enum "1529.46" { value 779; description "1529.46 nm/196.01250 THz 6.25/12.5GHz spacing"; } enum "1529.41" { value 780; description "1529.41 nm/196.01875 THz 6.25GHz spacing"; } enum "1529.36" { value 781; description "1529.36 nm/196.02500 THz 6.25/12.5/75GHz spacing"; } enum "1529.31" { value 782; description "1529.31 nm/196.03125 THz 6.25GHz spacing"; } enum "1529.26" { value 783; description "1529.26 nm/196.03750 THz 6.25/12.5GHz spacing"; } enum "1529.21" { value 784; description "1529.21 nm/196.04375 THz 6.25GHz spacing"; } enum "1529.16" { value 785; description "1529.16 nm/196.05000 THz 6.25/12.5/50GHz spacing"; } enum "1529.11" { value 786; description "1529.11 nm/196.05625 THz 6.25GHz spacing"; } enum "1529.07" { value 787; description "1529.07 nm/196.06250 THz 6.25/12.5GHz spacing"; } enum "1529.02" { value 788; description "1529.02 nm/196.06875 THz 6.25GHz spacing"; } enum "1528.97" { value 789; description "1528.97 nm/196.07500 THz 6.25/12.5GHz spacing"; } enum "1528.92" { value 790; description "1528.92 nm/196.08125 THz 6.25GHz spacing"; } enum "1528.87" { value 791; description "1528.87 nm/196.08750 THz 6.25/12.5GHz spacing"; } enum "1528.82" { value 792; description "1528.82 nm/196.09375 THz 6.25GHz spacing"; } enum "1528.77" { value 793; description "1528.77 nm/196.10000 THz 6.25/12.5/50/75/100GHz spacing"; } enum "1528.38" { value 794; description "1528.38 nm/196.15040 THz 50Ghz spacing"; } } description "Wavelength of the WSS channel for 50Ghz/100Ghz spacing"; } uses apply-advanced; choice wss { container switch { presence "enable switch"; description "Switch the wavelength to an optical interface"; uses apply-advanced; leaf interface-name { type string; description "Name of physical interface"; } } // container switch leaf wss-express-in { type empty; description "Express-in this wavelength to another optical card"; } } // choice wss } // list wavelength container tca { description "Set tca for optical properties"; uses apply-advanced; container osc-tx-power-high-tca { description "OSC TX power high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute osc tx power high TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour osc tx power high TCA in dBm"; } } // container osc-tx-power-high-tca container osc-tx-power-low-tca { description "OSC TX power low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute osc tx power low TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour osc tx power low TCA in dBm"; } } // container osc-tx-power-low-tca container osc-rx-power-high-tca { description "OSC RX power high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute osc rx power high TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour osc rx power high TCA in dBm"; } } // container osc-rx-power-high-tca container osc-rx-power-low-tca { description "OSC RX power low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute osc rx power low TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour osc rx power low TCA in dBm"; } } // container osc-rx-power-low-tca container osc-fiber-loss-high-tca { description "OSC fiber loss high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute osc fiber loss high TCA in dB"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour osc fiber loss high TCA in dB"; } } // container osc-fiber-loss-high-tca container osc-fiber-loss-low-tca { description "OSC fiber loss low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute osc fiber loss low TCA in dB"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour osc fiber loss low TCA in dB"; } } // container osc-fiber-loss-low-tca container lout-voa-high-tca { description "LOUT VOA high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute LOUT VOA high TCA in dB"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour LOUT VOA high TCA in dB"; } } // container lout-voa-high-tca container lout-voa-low-tca { description "LOUT VOA low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute LOUT VOA low TCA in dB"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour LOUT VOA low TCA in dB"; } } // container lout-voa-low-tca container edfa1-in-power-high-tca { description "Ingress EDFA input power high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute Ingress EDFA input power high TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour Ingress EDFA input power high TCA in dBm"; } } // container edfa1-in-power-high-tca container edfa1-in-power-low-tca { description "Ingress EDFA input power low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute Ingress EDFA input power low TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour Ingress EDFA input power low TCA in dBm"; } } // container edfa1-in-power-low-tca container edfa1-out-power-high-tca { description "Ingress EDFA output power high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute Ingress EDFA output power high TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour Ingress EDFA output power high TCA in dBm"; } } // container edfa1-out-power-high-tca container edfa1-out-power-low-tca { description "Ingress EDFA output power low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute Ingress EDFA output power low TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour Ingress EDFA output power low TCA in dBm"; } } // container edfa1-out-power-low-tca container edfa1-sig-power-high-tca { description "Ingress EDFA signal power high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute Ingress EDFA signal power high TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour Ingress EDFA signal power high TCA in dBm"; } } // container edfa1-sig-power-high-tca container edfa1-sig-power-low-tca { description "Ingress EDFA signal power low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute Ingress EDFA signal power low TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour Ingress EDFA signal power low TCA in dBm"; } } // container edfa1-sig-power-low-tca container edfa1-awg-high-tca { description "Ingress EDFA pump AWG high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute Ingress EDFA pump AWG high TCA in mW"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour Ingress EDFA pump AWG high TCA in mW"; } } // container edfa1-awg-high-tca container edfa1-awg-low-tca { description "Ingress EDFA pump AWG low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute Ingress EDFA pump AWG low TCA in mW"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour Ingress EDFA pump AWG low TCA in mW"; } } // container edfa1-awg-low-tca container edfa1-express-high-tca { description "Ingress EDFA pump express high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute Ingress EDFA pump express high TCA in mW"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour Ingress EDFA pump express high TCA in mW"; } } // container edfa1-express-high-tca container edfa1-express-low-tca { description "Ingress EDFA pump express low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute Ingress EDFA pump express low TCA in mW"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour Ingress EDFA pump express low TCA in mW"; } } // container edfa1-express-low-tca container edfa2-in-power-high-tca { description "Egress EDFA input power high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute Egress EDFA input power high TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour Egress EDFA input power high TCA in dBm"; } } // container edfa2-in-power-high-tca container edfa2-in-power-low-tca { description "Egress EDFA input power low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute Egress EDFA input power low TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour Egress EDFA input power low TCA in dBm"; } } // container edfa2-in-power-low-tca container edfa2-out-power-high-tca { description "Egress EDFA output power high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute Egress EDFA output power high TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour Egress EDFA output power high TCA in dBm"; } } // container edfa2-out-power-high-tca container edfa2-out-power-low-tca { description "Egress EDFA output power low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute Egress EDFA output power low TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour Egress EDFA output power low TCA in dBm"; } } // container edfa2-out-power-low-tca container edfa2-sig-power-high-tca { description "Egress EDFA signal power high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute Egress EDFA signal power high TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour Egress EDFA signal power high TCA in dBm"; } } // container edfa2-sig-power-high-tca container edfa2-sig-power-low-tca { description "Egress EDFA signal power low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute Egress EDFA signal power low TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour Egress EDFA signal power low TCA in dBm"; } } // container edfa2-sig-power-low-tca container edfa2-awg-high-tca { description "Egress EDFA pump AWG high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute Egress EDFA pump AWG high TCA in mW"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour Egress EDFA pump AWG high TCA in mW"; } } // container edfa2-awg-high-tca container edfa2-awg-low-tca { description "Egress EDFA pump AWG low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute Egress EDFA pump AWG low TCA in mW"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour Egress EDFA pump AWG low TCA in mW"; } } // container edfa2-awg-low-tca container edfa2-express-high-tca { description "Egress EDFA pump express high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute Egress EDFA pump express high TCA in mW"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour Egress EDFA pump express high TCA in mW"; } } // container edfa2-express-high-tca container edfa2-express-low-tca { description "Egress EDFA pump express low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute Egress EDFA pump express low TCA in mW"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour Egress EDFA pump express low TCA in mW"; } } // container edfa2-express-low-tca container ocm-power-high-line-out-tca { description "OCM Power Line Out high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute OCM Power high TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour OCM Power high TCA in dBm"; } } // container ocm-power-high-line-out-tca container ocm-power-low-line-out-tca { description "OCM Power Line Out low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute OCM Power low TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour OCM Power low TCA in dBm"; } } // container ocm-power-low-line-out-tca } // container tca container expansion-card { description "Associate an expansion card with the IPLC card"; uses apply-advanced; container fpc { presence "enable fpc"; uses apply-advanced; leaf fpc-slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } } } // container fpc } // container expansion-card container express-in { description "Associate an express-in card with the IPLC card"; uses apply-advanced; container fpc { presence "enable fpc"; uses apply-advanced; leaf fpc-slot { type union { type string { pattern "<.*>|$.*"; } type uint32; } } } // container fpc } // container express-in container amplifier-chain { description "In-line amplifier options"; uses apply-advanced; choice anchor-iplc-choice { leaf anchor-iplc { type empty; description "Mark IPLC as anchor for In-line amplifier chain"; } leaf no-anchor-iplc { type empty; description "Don't mark IPLC as anchor for In-line amplifier chain"; } } // choice anchor-iplc-choice leaf osc-ip { type string; description "IPLC OSC path IPv4 address format w.x.y.z/a"; } leaf osc-mac { type string; description "IPLC OSC path MAC address format a:b:c:d:e:f"; } list ila { key "name"; description "Configure In-line amplifier number"; leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 14"; } } description "In-line amplifier Chain position number"; } uses apply-advanced; container ila-options { description "In-line amplifier settings"; uses apply-advanced; leaf ila-ipv4-address { type string; description "In-line amplifier IPV4 address format w.x.y.z/a"; } leaf ila-user { type string; description "ILA User Name"; } leaf ila-password { type jt:unreadable; description "ILA password string"; } container edfa-a-b { description "Configure edfa-a-b"; uses apply-advanced; container tca-input-power-low { description "Input power low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute input power low TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour input power low TCA in dBm"; } } // container tca-input-power-low container tca-input-power-high { description "Input power high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute input power high TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour input power high TCA in dBm"; } } // container tca-input-power-high container tca-output-power-low { description "Output power low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute output power low TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour output power low TCA in dBm"; } } // container tca-output-power-low container tca-output-power-high { description "Output power high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute output power high TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour output power high TCA in dBm"; } } // container tca-output-power-high container tca-signal-output-power-low { description "Signal output power low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute signal output power low TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour signal output power low TCA in dBm"; } } // container tca-signal-output-power-low container tca-signal-output-power-high { description "Signal output power high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute signal output power high TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour signal output power high TCA in dBm"; } } // container tca-signal-output-power-high container tca-pump0-current-low { description "Pump0 current low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute pump0 current low TCA in mA"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour pump0 current low TCA in mA"; } } // container tca-pump0-current-low container tca-pump0-current-high { description "Pump0 current high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute pump0 current high TCA in mA"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour pump0 current high TCA in mA"; } } // container tca-pump0-current-high container tca-pump1-current-low { description "Pump1 current low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute pump1 current low TCA in mA"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour pump1 current low TCA in mA"; } } // container tca-pump1-current-low container tca-pump1-current-high { description "Pump1 current high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute pump1 current high TCA in mA"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour pump1 current high TCA in mA"; } } // container tca-pump1-current-high container tca-pump0-temperature-low { description "Pump0 temperature low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute pump0 temperature low TCA in C"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour pump0 temperature low TCA in C"; } } // container tca-pump0-temperature-low container tca-pump0-temperature-high { description "Pump0 temperature high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute pump0 temperature high TCA in C"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour pump0 temperature high TCA in C"; } } // container tca-pump0-temperature-high container tca-pump1-temperature-low { description "Pump1 temperature low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute pump1 temperature low TCA in C"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour pump1 temperature low TCA in C"; } } // container tca-pump1-temperature-low container tca-pump1-temperature-high { description "Pump1 temperature high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute pump1 temperature high TCA in C"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour pump1 temperature high TCA in C"; } } // container tca-pump1-temperature-high } // container edfa-a-b container voa-a { description "Configure voa-a"; uses apply-advanced; container tca-attenuation-low { description "Attenuation low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute attenuation low TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour attenuation low TCA in dBm"; } } // container tca-attenuation-low container tca-attenuation-high { description "Attenuation high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute attenuation high TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour attenuation high TCA in dBm"; } } // container tca-attenuation-high } // container voa-a container osc-a { description "Configure osc-a"; uses apply-advanced; container osc-tx-power-high-tca { description "OSC TX power high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute osc tx power high TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour osc tx power high TCA in dBm"; } } // container osc-tx-power-high-tca container osc-tx-power-low-tca { description "OSC TX power low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute osc tx power low TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour osc tx power low TCA in dBm"; } } // container osc-tx-power-low-tca container osc-rx-power-high-tca { description "OSC RX power high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute osc rx power high TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour osc rx power high TCA in dBm"; } } // container osc-rx-power-high-tca container osc-rx-power-low-tca { description "OSC RX power low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute osc rx power low TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour osc rx power low TCA in dBm"; } } // container osc-rx-power-low-tca container osc-fiber-loss-high-tca { description "OSC fiber loss high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute osc fiber loss high TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour osc fiber loss high TCA in dBm"; } } // container osc-fiber-loss-high-tca container osc-fiber-loss-low-tca { description "OSC fiber loss low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute osc fiber loss low TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour osc fiber loss low TCA in dBm"; } } // container osc-fiber-loss-low-tca } // container osc-a container edfa-b-a { description "Configure edfa-b-a"; uses apply-advanced; container tca-input-power-low { description "Input power low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute input power low TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour input power low TCA in dBm"; } } // container tca-input-power-low container tca-input-power-high { description "Input power high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute input power high TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour input power high TCA in dBm"; } } // container tca-input-power-high container tca-output-power-low { description "Output power low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute output power low TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour output power low TCA in dBm"; } } // container tca-output-power-low container tca-output-power-high { description "Output power high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute output power high TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour output power high TCA in dBm"; } } // container tca-output-power-high container tca-signal-output-power-low { description "Signal output power low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute signal output power low TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour signal output power low TCA in dBm"; } } // container tca-signal-output-power-low container tca-signal-output-power-high { description "Signal output power high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute signal output power high TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour signal output power high TCA in dBm"; } } // container tca-signal-output-power-high container tca-pump0-current-low { description "Pump0 current low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute pump0 current low TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour pump0 current low TCA in dBm"; } } // container tca-pump0-current-low container tca-pump0-current-high { description "Pump0 current high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute pump0 current high TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour pump0 current high TCA in dBm"; } } // container tca-pump0-current-high container tca-pump1-current-low { description "Pump1 current low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute pump1 current low TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour pump1 current low TCA in dBm"; } } // container tca-pump1-current-low container tca-pump1-current-high { description "Pump1 current high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute pump1 current high TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour pump1 current high TCA in dBm"; } } // container tca-pump1-current-high container tca-pump0-temperature-low { description "Pump0 temperature low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute pump0 temperature low TCA in C"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour pump0 temperature low TCA in C"; } } // container tca-pump0-temperature-low container tca-pump0-temperature-high { description "Pump0 temperature high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute pump0 temperature high TCA in C"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour pump0 temperature high TCA in C"; } } // container tca-pump0-temperature-high container tca-pump1-temperature-low { description "Pump1 temperature low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute pump1 temperature low TCA in C"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour pump1 temperature low TCA in C"; } } // container tca-pump1-temperature-low container tca-pump1-temperature-high { description "Pump1 temperature high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute pump1 temperature high TCA in C"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour pump1 temperature high TCA in C"; } } // container tca-pump1-temperature-high } // container edfa-b-a container voa-b { description "Configure voa-b"; uses apply-advanced; container tca-attenuation-low { description "Attenuation low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute attenuation low TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour attenuation low TCA in dBm"; } } // container tca-attenuation-low container tca-attenuation-high { description "Attenuation high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute attenuation high TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour attenuation high TCA in dBm"; } } // container tca-attenuation-high } // container voa-b container osc-b { description "Configure osc-b"; uses apply-advanced; container osc-tx-power-high-tca { description "OSC TX power high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute osc tx power high TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour osc tx power high TCA in dBm"; } } // container osc-tx-power-high-tca container osc-tx-power-low-tca { description "OSC TX power low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute osc tx power low TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour osc tx power low TCA in dBm"; } } // container osc-tx-power-low-tca container osc-rx-power-high-tca { description "OSC RX power high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute osc rx power high TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour osc rx power high TCA in dBm"; } } // container osc-rx-power-high-tca container osc-rx-power-low-tca { description "OSC RX power low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute osc rx power low TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour osc rx power low TCA in dBm"; } } // container osc-rx-power-low-tca container osc-fiber-loss-high-tca { description "OSC fiber loss high TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute osc fiber loss high TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour osc fiber loss high TCA in dBm"; } } // container osc-fiber-loss-high-tca container osc-fiber-loss-low-tca { description "OSC fiber loss low TCA"; uses apply-advanced; choice enable-tca-choice { leaf enable-tca { type empty; description "Enable tca"; } leaf no-enable-tca { type empty; description "Don't enable tca"; } } // choice enable-tca-choice leaf threshold { type string; description "Threshold for 15 minute osc fiber loss low TCA in dBm"; } leaf threshold-24hrs { type string; description "Threshold for 24 hour osc fiber loss low TCA in dBm"; } } // container osc-fiber-loss-low-tca } // container osc-b } // container ila-options } // list ila } // container amplifier-chain } // container optical-options leaf power { type enumeration { enum "off" { value 0; description "Do not provide power to FPCs"; } enum "on" { value 1; description "Provide power to FPCs"; } } description "Power FPCs on or off"; } leaf no-vlan-tagging { type empty; description "Disable vlan support on FPC with default tpid 0x8100"; } container traffic-manager { description "Configure traffic-manager attributes"; uses apply-advanced; leaf buffer-monitor-enable { type empty; description "Enable port buffer monitoring"; } container queue-threshold { description "Set queue thresholds"; uses apply-advanced; container fabric-queue { description "Set fabric queue thresholds"; uses apply-advanced; list priority { key "name"; ordered-by user; description "Queue priority"; leaf name { type enumeration { enum "low" { value 0; description "Low fabric priority"; } enum "high" { value 1; description "High fabric priority"; } } description "Priority level"; } uses apply-advanced; leaf threshold { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 100"; } } description "Threshold percentage to be set"; } } // list priority } // container fabric-queue container wan-queue { description "Set wan queue thresholds"; uses apply-advanced; list priority { key "name"; ordered-by user; description "Queue Priority"; leaf name { type enumeration { enum "low" { value 0; description "Low wan priority"; } enum "medium-low" { value 1; description "Medium low wan priority"; } enum "medium-high" { value 2; description "Medium high wan priority"; } enum "high" { value 3; description "High wan priority"; } } description "Priority level"; } uses apply-advanced; leaf threshold { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 100"; } } description "Threshold percentage to be set"; } } // list priority } // container wan-queue } // container queue-threshold choice enhanced-priority-mode-choice { leaf enhanced-priority-mode { type empty; description "Enable enhanced priority mode"; } leaf no-enhanced-priority-mode { type empty; description "Don't enable enhanced priority mode"; } } // choice enhanced-priority-mode-choice leaf packet-timestamp { type enumeration { enum "enable" { value 0; description "Enables collecting CoS last packet enqueued timestamp"; } enum "disable" { value 1; description "Disables collecting CoS last packet enqueued timestamp"; } } default "disable"; description "Configure collecting CoS last packet enqueued timestamp"; } } // container traffic-manager leaf max-power { type union { type uint32; type string { pattern "<.*>|$.*"; } } description "Max power to be consumed by MPC"; } leaf route-localization { junos:must "(".. .. .. chassis route-localization")"; junos:must-message "Must have chassis route-localization inet or inet6"; type enumeration { enum "fib-remote" { value 0; description "Route-Localization fib-remote"; } enum "fib-local" { value 1; description "Route-Localization fib-local"; } } description "Route-Localization fib-remote or fib-local"; } leaf vpn-localization { type enumeration { enum "vpn-core-facing-only" { value 0; description "VPN core-facing-fpc which has no vpn-label state"; } enum "vpn-core-facing-default" { value 1; description "VPN core-facing-fpc which has all the state"; } } description "VPN-localization core-facing-only or core-facing-default"; } leaf power-budget-priority { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "FPC priority number"; } choice mode { leaf disable-power { type empty; status deprecated; description "Do not provide power to the card"; } leaf allow-sram-parity-errors { type empty; description "Do not power cycle FPC when SRAM parity errors occur"; } } // choice mode choice riot-mode { container performance-mode { presence "enable performance-mode"; description "Enable performance mode, FPC will restart if mode changes from lite mode to performance mode"; uses apply-advanced; leaf number-of-ucode-workers { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 100"; } } default "0"; description "Configure number of ucode worker cores, FPC will restart if there is a change in number of ucode worker cores"; } } // container performance-mode leaf lite-mode { type empty; description "Enable lite mode, FPC will restart if mode changes from performance mode to lite mode"; } } // choice riot-mode leaf services-offload { type empty; status deprecated; description "Enable services offload on fpc"; } leaf cfp-to-et { type empty; description "Enable ET interface and remove CFP client"; } leaf np-cache { type empty; status deprecated; description "Enable NP cache and services offload on fpc"; } leaf np-cache-disable { type empty; description "Disable NP cache and services offload on fpc"; } leaf offline { type empty; description "Keep FPC offline"; } leaf offline-on-fabric-bandwidth-reduction { type empty; description "Bring FPC offline when running with reduced fabric bandwidth"; } leaf ir-mode { type enumeration { enum "IR" { value 0; description "Set IR mode"; } enum "R" { value 1; description "Set R mode"; } } description "Configure IR or R mode for MPC4 and above cards"; } container no-loss { description "PFC lossless buffer configuratios"; uses apply-advanced; container buffer { description "PFC lossless buffer"; uses apply-advanced; leaf percentage { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 100"; } } units "percent"; description "Configure buffer space for lossless traffic handling"; } } // container buffer } // container no-loss leaf license-mode { type enumeration { enum "r" { value 0; description "Set card to R mode"; } enum "ir" { value 1; description "Set card to IR mode"; } enum "lsr" { value 2; description "Set card to LSR mode"; } enum "ip" { value 3; description "Set card to full IP mode"; } } description "Configure license mode for PTX FPC3 and later cards"; } container fabric { presence "enable fabric"; uses apply-advanced; container loopback { presence "enable loopback"; description "Set fpc fabric loopback mode"; uses apply-advanced; leaf wan { type enumeration { enum "off" { value 0; description "Disable fpc fabric wan loopback"; } enum "on" { value 1; description "Enable fpc fabric wan loopback"; } } description "Enable/Disable fpc fabric wan loopback"; } } // container loopback leaf blackhole-action { type enumeration { enum "log-only" { value 0; description "Log the detected blackhole condition"; } enum "offline" { value 1; description "Offline the FPC"; } enum "restart" { value 2; description "Restart the FPC"; } enum "restart-then-offline" { value 3; description "Restart the FPC and offline in subsequent action. "; } } description "Action taken upon fabric plane blackhole involving the FPC"; } container bandwidth-degradation { description "Take FPC recovery action when FPC running with reduced fabric bandwidth"; uses apply-advanced; leaf percentage { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 99"; } } description "The percentage of PFE bandwidth degradation to trigger action"; } leaf no-fabric-switchover { type empty; description "Do not perform switchover to spare CB"; } leaf action { type enumeration { enum "log-only" { value 0; description "Log the bandwidth degradation only"; } enum "offline" { value 1; description "Offline the FPC, default action"; } enum "restart" { value 2; description "Restart the FPC"; } enum "restart-then-offline" { value 3; description "Restart the FPC and offline in subsequent action"; } } description "Type of action to trigger"; } } // container bandwidth-degradation } // container fabric list port-mirror-instance { key "name"; max-elements 2; ordered-by user; leaf name { junos:must "(!("forwarding-options port-mirroring instance $$ input-parameters-instance"))"; junos:must-message "Derived instance cannot be binded"; junos:must "(((!("chassis network-services lan") && ("forwarding-options port-mirroring instance $$" || "forwarding-options analyzer $$")) || "chassis network-services lan"))"; junos:must-message "Referenced port-mirroring instance does not exist"; junos:must "(("forwarding-options port-mirroring instance $$" || "forwarding-options analyzer $$"))"; junos:must-message "Referenced port-mirroring/analyzer instance does not exist"; type string { length "1 .. 64"; } description "Associate a port mirroring instance with the FPC"; } uses apply-advanced; } // list port-mirror-instance list sampling-instance { key "name"; max-elements 1; ordered-by user; leaf name { junos:must "("forwarding-options sampling instance $$")"; junos:must-message "Referenced sampling instance does not exist"; type string { length "1 .. 64"; } description "Associate a sampling instance with the FPC"; } uses apply-advanced; } // list sampling-instance container inline-services { uses apply-advanced; leaf report-zero-oif-gw-on-discard { type empty; description "Jflow reports value zero in OIF and GW when traffic is not forwarded"; } leaf flex-flow-sizing { junos:must "(!((".. flow-table-size ipv4-flow-table-size" || (".. flow-table-size ipv6-flow-table-size" || (".. flow-table-size vpls-flow-table-size" || (".. flow-table-size bridge-flow-table-size" || ".. flow-table-size mpls-flow-table-size"))))))"; junos:must-message "flex-flow-sizing and flow-table-size are mutually exclusive"; type empty; description "No fixed size allocation of flow tables for proto families"; } leaf use-extended-flow-memory { type empty; description "Use extended memory for flow records"; } container flow-table-size { uses apply-advanced; leaf ipv4-flow-table-size { junos:must "(!(".. .. flex-flow-sizing"))"; junos:must-message "flex-flow-sizing and flow-table-size are mutually exclusive"; type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 245"; } } description "IPv4 flow table size in units of 256k"; } leaf ipv6-flow-table-size { junos:must "(!(".. .. flex-flow-sizing"))"; junos:must-message "flex-flow-sizing and flow-table-size are mutually exclusive"; type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 245"; } } description "IPv6 flow table size in units of 256k"; } leaf vpls-flow-table-size { junos:must "(!(".. .. flex-flow-sizing"))"; junos:must-message "flex-flow-sizing and flow-table-size are mutually exclusive"; type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 245"; } } status deprecated; description "VPLS flow table size in units of 256k"; } leaf bridge-flow-table-size { junos:must "(!(".. .. flex-flow-sizing"))"; junos:must-message "flex-flow-sizing and flow-table-size are mutually exclusive"; junos:must "(!(".. vpls-flow-table-size"))"; junos:must-message "Both vpls-flow-table-size and bridge-flow-table-size can not be configured/allowed"; type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 245"; } } description "BRIDGE flow table size in units of 256k"; } leaf ipv6-extended-attrib { type empty; description "Enable extended flow attribute"; } leaf mpls-flow-table-size { junos:must "(!(".. .. flex-flow-sizing"))"; junos:must-message "flex-flow-sizing and flow-table-size are mutually exclusive"; type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 245"; } } description "MPLS flow table size in units of 256k"; } } // container flow-table-size } // container inline-services container inline-video-monitoring { uses apply-advanced; leaf maximum-flows-count { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "16 .. 8192"; } } status deprecated; description "Maximum number of inline video monitoring flows per PFE instance."; } leaf flow-table-size { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "16 .. 8192"; } } description "Size of flow table size per PFE instance"; } } // container inline-video-monitoring container application-services { description "Application services configuration"; uses apply-advanced; leaf package { type string; description "Package selection"; } } // container application-services container slamon-services { description "SLA monitoring services"; uses apply-advanced; leaf rfc2544 { type empty; description "Enable sla monitoring services"; } } // container slamon-services leaf flexible-queuing-mode { junos:must "(!(".. max-queues"))"; junos:must-message "flexible-queuing-mode and max-queues can not be configured at same time"; type empty; description "Enable flexible queuing mode"; } leaf loopback-device-count { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 4"; } } default "0"; description "Number of loopbacks"; } leaf interasic-linkerror-recovery-enable { type empty; description "Enable inter-asic link error recovery"; } leaf number-of-ports { type enumeration { enum "8" { value 0; description "Enable 8 ports"; } enum "12" { value 1; description "Enable 12 ports"; } } description "Number of physical ports to enable on FPC"; } list pfe { key "name"; description "Packet forwarding engine parameters"; uses chassis_pfe_type; } // list pfe leaf service-package { type enumeration { enum "bundle-rfc2544" { value 0; description "Service Package for RFC2544"; } enum "bundle-nat-ipsec" { value 1; description "Service Package for NAT and IPSEC"; } enum "bundle-ptp-enterprise-profile" { value 2; description "Service Package for PTP Enterprise Profile"; } } default "bundle-rfc2544"; description "Service package to be loaded on FPC"; } leaf max-queues { junos:must "(!(".. flexible-queuing-mode"))"; junos:must-message "max-queues and flexible-queuing-mode can not be configured at same time"; type enumeration { enum "8k" { value 0; description "8K maximum queues"; } enum "16k" { value 1; description "16K maximum queues"; } enum "32k" { value 2; description "32K maximum queues"; } enum "48k" { value 3; description "48K maximum queues"; } enum "64k" { value 4; description "64K maximum queues "; } enum "96k" { value 5; description "96K maximum queues "; } enum "128k" { value 6; description "128K maximum queues"; } enum "192k" { value 7; description "192K maximum queues"; } enum "256k" { value 8; description "256K maximum queues"; } enum "384k" { value 9; description "256K maximum queues"; } enum "512k" { value 10; description "512K maximum queues"; } enum "768k" { value 11; description "768K maximum queues"; } enum "1M" { value 12; description "1M maximum queues"; } enum "1536k" { value 13; description "1536k maximum queues"; } enum "2M" { value 14; description "2M maximum queues"; } } description "Maximum number of queues configurable on FPC"; } leaf bandwidth { type enumeration { enum "1.6T" { value 0; description "Configure FPC bandwidth to 1.6T"; } } description "Configure bandwidth of FPC"; } leaf pfe-bandwidth { type enumeration { enum "240G" { value 0; description "Configure PFE bandwidth to 240G"; } enum "300G" { value 1; description "Configure PFE bandwidth to 300G"; } enum "400G" { value 2; description "Configure PFE bandwidth to 400G"; } } description "Configure per PFE bandwidth"; } container error { description "Error level configuration for FPC"; uses chassis_fpc_error_type; } // container error list ether-type { key "name"; ordered-by user; description "Set Ethernet type on FPC"; leaf name { type union { type string { pattern "<.*>|$.*"; } type uint8 { range "6 .. 27"; } } description "TCAM slot"; } uses apply-advanced; leaf etype { type string; description "Ether type"; } } // list ether-type list slc { key "name"; description "Sub-line card (SLC)"; uses chassis_slc_type; } // list slc container openflow { description "Openflow configuration"; uses apply-advanced; leaf access-list-partition { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 100"; } } units "percents"; description "Space reserved for openflow access-list rules"; } leaf buffer-partition { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 100"; } } units "percents"; description "Buffer space reserved for openflow traffic"; } } // container openflow } // grouping chassis_fpc_type grouping chassis_fru_cmerror_override_type { description "Chassis Fpc Error override"; leaf name { type string { junos:posix-pattern "^(/[^/ ]+/[0-9]+){4}/[^/ ]+$"; junos:pattern-message "Invalid error identifier format"; length "1 .. 255"; } description "Error identifier"; } uses apply-advanced; leaf state { type enumeration { enum "disable" { value 0; description "Disable error"; } } description "State"; } leaf severity { type enumeration { enum "minor" { value 0; description "Minor Severity"; } enum "major" { value 1; description "Major Severity"; } enum "fatal" { value 2; description "Fatal Severity"; } } description "Severity"; } container pfe { presence "enable pfe"; description "Apply to these pfe"; uses apply-advanced; leaf all { type empty; description "Apply to all pfe"; } } // container pfe } // grouping chassis_fru_cmerror_override_type grouping chassis_pem_type { uses apply-advanced; leaf minimum { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Minimum number of power supplies required for normal operation"; } leaf feeds { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "4 .. 6"; } } description "Number of input feeds required"; } leaf input-current { type enumeration { enum "40" { junos:must "((!("chassis pem feeds") || "chassis pem feeds 6"))"; junos:must-message "Must configured with 6 feeds"; value 0; description "40 Amps in each Feed"; } enum "60" { value 1; description "60 Amps in each Feed"; } } default "60"; description "Input current (Amps) in each feed "; } } // grouping chassis_pem_type grouping chassis_pfe_type { description "PFE(Packet forwarding engine)"; leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "PFE(Packet forwarding engine) identifier"; } uses apply-advanced; container forwarding-packages { description "Associated forwarding package configuration"; uses apply-advanced; container mobility { description "Mobility related PFE configuration"; uses apply-advanced; choice package-type { leaf user-plane { type empty; description "User plane function"; } } // choice package-type } // container mobility } // container forwarding-packages container exception-reporting { description "Enable reporting of exceptions in the forwarding path"; uses apply-advanced; list category { key "name"; ordered-by user; description "Exception category type"; leaf name { type enumeration { enum "layer3" { value 0; description "Layer 3 exceptions"; } enum "layer2" { value 1; description "Layer 2 exceptions"; } enum "firewall" { value 2; description "Firewall exceptions"; } enum "forwarding-state" { value 3; description "Forwarding state related exceptions"; } enum "packet-errors" { value 4; description "Packet format error related exceptions"; } } } uses apply-advanced; leaf inline-monitoring-instance { junos:must "("services inline-monitoring instance $$")"; junos:must-message "Configure 'inline-monitoring instance'"; type string { length "1 .. 64"; } description "Inline monitoring to specified instance"; } } // list category } // container exception-reporting leaf power { type enumeration { enum "off" { value 0; description "Power off PFE"; } enum "on" { value 1; description "Power on PFE"; } } description "Power PFEs on or off"; } leaf tunnel-services { type empty; description "Tunnel services configuration"; } } // grouping chassis_pfe_type grouping chassis_pic_type { leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "PIC slot number"; } uses apply-advanced; leaf pic-mode { type enumeration { enum "1G" { value 0; description "1GE mode"; } enum "10G" { value 1; description "10GE mode"; } enum "25G" { value 2; description "25GE mode"; } enum "40G" { value 3; description "40GE mode"; } enum "50G" { value 4; description "50GE mode"; } enum "100G" { value 5; description "100GE mode"; } enum "400G" { value 6; description "400GE mode"; } } description "PIC mode configuration"; } list tunnel-port { key "name"; description "Tunnel port number"; uses chassis_port_type; } // list tunnel-port container tunnel-services { junos:must "(!(".. traffic-manager single-stream"))"; junos:must-message "Cannot configure tunnel-services if single-stream is configured"; presence "enable tunnel-services"; description "Tunnel services configuration"; uses apply-advanced; leaf bandwidth { type string; description "Amount of bandwidth reserved for tunnel service"; } leaf tunnel-only { type empty; description "Support only tunnel traffic"; } container priority { junos:must "(!(".. bandwidth"))"; junos:must-message "Priorities cannot be configured if bandwidth is specified under the tunnel-services hierarchy"; presence "enable priority"; description "Specify bandwidths with priorities"; uses apply-advanced; container high { presence "enable high"; description "High Priority"; uses apply-advanced; leaf bandwidth { type string; description "Amount of bandwidth reserved for tunnel service"; } } // container high container medium { presence "enable medium"; description "Medium Priority"; uses apply-advanced; leaf bandwidth { type string; description "Amount of bandwidth reserved for tunnel service"; } } // container medium container low { presence "enable low"; description "Low Priority"; uses apply-advanced; leaf bandwidth { type string; description "Amount of bandwidth reserved for tunnel service"; } } // container low } // container priority leaf port { type union { type uint32; type string { pattern "<.*>|$.*"; } } description "Front panel port number - ACX5048: [16-53], ACX5096: [64-95, 100-103]"; } list tunnel-port { key "name"; ordered-by user; description "Tunnel port number"; leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Port number"; } uses apply-advanced; leaf bandwidth { type string; description "Amount of bandwidth reserved for tunnel service"; } } // list tunnel-port } // container tunnel-services leaf interface-type { type enumeration { enum "ge" { value 0; description "Prefix interfaces as ge"; } enum "xe" { value 1; description "Prefix interfaces as xe"; } enum "et" { value 2; description "Prefix interfaces as et"; } } description "Interface prefix"; } container inline-services { presence "enable inline-services"; description "Inline services configuration"; uses apply-advanced; leaf bandwidth { type string; description "Amount of bandwidth reserved for inline service"; } leaf fragmentation-mtu { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "250 .. 9000"; } } default "1500"; description "Set the fragmentation MTU size"; } leaf reassembly-context-age { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "5 .. 80"; } } default "25"; description "Set the re-assembly context age millisecond timeout"; } container service-plane-recovery { description "Service plane recovery configuration"; uses apply-advanced; leaf disable { type empty; } leaf downtime-gap-seconds { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "30 .. 86400"; } } default "180"; description "Gap between successive downtime events for recovery"; } leaf downtime-events { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 100"; } } default "3"; description "Number of downtime events after which recovery is disabled"; } } // container service-plane-recovery } // container inline-services choice adaptive-or-monitoring { container adaptive-services { description "Adaptive services configuration"; uses apply-advanced; container service-package { description "AS PIC service package"; uses apply-advanced; choice service-package-choice { leaf layer-3 { type empty; description "Layer 3 service package"; } leaf layer-2 { type empty; description "Layer 2 service package"; } leaf layer-2-3 { type empty; description "Combined Layer 2 and Layer 3 service package"; } container extension-provider { description "Extension provider package configuration"; uses apply-advanced; leaf data-pollers { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 7"; } } default "0"; description "Number of cpus dedicated to poll data packets"; } container data-flow-affinity { presence "enable data-flow-affinity"; description "Enable flow affinity on data cores"; uses apply-advanced; leaf hash-key { type enumeration { enum "layer-3" { value 0; description "Set layer-3 as hash key"; } enum "layer-4" { value 1; description "Set layer-4 as hash key (default)"; } } } } // container data-flow-affinity leaf session-offload { type empty; description "Enable session offload"; } leaf no-default-packages { type empty; description "Do not load default packages"; } list package { key "name"; max-elements 33; ordered-by user; description "Extension provider package to run on the PIC"; leaf name { type string; description "Name of package"; } uses apply-advanced; } // list package list syslog { key "name"; ordered-by user; description "System logging facility"; leaf name { type enumeration { enum "external" { value 0; description "Local external applications"; } enum "pfe" { value 1; description "Packet Forwarding Engine"; } enum "daemon" { value 2; description "Various system processes"; } enum "kernel" { value 3; description "Kernel"; } } description "Facility type"; } uses apply-advanced; choice level { leaf any { type empty; description "All levels"; } leaf emergency { type empty; description "Panic conditions"; } leaf alert { type empty; description "Conditions that should be corrected immediately"; } leaf critical { type empty; description "Critical conditions"; } leaf error { type empty; description "Error conditions"; } leaf warning { type empty; description "Warning messages"; } leaf notice { type empty; description "Conditions that should be handled specially"; } leaf info { type empty; description "Informational messages"; } leaf none { type empty; description "No messages"; } } // choice level leaf destination { type enumeration { enum "routing-engine" { value 0; description "Forward log messages to RE"; } enum "pic-console" { value 1; description "Forward to PIC console"; } } description "Sylog destination"; } } // list syslog } // container extension-provider } // choice service-package-choice } // container service-package } // container adaptive-services container monitoring-services { description "Monitoring services configuration"; uses apply-advanced; leaf application { type enumeration { enum "dynamic-flow-capture" { value 0; description "Dynamic flow capture mode"; } enum "flow-collector" { value 1; description "Flow collector mode"; } enum "monitor" { value 2; description "Monitor mode"; } } description "Application mode"; } } // container monitoring-services } // choice adaptive-or-monitoring leaf no-mcast-replication { type empty; description "No mcast replication"; } container ggsn-services { status deprecated; description "GGSN services configuration"; uses apply-advanced; leaf application { type enumeration { enum "ggsn-data" { value 0; description "GGSN-U mode"; } enum "ggsn-inspection" { value 1; description "GGSN-I mode"; } enum "ggsn-tunnel" { value 2; description "GGSN-T mode"; } } description "Application mode"; } } // container ggsn-services leaf framing { type enumeration { enum "sonet" { value 0; description "SONET mode"; } enum "sdh" { value 1; description "SDH mode"; } enum "t3" { value 2; description "T3 mode"; } enum "e3" { value 3; description "E3 mode"; } enum "t1" { value 4; description "T1 mode"; } enum "e1" { value 5; description "E1 mode"; } enum "lan" { value 6; description "LAN mode"; } } description "Framing mode"; } container synchronization { description "PIC synchronization source"; uses apply-advanced; choice source { leaf port { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 11"; } } description "Port Number"; } } // choice source } // container synchronization container recovered-clock { description "Select recovered clock for this port"; uses apply-advanced; leaf port { junos:must "(unique "chassis fpc ${fpc} pic <*> recovered-clock")"; junos:must-message "Recovered-clock can be configured only on single pic/port"; type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 47"; } } description "Port Number"; } leaf channel { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 3"; } } description "Channel Number"; } } // container recovered-clock leaf vtmapping { type enumeration { enum "klm" { value 0; description "KLM mode"; } enum "itu-t" { value 1; description "ITU-T mode"; } } description "Virtual tunnel mapping mode"; } leaf no-concatenate { type empty; description "Do not concatenate channels"; } leaf no-multi-rate { type empty; description "Disable multi-rate mode"; } leaf channelization { type empty; description "Enable Channelization"; } leaf linerate-mode { junos:must "(!(".. .. pic ${pic} mixed-rate-mode"))"; junos:must-message "linerate-mode can't be set if mixed-rate-mode is set for PIC"; type empty; description "Disable oversubscription. PIC operates in line rate mode"; } leaf speed { type enumeration { enum "1G" { value 0; description "1GE-Gigabit Ethernet"; } } description "Port speed"; } leaf mixed-rate-mode { junos:must "(!(".. .. pic ${pic} linerate-mode"))"; junos:must-message "mixed-rate-mode can't be set if linerate-mode is set for PIC"; type empty; description "PIC operates in mixed-rate-mode. Speed and AE configurable for PIC Ports"; } leaf no-pre-classifier { type empty; description "No pre-classification of packets"; } leaf aggregate-ports { type empty; description "Aggregate multiple ports on a PIC as a single port"; } leaf number-of-ports { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Number of physical ports to enable on PIC"; } leaf power { type enumeration { enum "off" { value 0; description "Do not provide power to PIC"; } } description "Power off PIC"; } leaf pic-type { type string { junos:posix-pattern "^([.]?1|[a-zA-Z][a-zA-Z0-9]*)([.]([a-zA-Z]|[0-9]+))*$"; junos:pattern-message "Must be an OID of the form 1.x.y.z... or objname[.x.y.z] where x, y, & z are either numbers or a single letter"; } description "OID of PIC type to be configured"; } container aggregated-devices { description "Aggregated devices configuration"; uses apply-advanced; container ima { description "Aggregated device options for Inverse Multiplexing for ATM"; uses apply-advanced; leaf device-count { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 42"; } } description "Number of IMA groups"; } } // container ima } // container aggregated-devices leaf sparse-dlcis { type empty; description "Run in sparse data-link connection identifier mode"; } leaf multi-link-layer-2-inline { type empty; description "Enable inline layer-2 services"; } container q-pic-large-buffer { presence "enable q-pic-large-buffer"; description "Run in large delay buffer mode"; uses apply-advanced; choice buffer-type { leaf small-scale { type empty; description "Supports less number of interfaces"; } leaf large-scale { type empty; description "Supports large number of interfaces"; } } // choice buffer-type } // container q-pic-large-buffer container red-buffer-occupancy { description "Computation type for RED buffer occupancy"; uses apply-advanced; container weighted-averaged { presence "enable weighted-averaged"; description "Weighted-average computation"; uses apply-advanced; leaf instant-usage-weight-exponent { type union { type uint8; type string { pattern "<.*>|$.*"; } } description "Weight for instant buffer usage (negative exponent of 2)"; } } // container weighted-averaged } // container red-buffer-occupancy container traffic-manager { description "Configure traffic manager attributes"; uses apply-advanced; leaf ingress-shaping-overhead { type union { type string { pattern "<.*>|$.*"; } type int32 { range "-62 .. 192"; } } units "bytes"; description "Number of CoS shaping overhead bytes in ingress"; } leaf egress-shaping-overhead { type union { type string { pattern "<.*>|$.*"; } type int32 { range "-62 .. 192"; } } units "bytes"; description "Number of CoS shaping overhead bytes in egress"; } leaf queue-buffer-size { type enumeration { enum "small" { value 0; description "Use small buffer size"; } } description "Set the buffer size of output queue"; } leaf mode { type enumeration { enum "egress-only" { value 0; description "Egress traffic manager enabled, ingress traffic manager disabled"; } enum "session-shaping" { value 1; description "Enable egress session shaping"; } enum "ingress-and-egress" { value 2; description "Enable the ingress and egress traffic managers"; } } description "Configure traffic manager mode"; } } // container traffic-manager container idle-cell-format { description "ATM idle cell configuration"; uses apply-advanced; leaf itu-t { type empty; description "ITU-T idle cell header format"; } leaf payload-pattern { type string; description "Payload pattern byte (0x00-0xff)"; } } // container idle-cell-format container atm-l2circuit-mode { description "Enable ATM Layer 2 circuit transport mode"; uses apply-advanced; choice mode_choice { leaf aal5 { type empty; description "ATM Layer 2 circuit AAL5 mode"; } leaf cell { type empty; description "ATM Layer 2 circuit cell mode"; } container trunk { presence "enable trunk"; description "Set ATM Layer 2 circuit trunk mode"; uses apply-advanced; choice trunk-mode { container uni { presence "enable uni"; description "ATM Layer 2 circuit user-to-network interface trunk mode"; uses apply-advanced; } // container uni container nni { presence "enable nni"; description "ATM Layer 2 circuit network-to-network interface trunk mode"; uses apply-advanced; } // container nni } // choice trunk-mode } // container trunk } // choice mode_choice } // container atm-l2circuit-mode leaf atm-cell-relay-accumulation { type empty; description "Enable ATM cell-relay accumulation mode"; } container services-offload { presence "enable services-offload"; description "Enable services offload"; uses apply-advanced; leaf per-session-statistics { junos:must "(!(".. packet-copy"))"; junos:must-message "packet-copy and per-session-statistics options are mutual exclusive"; type empty; description "Keep per session statistics in NP"; } leaf low-latency { type empty; description "Bypass Traffic Management stage to achieve low latency"; } } // container services-offload leaf mlfr-uni-nni-bundles { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 255"; } } description "Number of multilink Frame Relay UNI NNI (FRF.16) bundles to allocate on PIC"; } leaf mlfr-uni-nni-bundles-inline { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 255"; } } description "Number of inline multilink frame relay UNI NNI bundles"; } container ct3 { description "CT3 NxDS0 PIC configuration"; uses apply-advanced; list port { key "name"; description "CT3 port"; uses ct3_port_type; } // list port } // container ct3 container ce1 { description "CE1 NxDS0 PIC configuration"; uses apply-advanced; list e1 { key "name"; description "E1 link"; uses ce1_channel_type; } // list e1 } // container ce1 leaf max-queues-per-interface { type enumeration { enum "4" { value 0; description "Maximum 4 queues per interface"; } enum "8" { value 1; description "Maximum 8 queues per interface"; } } description "Maximum number of queues per interface on QOS-capable PIC"; } container shdsl { description "SHDSL chassis configuration"; uses apply-advanced; leaf pic-mode { type enumeration { enum "1-port-atm" { value 0; description "Single port ATM, 8 wire mode"; } enum "2-port-atm" { value 1; description "Two port ATM, 4 wire mode"; } enum "4-port-atm" { value 2; description "Four port ATM, 2 wire mode"; } enum "efm" { value 3; description "Single port EFM, 2 wire mode"; } } default "2-port-atm"; description "PIC mode"; } } // container shdsl container ethernet { description "J-series Ethernet PIM mode configuration"; uses apply-advanced; leaf pic-mode { type enumeration { enum "switching" { value 0; description "Switched mode of operation"; } enum "routing" { value 1; description "Routing mode of operation"; } enum "enhanced-switching" { junos:must "(unique "chassis fpc <*> pic <*> ethernet pic-mode enhanced-switching")"; junos:must-message "Enhanced-switching can be configured only on single PIM"; value 2; description "Enhanced switching mode of operation"; } } default "routing"; description "PIC mode"; } } // container ethernet leaf tunnel-queuing { type empty; description "Enable queueing for GRE/IPIP tunnels"; } list port-mirror-instance { key "name"; max-elements 2; ordered-by user; leaf name { junos:must "(!("forwarding-options port-mirroring instance $$ input-parameters-instance"))"; junos:must-message "Derived instance cannot be binded"; junos:must "(((!("chassis network-services lan") && ("forwarding-options port-mirroring instance $$" || "forwarding-options analyzer $$")) || "chassis network-services lan"))"; junos:must-message "Referenced port-mirroring instance does not exist"; junos:must "(("forwarding-options port-mirroring instance $$" || "forwarding-options analyzer $$"))"; junos:must-message "Referenced port-mirroring/analyzer instance does not exist"; type string { length "1 .. 64"; } description "Associate a port mirroring instance with the PIC"; } uses apply-advanced; } // list port-mirror-instance list port { key "name"; description "Port number"; uses chassis_pic_port_framing; } // list port list port-range { key "port-range-low port-range-high"; ordered-by user; description "Physical ports to channelize"; leaf port-range-low { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Port range low number"; } leaf port-range-high { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Port range high number"; } uses apply-advanced; leaf short-reach-mode { type enumeration { enum "disable" { value 0; description "Disable"; } enum "enable" { value 1; description "Enable"; } } description "Short reach mode (For ports 0..47)"; } leaf channel-speed { type enumeration { enum "10g" { value 0; description "Set the port speed to 10G. This will restart PFE"; } enum "25g" { value 1; description "Set the port speed to 25G."; } enum "50g" { value 2; description "Set the port speed to 50G."; } enum "disable-auto-speed-detection" { value 3; description "Disables automatic speed detection"; } } description "Port channel speed"; } } // list port-range container fibre-channel { description "Fibre channel configuration option"; uses chassis_fibre_channel_type; } // container fibre-channel container xe { description "Ports configurable in 10G mode"; uses apply-advanced; list port { key "port-number"; ordered-by user; description "Attribute port"; leaf port-number { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Port number"; } uses apply-advanced; } // list port list port-range { key "port-range-low port-range-high"; ordered-by user; description "Attribute port range"; leaf port-range-low { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Port range low number"; } leaf port-range-high { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Port range high number"; } uses apply-advanced; } // list port-range } // container xe container xle { description "Ports configurable in 40G mode "; uses apply-advanced; list port { key "port-number"; ordered-by user; description "Attribute port"; leaf port-number { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Port number"; } uses apply-advanced; } // list port list port-range { key "port-range-low port-range-high"; ordered-by user; description "Attribute port range"; leaf port-range-low { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Port range low number"; } leaf port-range-high { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Port range high number"; } uses apply-advanced; } // list port-range } // container xle container fte { description "Ports configurable in 40G HIGIG mode"; uses apply-advanced; list port { key "port-number"; ordered-by user; description "Attribute port"; leaf port-number { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Port number"; } uses apply-advanced; } // list port list port-range { key "port-range-low port-range-high"; ordered-by user; description "Attribute port range"; leaf port-range-low { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Port range low number"; } leaf port-range-high { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Port range high number"; } uses apply-advanced; } // list port-range } // container fte list qsfp-port { key "name"; description "Qsfp port to configure"; leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 1"; } } description "Port-group 0:'0-3' 1:'4-7'"; } uses apply-advanced; leaf port-mode { type enumeration { enum "40g" { value 0; description "40G mode"; } enum "10g" { value 1; description "10G mode"; } } description "Select mode for port-group"; } } // list qsfp-port container sfpplus { description "Sfpplus configuration option"; uses apply-advanced; leaf pic-mode { type enumeration { enum "1g" { value 0; description "1G SFP mode"; } enum "10g" { value 1; description "10G SFP+ mode"; } } description "PIC mode"; } } // container sfpplus container hash-key { description "Select data used in the hash key"; uses apply-advanced; container family { description "Protocol family"; uses apply-advanced; container inet { description "IPv4 protocol family"; uses apply-advanced; container layer-3 { presence "enable layer-3"; description "Include Layer 3 (IP) data in the hash key"; uses apply-advanced; leaf destination-address { type empty; description "Include IP destination address in the hash key"; } } // container layer-3 container layer-4 { presence "enable layer-4"; description "Include Layer 4 (TCP or UDP) data in the hash key"; uses apply-advanced; } // container layer-4 container symmetric-hash { junos:must "((".. layer-3" || ".. layer-4"))"; junos:must-message "layer-3 and/or layer-4 to be configured for symmetric/complement Hash"; presence "enable symmetric-hash"; description "Create symmetric hash-key with source & dest ports"; uses apply-advanced; leaf complement { type empty; description "Create complement of symmetric hash-key"; } } // container symmetric-hash } // container inet container multiservice { description "Multiservice protocol family"; uses apply-advanced; leaf source-mac { type empty; description "Include source MAC address in hash key"; } leaf destination-mac { type empty; description "Include destination MAC address in hash key"; } container payload { description "Include payload data in the hash key"; uses apply-advanced; container ip { description "Include IPv4 payload data in the hash key"; uses apply-advanced; container layer-3 { presence "enable layer-3"; description "Include layer-3 ip info for VPLS/Bridge"; uses apply-advanced; choice layer-3-options { leaf source-ip-only { type empty; description "Include source IP only in hash-key"; } leaf destination-ip-only { type empty; description "Include desintation IP only in hash-key"; } } // choice layer-3-options } // container layer-3 leaf layer-4 { type empty; description "Include layer-4 IP information for VPLS/Bridge"; } } // container ip } // container payload container symmetric-hash { junos:must "((".. payload" || (".. source-mac" || ".. destination-mac")))"; junos:must-message "Payload and/or source-MAC and/or destination-MAC to be configured for symmetric/complement Hash"; presence "enable symmetric-hash"; description "Create a/symmetric hash-key with any attributes"; uses apply-advanced; leaf complement { type empty; description "Create complement of symmetric hash-key"; } } // container symmetric-hash } // container multiservice } // container family } // container hash-key leaf ingress-policer-overhead { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 255"; } } units "bytes"; description "Number of policer overhead bytes in ingress"; } leaf egress-policer-overhead { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 255"; } } units "bytes"; description "Number of policer overhead bytes in egress"; } leaf account-layer2-overhead { type empty; description "Account Layer2 overhead in egress and ingress IFD/IFL stats"; } container forwarding-mode { description "Set 100GE PIC packet distribution mode"; uses apply-advanced; choice cap-fpga-packet-distribution-mode { leaf sa-multicast { type empty; description "Used for Juniper CGE to Juniper 100GE PIC back to back connection"; } container vlan-steering { presence "enable vlan-steering"; description "Steer packet by VLAN id, interoperate with other vendors"; uses apply-advanced; leaf vlan-rule { type enumeration { enum "odd-even" { value 0; description "Even number VLAN id processed by PFE0; odd number by PFE1"; } enum "high-low" { value 1; description "VLAN 1~2047 processed by PFE0; others by PFE1"; } } description "Set 100GE PIC forwarding VLAN rule"; } } // container vlan-steering } // choice cap-fpga-packet-distribution-mode } // container forwarding-mode leaf subscriber-aware-services { type empty; description "Enable subscriber aware services"; } leaf ptp-mode { type empty; description "Set hardware to run PTP BC applications."; } } // grouping chassis_pic_type grouping ce1_channel_type { leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 9"; } } description "E1 link number"; } uses apply-advanced; list channel-group { key "name"; description "Define channel group"; leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 23"; } } description "Channel group number"; } leaf timeslots { type string; description "DS0 timeslots (1..31); for example, 1-3,4,9,22-24 (no spaces)"; } } // list channel-group } // grouping ce1_channel_type grouping chassis_fibre_channel_type { description "Fibre channel configuration option"; uses apply-advanced; list port { key "name"; ordered-by user; description "Fibre channel port"; leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 47"; } } description "Port number for fibre channel mode"; } uses apply-advanced; } // list port list port-range { key "port-range-low port-range-high"; ordered-by user; description "Fibre channel port range"; leaf port-range-low { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 47"; } } description "Port range low number"; } leaf port-range-high { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 47"; } } description "Port range high number"; } uses apply-advanced; } // list port-range } // grouping chassis_fibre_channel_type grouping chassis_pic_port_framing { leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Port number"; } uses apply-advanced; leaf short-reach-mode { type enumeration { enum "disable" { value 0; description "Disable"; } enum "enable" { value 1; description "Enable"; } } description "Short reach mode (For ports 0...47)"; } leaf framing { type enumeration { enum "sonet" { value 0; description "SONET mode"; } enum "sdh" { value 1; description "SDH mode"; } enum "t3" { value 2; description "T3 mode"; } enum "e3" { value 3; description "E3 mode"; } enum "t1" { value 4; description "T1 mode"; } enum "e1" { value 5; description "E1 mode"; } } description "Framing mode"; } leaf number-of-sub-ports { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Number of subports per physical port"; } leaf unused { type empty; description "Keep the port unused."; } leaf speed { junos:must "(!((".. .. pic-mode" || ".. .. number-of-ports")))"; junos:must-message " speed config can neither co-exist with pic <> number-of-ports <> nor pic <> pic-mode config"; type enumeration { enum "oc3-stm1" { value 0; description "OC3 or STM1"; } enum "oc12-stm4" { value 1; description "OC12 or STM4"; } enum "oc48-stm16" { value 2; description "OC48 or STM16"; } enum "1G" { value 3; description "1GE-Gigabit Ethernet"; } enum "10g" { value 4; description "Sets the interface mode to 10Gbps"; } enum "25g" { value 5; description "Sets the interface mode to 25Gbps"; } enum "40g" { value 6; description "Sets the interface mode to 40Gbps"; } enum "100g" { value 7; description "Sets the interface mode to 100Gbps"; } enum "50g" { value 8; description "Sets the interface mode to 50Gbps"; } enum "200g" { value 9; description "Sets the interface mode to 200 Gbps"; } enum "400g" { value 10; description "Sets the interface mode to 400Gbps"; } } description "Port speed"; } leaf channel-speed { type enumeration { enum "10g" { value 0; description "Set the port speed to 10G. This will restart PFE on some platforms."; } enum "25g" { value 1; description "Set the port speed to 25G."; } enum "50g" { value 2; description "Set the port speed to 50G."; } enum "disable-auto-speed-detection" { value 3; description "Disables automatic speed detection"; } } description "Port channel speed"; } container forwarding-mode { description "PIC packet distribution mode - Brooklyn interop mode"; uses apply-advanced; leaf sa-multicast { type empty; description "SA multicast mode - interop with 100G Brooklyn PIC"; } } // container forwarding-mode leaf no-mcast-replication { type empty; description "No multicast replication"; } container traffic-manager { description "Configure per port traffic manager mode"; uses apply-advanced; leaf mode { type enumeration { enum "ingress-and-egress" { value 0; description "Enable the ingress and egress traffic managers"; } } description "Configure port traffic manager mode as ingress-and-egress"; } } // container traffic-manager } // grouping chassis_pic_port_framing grouping chassis_port_type { leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 47"; } } description "Port number for tunnel services"; } uses apply-advanced; leaf tunnel-services { type empty; description "Tunnel services configuration"; } } // grouping chassis_port_type grouping chassis_redundancy_type { uses apply-advanced; list routing-engine { key "name"; description "Redundancy options for Routing Engines"; uses chassis_rdd_re_type; } // list routing-engine list ssb { key "name"; description "Redundancy options for System Switch Boards"; uses chassis_rdd_id_type; } // list ssb list cfeb { key "name"; description "Redundancy options for Compact Forwarding Engine Boards"; uses chassis_rdd_cfeb_id_type; } // list cfeb list sfm { key "name"; description "Redundancy options for Switching and Forwarding Modules"; uses chassis_rdd_sfm_id_type; } // list sfm container failover { description "Failover to other Routing Engine"; uses chassis_rdd_failover_type; } // container failover leaf keepalive-time { junos:must "(!("chassis redundancy graceful-switchover"))"; junos:must-message "Graceful switchover configured, cannot change the default keepalive interval"; type union { type string { pattern "<.*>|$.*"; } type uint32 { range "2 .. 10000"; } } units "seconds"; description "Time before Routing Engine failover"; } leaf mastership-refresh-timeout { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "9 .. 30"; } } units "seconds"; description "Mastership refresh timeout"; } container graceful-switchover { junos:must "(!((any "chassis fpc <*> pic <*> monitoring-services application" && "chassis redundancy graceful-switchover")))"; junos:must-message "Graceful Switchover is not supported on monitoring-services application"; presence "enable graceful-switchover"; description "Enable graceful switchover on supported hardware"; uses chassis_non_stop_forwarding_type; } // container graceful-switchover container feb { description "Forwarding Engine Board redundancy configuration"; uses apply-advanced; list redundancy-group { key "name"; leaf name { type string; description "Name of FEB redundancy group"; } uses apply-advanced; leaf description { type string; description "Text description of FEB redundancy group"; } list feb { key "name"; description "Redundancy settings for a Forwarding Engine Board"; leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Slot number"; } uses apply-advanced; choice redundancy-option { leaf primary { type empty; description "FEB is default master in the redundancy group"; } leaf backup { type empty; description "FEB is backup in the redundancy group"; } } // choice redundancy-option } // list feb leaf no-auto-failover { type empty; description "Disable automatic FEB failover"; } } // list redundancy-group } // container feb } // grouping chassis_redundancy_type grouping chassis_non_stop_forwarding_type { junos:must "((!("system inet6-backup-router") || "system inet6-backup-router destination"))"; junos:must-message "Please define destination subnet with the inet6-backup-router configuration"; junos:must "((!("system backup-router") || "system backup-router destination"))"; junos:must-message "Please define destination subnet with the backup-router configuration"; uses apply-advanced; container traceoptions { status deprecated; description "Graceful switchover trace options"; uses apply-advanced; list flag { key "name"; ordered-by user; description "Tracing parameters"; leaf name { type enumeration { enum "update" { value 0; description "Trace state updates"; } enum "all" { value 1; description "Trace everything"; } } } } // list flag } // container traceoptions } // grouping chassis_non_stop_forwarding_type grouping chassis_rdd_cfeb_id_type { leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 1"; } } description "CFEB slot number"; } choice priority { leaf always { type empty; description "Sole device"; } leaf preferred { type empty; description "Preferred device"; } } // choice priority } // grouping chassis_rdd_cfeb_id_type grouping chassis_rdd_failover_type { uses apply-advanced; leaf disable { type empty; description "Disable better RE evaluation algorithm"; } container category { presence "enable category"; description "Failover category"; uses chassis_rdd_fail_cat_type; } // container category leaf on-loss-of-keepalives { type empty; description "Failover on loss of keepalives"; } leaf on-re-to-fpc-stale { type empty; description "Failover on loss of communication between the re and fpc"; } leaf on-disk-failure { junos:must "(("chassis redundancy failover on-loss-of-keepalives" || "chassis redundancy graceful-switchover"))"; junos:must-message "Option on-loss-of-keepalives or graceful-switchover must be set"; type empty; description "Failover on disk failure"; } leaf not-on-disk-underperform { type empty; description "Prevent gstatd from initiating failovers in response to slow disks"; } leaf disk-read-threshold { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1000 .. 10000"; } } description "Read threshold (ms) on disk underperform monitoring"; } leaf disk-write-threshold { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1000 .. 10000"; } } description "Write threshold (ms) on disk underperform monitoring"; } leaf on-loss-of-vm-host-connection { type empty; description "Failover on loss of vm host connection"; } } // grouping chassis_rdd_failover_type grouping chassis_rdd_fail_cat_type { uses apply-advanced; container component-failure { presence "enable component-failure"; description "Failover due to component failure"; uses chassis_rdd_fail_cat_sev_type; } // container component-failure container software-failure { presence "enable software-failure"; description "Failover due to software failure"; uses chassis_rdd_fail_cat_sev_type; } // container software-failure container power-failure { presence "enable power-failure"; description "Failover due to power failure"; uses chassis_rdd_fail_cat_sev_type; } // container power-failure container clock-failure { presence "enable clock-failure"; description "Failover due to clock failure"; uses chassis_rdd_fail_cat_sev_type; } // container clock-failure container link-failure { presence "enable link-failure"; description "Failover due to link failure"; uses chassis_rdd_fail_cat_sev_type; } // container link-failure container degraded-health { presence "enable degraded-health"; description "Failover due to degraded health"; uses chassis_rdd_fail_cat_sev_type; } // container degraded-health } // grouping chassis_rdd_fail_cat_type grouping chassis_rdd_fail_cat_sev_type { uses apply-advanced; container critical { presence "enable critical"; description "Critical severity"; uses chassis_rdd_fail_cat_sev_act_type; } // container critical container important { presence "enable important"; description "Important severity"; uses chassis_rdd_fail_cat_sev_act_type; } // container important } // grouping chassis_rdd_fail_cat_sev_type grouping chassis_rdd_fail_cat_sev_act_type { uses apply-advanced; leaf disable { type empty; description "Disable action"; } } // grouping chassis_rdd_fail_cat_sev_act_type grouping chassis_rdd_id_type { leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 1"; } } description "SSB slot number"; } choice priority { leaf always { type empty; description "Sole device"; } leaf preferred { type empty; description "Preferred device"; } } // choice priority } // grouping chassis_rdd_id_type grouping chassis_rdd_re_type { leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 1"; } } description "Routing Engine slot number"; } choice priority { leaf master { type empty; description "Master Routing Engine"; } leaf backup { type empty; description "Backup Routing Engine"; } leaf disabled { type empty; description "Routing Engine disabled"; } } // choice priority } // grouping chassis_rdd_re_type grouping chassis_rdd_sfm_id_type { leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "SFM slot number"; } choice priority { leaf always { type empty; description "Sole device"; } leaf preferred { type empty; description "Preferred device"; } } // choice priority } // grouping chassis_rdd_sfm_id_type grouping chassis_routing_engine_type { uses apply-advanced; container on-disk-failure { description "Action to take when Routing Engine disk fails"; uses chassis_re_on_disk_failure; } // container on-disk-failure container control-interface { presence "enable control-interface"; description "Configure recovery method and pause frame for control interface"; uses apply-advanced; leaf recovery-method { type enumeration { enum "disable-recovery" { value 0; description "Don't enable recovery"; } enum "socket" { value 1; description "Recovery by using socket"; } enum "counter" { value 2; description "Recovery by using BCM-Counters"; } } description "Select the recovery method"; } leaf pause-frame { type empty; description "Enable or disable Pause frame generation"; } } // container control-interface container bios { description "Routing Engine BIOS"; uses apply-advanced; leaf no-auto-upgrade { type empty; description "Disable routing-engine BIOS auto-upgrade"; } leaf uninterrupt { type empty; description "Set routing-engine BIOS uninterruptable"; } } // container bios container disk { description "Action to take for Routing Engine disk"; uses apply-advanced; leaf write-threshold-rate { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 20"; } } units "MBPS"; default "4"; description "Write threshold rate"; } leaf write-threshold-duration { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "300 .. 2592000"; } } units "seconds"; default "1000"; description "Write threshold duration"; } leaf smart-check { type empty; description "Enable smart check command to disk"; } list ssd-series { key "name"; ordered-by user; description "Specify the ssd vendor series"; leaf name { type string { length "1 .. 40"; } description "SSD series name"; } uses apply-advanced; list id { key "name"; max-elements 30; ordered-by user; description "Attribute ids to monitor of this series type"; leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 255"; } } description "SSD smart attribute id"; } uses apply-advanced; leaf id-threshold { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 4294967295"; } } description "SSD smart attribute threshold"; } leaf id-value { type enumeration { enum "raw" { value 0; description "Raw value to be used for this smart id"; } enum "norm" { value 1; description "Normalised value to be used for this smart id"; } } description "SSD attribute value"; } leaf id-flag { type enumeration { enum "low" { value 0; description "Check if value is less than smart threshold"; } enum "high" { value 1; description "Check if value is greater than smart threshold"; } } description "SSD attribute flag"; } } // list id } // list ssd-series } // container disk container usb-wwan { description "Enable WWAN (3G) access on the USB port"; uses apply-advanced; leaf port { type enumeration { enum "0" { value 0; description "Select port 0 to enable WWAN access"; } enum "1" { value 1; description "Select port 1 to enable WWAN access"; } } description "Select the port"; } } // container usb-wwan } // grouping chassis_routing_engine_type grouping chassis_re_on_disk_failure { choice reboot_or_halt { leaf reboot { type empty; status deprecated; description "Reboot on disk failure"; } leaf disk-failure-action { type enumeration { enum "reboot" { value 0; description "Reboot on disk failure"; } enum "halt" { value 1; description "Halt on disk failure"; } } } } // choice reboot_or_halt leaf failover { type empty; description "Redundancy group 0 failover on disk failure"; } } // grouping chassis_re_on_disk_failure grouping chassis_sfm_type { leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "SFM slot number"; } uses apply-advanced; choice cache { } // choice cache leaf power { type enumeration { enum "off" { value 0; description "Do not provide power to SFMs"; } enum "on" { value 1; description "Provide power to SFMs"; } } description "Power SFMs on or off"; } choice mode { leaf disable-power { type empty; status deprecated; description "Do not enable power to the card"; } } // choice mode } // grouping chassis_sfm_type grouping chassis_sib_type { uses apply-advanced; list slot { key "name"; description "SIB slot number"; leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "SIB slot number"; } uses apply-advanced; container error { description "Error level configuration for SIB"; uses chassis_sib_error_type; } // container error } // list slot leaf minimum { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "2 .. 4"; } } description "Minimum number of Switch Interface Boards required for normal operation"; } container power-off { description "Power off the SIB slot"; uses apply-advanced; list slot { key "name"; ordered-by user; description "SIB slot number to be powered off"; leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "SIB slot number to be offlined"; } uses apply-advanced; } // list slot } // container power-off } // grouping chassis_sib_type grouping chassis_sib_error_type { description "Chassis SIB Error level"; uses apply-advanced; container fatal { description "SIB Fatal errors (default threshold = 1)"; uses chassis_sib_error_level_major_fatal; } // container fatal container major { description "SIB Major Level errors (default threshold = 1)"; uses chassis_sib_error_level_major_fatal; } // container major container minor { description "SIB Minor Level errors (default threshold = 10)"; uses chassis_sib_error_level_minor; } // container minor container scope { description "Error scope"; uses chassis_sib_scope_type; } // container scope } // grouping chassis_sib_error_type grouping chassis_sib_error_level_major_fatal { uses apply-advanced; leaf threshold { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 1024"; } } description "Error count at which to take the action"; } list action { key "name"; ordered-by user; description "Configure the action for this level"; leaf name { type enumeration { enum "reset" { junos:must "(!(".. .. action offline"))"; junos:must-message "'reset' and 'offline' cannot be both configured"; value 0; description "Reset SIB"; } enum "offline" { junos:must "(!(".. .. action reset"))"; junos:must-message "'offline' and 'reset' cannot be both configured"; value 1; description "Offline SIB"; } enum "alarm" { value 2; description "Raise SIB alarm"; } enum "get-state" { value 3; description "Retreive SIB state for debugging"; } enum "log" { value 4; description "Log occurence to system log file"; } } } uses apply-advanced; } // list action } // grouping chassis_sib_error_level_major_fatal grouping chassis_sib_error_level_minor { uses apply-advanced; leaf threshold { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 1024"; } } description "Error count at which to take the action"; } list action { key "name"; ordered-by user; description "Configure the action for this level"; leaf name { type enumeration { enum "reset" { junos:must "(!(".. .. action offline"))"; junos:must-message "'reset' and 'offline' cannot be both configured"; value 0; description "Reset SIB"; } enum "offline" { junos:must "(!(".. .. action reset"))"; junos:must-message "'offline' and 'reset' cannot be both configured"; value 1; description "Offline SIB"; } enum "alarm" { value 2; description "Raise SIB alarm"; } enum "get-state" { value 3; description "Retreive SIB state for debugging"; } enum "log" { value 4; description "Log occurence to system log file"; } } } uses apply-advanced; } // list action } // grouping chassis_sib_error_level_minor grouping chassis_sib_scope_type { description "Chassis SIB Error Scope"; uses apply-advanced; container board { description "Board level scope"; uses chassis_sib_scope_category; } // container board container switch { description "SIB scope "; uses chassis_sib_scope_category; } // container switch } // grouping chassis_sib_scope_type grouping chassis_sib_scope_category { description "Chassis SIB Error Category"; uses apply-advanced; container category { description "SIB error category"; uses chassis_sib_scope_category_type; } // container category } // grouping chassis_sib_scope_category grouping chassis_sib_scope_category_type { description "Chassis SIB Category level"; uses apply-advanced; container functional { description "SIB functional category"; uses chassis_sib_scope_category_error_type; } // container functional container memory { description "SIB memory category"; uses chassis_sib_scope_category_error_type; } // container memory container io { description "SIB input-output category"; uses chassis_sib_scope_category_error_type; } // container io container storage { description "SIB storage category"; uses chassis_sib_scope_category_error_type; } // container storage container switch { description "SIB switch category"; uses chassis_sib_scope_category_error_type; } // container switch container processing { description "SIB processing category"; uses chassis_sib_scope_category_error_type; } // container processing } // grouping chassis_sib_scope_category_type grouping chassis_sib_scope_category_error_type { description "Chassis SIB Error level"; uses apply-advanced; container fatal { description "SIB Fatal errors (default threshold = 1)"; uses chassis_sib_error_level_type; } // container fatal container major { description "SIB Major Level errors (default threshold = 1)"; uses chassis_sib_error_level_type; } // container major container minor { description "SIB Minor Level errors (default threshold = 10)"; uses chassis_sib_error_level_type; } // container minor } // grouping chassis_sib_scope_category_error_type grouping chassis_sib_error_level_type { uses apply-advanced; leaf threshold { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 1024"; } } description "Error count at which to take the action (0 - valid for minor only)"; } list action { key "name"; ordered-by user; description "Configure the action for this level"; leaf name { type enumeration { enum "reset" { junos:must "(!(".. .. action offline"))"; junos:must-message "'reset' and 'offline' cannot be both configured"; value 0; description "Reset device"; } enum "offline" { junos:must "(!(".. .. action reset"))"; junos:must-message "'offline' and 'reset' cannot be both configured"; value 1; description "Offline device"; } enum "alarm" { value 2; description "Raise chassis alarm"; } enum "get-state" { value 3; description "Retreive device state for debugging"; } enum "log" { value 4; description "Log occurence to system log file"; } } } uses apply-advanced; } // list action } // grouping chassis_sib_error_level_type grouping chassis_slc_type { leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 2"; } } description "SLC id"; } uses apply-advanced; leaf power { type enumeration { enum "off" { value 0; description "Do not provide power to SLC"; } enum "on" { value 1; description "Provide power to SLC"; } } description "Power SLCs on or off"; } } // grouping chassis_slc_type grouping chassisd-redundancy-group-type { uses apply-advanced; container interface-type { uses apply-advanced; container redundant-logical-tunnel { description "Redundant logical tunnel interface group"; uses apply-advanced; leaf device-count { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 255"; } } description "Number of devices"; } } // container redundant-logical-tunnel container redundant-virtual-tunnel { description "Redundant virtual tunnel interface group"; uses apply-advanced; leaf device-count { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 16"; } } description "Number of devices"; } } // container redundant-virtual-tunnel } // container interface-type } // grouping chassisd-redundancy-group-type grouping chassisd_agg_container_type { uses apply-advanced; leaf device-count { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 128"; } } description "Number of container devices"; } } // grouping chassisd_agg_container_type grouping chassisd_agg_enet_type { uses apply-advanced; leaf device-count { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Number of aggregated Ethernet devices"; } container lacp { description "Global Link Aggregation Control Protocol configuration"; uses apply-advanced; leaf system-priority { type string; description "Priority of the system (0 ... 65535)"; } container link-protection { presence "enable link-protection"; uses apply-advanced; leaf non-revertive { type empty; description "Don't revert links when better priority link comes up"; } } // container link-protection } // container lacp } // grouping chassisd_agg_enet_type grouping chassisd_agg_pos_type { uses apply-advanced; leaf device-count { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 64"; } } description "Number of aggregated SONET devices"; } } // grouping chassisd_agg_pos_type grouping chassisd_provider_instance_type { uses apply-advanced; leaf device-count { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 16"; } } description "Number of provider instance port devices"; } } // grouping chassisd_provider_instance_type grouping ct3_port_type { leaf name { type union { type string { pattern "<.*>|$.*"; } type int32 { range "0 .. 1"; } } description "CT3 L2NG_PRODUCTSport number"; } uses apply-advanced; list t1 { key "name"; description "T1 link"; uses ct3_channel_type; } // list t1 } // grouping ct3_port_type grouping ct3_channel_type { leaf name { type union { type string { pattern "<.*>|$.*"; } type int32 { range "0 .. 27"; } } description "T1 link number"; } uses apply-advanced; list channel-group { key "name"; description "Define channel group"; leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 7"; } } description "Channel group number"; } leaf timeslots { type string; description "DS0 timeslots (1..24); for example, 1-3,4,9,22-24 (no spaces)"; } } // list channel-group } // grouping ct3_channel_type grouping ip-monitoring-address-type { description "Define IP address related parameters"; leaf name { type jt:ipv4addr; description "Define IPv4 address to be monitored"; } uses apply-advanced; leaf weight { type union { type string { pattern "<.*>|$.*"; } type uint16 { range "0 .. 255"; } } description "Define weight for this IP address"; } list interface { key "name"; max-elements 1; ordered-by user; description "Logical interface through which to monitor this IP address"; leaf name { junos:must "("interfaces $$-IFL family inet")"; junos:must-message "Family inet must be defined on this logical interface"; type union { type jt:interface-name; type string { pattern "<.*>|$.*"; } } description "Logical interface name"; } uses apply-advanced; leaf secondary-ip-address { type jt:ipv4addr; description "Define source address for monitoring packets on secondary link"; } } // list interface } // grouping ip-monitoring-address-type grouping juniper-gnf { leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 10"; } } description "GNF slot number"; } uses apply-advanced; leaf description { type string { length "1 .. 256"; } description "Description of guest network function"; } leaf control-plane-bandwidth-percent { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 100"; } } units "percent"; description "Percentage of control plane bandwidth"; } leaf-list fpcs { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "FPC associated with guest network function"; } container fpc-slice { description "FPC sub-line cards (SLCs) associated with guest network function"; uses apply-advanced; list fpc { key "name"; description "FPC resource parameters for SLC"; leaf name { junos:must "(!(any "chassis fpc $$ pfe <*> power off"))"; junos:must-message "FPC cannot be sliced if its pfes are configured power off"; type union { type string { pattern "<.*>|$.*"; } type uint32; } description "FPC slot"; } uses apply-advanced; list slc { key "name"; description "Sub-line card configuration"; leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 2"; } } description "SLC id"; } uses apply-advanced; leaf-list pfe-id-list { type string; description "List of pfe of FPC to be assigned to SLC"; } leaf cores { type union { type uint32; type string { pattern "<.*>|$.*"; } } description "Number of cpu cores of FPC to be assigned to SLC (2, 4, 6, 8)"; } leaf dram { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "5 .. 26"; } } description "Amount of DRAM (in GB) of FPC to be assigned to SLC"; } } // list slc } // list fpc } // container fpc-slice list abstract-interface { key "name"; uses abstract_interface_type; } // list abstract-interface } // grouping juniper-gnf grouping abstract_interface_type { description "Abstract-interface"; leaf name { type string { junos:posix-pattern "^af[0-9]$"; junos:pattern-message "Range af0 - af9 is acceptable. Such as, af0,af1 etc."; length "1 .. 3"; } description "Interface name of af"; } uses apply-advanced; leaf description { type string { length "1 .. 516"; } description "Description of AF interface"; } container peer-gnf { presence "enable peer-gnf"; description "Peer gnf"; leaf id { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 10"; } } description "Peer-gnf id"; } leaf remote-af-name { type string { junos:posix-pattern "^af[0-9]$"; junos:pattern-message "Range af0 - af9 is acceptable. Such as, af0,af1 etc."; length "1 .. 3"; } description "Remote af interface name"; } } // container peer-gnf container collapsed-forward { presence "enable collapsed-forward"; description "Enable/disable collapsed forwarding"; choice cfwd_mode { leaf monitor { type empty; description "Monitor mode"; } leaf optimize { type empty; description "Optimize mode"; } } // choice cfwd_mode } // container collapsed-forward } // grouping abstract_interface_type grouping juniper-protected-system-domain { description "Protected system domain configuration"; leaf name { type string { junos:posix-pattern "^psd([1-9]|[1-2][0-9]|[3][0-1])$"; junos:pattern-message "Protected system domain name is a string consisting of 'psd' follows by the PSD ID (1-31), ex. psd2"; } description "Name of protected system domain (psd[1-31], ex. psd2)"; } uses apply-advanced; leaf description { type string; description "Description of protected system domain"; } leaf-list fpcs { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "FPC associated with protected system domain"; } list lcc { key "name"; leaf name { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "Specific LCC"; } uses apply-advanced; leaf-list fpcs { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "FPC associated with protected system domain"; } } // list lcc leaf control-system-id { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 4"; } } description "Control system identifier"; } leaf-list control-slot-numbers { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 12"; } } max-elements 2; ordered-by user; description "Slots associated with protected system domain"; } leaf control-plane-bandwidth-percent { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "0 .. 100"; } } units "percent"; description "Percentage of control plane bandwidth"; } } // grouping juniper-protected-system-domain grouping juniper-protected-system-domain-traceoptions { description "Protected system domain traceoptions"; uses apply-advanced; leaf no-remote-trace { junos:must "("system tracing")"; junos:must-message "'no-remote-trace' is valid only when [system tracing] is configured"; type empty; description "Disable remote tracing"; } container file { description "Trace file information"; leaf filename { type string { junos:posix-pattern "![/ %]"; junos:pattern-message "Must not contain '/', % or a space"; length "1 .. 1024"; } description "Name of file in which to write trace information"; } leaf size { type string; description "Maximum trace file size"; } leaf files { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "2 .. 1000"; } } default "3"; description "Maximum number of trace files"; } choice world-readable-choice { leaf world-readable { type empty; description "Allow any user to read the log file"; } leaf no-world-readable { type empty; description "Don't allow any user to read the log file"; } } // choice world-readable-choice leaf match { type jt:regular-expression; description "Regular expression for lines to be logged"; } } // container file leaf level { type enumeration { enum "error" { value 0; description "Match error conditions"; } enum "warning" { value 1; description "Match warning messages"; } enum "notice" { value 2; description "Match conditions that should be handled specially"; } enum "info" { value 3; description "Match informational messages"; } enum "verbose" { value 4; description "Match verbose messages"; } enum "all" { value 5; description "Match all levels"; } } default "error"; description "Level of debugging output"; } list flag { key "name"; ordered-by user; description "Tracing parameters"; leaf name { type enumeration { enum "configuration" { value 0; description "Trace configuration events"; } enum "rtsock" { value 1; description "Trace rtsock messages"; } enum "ipc" { value 2; description "Trace IPC messages"; } enum "init" { value 3; description "Trace intialization messages"; } enum "psd" { value 4; description "Trace psd messages"; } enum "all" { value 5; description "Trace everything"; } } } } // list flag } // grouping juniper-protected-system-domain-traceoptions grouping macro-data-type { leaf name { type string; description "Keyword part of the keyword-value pair"; } leaf value { type string; description "Value part of the keyword-value pair"; } } // grouping macro-data-type grouping redundancy-group-type { description "Redundancy-group provisioning"; leaf name { type string { junos:posix-pattern "^[[:alpha:]][[:alnum:]_.-]+$"; junos:pattern-message "Must be a string of length at least 2 beginning with a letter and consisting of letters, numbers, periods, dashes, and underscores"; length "2 .. 64"; } description "Redundancy-group name"; } uses apply-advanced; leaf redundancy-group-id { junos:must "((!((any "protocols iccp peer <*> redundancy-group-id-list <*>" || any "logical-systems <*> protocols iccp peer <*> redundancy-group-id-list <*>")) || (any "protocols iccp peer <*> redundancy-group-id-list $$" || any "logical-systems <*> protocols iccp peer <*> redundancy-group-id-list $$")))"; junos:must-message "The redundancy group id must match with one defined at <protocols iccp peer redundancy-group-id-list> and must be less than 256"; junos:must "(unique "chassis satellite-management redundancy-groups <*> redundancy-group-id $$")"; junos:must-message "Redundancy-group-id has to be unique"; type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 255"; } } description "Redundancy Group ID"; } container protocol { description "Redundancy-group Protocol"; uses apply-advanced; container evpn { description "EVPN Redundancy Group"; uses apply-advanced; leaf-list peer-ip { junos:must "(!(any "chassis satellite-management redundancy-groups <*> peer-chassis-id <*>"))"; junos:must-message "peer-chassis-id configuration invalid for EVPN redundancy-group protocol"; type jt:ipv4addr; ordered-by user; description "Peer chassis IPs for EVPN Cluster"; } leaf local-ip { type jt:ipv4addr; description "Local chassis IP for EVPN Cluster"; } leaf routing-instance { type string; description "Name of routing instance for EVPN Cluster"; } } // container evpn } // container protocol list peer-chassis-id { key "name"; ordered-by user; description "Peer Chassis ID"; leaf name { junos:must "(unique "satellite-management redundancy-groups <*> peer-chassis-id $$")"; junos:must-message "Peer chassis ID must be unique"; junos:must "(!("chassis satellite-management redundancy-groups chassis-id $$"))"; junos:must-message "Peer chassis ID can't be same as local chassis ID"; type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 4"; } } description "Peer chassis identifier"; } uses apply-advanced; leaf no-auto-vlan-provisioning { type empty; description "Disable auto VLAN provisioning on inter-chassis-link"; } leaf inter-chassis-link { junos:must "(((("interfaces $$ unit $$={0} family bridge interface-mode trunk" || "interfaces $$ unit $$={0} family ethernet-switching interface-mode trunk") && !(" .. no-auto-vlan-provisioning")) || " .. no-auto-vlan-provisioning"))"; junos:must-message "bridge or ethernet-switching family with unit 0 must be present for ICL trunk interface if auto-vlan-provisioning is enabled"; junos:must "("interfaces $$")"; junos:must-message "ICL interface must be defined in the [edit interfaces] hierarchy"; junos:must "(!("interfaces $$ cascade-port"))"; junos:must-message "ICL interface can't be provisioned as cascade-port"; junos:must "((!("interfaces $$ flexible-vlan-tagging") && (!("interfaces $$ vlan-tagging") && !("interfaces $$ stacked-vlan-tagging"))))"; junos:must-message "ICL cannot be supported on interfaces if flexible-vlan-tagging/vlan-tagging/stacked-vlan-tagging enabled"; junos:must "("interfaces $$ unit $$={0} family ethernet-switching interface-mode trunk")"; junos:must-message "ICL interface can only be trunk interface"; type union { type jt:interface-device; type string { pattern "<.*>|$.*"; } } description "ICL interface name"; } leaf no-auto-iccp-provisioning { junos:must "(any "protocols iccp peer <*>")"; junos:must-message "ICCP configuration must be present if auto ICCP provisioning is disabled"; type empty; description "Disable auto ICCP provisioning"; } leaf session-establishment-hold-time { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "45 .. 600"; } } units "seconds"; description "Time within which connection must succeed with this peer"; } container liveness-detection { presence "enable liveness-detection"; description "Bidirectional Forwarding Detection options for the peer"; uses apply-advanced; leaf version { type enumeration { enum "0" { value 0; description "BFD version 0 (deprecated)"; } enum "1" { value 1; description "BFD version 1"; } enum "automatic" { value 2; description "Choose BFD version automatically"; } } default "automatic"; description "BFD protocol version number"; } leaf minimum-interval { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 255000"; } } units "milliseconds"; description "Minimum transmit and receive interval"; } leaf minimum-transmit-interval { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 255000"; } } units "milliseconds"; status deprecated; description "Minimum transmit interval"; } leaf minimum-receive-interval { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 255000"; } } units "milliseconds"; description "Minimum receive interval"; } leaf multiplier { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 255"; } } default "3"; description "Detection time multiplier"; } choice adaptation-choice { leaf no-adaptation { type empty; description "Disable adaptation"; } } // choice adaptation-choice container transmit-interval { description "Transmit-interval options"; uses apply-advanced; leaf minimum-interval { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "1 .. 255000"; } } units "milliseconds"; description "Minimum transmit interval"; } leaf threshold { type union { type uint32; type string { pattern "<.*>|$.*"; } } units "milliseconds"; description "High transmit interval triggering a trap"; } } // container transmit-interval container detection-time { description "Detection-time options"; uses apply-advanced; leaf threshold { type union { type uint32; type string { pattern "<.*>|$.*"; } } units "milliseconds"; description "High detection-time triggering a trap"; } } // container detection-time } // container liveness-detection leaf authentication-key { type string { length "1 .. 126"; } description "MD5 authentication key"; } container traceoptions { description "Trace options for ICCP"; uses apply-advanced; leaf no-remote-trace { junos:must "("system tracing")"; junos:must-message "'no-remote-trace' is valid only when [system tracing] is configured"; type empty; description "Disable remote tracing"; } container file { description "Trace file information"; leaf filename { type string { junos:posix-pattern "![/ %]"; junos:pattern-message "Must not contain '/', % or a space"; length "1 .. 1024"; } description "Name of file in which to write trace information"; } leaf size { type string; description "Maximum trace file size"; } leaf files { type union { type string { pattern "<.*>|$.*"; } type uint32 { range "2 .. 1000"; } } default "3"; description "Maximum number of trace files"; } choice world-readable-choice { leaf world-readable { type empty; description "Allow any user to read the log file"; } leaf no-world-readable { type empty; description "Don't allow any user to read the log file"; } } // choice world-readable-choice leaf match { type jt:regular-expression; description "Regular expression for lines to be logged"; } } // container file list flag { key "name"; ordered-by user; description "Trace flag information"; leaf name { type enumeration { enum "error" { value 0; description "Trace all errors"; } enum "event" { value 1; description "Trace all events"; } enum "packet" { value 2; description "Trace all packets"; } enum "pipe" { value 3; description "Trace pipe messages"; } enum "pipe-detail" { value 4; description "Trace pipe messages in detail"; } enum "all" { value 5; description "Trace everything"; } } } } // list flag } // container traceoptions } // list peer-chassis-id leaf-list satellite { type string { length "1 .. 100"; } ordered-by user; description "Satellite slot-id or range or all"; } leaf system-mac-address { type jt:mac-unicast; description "System MAC address"; } list cluster { key "name"; description "Cluster member of redundancy-group"; leaf name { junos:must "("chassis satellite-management cluster $$")"; junos:must-message "Cluster must be defined"; type string; description "Cluster name"; } uses apply-advanced; } // list cluster } // grouping redundancy-group-type grouping satellite-bridge-filter { leaf name { type string { junos:posix-pattern "!^((__.*)|(.{65,}))$"; junos:pattern-message "Must be a non-reserved string of 64 characters or less"; } description "Filter name"; } uses apply-advanced; list term { key "name"; ordered-by user; description "Define a firewall term"; leaf name { type string { junos:posix-pattern "!^((__.*)|(.{65,}))$"; junos:pattern-message "Must be a non-reserved string of 64 characters or less"; } description "Term name"; } uses apply-advanced; container from { description "Define match criteria"; uses apply-advanced; list source-mac-address { key "name"; ordered-by user; description "Match MAC source address"; uses firewall_mac_addr_object; } // list source-mac-address list destination-mac-address { key "name"; ordered-by user; description "Match MAC destination address"; uses firewall_mac_addr_object; } // list destination-mac-address list ip-source-address { key "name"; ordered-by user; description "Match IP source address"; uses firewall_addr_object; } // list ip-source-address list ip-destination-address { key "name"; ordered-by user; description "Match IP destination address"; uses firewall_addr_object; } // list ip-destination-address choice ip-protocol_choice { leaf-list ip-protocol { type string; ordered-by user; } leaf-list ip-protocol-except { type string; ordered-by user; } } // choice ip-protocol_choice choice source-port_choice { leaf-list source-port { type string; ordered-by user; } leaf-list source-port-except { type string; ordered-by user; } } // choice source-port_choice choice destination-port_choice { leaf-list destination-port { type string; ordered-by user; } leaf-list destination-port-except { type string; ordered-by user; } } // choice destination-port_choice choice user-vlan-id_choice { leaf-list user-vlan-id { type string; ordered-by user; description "Range of values"; } leaf-list user-vlan-id-except { type string; ordered-by user; description "Range of values"; } } // choice user-vlan-id_choice } // container from container then { description "Action to take if the 'from' condition is matched"; uses apply-advanced; choice designation { leaf accept { type empty; description "Accept the packet"; } leaf discard { type empty; description "Discard the packets"; } } // choice designation leaf next-hop-group { junos:must "(("policy-options satellite-policies port-group-alias $$" || "policy-options satellite-policies chassis-group-alias $$"))"; junos:must-message "port-group-alias or chassis-group-alias not defined"; type string; description "Use specified next-hop group"; } } // container then } // list term } // grouping satellite-bridge-filter grouping firewall_addr_object { leaf name { type jt:ipv4prefix; description "Prefix to match"; } leaf except { type empty; description "Match address not in this prefix"; } } // grouping firewall_addr_object grouping firewall_mac_addr_object { leaf name { type jt:mac-addr-prefix; description "MAC address to match"; } leaf except { type empty; description "Match MAC address not in this range"; } } // grouping firewall_mac_addr_object grouping upgrade-group-fpcs { description "Upgrade group fpcs"; leaf name { type union { type string { pattern "<.*>|$.*"; } type int32; } description "Member identifier"; } uses apply-advanced; leaf-list fpcs { type union { type string { pattern "<.*>|$.*"; } type uint32; } description "FPCs to be upgraded as a group in this member"; } } // grouping upgrade-group-fpcs grouping upgrade-group-type { description "Upgrade group"; leaf name { type string { junos:posix-pattern "![^a-zA-Z0-9_-]|^[^a-zA-Z]|(^(all|.{64,}|.{0,1})$)"; junos:pattern-message "Must be a string of length at least 2 beginning with a letter and consisting of letters, numbers, periods, dashes, and underscores. Must not be 'all'"; length "2 .. 64"; } description "Upgrade group name"; } uses apply-advanced; leaf-list satellite { type string { length "1 .. 100"; } ordered-by user; description "Satellite slot-id or range or all"; } } // grouping upgrade-group-type } // module junos-nfx-conf-chassis
© 2023 YumaWorks, Inc. All rights reserved.