PHOBOSLINK-MIB DEFINITIONS ::= BEGIN

IMPORTS
    enterprises, Counter, TimeTicks, IpAddress,
	MODULE-IDENTITY, OBJECT-TYPE,
	NOTIFICATION-TYPE			FROM SNMPv2-SMI
    DisplayString, PhysAddress			FROM SNMPv2-TC
    MODULE-COMPLIANCE, OBJECT-GROUP		FROM SNMPv2-CONF;

-- Our enterprise

phobos	OBJECT IDENTIFIER ::= { enterprises 3884 }
nic	OBJECT IDENTIFIER ::= { phobos 1 }

phoboslinkMIB MODULE-IDENTITY
    LAST-UPDATED "9902081030Z"
    ORGANIZATION "Phobos Corporation"
    CONTACT-INFO
	"Rory Cejka
	 Phobos Corporation
	 2060 East 2100 South
	 Salt Lake City, UT 84109
	 US

	 801-474-9247
	 rcejka@phobos.com"
    DESCRIPTION
	"The MIB module to describe PhobosLink objects for Phobos
	 Corporation and handle trunking groups of ports."
    REVISION      "9902111700Z"
    DESCRIPTION
	"Added cpPciBusWidth, agentMessage and configLastChangeTime to MIB"
    REVISION      "9902081030Z"
    DESCRIPTION
	"Initial revision, internal use only."
    ::= { nic 1 }

-- The Information Group

information     OBJECT IDENTIFIER ::= { phoboslinkMIB 1 }

numGroups OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"The number of PhobosLink interface groups present on this system."
    ::= { information 1 }

numPortsInAll OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"The number of network ports present on this system that could be
	 put under PhobosLink control, whether currently trunked or not."
    ::= { information 2 }

numPortsInUse OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"The number of network ports currently under PhobosLink control on this system."
    ::= { information 3 }

numCards OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"The number of Phobos network adapters present on this system."
    ::= { information 4 }

phobosLinkVersion OBJECT-TYPE
    SYNTAX  DisplayString (SIZE (0..20))
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"The version of PhobosLink running on this system."
    ::= { information 5 }

operatingSystem OBJECT-TYPE
    SYNTAX  INTEGER {
		unknown(0),
		nt(1),
		linux(2)
		}
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"This is the operating system of the managed computer."
    ::= { information 6 }

operatingSystemVersion OBJECT-TYPE
    SYNTAX  DisplayString (SIZE (0..40))
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"The operating system version."
    ::= { information 7 }

agentVersion OBJECT-TYPE
    SYNTAX  DisplayString (SIZE (0..20))
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"The PhobosLink SNMP agent version."
    ::= { information 8 }

agentUpTime OBJECT-TYPE
    SYNTAX  TimeTicks
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"The time (in hundredths of a second) since the
	 network management portion of the system was last
	 re-initialized."
    ::= { information 9 }

agentMessage OBJECT-TYPE
    SYNTAX  DisplayString (SIZE (0..255))
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"An imprecise informational message designed for human consumption
	 indicating the best known current state of the agent and/or driver."
    ::= { information 10 }

configLastChangeTime OBJECT-TYPE
    SYNTAX  DisplayString (SIZE (0..20))
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"The timestamp (in sysUpTime format) of the last change in the
	 driver's configuration -- number of groups, ports, cards, group
	 port assignments, etc."
    ::= { information 11 }


-- Group Statistics Table


groupStatsTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF GroupStatsEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
	"The table listing PhobosLink interface group statistics."
    ::= { phoboslinkMIB 2 }

groupStatsEntry OBJECT-TYPE
    SYNTAX  GroupStatsEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
	"Each entry lists statistics for a interface group."
    INDEX   { gGroupIndex }
    ::= { groupStatsTable 1 }

GroupStatsEntry ::=
    SEQUENCE {
	gGroupIndex
	    INTEGER,
	gGroupName
	    DisplayString,
	gGroupNumPorts
	    INTEGER,
        gGroupType
            INTEGER,
        gGroupTransmitPolicy
            INTEGER,
	gIpAddress
	    IPAddress,
	gNetAddress
	    PhysAddress,
	gDataRate
	    INTEGER,
	gTotalPacketsTransmitted
	    Counter,
	gTotalBytesTransmitted
	    Counter,
	gTotalPacketsReceived
	    Counter,
	gTotalBytesReceived
	    Counter,
	gTotalTransmitErrors
	    Counter,
	gTotalReceiveErrors
	    Counter,
        gInterfaceNumber
	    INTEGER
	}

gGroupIndex OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"A unique value assigned to each interface group.
	 This is an increasing numeric value ranging between
	 1 and the value of numGroups."
    ::= { groupStatsEntry 1 }

gGroupName OBJECT-TYPE
    SYNTAX  DisplayString (SIZE (0..80))
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"The descriptive name assigned to the interface group
	 at the time the group was configured."
    ::= { groupStatsEntry 2 }
 
gGroupNumPorts OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"The number of ports in the interface group.
	 An group may consist of one or more ports."
    ::= { groupStatsEntry 3 }

gGroupType OBJECT-TYPE
    SYNTAX  INTEGER {
		failover(1),
		symmetric(2),
		asymmetric(3)
		}
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"This is the group type.
	 failover indicates a multiple port group supporting failover resiliency.
	 symmetric indicates multiple ports compatible with Cisco Fast EtherChannel.
	 asymmetric indicates multiple ports compatible with dumb switches,
	 like Adaptec's trunking"
    ::= { groupStatsEntry 4 }

gGroupTransmitPolicy OBJECT-TYPE
    SYNTAX  INTEGER {
		round-robin(1),
		fixed(2),
		adaptive(3)
		}
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"This is the group transmission policy.
	 round-robin indicates transmission of successive packets over successive
		ports in round-robin fashion.  Does not necessarily preserve
		ordering, and thus should generally only be used for testing.
	 fixed indicates transmission of packets to ports based on the low
		bits of the destination address.
	 adaptive indicates transmission of packets to ports based on destination
		address with periodic load rebalancing."
    ::= { groupStatsEntry 5 }
 
gIpAddress OBJECT-TYPE
    SYNTAX  IPAddress
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"The IP address assigned to this interface group."
    ::= { groupStatsEntry 6 }

gNetAddress OBJECT-TYPE
    SYNTAX  PhysAddress
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"The network address currently assigned this interface group.
	 This address may be administered by software.  Will default
	 to the network address of the first active port in the group."
    ::= { groupStatsEntry 7 }

gDataRate OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"This is the rate at which data is transferred over this group,
	 measured in Mbits/sec."
    ::= { groupStatsEntry 8 }

gTotalPacketsTransmitted OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"This is the total number of packets transmitted over this group."
    ::= { groupStatsEntry 9 }

gTotalBytesTransmitted OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"This is the total number of bytes transmitted over this group."
    ::= { groupStatsEntry 10 }

gTotalPacketsReceived OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"This is the total number of packets received over this group."
    ::= { groupStatsEntry 11 }

gTotalBytesReceived OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"This is the total number of bytes received over this group."
    ::= { groupStatsEntry 12 }

gTotalTransmitErrors OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"This is the total number of Transmit errors seen on this group."
    ::= { groupStatsEntry 13 }

gTotalReceiveErrors OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"This is the total number of Receive errors seen on this group."
    ::= { groupStatsEntry 14 }

gInterfaceNumber OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"Operating system assigned interface number."
    ::= { groupStatsEntry 15 }


-- Port Statistics Table


portStatsTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF PortStatsEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
	"The table listing PhobosLink network port statistics."
    ::= { phoboslinkMIB 3 }

portStatsEntry OBJECT-TYPE
    SYNTAX  PortStatsEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
	"Each entry lists statistics for a single network port."
    INDEX   { pGroupIndex,
		pPortIndex }
    ::= { portStatsTable 1 }

PortStatsEntry ::=
    SEQUENCE {
	  pGroupIndex
	      INTEGER,
	  pPortIndex
	      INTEGER,
	  pPortName
	      DisplayString,
	  pCardNumber
	      INTEGER,
	  pCardPortNumber
	      INTEGER,
	  pDataRate
	      INTEGER,
	  pConnectionType
	      INTEGER,		
	  pStatus
	      INTEGER,
	  pPermNetAddress
	      PhysAddress,
	  pCurrentNetAddress
	      PhysAddress,
	  pTotalPacketsTransmitted
	      Counter,
	  pTotalBytesTransmitted
	      Counter,
	  pTotalPacketsReceived
	      Counter,
	  pTotalBytesReceived
	      Counter,
	  pTotalTransmitErrors
	      Counter,
	  pTotalReceiveErrors
	      Counter
	  }

pGroupIndex OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"A unique value assigned to each interface group.
	 This is an increasing numeric value ranging between
	 1 and the value of numGroups.  Same as gGroupIndex."
    ::= { portStatsEntry 1 }

pPortIndex OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"A unique value assigned to each port on a particular group.
	 This is an increasing numeric value ranging between 1 and the value
	 of gGroupNumPorts for the group indexed by gGroupIndex."
    ::= { portStatsEntry 2 }

pPortName OBJECT-TYPE
    SYNTAX  DisplayString (SIZE (0..80))
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"The descriptive name assigned to the port.
	 This may not be supported by all operating systems."
    ::= { portStatsEntry 3 }

pCardNumber OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"The  value of cpCardIndex that corresponds to this port."
    ::= { portStatsEntry 4 }

pCardPortNumber OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"The  value of cpCardPortIndex that corresponds to this port."
    ::= { portStatsEntry 5 }

pDataRate OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"This is the rate at which data is transferred over this port,
	 measured in MPBS.  A value of zero is allowed, and it indicates
	 the port is in adaptive mode.  Use the pStatus object to distinguish
	 when the port is not actually available."
    ::= { portStatsEntry 6 }

pConnectionType OBJECT-TYPE
    SYNTAX  INTEGER {
		auto-negotiate(0),
		10BaseT-half-duplex(1),
		10BaseT-full-duplex(2),
		100BaseT-half-duplex(3),
		100BaseT-full-duplex(4),
		1000BaseT-half-duplex(5),
		1000BaseT-full-duplex(6),
		unKnown(7)
		}
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"The current connection type of the port."
    ::= { portStatsEntry 7 }

pStatus OBJECT-TYPE
    SYNTAX  INTEGER {
		portActive(1),
		portDown(2),
		portInStandby(3)
		}
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"The current status of the port.
	 portActive indicates a functioning port.
	 portDown indicates a port that is not functioning.
	 portInStandby indicates a port which is designated as a backup
	   in a failover interface group."
    ::= { portStatsEntry 8 }

pPermNetAddress OBJECT-TYPE
    SYNTAX  PhysAddress
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"The permanent network address assigned to this port.
	 This is the node address stored permanently in the adapter."
    ::= { portStatsEntry 9 }

pCurrentNetAddress OBJECT-TYPE
    SYNTAX  PhysAddress
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"The network address currently assigned to this port.
	 This address may be administered by software."
    ::= { portStatsEntry 10 }

pTotalPacketsTransmitted OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"This is the total number of packets transmitted over this port."
    ::= { portStatsEntry 11 }

pTotalBytesTransmitted OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"This is the total number of bytes transmitted over this port."
    ::= { portStatsEntry 12 }

pTotalPacketsReceived OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"This is the total number of packets received over this port."
    ::= { portStatsEntry 13 }

pTotalBytesReceived OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"This is the total number of bytes received over this port."
    ::= { portStatsEntry 14 }

pTotalTransmitErrors OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"This is the total number of transmit errors seen on this port."
    ::= { portStatsEntry 15 }

pTotalReceiveErrors OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"This is the total number of receive errors seen on this port."
    ::= { portStatsEntry 16 }


-- Card Information Table


cardInformationTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF CardInformationEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
	"A table listing Phobos network card information."
    ::= { phoboslinkMIB 4 }

cardInformationEntry OBJECT-TYPE
    SYNTAX  CardInformationEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
	"Each entry lists information about a single network card."
    INDEX   { cCardIndex }
    ::= { cardInformationTable 1 }

CardInformationEntry ::=
    SEQUENCE {
	  cCardIndex
	      INTEGER,
	  cCardDescription
	      DisplayString,
	  cPortsOnCard
	      INTEGER
	  }

cCardIndex OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"A unique value assigned to each network card.
	 This is an increasing numeric value ranging between
	 1 and the value of NumCards."
    ::= { cardInformationEntry 1 }

cCardDescription OBJECT-TYPE
    SYNTAX  DisplayString (SIZE (0..80))
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"The descriptive name assigned to the network card."
    ::= { cardInformationEntry 2 }
 
cPortsOnCard OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"The number of ports on the network card."
    ::= { cardInformationEntry 3 }
 

-- Card Port Information Table


cardPortInfoTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF CardPortInfoEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
	"This table indicates the group and port number associated
	 with each port on all installed network cards."
    ::= { phoboslinkMIB 5 }

cardPortInfoEntry OBJECT-TYPE
    SYNTAX  CardPortInfoEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
	"Each entry lists information for a single port on a network card."
    INDEX   { cpCardIndex,
		cpCardPortIndex }
    ::= { cardPortInfoTable 1 }

CardPortInfoEntry ::=
    SEQUENCE {
	  cpCardIndex
	      INTEGER,
	  cpCardPortIndex
	      INTEGER,
	  cpGroupNumber
	      INTEGER,
	  cpPortNumber
	      INTEGER,
	  cpPciBus
	      INTEGER,
	  cpPciSlot
	      INTEGER,
	  cpPciBusWidth
	      INTEGER
	  }

cpCardIndex OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"A unique value assigned to each network card.
	 This is an increasing numeric value ranging between
	 1 and the value of NumCards."
    ::= { cardPortInfoEntry 1 }

cpCardPortIndex OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"A unique value assigned to each port on a particular network card.
	 This is an increasing numeric value ranging between
	 1 and the value of cPortsOnCard for the card indexed by cCardIndex."
    ::= { cardPortInfoEntry 2 }

cpGroupNumber OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"The  value of pGroupIndex that corresponds to this port.
	 If this port is not part of an group it will be set to 0"
    ::= { cardPortInfoEntry 3 }

cpPortNumber OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"The  value of pPortIndex that corresponds to this port.
	 If this port is not part of an group it will be set to 0"
    ::= { cardPortInfoEntry 4 }

cpPciBus OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"The PCI bus number associated with this port."
    ::= { cardPortInfoEntry 5 }

cpPciSlot OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"The PCI slot number associated with this port."
    ::= { cardPortInfoEntry 6 }

cpPciBusWidth OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
	"The PCI bus width in use by this port. Currently defined values
	 are 32 or 64 bits."
    ::= { cardPortInfoEntry 7 }


-- Traps


--phoboslinkTraps OBJECT IDENTIFIER ::= { phoboslinkMIB 0 }
--
--
--phoboslinkPortUp NOTIFICATION-TYPE
--    OBJECTS {pGroupIndex, pPortIndex}
--    STATUS current
--    DESCRIPTION
--	"The port is now available."
--    ::= { phoboslinkTraps 1 }
--
--phoboslinkPortDown NOTIFICATION-TYPE
--    OBJECTS {pGroupIndex, pPortIndex}
--    STATUS current
--    DESCRIPTION
--	"The port is now unavailable."
--    ::= { phoboslinkTraps 2 }
--
--phoboslinkPortStandby NOTIFICATION-TYPE
--    OBJECTS {pGroupIndex, pPortIndex}
--    STATUS current
--    DESCRIPTION
--	"The port is acting as a failover backup."
--    ::= { phoboslinkTraps 3 }


phoboslinkPortUp TRAP-TYPE
    ENTERPRISE phoboslinkMIB
    VARIABLES {pGroupIndex, pPortIndex}
    DESCRIPTION
	"The port is now available."
--#TYPE "Port Available"
--#CATEGORY "Status Events"
--#SEVERITY INFORMATIONAL
--#SUMMARY "PhobosLink Group %d Port %d is up."
--#ARGUMENTS {0,1}
--#STATE OPERATIONAL
    ::= 1

phoboslinkPortDown TRAP-TYPE
    ENTERPRISE phoboslinkMIB
    VARIABLES {pGroupIndex, pPortIndex}
    DESCRIPTION
	"The port is now unavailable."
--#TYPE "Port Unavailable"
--#CATEGORY "Error Events"
--#SEVERITY MAJOR
--#SUMMARY "PhobosLink Group %d Port %d is down."
--#ARGUMENTS {0,1}
--#STATE NONOPERATIONAL
    ::= 2

phoboslinkPortStandby TRAP-TYPE
    ENTERPRISE phoboslinkMIB
    VARIABLES {pGroupIndex, pPortIndex}
    DESCRIPTION
	"The port is acting as a failover backup."
--#TYPE "Port acting as failover backup"
--#CATEGORY "Status Events"
--#SEVERITY INFORMATIONAL
--#SUMMARY "PhobosLink Group %d Port %d is acting as a failover backup."
--#ARGUMENTS {0,1}
--#STATE OPERATIONAL
    ::= 3


-- conformance information

phoboslinkConformance OBJECT IDENTIFIER ::= { phoboslinkMIB 6 }

phoboslinkCompliances OBJECT IDENTIFIER ::= { phoboslinkConformance 1 }
phoboslinkGroups      OBJECT IDENTIFIER ::= { phoboslinkConformance 2 }


-- compliance statements

phoboslinkCompliance1 MODULE-COMPLIANCE
    STATUS  current
    DESCRIPTION
            "The compliance statement for SNMPv2 entities for PhobosLink."

    MODULE  -- this module
        MANDATORY-GROUPS { phoboslinkGeneralInformationGroup,
			   phoboslinkGroupStatsGroup,
			   phoboslinkPortStatsGroup,
			   phoboslinkCardInformationGroup,
			   phoboslinkCardPortInfoGroup }

    ::= { phoboslinkCompliances 1 }


-- units of conformance

phoboslinkGeneralInformationGroup    OBJECT-GROUP
    OBJECTS { numGroups, numPortsInAll, numPortsInUse, numCards, phobosLinkVersion,
	      operatingSystem, operatingSystemVersion,
	      agentVersion, agentUpTime, agentMessage, configLastChangeTime }
    STATUS  current
    DESCRIPTION
            "A collection of objects providing information applicable to
            all PhobosLink entities."
    ::= { phoboslinkGroups 1 }

phoboslinkGroupStatsGroup    OBJECT-GROUP
    OBJECTS { gGroupIndex, gGroupName, gGroupNumPorts, gGroupType,
	      gGroupTransmitPolicy, gIpAddress, gNetAddress, gDataRate,
	      gTotalPacketsTransmitted, gTotalBytesTransmitted,
	      gTotalPacketsReceived, gTotalBytesReceived,
	      gTotalTransmitErrors, gTotalReceiveErrors, gInterfaceNumber }
    STATUS  current
    DESCRIPTION
            "A collection of objects providing information applicable to
            all PhobosLink group entities."
    ::= { phoboslinkGroups 2 }

phoboslinkPortStatsGroup    OBJECT-GROUP
    OBJECTS { pGroupIndex, pPortIndex, pPortName,
	      pCardNumber, pCardPortNumber, pDataRate, pConnectionType,
	      pStatus, pPermNetAddress, pCurrentNetAddress,
	      pTotalPacketsTransmitted, pTotalBytesTransmitted,
	      pTotalPacketsReceived, pTotalBytesReceived,
	      pTotalTransmitErrors, pTotalReceiveErrors }
    STATUS  current
    DESCRIPTION
            "A collection of objects providing information applicable to
            all PhobosLink port entities."
    ::= { phoboslinkGroups 3 }

phoboslinkCardInformationGroup    OBJECT-GROUP
    OBJECTS { cCardIndex, cCardDescription, cPortsOnCard }
    STATUS  current
    DESCRIPTION
            "A collection of objects providing information applicable to
            all PhobosLink card entities."
    ::= { phoboslinkGroups 4 }

phoboslinkCardPortInfoGroup    OBJECT-GROUP
    OBJECTS { cpCardIndex, cpCardPortIndex, cpGroupNumber, cpPortNumber,
	      cpPciBus, cpPciSlot, cpPciBusWidth }
    STATUS  current
    DESCRIPTION
            "A collection of objects providing information applicable to
            all PhobosLink card-port entities."
    ::= { phoboslinkGroups 5 }

END
