argus-netconf-exporter/exp/yangcli/h3c-yang/H3C-ifmgr-config@2025-02-13.yang
2025-11-28 14:35:21 +08:00

1002 lines
40 KiB
YANG

module H3C-ifmgr-config {
namespace "http://www.h3c.com/netconf/config:1.0-Ifmgr";
prefix "ifmgr-config";
import comware-basetype {
prefix "base";
}
import comware-extension {
prefix "ext";
}
organization "NEW H3C Technologies Co., Ltd.";
contact "Website: http://www.h3c.com";
description "The module entities for ifmgr config.";
revision 2025-02-13 {
description "Modify ifmgr/Interfaces/Interface/UsingType add new type.";
reference "private";
}
revision 2024-12-27 {
description "Synchronize the modification of the schema file to the YANG file.";
}
revision 2024-10-24 {
description "Add GlobalConfig table.";
reference "private";
}
revision 2024-08-08 {
description "Add new node ifmgr/Interfaces/Interface/UsingType.";
}
revision 2024-07-18 {
description "Add new enumuration to Ifmgr/Interfaces/Interface/UsingType. Add new node Ifmgr/Interfaces/Interface/AutoReduceEnable.";
}
revision 2024-06-26 {
description "Synchronize the modification of the LbnGroupGlobal to the YANG file.";
}
revision 2024-04-16 {
description "Add IfFecData LbnGroupGlobal LbnGroups";
}
revision 2022-02-17 {
description "Synchronize the modification of the schema file to the YANG file.";
}
revision 2020-05-09 {
description "Synchronize the modification of the schema file to the YANG file.";
}
revision 2020-04-07 {
description "Initial revision.";
}
container Ifmgr {
container TrafficStatistics {
description "TrafficStatistics sub module";
container Interval {
description "Interval table";
leaf Interval {
type base:Basetype_UnsignedInteger32 {
range "5..300";
}
description "Sampling interval of all interface, in seconds, in step of 5.";
}
}
}
container StormConstrain {
description "StormConstrain sub module";
container Interfaces {
description "This table contains interface storm constrain information.";
list Interface {
description "The Name of Row";
key "IfIndex";
leaf IfIndex {
type base:Basetype_NameAndIndexUnion;
description "Interface index";
}
leaf CtlMode {
type enumeration {
enum 0;
enum 1;
enum 2;
}
description "Storm constrain protective action
Enumeration:
0(N/A)
1(Block)
2(Shutdown)";
}
leaf Trap {
type base:Basetype_Boolean;
description "Event trap switch";
}
leaf Log {
type base:Basetype_Boolean;
description "Event log switch";
}
container Broadcast {
description "Broadcast storm constrain information of an interface";
leaf Upper {
type base:Basetype_UnsignedInteger32 {
range "1..max";
}
description "Broadcast upper threshold value";
}
leaf Lower {
type base:Basetype_UnsignedInteger32 {
range "1..max";
}
description "Broadcast lower threshold value";
}
leaf Unit {
type enumeration {
enum 1;
enum 2;
enum 3;
}
description "Broadcast threshold unit:1(pps),2(ratio),3(kbps)";
}
}
container Multicast {
description "Multicast storm constrain information of an interface";
leaf Upper {
type base:Basetype_UnsignedInteger32 {
range "1..max";
}
description "Multicast upper threshold value";
}
leaf Lower {
type base:Basetype_UnsignedInteger32 {
range "1..max";
}
description "Multicast lower threshold value";
}
leaf Unit {
type enumeration {
enum 1;
enum 2;
enum 3;
}
description "Multicast threshold unit:1(pps),2(ratio),3(kbps)";
}
}
container UnknownUnicast {
description "Unknown-unicast storm constrain information of an interface";
leaf Upper {
type base:Basetype_UnsignedInteger32 {
range "1..max";
}
description "Unknown-unicast upper threshold value";
}
leaf Lower {
type base:Basetype_UnsignedInteger32 {
range "1..max";
}
description "Unknown-unicast lower threshold value";
}
leaf Unit {
type enumeration {
enum 1;
enum 2;
enum 3;
}
description "Unknown-unicast threshold unit:1(pps),2(ratio),3(kbps)";
}
}
container KnownUnicast {
description "Known-unicast storm constrain information of an interface";
leaf Upper {
type base:Basetype_UnsignedInteger32 {
range "1..max";
}
description "Known-unicast upper threshold value";
}
leaf Lower {
type base:Basetype_UnsignedInteger32 {
range "1..max";
}
description "Known-unicast lower threshold value";
}
leaf Unit {
type enumeration {
enum 1;
enum 2;
enum 3;
}
description "Known-unicast threshold unit:1(pps),2(ratio),3(kbps)";
}
}
}
}
container Interval {
description "Interval Table";
leaf Interval {
type base:Basetype_UnsignedInteger32 {
range "1..300";
}
description "Traffic statistics collection interval for storm constrain, in seconds.";
}
}
}
container PortIsolation {
description "Port isolate sub module";
container Groups {
description "Port isolate groups table
This table supports creating rows.";
list Group {
description "The name of Row";
key "IsolatedGroupID";
leaf IsolatedGroupID {
type base:Basetype_UnsignedInteger32;
description "Isolation group ID";
}
}
}
container Interfaces {
description "Interfaces table";
list Interface {
description "The name of Row";
key "IfIndex";
leaf IfIndex {
type base:Basetype_NameAndIndexUnion;
description "Interface index.";
}
leaf IsolatedGroupID {
type base:Basetype_UnsignedInteger32 {
range "1..max";
}
description "Port isolation group ID of an interface.";
}
}
}
}
container Interfaces {
description "This table contains basic interface information.";
list Interface {
key "IfIndex";
leaf IfIndex {
type base:Basetype_NameAndIndexUnion;
description "Interface index as table index.";
}
leaf Description {
type base:Basetype_Text {
length "0..255";
}
description "Interface description.String length constraints must be in range(0..255).";
}
leaf AdminStatus {
type base:Basetype_Integer32 {
range "1..2";
}
description "Interface administration status,as follows:
1 Admin Up
2 Admin Down";
}
leaf ConfigSpeed {
type base:Basetype_UnsignedInteger64 {
range "0..1048576";
}
description "Configured speed of an interface.Each bit represents a speed as follows:
1:Auto
2:10Mbps
4:100Mbps
8:155Mbps
16:622Mbps
32:1Gbps
64:2Gbps
128:2.5Gbps
256:4Gbps
512:8Gbps
1024:10Gbps
2048:16Gbps
4096:20Gbps
8192:40Gbps
16384:100Gbps
32768:5Gbps
65536:25Gbps
131072:32Gbps
262144:50Gbps
524288:200Gbps
1048576:400Gbps)";
}
leaf ConfigDuplex {
type enumeration {
enum 1;
enum 2;
enum 3;
}
description "This table contains storm constrain traffic collection interval information..";
}
leaf PortLayer {
type enumeration {
enum 1;
enum 2;
}
description "Port layer of an interface as follows:
1 Layer 2
2 Layer 3";
}
leaf LinkType {
type enumeration {
enum 1;
enum 2;
enum 3;
}
description "VLAN type of an interface as follows:
1 ACCESS
2 TRUNK
3 HYBRID";
}
leaf PVID {
type base:Basetype_UnsignedInteger32 {
range "1..4094";
}
description "Port VLAN identification (PVID) of an interface.";
}
leaf MAC {
type base:Basetype_MacAddress;
}
leaf Loopback {
type enumeration {
enum 0;
enum 1;
enum 2;
}
description "Loopback test as follows:
0 No loopback
1 Internal
2 External";
}
leaf MDI {
type enumeration {
enum 1;
enum 2;
enum 3;
}
description "MDI mode of an interface as follows:
1 MDI-II (straight-through cable)
2 MDI-X (crossover cable)
3 MDI-AUTO (auto-sensing)";
}
leaf ConfigMTU {
type base:Basetype_UnsignedInteger32;
description "Configured MTU of an interface.";
}
leaf ConfigBandwidth {
type base:Basetype_UnsignedInteger64 {
range "1..400000000";
}
description "Configured bandwidth of an interface(units: kbit/s).";
}
leaf Interval {
type base:Basetype_UnsignedInteger32 {
range "5..300";
}
description "Sampling interval of an interface";
}
leaf ForceUP {
type base:Basetype_Boolean;
description "Forcibly bring up an interface.";
}
container LinkDelay {
description "Physical state change suppression configuration of an interface.";
leaf UpTime {
type base:Basetype_UnsignedInteger32;
description "Configured link-up event suppression interval of an interface(units: millisecond).";
}
leaf DownTime {
type base:Basetype_UnsignedInteger32;
description "Configured link-down event suppression interval of an interface(units: millisecond).";
}
}
leaf KeepAlive {
type base:Basetype_UnsignedInteger32 {
range "0..32767";
}
description "Set the hold timer of an interface";
}
leaf KeepAliveRetry {
type base:Basetype_UnsignedInteger32 {
range "1..255";
}
description "Configured number of attempts for transmitting a keepalive message";
}
leaf TrafficStatisticsEnable {
type base:Basetype_EnableState;
description "TrafficStatistics Status of the port:
enable
disable";
}
leaf SubIfRateStatisticsEnable {
type base:Basetype_EnableState;
description "Enable rate statistics collection for the subinterfaces of an Ethernet interface.
enable
disable";
}
container ServiceSlot {
description "Primary traffic processing slot ID";
leaf Chassis {
type base:Basetype_UnsignedInteger32 {
range "0..65535";
}
description "ID of the IRF member device where the entity resides.";
}
leaf Slot {
type base:Basetype_UnsignedInteger32 {
range "0..65535";
}
description "Slot ID of the entity";
}
leaf Cpu {
type base:Basetype_UnsignedInteger32 {
range "0..65535";
}
description "CPU ID";
}
}
container ServiceStandbySlot {
description "Backup traffic processing slot ID";
leaf Chassis {
type base:Basetype_UnsignedInteger32 {
range "0..65535";
}
description "ID of the IRF member device where the entity resides";
}
leaf Slot {
type base:Basetype_UnsignedInteger32 {
range "0..65535";
}
description "Slot ID of the entity";
}
leaf Cpu {
type base:Basetype_UnsignedInteger32 {
range "0..65535";
}
description "CPU ID";
}
}
leaf Interframe {
type base:Basetype_Boolean;
description "Include inter-frame gaps in interface statistics.";
}
leaf AutoReduceEnable {
type base:Basetype_EnableState;
description "Enable interface automatic speed reduction function:
enable
disable";
}
leaf UsingType {
type enumeration {
enum 0;
enum 1;
enum 2;
enum 3;
enum 4;
enum 5;
enum 6;
enum 7;
enum 8;
enum 9;
enum 10;
enum 11;
enum 12;
enum 13;
enum 14;
enum 15;
enum 16;
enum 17;
enum 18;
enum 19;
enum 20;
enum 21;
enum 22;
enum 23;
enum 24;
enum 25;
enum 26;
enum 27;
enum 28;
enum 29;
enum 30;
enum 37;
enum 38;
enum 39;
enum 40;
enum 41;
enum 42;
enum 43;
enum 44;
enum 45;
enum 46;
enum 47;
enum 48;
enum 49;
enum 50;
enum 51;
enum 52;
enum 53;
enum 54;
enum 55;
enum 56;
enum 57;
enum 58;
enum 59;
enum 60 {
description "400GETOXGE4channel";
}
enum 61 {
description "XGETO400GE";
}
}
description "Split or combine interfaces.
Each enumeration represents a switching mode:
0 UNKNOWN
1 XGETOFGE
2 XGETOHGE
3 FGETOXGE
4 HGETOXGE
5 FGETOHGE
6 HGETOFGE
7 FGETOTGE
8 TGETOFGE
9 HGETOWGE
10 WGETOHGE
11 FC16GTO32G
12 FC32GTO16G
13 400GETOHGE
14 HGETO400GE
15 400GETO50GE
16 50GETO400GE
17 400GETO200GE
18 200GETO400GE
19 200GETOHGE
20 HGETO200GE
21 200GETO25GE
22 200GETO50GE
23 400GETO25GE
24 25GETO200GE
25 50GETO200GE
26 25GETO400GE
27 HGETO50GE
28 50GETOHGE
29 XGETO200GE
30 200GETOXGE
37 400GETO2HGEchannel
38 800GETOHGE1channel
39 800GETO200GE1channel
40 800GETO400GE1channel
41 400GETOHGE1channel
42 400GETO200GE1channel
43 200GETOHGE1channel
44 800GETO400GE
45 800GETO400GE2channel
46 800GETO200GE2channel
47 400GETO200GE2channel
48 400GETO100GE2channel
49 200GETO100GE2channel
50 200GETOFGE
51 200GETOFGE1channel
52 HGETOXGE2channel
53 HGETO25GE2channel
54 HGETO800GE
55 200GETO800GE
56 400GETO800GE
57 40GETO200GE
58 800GETOHGE
59 800GETO200GE
60 400GETOXGE4channel
61 XGETO400GE";
}
}
}
container EthInterfaces {
description "EthInterfaces Table";
list Interface {
description "The name of Row";
key "IfIndex";
leaf IfIndex {
type base:Basetype_NameAndIndexUnion;
description "Interface index";
}
leaf Combo {
type enumeration {
enum 1;
enum 2;
enum 3;
}
description "Combo mode of an interface(1(fiber mode); 2(copper mode); 3(auto mode))";
}
leaf FlowControl {
type enumeration {
enum 1;
enum 2;
enum 3;
}
description "Flow control information of an interface
1(Enable flow control)
2(Disable)
3(Only enable flow control packet receiving)";
}
leaf AutoPowerDown {
type base:Basetype_Boolean;
description "Port auto power down";
}
leaf Jumboframe {
type base:Basetype_UnsignedInteger32;
description "Jumbo frame information of an interface";
}
container BroadcastSuppression {
description "Broadcast suppression information of an interface";
leaf ConfigValue {
type base:Basetype_UnsignedInteger32;
description "Configured broadcast suppression value of an interface
Value range:
ratio: 0 to 100
pps: 0 to 1.4881 * the maximum interface rate.
kbps: 0 to the maximum interface rate";
}
leaf Unit {
type enumeration {
enum 1;
enum 2;
enum 3;
}
description "Broadcast suppression unit:1(ratio),2(pps),3(kbps)";
}
}
container MulticastSuppression {
description "Multicast suppression information of an interface";
leaf ConfigValue {
type base:Basetype_UnsignedInteger32;
description "Configured multicast suppression value of an interface
Value range:
ratio: 0 to 100
pps: 0 to 1.4881 * the maximum interface rate.
kbps: 0 to the maximum interface rate";
}
leaf Unit {
type enumeration {
enum 1;
enum 2;
enum 3;
}
description "Multicast suppression unit:1(ratio),2(pps),3(kbps)";
}
leaf Flag {
type enumeration {
enum 1;
enum 2;
}
description "Multicast suppression flag:1(all),2(unknown)";
}
}
container UnknownUnicastSuppression {
description "UnknownUnicast suppression information of an interface";
leaf ConfigValue {
type base:Basetype_UnsignedInteger32;
description "Config unknownUnicast suppression value of an interface
Value range:
ratio: 0 to 100
pps: 0 to 1.4881 * the maximum interface rate.
kbps: 0 to the maximum interface rate";
}
leaf Unit {
type enumeration {
enum 1;
enum 2;
enum 3;
}
description "UnknownUnicast suppression unit:1(ratio),2(pps),3(kbps)";
}
}
leaf BPDUDrop {
type base:Basetype_Boolean;
description "Whether any type of IEEE BPDUs is drop on the port.";
}
leaf EEE {
type base:Basetype_Boolean;
description "Whether energy efficient ethernet is enable on the port.";
}
leaf ConnectMode {
type enumeration {
enum 1;
enum 2;
}
description "Port connection mode of an interface.
Enumeration:
1(Normal connection mode)
2(Extend connection mode)";
}
container LinkFlap {
description "Link flapping information of an interface";
leaf Mode {
type enumeration {
enum 0;
enum 1;
enum 2;
}
description "Interface operation status as follows:
0: noconfig
1: enable
2: disable";
}
leaf Interval {
type base:Basetype_UnsignedInteger32 {
range "5..86400";
}
description "Link flapping detection interval";
}
leaf Threshold {
type base:Basetype_UnsignedInteger32 {
range "2..1200";
}
description "Maximum link flapping times in detection interval";
}
}
}
}
container NewSubInterfaces {
description "This table is used to create or delete sub-interfaces.
This table supports creating rows.";
list Interface {
key "IfIndex SubNum";
leaf IfIndex {
type base:Basetype_NameAndIndexUnion;
description "Interface index as table index.";
}
leaf SubNum {
type base:Basetype_UnsignedInteger32;
description "Sub-interface number.";
}
}
}
container ReserveVlanInterface {
description "This table contains the reservation of VLAN interface resources.";
list VlanInterface {
key "Type";
leaf Type {
type enumeration {
enum 1;
enum 2;
}
description "The reservation type:
1 Global
2 Local";
}
leaf VlanList {
type base:Basetype_VlanRange;
description "List of vlan IDs which relative vlan interface is reserved.";
ext:support-incremental "true";
}
}
}
container ShutdownInterval {
description "This table contains shutdown recover interval.";
leaf Interval {
type base:Basetype_UnsignedInteger32 {
range "0..300";
}
description "Recover interval for interface, in seconds.";
}
}
container CellularChannel {
list Interface {
key "IfIndex CreateMode ChannelNum";
leaf IfIndex {
type base:Basetype_NameAndIndexUnion;
}
leaf CreateMode {
type enumeration {
enum 1;
enum 2;
}
}
leaf ChannelNum {
type base:Basetype_UnsignedInteger32;
}
}
}
container LinkFlap {
description "This table is used to enable link flapping protection on all physical interfaces.";
leaf Enable {
type enumeration {
enum 0;
enum 1;
}
description "Configure operation status as follows:
0: disable
1: enable";
}
leaf Batch {
type enumeration {
enum 0;
enum 1;
}
description "Configure operation status as follows:
0: disable
1: enable";
}
leaf Interval {
type base:Basetype_UnsignedInteger32 {
range "5..86400";
}
description "Link flapping detection interval";
}
leaf Threshold {
type base:Basetype_UnsignedInteger32 {
range "2..1200";
}
description "Maximum link flapping times in detection interval";
}
}
container ShutdownAllPhyIf {
description "This table is used to shut all physical interfaces down.";
leaf Shutdown {
type base:Basetype_Boolean;
description "Shut down all physical interfaces.";
}
}
container FlexeInstances {
description "This table is used to create or delete FlexeInstances.";
list FlexeInstance {
key "Chassis Slot Subslot";
leaf Chassis {
type base:Basetype_UnsignedInteger32 {
range "0..65534";
}
description "ID of the member where the entity resides.";
}
leaf Slot {
type base:Basetype_UnsignedInteger32 {
range "0..65534";
}
description "Slot ID of the entity.";
}
leaf Subslot {
type base:Basetype_UnsignedInteger32 {
range "0..65534";
}
description "Subslot ID of the entity.";
}
leaf ConfigMode {
type enumeration {
enum 1;
enum 2;
}
description "Bandwidth configurtion mode:
1 Bandwidth
2 TimeSlot";
}
container FlexeGroups {
description "This table contains the config information of Flexe group interfaces.";
list FlexeGroup {
description "List of FlexeGroup for Flexe group interfaces";
key "GroupID";
leaf GroupID {
type base:Basetype_UnsignedInteger32 {
range "1..1048573";
}
description "Group ID";
}
container BindPhyInterfaces {
description "This table contains the config information of FlexE Physical interfaces";
list BindPhyInterface {
key "PhyIfIndex";
leaf PhyIfIndex {
type base:Basetype_NameAndIndexUnion;
description "FlexeE Phyisycal Interface index";
}
leaf PhyNo {
type base:Basetype_UnsignedInteger32 {
range "1..254";
}
description "PHY number for the FlexE Phyisycal Interface";
}
}
}
container Clients {
description "This table contains the config information of FlexE client";
list Client {
description "List of Client for FlexE client";
key "ClientID";
leaf ClientID {
type base:Basetype_UnsignedInteger32 {
range "1..65534";
}
}
leaf Bandwidth {
type base:Basetype_UnsignedInteger32 {
range "5..4194303";
}
}
container TimeSlots {
description "This table contains the config information of timeslots";
list TimeSlot {
key "PhyIfIndex";
leaf PhyIfIndex {
type base:Basetype_NameAndIndexUnion;
description "FlexeE Phyisycal Interface index";
}
leaf TimeSlotList {
type base:Basetype_Text {
length "1..512";
}
}
}
}
}
}
}
}
}
}
container LbnGroupGlobal {
description "This table is used to enable loadbalance ecmp lbn-group and loadbalance link-aggregation lbn-group.";
leaf EcmpEnable {
type enumeration {
enum 0;
enum 1;
}
description "Configure operation status as follows:
0: disable
1: enable";
}
leaf LaggEnable {
type enumeration {
enum 0;
enum 1;
}
description "Configure operation status as follows:
0: disable
1: enable";
}
leaf EcmpMode {
type string;
}
}
container LbnGroups {
description "This table contains information about lbngroup and its members.";
list LbnGroup {
key "GroupName";
leaf GroupName {
type base:Basetype_String {
length "1..31";
}
description "Full name of an lbngroup.";
}
container GroupMembers {
description "This table contains information about lbngroup members.";
list GroupMember {
description "List of GroupMember for LbnGroup";
key "InterfaceName";
leaf InterfaceName {
type base:Basetype_InterfaceName;
description "Full name of an interface.";
}
leaf MemberIndex {
type base:Basetype_UnsignedInteger32;
description "Index of an groupmember.";
}
}
}
}
}
container GlobalConfig {
description "This table contains the global configuration of the Ifmgr table.";
leaf SubIfUpDownTrapLog {
type base:Basetype_EnableState;
description "Trap and log enable State of subinterfaces:
enable
disable";
}
}
container NakStatistics {
description "This table contains statistics for NAK packets from the interface.";
list Interface {
key "IfName";
leaf IfName {
type base:Basetype_InterfaceName;
description "Full name of an interface.";
}
leaf Enable {
type base:Basetype_EnableState;
description "Enable interface NAK packet statistics function:
enable
disable";
}
}
}
container CnpStatistics {
description "This table contains statistics for CNP packet from the interface.";
list Interface {
key "IfName";
leaf IfName {
type base:Basetype_InterfaceName;
description "Full name of an interface.";
}
leaf Enable {
type base:Basetype_EnableState;
description "Enable interface CNP packet statistics function:
enable
disable";
}
}
}
}
}