RBTWS-CLIENT-SESSION-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-COMPLIANCE, OBJECT-GROUP
        FROM SNMPv2-CONF
    MODULE-IDENTITY, OBJECT-TYPE,
    IpAddress, Unsigned32, Integer32, Counter64
        FROM SNMPv2-SMI
    TEXTUAL-CONVENTION, DisplayString, MacAddress, TimeStamp
        FROM SNMPv2-TC
    RbtwsAccessType, RbtwsRadioNum, RbtwsApSerialNum, RbtwsRadioRate, RbtwsRssi,
    RbtwsApNum
        FROM RBTWS-AP-TC
    RbtwsClientSessionState, RbtwsClientAuthenProtocolType,
    RbtwsUserAccessType, RbtwsClientAccessMode
        FROM RBTWS-CLIENT-SESSION-TC
    rbtwsMibs
        FROM RBTWS-ROOT-MIB;


rbtwsClientSessionMib MODULE-IDENTITY
    LAST-UPDATED "200805231604Z"
    ORGANIZATION "Enterasys Networks"
    CONTACT-INFO
        "www.enterasys.com"
    DESCRIPTION
        "Client Session MIB.

        AP = Access Point;
        AC = Access Controller (wireless switch),
             the device that runs a SNMP Agent implementing this MIB.

        Copyright 2008 Enterasys Networks, Inc.
        All rights reserved.
        This SNMP Management Information Base
        Specification (Specification) embodies
        confidential and proprietary intellectual property.

        This Specification is supplied 'AS IS' and Enterasys Networks
        makes no warranty, either express or implied, as to the use,
        operation, condition, or performance of the Specification."

    REVISION "200805230055Z"
    DESCRIPTION "v2.4.0: Updated conformance section
                to reflect the history of changes to this MIB:
                added more compliance statements and groups.
                This will be published in 7.0 release."

    REVISION "200711010054Z"
    DESCRIPTION "v2.3.4: Added two new columnar objects:
        - rbtwsClSessClientSessPhysPortNum,
        - rbtwsClSessRoamHistPhysPortNum,
        to indicate the port used by wired-auth clients.
        (for 6.2 release)"

    REVISION "200710090051Z"
    DESCRIPTION "v2.3.1: Added four new columnar objects:
        - rbtwsClSessClientSessAccessMode,
                obsoleting rbtwsClSessClientSessAccessType;
        - rbtwsClSessClientSessApNum,
                obsoleting rbtwsClSessClientSessPortOrNum;
        - rbtwsClSessRoamHistAccessMode,
                obsoleting rbtwsClSessRoamHistAccessType;
        - rbtwsClSessRoamHistApNum,
                obsoleting rbtwsClSessRoamHistApNumOrPort.
        Reason: in 6.0, direct- and network-attached APs were unified.
        (for 6.2 release)"

    REVISION "200611160043Z"
    DESCRIPTION "v2.2.1: added one value (21) to RbtwsSessState"

    REVISION "200610170042Z"
    DESCRIPTION "v2.2.0: Described semantics of rbtwsClSessRoamHistTimeStamp"

    REVISION "200609260032Z"
    DESCRIPTION "v2.1.1: Added three new columnar objects:
        - rbtwsClSessClientSessDot1xAuthMethod,
                to be used instead of rbtwsClSessClientSessAuthMethod;
        - rbtwsClSessClientSessSessionState,
                to be used instead of rbtwsClSessClientSessState;
        - rbtwsClSessClientSessLoginType,
                to provide context for interpreting the values of
                the above objects (Dot1xAuthMethod, SessionState).

        Changed behaviour for rbtwsClSessClientSessAuthServer:
        provides system IP when auth is done via local DB
        (it used to be 0.0.0.0 in such cases)."

    REVISION "200607290021Z"
    DESCRIPTION "v2.0.2: Fixed imports and compliance group"

    REVISION "200606060010Z"
    DESCRIPTION "v2.0.1: Adding scalar for total number of sessions."

    REVISION "200603300008Z"
    DESCRIPTION "v1.0: Initial version, for 4.1 release"

    ::= { rbtwsMibs 4 }


-- Textual conventions

RbtwsEncryptionType ::= TEXTUAL-CONVENTION
    STATUS       current
    DESCRIPTION
        "Encryption types."
    SYNTAX INTEGER {
        none            (1),
        aesCcm          (2),
        aesOcb          (3),
        tkip            (4),
        wep104          (5),
        wep40           (6),
        staticWep       (7)
    }

RbtwsAuthMethod ::= TEXTUAL-CONVENTION
    STATUS       deprecated
    DESCRIPTION
        "Authentication methods."
    SYNTAX INTEGER {
        none            (1),
        identity        (2),
        notification    (3),
        nak             (4),
        md5             (5),
        otp             (6),
        tokenCard       (7),
        tls             (14),
        leap            (18),
        ttls            (22),
        peap            (26),
        msChapv2        (27),
        eapExt          (34),
        passThru        (255)
    }

RbtwsSessState ::= TEXTUAL-CONVENTION
    STATUS       deprecated
    DESCRIPTION
        "Session states."
    SYNTAX INTEGER {
        invalid             (1),
        initializing        (2),
        assocReqAndAuth     (3),
        assocAndAuth        (4),
        wired               (5),
        webLoginPh1         (6),
        webLoginPh1B        (7),
        webLoginPh1F        (8),
        webLoginPh2         (9),
        webPortalLogin      (10),
        authorizing         (11),
        authorized          (12),
        active              (13),
        activePortal        (14),
        deassociated        (15),
        roamingAway         (16),
        updatedToRoam       (17),
        roamedAway          (18),
        killing             (19),
        free                (20),
        enforceSoda         (21)
    }


-- Object definitions

--
-- The ClientSession MIB Tree
--

rbtwsClientSessionObjects    OBJECT IDENTIFIER ::= { rbtwsClientSessionMib 1 }
rbtwsClientSessionDataObjects  OBJECT IDENTIFIER ::= { rbtwsClientSessionObjects 1 }


-- Client Session Table
-- ====================

rbtwsClSessClientSessionTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF RbtwsClSessClientSessionEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client Session Table."
    ::= { rbtwsClientSessionDataObjects 1 }

rbtwsClSessClientSessionEntry OBJECT-TYPE
    SYNTAX      RbtwsClSessClientSessionEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Information about a particular client session."
    INDEX   { rbtwsClSessClientSessMacAddress }
    ::= { rbtwsClSessClientSessionTable 1 }

RbtwsClSessClientSessionEntry ::= SEQUENCE {
        rbtwsClSessClientSessMacAddress       MacAddress,
        rbtwsClSessClientSessSessionId        DisplayString,
        rbtwsClSessClientSessUsername         DisplayString,
        rbtwsClSessClientSessIpAddress        IpAddress,
        rbtwsClSessClientSessEncryptionType   RbtwsEncryptionType,
        rbtwsClSessClientSessVlan             DisplayString,
        rbtwsClSessClientSessApSerialNum      RbtwsApSerialNum,
        rbtwsClSessClientSessRadioNum         RbtwsRadioNum,
        rbtwsClSessClientSessAccessType       RbtwsAccessType,
        rbtwsClSessClientSessAuthMethod       RbtwsAuthMethod,
        rbtwsClSessClientSessAuthServer       IpAddress,
        rbtwsClSessClientSessPortOrNum        Unsigned32,
        rbtwsClSessClientSessVlanTag          Unsigned32,
        rbtwsClSessClientSessTimeStamp        TimeStamp,
        rbtwsClSessClientSessSsid             DisplayString,
        rbtwsClSessClientSessState            RbtwsSessState,
        rbtwsClSessClientSessLoginType        RbtwsUserAccessType,
        rbtwsClSessClientSessDot1xAuthMethod  RbtwsClientAuthenProtocolType,
        rbtwsClSessClientSessSessionState     RbtwsClientSessionState,
        rbtwsClSessClientSessAccessMode       RbtwsClientAccessMode,
        rbtwsClSessClientSessApNum            RbtwsApNum,
        rbtwsClSessClientSessPhysPortNum      Unsigned32
    }

rbtwsClSessClientSessMacAddress OBJECT-TYPE
    SYNTAX      MacAddress
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client MAC address."
    ::= { rbtwsClSessClientSessionEntry 1 }

rbtwsClSessClientSessSessionId OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..30))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Session ID is a string long enough to be sure
        we can make it unique over a long time."
    ::= { rbtwsClSessClientSessionEntry 2 }

rbtwsClSessClientSessUsername OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..80))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Client user name."
    ::= { rbtwsClSessClientSessionEntry 3 }

rbtwsClSessClientSessIpAddress OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Client IP address.
        If the client has no IP address, the value will be 0.0.0.0."
    ::= { rbtwsClSessClientSessionEntry 4 }

rbtwsClSessClientSessEncryptionType OBJECT-TYPE
    SYNTAX      RbtwsEncryptionType
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Encryption type."
    ::= { rbtwsClSessClientSessionEntry 5 }

rbtwsClSessClientSessVlan OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..80))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The name of the client VLAN."
    ::= { rbtwsClSessClientSessionEntry 6 }

rbtwsClSessClientSessApSerialNum OBJECT-TYPE
    SYNTAX      RbtwsApSerialNum
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Serial Number of the AP this client is connected to.
        It is a zero length string when wired access is used."
    ::= { rbtwsClSessClientSessionEntry 7 }

rbtwsClSessClientSessRadioNum OBJECT-TYPE
    SYNTAX      RbtwsRadioNum
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of the Radio that provides service to this client.
        It is 'not-applicable' when wired access is used."
    ::= { rbtwsClSessClientSessionEntry 8 }

rbtwsClSessClientSessAccessType OBJECT-TYPE
    SYNTAX      RbtwsAccessType
    MAX-ACCESS  read-only
    STATUS      obsolete
    DESCRIPTION
        "Access type this client uses (via AP, DAP or wired).
        Obsoleted by rbtwsClSessClientSessAccessMode."
    ::= { rbtwsClSessClientSessionEntry 9 }

rbtwsClSessClientSessAuthMethod OBJECT-TYPE
    SYNTAX      RbtwsAuthMethod
    MAX-ACCESS  read-only
    STATUS      deprecated
    DESCRIPTION
        "Authentication Method. Deprecated, use
        rbtwsClSessClientSessDot1xAuthMethod instead."
    ::= { rbtwsClSessClientSessionEntry 10 }

rbtwsClSessClientSessAuthServer OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Authentication Server's IP Address.
        If the client is authenticated via the local DB,
        or not authenticated, its value will be the system IP."
    ::= { rbtwsClSessClientSessionEntry 11 }

rbtwsClSessClientSessPortOrNum OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      obsolete
    DESCRIPTION
        "Port number.
        Obsoleted by rbtwsClSessClientSessApNum."
    ::= { rbtwsClSessClientSessionEntry 12 }
    
rbtwsClSessClientSessVlanTag OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "VLAN tag."
    ::= { rbtwsClSessClientSessionEntry 13 }

rbtwsClSessClientSessTimeStamp OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Session start time stamp."
    ::= { rbtwsClSessClientSessionEntry 14 }

rbtwsClSessClientSessSsid OBJECT-TYPE
    SYNTAX      DisplayString (SIZE (0..33))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "SSID."
    ::= { rbtwsClSessClientSessionEntry 15 }

rbtwsClSessClientSessState OBJECT-TYPE
    SYNTAX      RbtwsSessState
    MAX-ACCESS  read-only
    STATUS      deprecated
    DESCRIPTION
        "Session state. Deprecated, use
        rbtwsClSessClientSessSessionState instead."
    ::= { rbtwsClSessClientSessionEntry 16 }

rbtwsClSessClientSessLoginType OBJECT-TYPE
    SYNTAX      RbtwsUserAccessType
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Login type (mac, web, dot1x or last-resort)."
    ::= { rbtwsClSessClientSessionEntry 17 }

rbtwsClSessClientSessDot1xAuthMethod OBJECT-TYPE
    SYNTAX      RbtwsClientAuthenProtocolType
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Dot1x Authentication Method."
    ::= { rbtwsClSessClientSessionEntry 18 }

rbtwsClSessClientSessSessionState OBJECT-TYPE
    SYNTAX      RbtwsClientSessionState
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Session non-intermediate state."
    ::= { rbtwsClSessClientSessionEntry 19 }

rbtwsClSessClientSessAccessMode OBJECT-TYPE
    SYNTAX      RbtwsClientAccessMode
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Access mode (type) this client uses (via AP or wired).
        Obsoletes rbtwsClSessClientSessAccessType since in 6.0
        directly attached APs and DAPs were unified."
    ::= { rbtwsClSessClientSessionEntry 20 }

rbtwsClSessClientSessApNum OBJECT-TYPE
    SYNTAX      RbtwsApNum
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The AP providing wireless service to this client
        is identified by its administratively assigned AP Number,
        unique on same AC (switch),
        regardless of how APs are attached to the AC.

        Meaningful when rbtwsClSessClientSessAccessMode = 'ap'.

        Obsoletes rbtwsClSessClientSessPortOrNum since in 6.0
        directly attached APs and DAPs were unified."
    ::= { rbtwsClSessClientSessionEntry 21 }

rbtwsClSessClientSessPhysPortNum OBJECT-TYPE
    SYNTAX      Unsigned32 (0..1024)  -- see RbtwsPhysPortNumber from rbtwsPortMib
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The physical port used by this wired-auth client
        is identified by its port number on the AC (switch).

        Zero means the port is unknown or not applicable
        (for example, when rbtwsClSessClientSessAccessMode = 'ap').

        Meaningful when rbtwsClSessClientSessAccessMode = 'wired'."
    ::= { rbtwsClSessClientSessionEntry 22 }


-- Roaming History Table
-- =====================

rbtwsClSessRoamingHistoryTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF RbtwsClSessRoamingHistoryEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Roaming History Table.
        Expansion of Client Session Table."
    ::= { rbtwsClientSessionDataObjects 2 }

rbtwsClSessRoamingHistoryEntry OBJECT-TYPE
    SYNTAX      RbtwsClSessRoamingHistoryEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Roaming History Entry."
    INDEX   { rbtwsClSessRoamHistMacAddress, rbtwsClSessRoamHistIndex }
    ::= { rbtwsClSessRoamingHistoryTable 1 }

RbtwsClSessRoamingHistoryEntry ::= SEQUENCE {
        rbtwsClSessRoamHistMacAddress      MacAddress,
        rbtwsClSessRoamHistIndex           Unsigned32,
        rbtwsClSessRoamHistApSerialNum     RbtwsApSerialNum,
        rbtwsClSessRoamHistRadioNum        RbtwsRadioNum,
        rbtwsClSessRoamHistAccessType      RbtwsAccessType,
        rbtwsClSessRoamHistApNumOrPort     Unsigned32,
        rbtwsClSessRoamHistIpAddress       IpAddress,
        rbtwsClSessRoamHistTimeStamp       TimeStamp,
        rbtwsClSessRoamHistAccessMode      RbtwsClientAccessMode,
        rbtwsClSessRoamHistApNum           RbtwsApNum,
        rbtwsClSessRoamHistPhysPortNum     Unsigned32
    }

rbtwsClSessRoamHistMacAddress OBJECT-TYPE
    SYNTAX      MacAddress
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client MAC address."
    ::= { rbtwsClSessRoamingHistoryEntry 1 }

rbtwsClSessRoamHistIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Entry index."
    ::= { rbtwsClSessRoamingHistoryEntry 2 }

rbtwsClSessRoamHistApSerialNum OBJECT-TYPE
    SYNTAX      RbtwsApSerialNum
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Serial Number of the AP this client was connected to."
    ::= { rbtwsClSessRoamingHistoryEntry 3 }

rbtwsClSessRoamHistRadioNum OBJECT-TYPE
    SYNTAX      RbtwsRadioNum
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of the Radio that provided service to this client."
    ::= { rbtwsClSessRoamingHistoryEntry 4 }

rbtwsClSessRoamHistAccessType OBJECT-TYPE
    SYNTAX      RbtwsAccessType
    MAX-ACCESS  read-only
    STATUS      obsolete
    DESCRIPTION
        "Access type used by this client (via AP, DAP or wired).
        Obsoleted by rbtwsClSessRoamHistAccessMode."
    ::= { rbtwsClSessRoamingHistoryEntry 5 }

rbtwsClSessRoamHistApNumOrPort OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      obsolete
    DESCRIPTION
        "AP port number, DAP number, or Port number for wired access.
        Obsoleted by rbtwsClSessRoamHistApNum."
    ::= { rbtwsClSessRoamingHistoryEntry 6 }

rbtwsClSessRoamHistIpAddress OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "IP address of the AC (wireless switch)
         the client or AP was connected to."
    ::= { rbtwsClSessRoamingHistoryEntry 7 }

rbtwsClSessRoamHistTimeStamp OBJECT-TYPE
    SYNTAX      TimeStamp
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The difference between the time the session was created
         on the roamed-to switch and the time the last switch,
         the one where the user is at currently, started.
         The timestamp unit is in hundredths of seconds."
    ::= { rbtwsClSessRoamingHistoryEntry 8 }

rbtwsClSessRoamHistAccessMode OBJECT-TYPE
    SYNTAX      RbtwsClientAccessMode
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Access mode (type) used by this client (via AP or wired).
        Obsoletes rbtwsClSessRoamHistAccessType since in 6.0
        directly attached APs and DAPs were unified."
    ::= { rbtwsClSessRoamingHistoryEntry 9 }

rbtwsClSessRoamHistApNum OBJECT-TYPE
    SYNTAX      RbtwsApNum
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The administratively assigned AP Number,
        unique on same AC (switch),
        regardless of how APs are attached to the AC.
        Obsoletes rbtwsClSessRoamHistApNumOrPort since in 6.0
        directly attached APs and DAPs were unified."
    ::= { rbtwsClSessRoamingHistoryEntry 10 }

rbtwsClSessRoamHistPhysPortNum OBJECT-TYPE
    SYNTAX      Unsigned32 (0..1024)  -- see RbtwsPhysPortNumber from rbtwsPortMib
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The physical port used by this wired-auth client
        is identified by its port number on the AC (switch).

        Zero means the port is unknown or not applicable
        (for example, when rbtwsClSessRoamHistAccessMode = 'ap').

        Meaningful when rbtwsClSessRoamHistAccessMode = 'wired'."
    ::= { rbtwsClSessRoamingHistoryEntry 11 }


-- Client Session Statistics Table
-- ===============================

rbtwsClSessClientSessionStatisticsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF RbtwsClSessClientSessionStatisticsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client Session Statistics Table."
    ::= { rbtwsClientSessionDataObjects 3 }

rbtwsClSessClientSessionStatisticsEntry OBJECT-TYPE
    SYNTAX      RbtwsClSessClientSessionStatisticsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client Session Statistics Table Entry."


    INDEX   { rbtwsClSessClientSessStatsMacAddress }
    ::= { rbtwsClSessClientSessionStatisticsTable 1 }

RbtwsClSessClientSessionStatisticsEntry ::= SEQUENCE {
        rbtwsClSessClientSessStatsMacAddress     MacAddress,
        rbtwsClSessClientSessStatsUniPktIn       Counter64,
        rbtwsClSessClientSessStatsUniOctetIn     Counter64,
        rbtwsClSessClientSessStatsUniPktOut      Counter64,
        rbtwsClSessClientSessStatsUniOctetOut    Counter64,
        rbtwsClSessClientSessStatsMultiPktIn     Counter64,
        rbtwsClSessClientSessStatsMultiOctetIn   Counter64,
        rbtwsClSessClientSessStatsEncErrPkt      Counter64,
        rbtwsClSessClientSessStatsEncErrOctet    Counter64,
        rbtwsClSessClientSessStatsLastRate       RbtwsRadioRate,
        rbtwsClSessClientSessStatsLastRssi       RbtwsRssi,
        rbtwsClSessClientSessStatsLastSNR        Integer32
    }

rbtwsClSessClientSessStatsMacAddress OBJECT-TYPE
    SYNTAX      MacAddress
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Client MAC address."
    ::= { rbtwsClSessClientSessionStatisticsEntry 1 }
    
rbtwsClSessClientSessStatsUniPktIn OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Unicast packets in."
    ::= { rbtwsClSessClientSessionStatisticsEntry 2 }

rbtwsClSessClientSessStatsUniOctetIn OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Unicast octets in."
    ::= { rbtwsClSessClientSessionStatisticsEntry 3 }

rbtwsClSessClientSessStatsUniPktOut OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Unicast packets out."
    ::= { rbtwsClSessClientSessionStatisticsEntry 4 }

rbtwsClSessClientSessStatsUniOctetOut OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Unicast octets out."
    ::= { rbtwsClSessClientSessionStatisticsEntry 5 }

rbtwsClSessClientSessStatsMultiPktIn OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Multicast packets in."
    ::= { rbtwsClSessClientSessionStatisticsEntry 6 }

rbtwsClSessClientSessStatsMultiOctetIn OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Multicast octets in."
    ::= { rbtwsClSessClientSessionStatisticsEntry 7 }

rbtwsClSessClientSessStatsEncErrPkt OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of packets with encryption errors."
    ::= { rbtwsClSessClientSessionStatisticsEntry 8 }

rbtwsClSessClientSessStatsEncErrOctet OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of octets with encryption errors."
    ::= { rbtwsClSessClientSessionStatisticsEntry 9 }

rbtwsClSessClientSessStatsLastRate OBJECT-TYPE
    SYNTAX      RbtwsRadioRate
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Last packet data rate."
    ::= { rbtwsClSessClientSessionStatisticsEntry 10 }

rbtwsClSessClientSessStatsLastRssi OBJECT-TYPE
    SYNTAX      RbtwsRssi
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "RSSI (Received Signal Strength Indicator) for last packet,
        in decibels referred to 1 milliwatt (dBm).
        A higher value indicates a stronger signal."
    ::= { rbtwsClSessClientSessionStatisticsEntry 11 }

rbtwsClSessClientSessStatsLastSNR OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Last packet data Signal to Noise Ratio."
    ::= { rbtwsClSessClientSessionStatisticsEntry 12 }

-- ==================================
--
-- Scalars
--

rbtwsClSessTotalSessions OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Total number of sessions."
    ::= { rbtwsClientSessionDataObjects 4 }

-- ============================================================================
--
-- Conformance
--

rbtwsClientSessionConformance  OBJECT IDENTIFIER ::= { rbtwsClientSessionObjects 2 }
rbtwsClientSessionCompliances  OBJECT IDENTIFIER ::= { rbtwsClientSessionConformance 1 }
rbtwsClientSessionGroups       OBJECT IDENTIFIER ::= { rbtwsClientSessionConformance 2 }


-- Compliance


rbtwsClientSessionCompliance MODULE-COMPLIANCE
    STATUS      obsolete
    DESCRIPTION
        "The compliance statement for devices that implement
        the Client Session MIB.

        This compliance statement was for releases 4.1 and 4.2
        of AC (wireless switch) software.

        This compliance statement is replaced by
        rbtwsClientSessionComplianceRev2."

    MODULE  -- this module (rbtwsClientSessionMib)

    MANDATORY-GROUPS { rbtwsClientSessionCommonGroup }

    ::= { rbtwsClientSessionCompliances 1 }


rbtwsClientSessionComplianceRev2 MODULE-COMPLIANCE
    STATUS      obsolete
    DESCRIPTION
        "The compliance statement for devices that implement
        the Client Session MIB.

        This compliance statement was for releases 5.0 and 6.0
        of AC (wireless switch) software.

        This compliance statement is replaced by
        rbtwsClientSessionComplianceRev3."

    MODULE  -- this module (rbtwsClientSessionMib)

    MANDATORY-GROUPS {
                rbtwsClientSessScalarsGroup,

                rbtwsClientSessClientSessionTableGroup,
                rbtwsClientSessRoamingHistoryTableGroup,

                rbtwsClientSessClientSessionStatisticsTableGroup
            }

    ::= { rbtwsClientSessionCompliances 2 }


rbtwsClientSessionComplianceRev3 MODULE-COMPLIANCE
    STATUS      current
    DESCRIPTION
        "The compliance statement for devices that implement
        the Client Session MIB.

        This compliance statement is for releases 6.2 and greater
        of AC (wireless switch) software."

    MODULE  -- this module (rbtwsClientSessionMib)

    MANDATORY-GROUPS {
                rbtwsClientSessScalarsGroup,

                rbtwsClientSessClientSessionTableGroupRev2,
                rbtwsClientSessRoamingHistoryTableGroupRev2,

                rbtwsClientSessClientSessionStatisticsTableGroup
            }

    ::= { rbtwsClientSessionCompliances 3 }


-- Units of Conformance


rbtwsClientSessionCommonGroup OBJECT-GROUP
        OBJECTS {
                 -- rbtwsClSessClientSessionTable:
                 --
                 rbtwsClSessClientSessSessionId,
                 rbtwsClSessClientSessUsername,
                 rbtwsClSessClientSessIpAddress,
                 rbtwsClSessClientSessEncryptionType,
                 rbtwsClSessClientSessVlan,
                 rbtwsClSessClientSessApSerialNum,
                 rbtwsClSessClientSessRadioNum,
                 rbtwsClSessClientSessAccessType,
                 rbtwsClSessClientSessAuthMethod,
                 rbtwsClSessClientSessAuthServer,
                 rbtwsClSessClientSessPortOrNum,
                 rbtwsClSessClientSessVlanTag,
                 rbtwsClSessClientSessTimeStamp,
                 rbtwsClSessClientSessSsid,
                 rbtwsClSessClientSessState,

                 -- rbtwsClSessRoamingHistoryTable:
                 --
                 rbtwsClSessRoamHistApSerialNum,
                 rbtwsClSessRoamHistRadioNum,
                 rbtwsClSessRoamHistAccessType,
                 rbtwsClSessRoamHistApNumOrPort,
                 rbtwsClSessRoamHistIpAddress,
                 rbtwsClSessRoamHistTimeStamp,

                 -- rbtwsClSessClientSessionStatisticsTable:
                 --
                 rbtwsClSessClientSessStatsUniPktIn,
                 rbtwsClSessClientSessStatsUniOctetIn,
                 rbtwsClSessClientSessStatsUniPktOut,
                 rbtwsClSessClientSessStatsUniOctetOut,
                 rbtwsClSessClientSessStatsMultiPktIn,
                 rbtwsClSessClientSessStatsMultiOctetIn,
                 rbtwsClSessClientSessStatsEncErrPkt,
                 rbtwsClSessClientSessStatsEncErrOctet,
                 rbtwsClSessClientSessStatsLastRate,
                 rbtwsClSessClientSessStatsLastRssi,
                 rbtwsClSessClientSessStatsLastSNR
                }
        STATUS      obsolete
        DESCRIPTION
            "Mandatory group of objects implemented to provide Client Session info
            in releases 4.1 and 4.2 of AC (wireless switch) software.

            Replaced by rbtwsClientSessClientSessionTableGroup,
                        rbtwsClientSessRoamingHistoryTableGroup,
                        rbtwsClientSessClientSessionStatisticsTableGroup."
        ::= { rbtwsClientSessionGroups 1 }


rbtwsClientSessScalarsGroup OBJECT-GROUP
        OBJECTS {
                 rbtwsClSessTotalSessions
                }
        STATUS      current
        DESCRIPTION
            "Group of scalar objects implemented to provide general Client info
            in releases 5.0 and greater."
        ::= { rbtwsClientSessionGroups 2 }


rbtwsClientSessClientSessionTableGroup OBJECT-GROUP
        OBJECTS {
                 rbtwsClSessClientSessSessionId,
                 rbtwsClSessClientSessUsername,
                 rbtwsClSessClientSessIpAddress,
                 rbtwsClSessClientSessEncryptionType,
                 rbtwsClSessClientSessVlan,

                 rbtwsClSessClientSessApSerialNum,
                 rbtwsClSessClientSessRadioNum,

                 rbtwsClSessClientSessAccessType,
                 rbtwsClSessClientSessAuthServer,
                 rbtwsClSessClientSessPortOrNum,
                 rbtwsClSessClientSessVlanTag,
                 rbtwsClSessClientSessTimeStamp,
                 rbtwsClSessClientSessSsid,

                 rbtwsClSessClientSessLoginType,
                 rbtwsClSessClientSessDot1xAuthMethod,
                 rbtwsClSessClientSessSessionState
                }
        STATUS      obsolete
        DESCRIPTION
            "Group of columnar objects implemented to provide
            Client Session info in releases 5.0 and 6.0.

            Replaced by rbtwsClientSessClientSessionTableGroupRev2."
        ::= { rbtwsClientSessionGroups 3 }


rbtwsClientSessRoamingHistoryTableGroup OBJECT-GROUP
        OBJECTS {
                 rbtwsClSessRoamHistApSerialNum,
                 rbtwsClSessRoamHistRadioNum,

                 rbtwsClSessRoamHistAccessType,
                 rbtwsClSessRoamHistApNumOrPort,

                 rbtwsClSessRoamHistIpAddress,
                 rbtwsClSessRoamHistTimeStamp
                }
        STATUS      obsolete
        DESCRIPTION
            "Group of columnar objects implemented to provide
            roaming history per Client Session in releases 5.0 and 6.0.

            Replaced by rbtwsClientSessRoamingHistoryTableGroupRev2."
        ::= { rbtwsClientSessionGroups 4 }


rbtwsClientSessClientSessionStatisticsTableGroup OBJECT-GROUP
        OBJECTS {
                 rbtwsClSessClientSessStatsUniPktIn,
                 rbtwsClSessClientSessStatsUniOctetIn,
                 rbtwsClSessClientSessStatsUniPktOut,
                 rbtwsClSessClientSessStatsUniOctetOut,
                 rbtwsClSessClientSessStatsMultiPktIn,
                 rbtwsClSessClientSessStatsMultiOctetIn,
                 rbtwsClSessClientSessStatsEncErrPkt,
                 rbtwsClSessClientSessStatsEncErrOctet,

                 rbtwsClSessClientSessStatsLastRate,
                 rbtwsClSessClientSessStatsLastRssi,
                 rbtwsClSessClientSessStatsLastSNR
                }
        STATUS      current
        DESCRIPTION
            "Group of columnar objects implemented to provide
            statistics per Client Session in releases 5.0 and greater."
        ::= { rbtwsClientSessionGroups 5 }


rbtwsClientSessClientSessionTableGroupRev2 OBJECT-GROUP
        OBJECTS {
                 rbtwsClSessClientSessSessionId,
                 rbtwsClSessClientSessUsername,
                 rbtwsClSessClientSessIpAddress,
                 rbtwsClSessClientSessEncryptionType,
                 rbtwsClSessClientSessVlan,

                 rbtwsClSessClientSessApSerialNum,
                 rbtwsClSessClientSessRadioNum,

                 rbtwsClSessClientSessAuthServer,    
                 rbtwsClSessClientSessVlanTag,
                 rbtwsClSessClientSessTimeStamp,
                 rbtwsClSessClientSessSsid,

                 rbtwsClSessClientSessLoginType,
                 rbtwsClSessClientSessDot1xAuthMethod,
                 rbtwsClSessClientSessSessionState,

                 rbtwsClSessClientSessAccessMode,
                 rbtwsClSessClientSessApNum,
                 rbtwsClSessClientSessPhysPortNum
                }
        STATUS      current
        DESCRIPTION
            "Group of columnar objects implemented to provide
            Client Session info in releases 6.2 and greater."
        ::= { rbtwsClientSessionGroups 6 }


rbtwsClientSessRoamingHistoryTableGroupRev2 OBJECT-GROUP
        OBJECTS {
                 rbtwsClSessRoamHistApSerialNum,
                 rbtwsClSessRoamHistRadioNum,

                 rbtwsClSessRoamHistIpAddress,
                 rbtwsClSessRoamHistTimeStamp,

                 rbtwsClSessRoamHistAccessMode,
                 rbtwsClSessRoamHistApNum,
                 rbtwsClSessRoamHistPhysPortNum
                }
        STATUS      current
        DESCRIPTION
            "Group of columnar objects implemented to provide
            roaming history per Client Session in releases 6.2 and greater."
        ::= { rbtwsClientSessionGroups 7 }


END
