#-MIBFILE: cisco-pagp.mib

CISCO-PAGP-MIB DEFINITIONS ::= BEGIN


DisplayString ::=
	OCTET STRING (SIZE(0..255))

PhysAddress ::=
	OCTET STRING

MacAddress ::=
	OCTET STRING (SIZE(6))

TruthValue ::=
	INTEGER {
	true(1),
	false(2)
	}

TestAndIncr ::=
	INTEGER (0..2147483647)

AutonomousType ::=
	OBJECT IDENTIFIER

InstancePointer ::=
	OBJECT IDENTIFIER

VariablePointer ::=
	OBJECT IDENTIFIER

RowPointer ::=
	OBJECT IDENTIFIER

RowStatus ::=
	INTEGER {
	active(1),
	notInService(2),
	notReady(3),
	createAndGo(4),
	createAndWait(5),
	destroy(6)
	}

TimeStamp ::=
	TimeTicks

TimeInterval ::=
	INTEGER (0..2147483647)

DateAndTime ::=
	OCTET STRING (SIZE(8|11))

StorageType ::=
	INTEGER {
	other(1),
	volatile(2),
	nonVolatile(3),
	permanent(4),
	readOnly(5)
	}

TDomain ::=
	OBJECT IDENTIFIER

TAddress ::=
	OCTET STRING (SIZE(1..255))

cisco OBJECT IDENTIFIER ::= { enterprises 9 }
ciscoMgmt OBJECT IDENTIFIER ::= { cisco 9 }
CiscoNetworkProtocol ::=
	INTEGER {
	ip(1),
	decnet(2),
	pup(3),
	chaos(4),
	xns(5),
	x121(6),
	appletalk(7),
	clns(8),
	lat(9),
	vines(10),
	cons(11),
	apollo(12),
	stun(13),
	novell(14),
	qllc(15),
	snapshot(16),
	atmIlmi(17),
	bstun(18),
	x25pvc(19),
	ipv6(20),
	cdm(21),
	nbf(22),
	bpxIgx(23),
	clnsPfx(24),
	http(25),
	unknown(65535)
	}

CiscoNetworkAddress ::=
	OCTET STRING

Unsigned64 ::=
	OCTET STRING

InterfaceIndexOrZero ::=
	INTEGER (0..2147483647)

SAPType ::=
	INTEGER (0..254)

CountryCode ::=
	OCTET STRING (SIZE(0|2))

CountryCodeITU ::=
	OCTET STRING

EntPhysicalIndexOrZero ::=
	INTEGER (0..2147483647)

CiscoRowOperStatus ::=
	INTEGER {
	active(1),
	activeDependencies(2),
	inactiveDependency(3),
	missingDependency(4)
	}

CiscoPort ::=
	INTEGER (0..65535)

CiscoIpProtocol ::=
	INTEGER (0..255)

CiscoLocationClass ::=
	INTEGER {
	chassis(1),
	shelf(2),
	slot(3),
	subSlot(4),
	port(5),
	subPort(6),
	channel(7),
	subChannel(8)
	}

CiscoLocationSpecifier ::=
	OCTET STRING (SIZE(0..255))

CiscoInetAddressMask ::=
	OCTET STRING

CiscoAbsZeroBasedCounter32 ::=
	Gauge

CiscoSnapShotAbsCounter32 ::=
	OCTET STRING

CiscoAlarmSeverity ::=
	INTEGER {
	cleared(1),
	indeterminate(2),
	critical(3),
	major(4),
	minor(5),
	warning(6),
	info(7)
	}

PerfHighIntervalCount ::=
	OCTET STRING

ConfigIterator ::=
	OCTET STRING

BulkConfigResult ::=
	OCTET STRING (SIZE(0..255))

ListIndex ::=
	INTEGER (1..2147483647)

ListIndexOrZero ::=
	INTEGER (0..2147483647)

TimeIntervalSec ::=
	OCTET STRING

TimeIntervalMin ::=
	OCTET STRING

CiscoMilliSeconds ::=
	OCTET STRING

MicroSeconds ::=
	OCTET STRING

CiscoPortList ::=
	OCTET STRING (SIZE(0..256))

CiscoPortListRange ::=
	INTEGER {
	oneto2k(1),
	twoKto4K(2),
	fourKto6K(3),
	sixKto8K(4),
	eightKto10K(5),
	tenKto12K(6),
	twelveKto14K(7),
	fourteenKto16K(8)
	}

IfOperStatusReason ::=
	INTEGER {
	other(1),
	none(2),
	hwFailure(3),
	loopbackDiagFailure(4),
	errorDisabled(5),
	swFailure(6),
	linkFailure(7),
	offline(8),
	nonParticipating(9),
	initializing(10),
	vsanInactive(11),
	adminDown(12),
	channelAdminDown(13),
	channelOperSuspended(14),
	channelConfigurationInProgress(15),
	rcfInProgress(16),
	elpFailureIsolation(17),
	escFailureIsolation(18),
	domainOverlapIsolation(19),
	domainAddrAssignFailureIsolation(20),
	domainOtherSideEportIsolation(21),
	domainInvalidRcfReceived(22),
	domainManagerDisabled(23),
	zoneMergeFailureIsolation(24),
	vsanMismatchIsolation(25),
	parentDown(26),
	srcPortNotBound(27),
	interfaceRemoved(28),
	fcotNotPresent(29),
	fcotVendorNotSupported(30),
	incompatibleAdminMode(31),
	incompatibleAdminSpeed(32),
	suspendedByMode(33),
	suspendedBySpeed(34),
	suspendedByWWN(35),
	domainMaxReTxFailure(36),
	eppFailure(37),
	portVsanMismatchIsolation(38),
	loopbackIsolation(39),
	upgradeInProgress(40),
	incompatibleAdminRxBbCredit(41),
	incompatibleAdminRxBufferSize(42),
	portChannelMembersDown(43),
	zoneRemoteNoRespIsolation(44),
	firstPortUpAsEport(45),
	firstPortNotUp(46),
	peerFCIPPortClosedConnection(47),
	peerFCIPPortResetConnection(48),
	fcipPortMaxReTx(49),
	fcipPortKeepAliveTimerExpire(50),
	fcipPortPersistTimerExpire(51),
	fcipPortSrcLinkDown(52),
	fcipPortSrcAdminDown(53),
	fcipPortAdminCfgChange(54),
	fcipSrcPortRemoved(55),
	fcipSrcModuleNotOnline(56),
	invalidConfig(57),
	portBindFailure(58),
	portFabricBindFailure(59),
	noCommonVsanIsolation(60),
	ficonVsanDown(61),
	invalidAttachment(62),
	portBlocked(63),
	incomAdminRxBbCreditPerBuf(64),
	tooManyInvalidFlogis(65),
	deniedDueToPortBinding(66),
	elpFailureRevMismatch(67),
	elpFailureClassFParamErr(68),
	elpFailureClassNParamErr(69),
	elpFailureUnknownFlowCtlCode(70),
	elpFailureInvalidFlowCtlParam(71),
	elpFailureInvalidPortName(72),
	elpFailureInvalidSwitchName(73),
	elpFailureRatovEdtovMismatch(74),
	elpFailureLoopbackDetected(75),
	elpFailureInvalidTxBbCredit(76),
	elpFailureInvalidPayloadSize(77),
	bundleMisCfg(78),
	bitErrRuntimeThreshExceeded(79),
	linkFailLinkReset(80),
	linkFailPortInitFail(81),
	linkFailPortUnusable(82),
	linkFailLossOfSignal(83),
	linkFailLossOfSync(84),
	linkFailNosRcvd(85),
	linkFailOlsRcvd(86),
	linkFailDebounceTimeout(87),
	linkFailLrRcvd(88),
	linkFailCreditLoss(89),
	linkFailRxQOverflow(90),
	linkFailTooManyInterrupts(91),
	linkFailLipRcvdBb(92),
	linkFailBbCreditLoss(93),
	linkFailOpenPrimSignalTimeout(94),
	linkFailOpenPrimSignalReturned(95),
	linkFailLipF8Rcvd(96),
	linkFailLineCardPortShutdown(97),
	fcspAuthenfailure(98),
	fcotChecksumError(99),
	ohmsExtLoopbackTest(100),
	invalidFabricBindExchange(101),
	tovMismatch(102),
	ficonNotEnabled(103),
	ficonNoPortNumber(104),
	ficonBeingEnabled(105),
	ePortProhibited(106),
	portGracefulShutdown(107),
	trunkNotFullyActive(108),
	fabricBindingSwitchWwnNotFound(109),
	fabricBindingDomainInvalid(110),
	fabricBindingDbMismatch(111),
	fabricBindingNoRspFromPeer(112),
	dpvmVsanSuspended(113),
	dpvmVsanNotFound(114),
	trackedPortDown(115),
	ecSuspendedOnLoop(116),
	isolateBundleMisCfg(117),
	noPeerBundleSupport(118),
	portBringupIsolation(119),
	domainNotAllowedIsolated(120),
	virtualIvrDomainOverlapIsolation(121),
	outOfService(122),
	portAuthFailed(123),
	bundleStandby(124),
	portConnectorTypeErr(125),
	errorDisabledReInitLmtReached(126),
	ficonDupPortNum(127),
	localRcf(128),
	twoSwitchesWithSameWWN(129),
	invalidOtherSidePrincEFPReqRecd(130),
	domainOther(131)
	}

EntLogicalIndexOrZero ::=
	INTEGER (0..2147483647)

CiscoURLString ::=
	OCTET STRING (SIZE(1..255))

CiscoHTTPResponseStatusCode ::=
	OCTET STRING

CvE164Address ::=
	OCTET STRING (SIZE(1..128))

OwnerString ::=
	OCTET STRING (SIZE(0..255))

InterfaceIndex ::=
	INTEGER (1..2147483647)

mib-2 OBJECT IDENTIFIER ::= { mgmt 1 }
interfaces OBJECT IDENTIFIER ::= { mib-2 2 }
ifTable OBJECT IDENTIFIER ::= { interfaces 2 }
ifEntry OBJECT IDENTIFIER ::= { ifTable 1 }
ifIndex OBJECT IDENTIFIER ::= { ifEntry 1 }
PagpGroupCapability ::=
	INTEGER

PagpEthcOperationMode ::=
	INTEGER {
	off(1),
	manual(2),
	pagpOn(3)
	}

PagpPortPriority ::=
	INTEGER (0..255)

PagpOperationMode ::=
	INTEGER {
	desirable(1),
	desirableSilent(2),
	automatic(3),
	automaticSilent(4)
	}

PagpLearnMethod ::=
	INTEGER {
	physPort(1),
	agPort(2),
	undefined(3)
	}

ciscoPagpMIB OBJECT IDENTIFIER ::= { ciscoMgmt 98 }

ciscoPagpMIBObjects OBJECT IDENTIFIER ::= { ciscoPagpMIB 1 }

pagpGroupCapabilityConfiguration OBJECT IDENTIFIER ::= { ciscoPagpMIBObjects 1 }

pagpProtocol OBJECT IDENTIFIER ::= { ciscoPagpMIBObjects 2 }

pagpEtherChannelTable OBJECT-TYPE
	SYNTAX SEQUENCE OF PagpEtherChannelEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "The pagpEtherChannelTable specifies, per physical interface,
the Fast Etherchannel operational mode (off, manual, or
protocol-controlled) and the capability of the interface to form
aggregations.  Interfaces that do not support Fast Etherchannel
or PAgP do not have an entry in this table, nor do the
agports, themselves."
	::= { pagpGroupCapabilityConfiguration 1 }


pagpEtherChannelEntry OBJECT-TYPE
	SYNTAX PagpEtherChannelEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "The entry describes the permitted interface aggregation.
Entries are created by the managed system for each interface
which supports Fast Etherchannel."
	INDEX { ifIndex  }

	::= { pagpEtherChannelTable 1 }

pagpEtherChannelEntry ::=
	SEQUENCE {
		pagpEthcOperationMode PagpEthcOperationMode,
		pagpDeviceId MacAddress,
		pagpPhysGroupCapability PagpGroupCapability,
		pagpOperGroupCapability PagpGroupCapability,
		pagpAdminGroupCapability PagpGroupCapability,
		pagpPortPriority PagpPortPriority,
		pagpLearnMethod PagpLearnMethod,
		pagpGroupIfIndex InterfaceIndexOrZero,
		pagpDistributionProtocol INTEGER,
		pagpDistributionAddress INTEGER
		}

pagpEthcOperationMode OBJECT-TYPE
	SYNTAX INTEGER {
	off(1),
	manual(2),
	pagpOn(3)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "The managed device will refuse a request to set
pagpEthcOperationMode to the pagpOn(3) state if the device does
not implement the PAgP protocol.  The managed device will refuse
to set pagpEthcOperationMode to manual(2) or pagpOn(3) if the
values in the interface's pagpAdminGroupCapability variable is
inconsistent with other interfaces' pagpAdminGroupCapability
values."
	::= { pagpEtherChannelEntry 1 }


pagpDeviceId OBJECT-TYPE
	SYNTAX MacAddress
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Uniquely identifies a device which implements Fast
Etherchannel.
The combination of pagpDeviceId and ifIndex must be unique over
all interfaces in a network.  pagpDeviceId typically identifies
a device such as a bridge, router, or file server, but may be
used to identify a smaller unit such as a single multi-interface
circuit card."
	::= { pagpEtherChannelEntry 2 }


pagpPhysGroupCapability OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "The values in pagpPhysGroupCapability indicate the aggregation
capability of the underlying hardware.

The speed, configuration, and status condition of the interface,
e.g. ISL protocol on/off, ifOperStatus On/Off,
full-/half-duplex,
etc., does not affect the state of pagpPhysGroupCapability.

Any number of interfaces with the same value of
pagpPhysGroupCapability can be aggregated together manually."
	::= { pagpEtherChannelEntry 3 }


pagpOperGroupCapability OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "This variable informs the system administrator examining the
Fast
Etherchannel MIB of the capabilities of the current state of the
interface's hardware to form agports.

The pagpOperGroupCapability values are adjusted automatically by
the managed system to reflect configuration changes, such as
port
speed or duplex mode, which can affect the ability of an
interface
to join agports.

pagpOperGroupCapability reflects the ability to form
aggregations; it does not specify whether the interface is
or is not currently a member of such an aggregation.

pagpOperGroupCapability values are chosen so that no two
interfaces
may be aggregated unless both pagpPhysGroupCapability and
pagpAdminGroupCapability permit the aggregation, as well as the
current configuration of the interfaces. 
pagpOperGroupCapability
may change dynamically, as a result of the operation of
automatic
configuration protocols such as PAgP, in order to prevent
illegal
aggregations.

When the PAgP protocol is enabled, then pagpOperGroupCapability
is the value of the group capability being transmitted on this
interface in PAgP packets."
	::= { pagpEtherChannelEntry 4 }


pagpAdminGroupCapability OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "pagpAdminGroupCapability is used by the network administrator
to
control the aggregation of interfaces into agports.  The default
value of pagpAdminGroupCapability is equal to the value of
pagpPhysGroupCapability on that same interface.

A pagpAdminGroupCapability may be set to restrict which
interfaces
may be aggregated.  Any attempt to set an
pagpAdminGroupCapability value that permits two interfaces to
be aggregated together that are prohibited from being aggregated
by the pagpPhysGroupCapability values will be refused.

A given device may place consistency requirements on
pagpAdminGroupCapability values that span multiple interfaces.
For example, one may be changing interfaces 1-4 from group
capabilities 1, 1, 1, 1 to group capabilities 1, 1, 3, 3.  The
capability vector 1, 1, 3, 1 may be illegal.  The managed device
will refuse a request to set a value in an interface's
pagpAdminGroupCapability variable if: 1) that new value would
result in an illegal combination of values; and 2) the interface
being set does not have its pagpEthcOperationMode variable set
to
off(1).

The pagpEthcOperationMode variable may be used to avoid illegal
combinations of pagpAdminGroupCapability values.  As long as a
given interface's pagpEthcOperationMode is in the off state, any
value may be set in that interface's pagpAdminGroupCapability
variable.  In the above example, the third interface could be
disabled, the 3 could be written to the third and fourth
interfaces, and the third interfaces re-enabled.

The operating manuals of the managed device must be consulted to
determine the legality of a given combination of
pagpAdminGroupCapability values."
	::= { pagpEtherChannelEntry 5 }


pagpPortPriority OBJECT-TYPE
	SYNTAX INTEGER (0..255)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "The priority of this interface relative to other interfaces
when determining which interface is to be used in Hot
Standby mode.

Among all interfaces aggregated together with a single agport,
the one with the highest numerical value of pagpPortPriority is
selected for use.  Default value is 128."
	::= { pagpEtherChannelEntry 6 }


pagpLearnMethod OBJECT-TYPE
	SYNTAX INTEGER {
	physPort(1),
	agPort(2),
	undefined(3)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "This interface's learning method value.  Specifies whether this
device is able to learn the location of a source MAC address
based
on the agport on which it was received, agPort(2), or on the
interface on which it was received, physPort(1).  This value is
relevant primarily to IEEE 802.1D transparent bridges.  If a
device
does not associate recieved source MAC addresses with the
interface
on which it arrived, it should use the value agPort(2).

The managed device will refuse an attempt to set the value of
pagpLearnMethod to undefined(3).

A particular device may support either physPort, agPort, or
both."
	::= { pagpEtherChannelEntry 7 }


pagpGroupIfIndex OBJECT-TYPE
	SYNTAX InterfaceIndexOrZero
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "If pagpGroupIfIndex is 0, then the inteface is not aggregated
to an agport, and is unavailable for normal data reception and
transmission.

If pagpGroupIfIndex equals the interface's own ifIndex, the
interface is aggregated to itself, and behaves as a single
interface (as if there were no Fast Etherchannel or PAgP).

If pagpGroupIfIndex has any other value, then it must contain
the
ifIndex of an agport, and the interface is aggregated to that
agport.

The ifType of an agport is propVirtual(53)."
	::= { pagpEtherChannelEntry 8 }


pagpDistributionProtocol OBJECT-TYPE
	SYNTAX INTEGER {
	ip(1),
	mac(2),
	port(3),
	vlanIpPort(4)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "pagpDistributionProtocol controls the load balancing
algorithms used on this interface's agport to distribute
outgoing data frames among its component interfaces, such 
as IP address. Configuring pagpDistributionProtocol on this 
interface may result in having the same change on the 
other interfaces due to hardware architecture."
	::= { pagpEtherChannelEntry 9 }


pagpDistributionAddress OBJECT-TYPE
	SYNTAX INTEGER {
	source(1),
	destination(2),
	both(3)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "pagpDistributionAddress controls the type of distribution 
on the configured pagpDistributionProtocol used on this
interface's agport to distribute outgoing data frames among its
component interfaces. For example if the pagpDistributionProtocol
is configured as 'ip(1)' and the pagpDistributionAddress is 
configured as 'both(3)', then every frame with a given source and               destination IP value pairs will be sent on the same interface. 
Configuring pagpDistributionAddress on this interface may 
result in having the same change on the other interfaces due to 
hardware architecture."
	::= { pagpEtherChannelEntry 10 }


pagpProtocolConfigTable OBJECT-TYPE
	SYNTAX SEQUENCE OF PagpProtocolConfigEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "The table of per-interface Port Aggregation Protocol variables.
Physical interfaces that support Fast Etherchannel and PAgP
protocol have an entry in this table.  If the value of
pagpEthcOperationMode for the corresponding interface is off(1)
or
manual(2), then the the interface does not have any entries in
this table."
	::= { pagpProtocol 1 }


pagpProtocolConfigEntry OBJECT-TYPE
	SYNTAX PagpProtocolConfigEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "The entry describes the operational state of the PAgP protocol
on
a particular physical interface.  Entries in this table are for
interfaces that support both Fast Etherchannel and PAgP
protocol.
The agport itself is not represented in this table."
	INDEX { ifIndex  }

	::= { pagpProtocolConfigTable 1 }

pagpProtocolConfigEntry ::=
	SEQUENCE {
		pagpOperationMode PagpOperationMode,
		pagpPortState INTEGER,
		pagpLastStateChange TimeStamp,
		pagpHelloFrequency INTEGER,
		pagpDistributionAlgorithm DisplayString,
		pagpPartnerCount INTEGER,
		pagpPartnerDeviceId MacAddress,
		pagpPartnerLearnMethod PagpLearnMethod,
		pagpPartnerPortPriority PagpPortPriority,
		pagpPartnerIfIndex InterfaceIndexOrZero,
		pagpPartnerGroupCapability PagpGroupCapability,
		pagpPartnerGroupIfIndex InterfaceIndexOrZero,
		pagpPartnerDeviceName DisplayString,
		pagpPartnerPortName DisplayString,
		pagpPartnerAgportMACAddress MacAddress
		}

pagpOperationMode OBJECT-TYPE
	SYNTAX INTEGER {
	desirable(1),
	desirableSilent(2),
	automatic(3),
	automaticSilent(4)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Controls the operational mode of the PAgP protocol on this
interface."
	::= { pagpProtocolConfigEntry 1 }


pagpPortState OBJECT-TYPE
	SYNTAX INTEGER {
	portDown(1),
	portUp(2),
	dataReceived(3),
	upData(4),
	pagpReceived(5),
	biDirectional(6),
	upPagp(7),
	upMult(8)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "The state of the PAgP state machine on this interface.  Values:

portDown(1)      - interface's ifOperStatus is not Up;

portUp(2)        - interface's ifOperStatus is Up, no packets
yet received;

dataReceived(3)  - data packets, but no PAgP packets, have been
received;

upData(4)        - interface is aggregated, but no PAgP packets
have been received;

pagpReceived(5)  - one or more PAgP packets have been received;

biDirectional(6) - interface has passed PAgP packets in both
directions;

upPagp(7)        - interface is aggregated by means of PAgP;

upMult(8)        - interface is aggregated to an agport, but
connects to more than one external device."
	::= { pagpProtocolConfigEntry 2 }


pagpLastStateChange OBJECT-TYPE
	SYNTAX TimeStamp
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Value of sysUpTime the last time that pagpPortState changed."
	::= { pagpProtocolConfigEntry 3 }


pagpHelloFrequency OBJECT-TYPE
	SYNTAX INTEGER {
	fast(1),
	slow(2)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "If pagpHelloFrequency is slow(2), this device uses a 105 second
timer on this interface to time out receipt of PAgP packet. If
fast(1), this device uses a 3.5 second timer.  PAgP uses fast(1)
by default.  This value is set to slow(2) by action of the PAgP
protocol."
	::= { pagpProtocolConfigEntry 4 }


pagpDistributionAlgorithm OBJECT-TYPE
	SYNTAX DisplayString
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "pagpDistributionAlgorithm describes, in human terms, the method
used on this interface's agport to distribute outgoing data
frames
among its component interfaces.  'Source MAC address', 'Source
and
Destination MAC addresses', or 'IP flow: Source, Destination,
protocol type' might be typical values for
pagpDistributionAlgorithm.  If the interface is not aggregated
with an agport (pagpGroupIfIndex contains either 0 or the
interface's own ifIndex), pagpDistributionAlgorithm may contain
a
DisplayString of length 0.

See the managed device's operation manual to determine the exact
meaning of the information supplied in this variable.  A device
may implement more than one algorithm; selecting among those
algorithms is not possible within this MIB.

The maximum length of this DisplayString is 255 octets."
	::= { pagpProtocolConfigEntry 5 }


pagpPartnerCount OBJECT-TYPE
	SYNTAX INTEGER {
	none(1),
	one(2),
	many(3)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "The number of other devices known to be transmitting PAgP
packets
to this device on this physical interface.

If pagpPartnerCount contains none(1), then the values of
the remainder of the variables in this section are as defined
by each variable for this case.

If pagpPartnerCount contains one(2), then the values of the
remainder of the variables in this section are valid.

If pagpPartnerCount contains many(3), then the values of
the remainder of the variables in this section reflect the
last PAgP packet received.  The values in this section are,
in this case, unreliable, as they may change with the receipt
of each new PAgP packet on this interface."
	::= { pagpProtocolConfigEntry 6 }


pagpPartnerDeviceId OBJECT-TYPE
	SYNTAX MacAddress
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "MAC Address of the partner, obtained from
the PAgP packet last received on this interface.  Contains
all 0 if pagpPartnerCount contains none(1)."
	::= { pagpProtocolConfigEntry 7 }


pagpPartnerLearnMethod OBJECT-TYPE
	SYNTAX INTEGER {
	physPort(1),
	agPort(2),
	undefined(3)
	}
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "The value of the partner's pagpLearnMethod value, obtained from
the PAgP packet last received on this interface.
undefined(3) if pagpPartnerCount contains none(1)."
	::= { pagpProtocolConfigEntry 8 }


pagpPartnerPortPriority OBJECT-TYPE
	SYNTAX INTEGER (0..255)
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "The value of the partner's pagpPortPriority, obtained from the
PAgP packet last received on this interface.  0 if
pagpPartnerCount contains none(1)."
	::= { pagpProtocolConfigEntry 9 }


pagpPartnerIfIndex OBJECT-TYPE
	SYNTAX InterfaceIndexOrZero
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "The value of the partner's ifIndex value, obtained from the
PAgP packet last received on this interface.  0 if
pagpPartnerCount contains none(1).

Use CISCO-CDP-MIB cdpCacheTable to resolve the partner's IP
Address and get ifTable information for this ifIndex."
	::= { pagpProtocolConfigEntry 10 }


pagpPartnerGroupCapability OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "The value of the partner's pagpOperGroupCapability obtained
from
the PAgP packet last received on this interface.  0 if
pagpPartnerCount contains none(1)"
	::= { pagpProtocolConfigEntry 11 }


pagpPartnerGroupIfIndex OBJECT-TYPE
	SYNTAX InterfaceIndexOrZero
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "The value of the partner's pagpGroupIfIndex obtained from the
PAgP packet last received on this interface.  0 if
pagpPartnerCount contains none(1)."
	::= { pagpProtocolConfigEntry 12 }


pagpPartnerDeviceName OBJECT-TYPE
	SYNTAX DisplayString
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "The DisplayString obtained from the PAgP packet last received
on
this interface.  0-length string if pagpPartnerCount contains
none(1), or if no device name has been received.

The value transmitted in a PAgP information packet should be the
sysName value of the device sending the packet.

The maximum size of this DisplayString is 255 octets."
	::= { pagpProtocolConfigEntry 13 }


pagpPartnerPortName OBJECT-TYPE
	SYNTAX DisplayString
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "The DisplayString obtained from the PAgP packet last received
on
this interface.  0-length string if pagpPartnerCount contains
none(1), or if no port name has been received.

The value transmitted in a PAgP packet should be the ifName
value of the interface on the device sending the packet.

The maximum size of this DisplayString is 255 octets."
	::= { pagpProtocolConfigEntry 14 }


pagpPartnerAgportMACAddress OBJECT-TYPE
	SYNTAX MacAddress
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "The MacAddress obtained from the PAgP packet last received on
this interface.  All 0 if pagpPartnerCount contains none(1) or
if
no agport MacAddress has been received in a PAgP packet.

If this value is not all 0, then the device sending the TLV is
promising to use this MAC address, and only this MAC address, in
all frames it sends on the agport."
	::= { pagpProtocolConfigEntry 15 }


pagpProtocolStatsTable OBJECT-TYPE
	SYNTAX SEQUENCE OF PagpProtocolStatsEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "The table of per-interface Port Aggregation Protocol
statistics.  The entries in this table are
present only on an interface that is capable both of
implementing
Fast Etherchannel, and can be controlled by the PAgP protocol.
The agport itself is not represented in this table."
	::= { pagpProtocol 2 }


pagpProtocolStatsEntry OBJECT-TYPE
	SYNTAX PagpProtocolStatsEntry
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "The entry describes the accumulated statistics of the PAgP
protocol operation on the aggregated interface."
	INDEX { ifIndex  }

	::= { pagpProtocolStatsTable 1 }

pagpProtocolStatsEntry ::=
	SEQUENCE {
		pagpInPackets Counter32,
		pagpOutPackets Counter32,
		pagpInFlushes Counter32,
		pagpReturnedFlushes Counter32,
		pagpOutFlushes Counter32,
		pagpInErrors Counter32
		}

pagpInPackets OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Number of PAgP information packets received on this interface."
	::= { pagpProtocolStatsEntry 3 }


pagpOutPackets OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Number of PAgP information packets transmitted on this
interface."
	::= { pagpProtocolStatsEntry 4 }


pagpInFlushes OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Number of PAgP flush packets received and echoed on this
interface not matching any pagpDeviceId belonging to the managed
device.  This counts PAgP flush packets originated by another
device, and indicates that the other device 1) implements the
PAgP
flush feature, and 2) uses that feature to prevent mis-ordering
data frames within an ordered stream."
	::= { pagpProtocolStatsEntry 5 }


pagpReturnedFlushes OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Number of PAgP flush packets received on this interface
matching some pagpDeviceId belonging to this device.  This
counts
PAgP flush packets which were originated by the managed device
and
returned to it by another device, and indicates that 1) the
managed device implements the PAgP flush protocol; and 2) the
other device correctly returns PAgP flush protocol packets."
	::= { pagpProtocolStatsEntry 6 }


pagpOutFlushes OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Number of PAgP flush packets generated on this interface.  Does
not count flush packets counted in pagpInFlushes and returned to
the sender.  If pagpOutFlushes is counting and
pagpReturnedFlushes
is not, the other device may not be returning PAgP flush
packets."
	::= { pagpProtocolStatsEntry 7 }


pagpInErrors OBJECT-TYPE
	SYNTAX Counter
	ACCESS read-only
	STATUS mandatory
	DESCRIPTION "Number of packet received on this interface which were
identified
by the encapsulation as being PAgP packets (of any type, e.g.
information or flush), but which were not valid packets because
of length, version, number of TLVs, or an illegal value in an
enumerated field."
	::= { pagpProtocolStatsEntry 8 }


ciscoPagpMIBConformance OBJECT IDENTIFIER ::= { ciscoPagpMIB 3 }

ciscoPagpMIBCompliances OBJECT IDENTIFIER ::= { ciscoPagpMIBConformance 1 }

ciscoPagpMIBGroups OBJECT IDENTIFIER ::= { ciscoPagpMIBConformance 2 }

ciscoPagpEthcGroupV1R1 OBJECT IDENTIFIER ::= { ciscoPagpMIBGroups 1 }

ciscoPagpPagpGroupV1R1 OBJECT IDENTIFIER ::= { ciscoPagpMIBGroups 2 }

ciscoPagpEthcGroupV2R2 OBJECT IDENTIFIER ::= { ciscoPagpMIBGroups 3 }

END

