RGBN-BASE-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY, enterprises, Unsigned32
        FROM SNMPv2-SMI
    TEXTUAL-CONVENTION
        FROM SNMPv2-TC;

rgbnBaseMIB MODULE-IDENTITY
    LAST-UPDATED    "200909220000Z" -- 22-sept-2009, midnight
    ORGANIZATION    "RGB Networks"
    CONTACT-INFO    "Postal:
                        RGB Networks Inc
                        390 West Java Drive
                        Sunnyvale, CA 94089

                    WEB:
                        http://www.rgbnetworks.com
                        
                    Email:
                        info@rgbnetworks.com
                    "
    DESCRIPTION
        "A place for common textual conventions, and definitions
        of OIDs.
            
        Copyright (C) RGB Networks."
            
    -- revision descriptions in reverse chronological order
    REVISION        "200909220000Z" -- 22-sept-2009, midnight
    DESCRIPTION
        "Added description of UID for ports and interfaces"
        
    REVISION        "200906150000Z" -- 15-jun-2009, midnight
    DESCRIPTION
        "Initial Version of MIB module."
    ::= { enterprises rgbnetworks(19601) rgbnG2Modules(3) 1 }

-- The OIDs for the other MIB modules are:

-- rgbnAaaMIB - enterprises.rgbnetworks(19601).rgbnG2Modules(3).2
-- rgbnEalMIB - enterprises.rgbnetworks(19601).rgbnG2Modules(3).3
-- rgbnCoreMIB - enterprises.rgbnetworks(19601).rgbnG2Modules(3).4
-- rgbnPifMIB - enterprises.rgbnetworks(19601).rgbnG2Modules(3).5
-- rgbnVideoMIB - enterprises.rgbnetworks(19601).rgbnG2Modules(3).6
-- rgbnNtMIB - enterprises.rgbnetworks(19601).rgbnG2Modules(3).7


-- Common textual conventions
RgbnAdminState ::= TEXTUAL-CONVENTION
    STATUS       current
    DESCRIPTION
        "The 'admin state' of an item. The values are:
            disable(1) - the item is administratively blocked from use
            enabled(2) - the item is administratively allowed to be used"
    SYNTAX INTEGER {
                disable(1),
                enable(2)
                }

RgbnOperState ::= TEXTUAL-CONVENTION
    STATUS       current
    DESCRIPTION
        "The 'oper state' of an item. The values are:
            unknown(1) - the state is unknown or not applicable
            up(1) - the item is operationally up
            down(2) - the item is operationally down"
    SYNTAX INTEGER {
                unknown(1),
                up(2),
                down(3)
                }

RgbnCardType ::= TEXTUAL-CONVENTION
    STATUS       current
    DESCRIPTION
        "The type of card. These values are used for both
        configured and present type. The values for only
        'present card type' are:
            unknown(1) - the type cannot be determined
            absent(2) - no card is present in the slot
        The value for only 'configured card type' is:
            notCfg(2) - no type has been configured for the slot
        The remaining values are valid for both configured
        and present card types."
    SYNTAX INTEGER {
                unknown(1),
                absent(2),
                notcfg(3),
                npm(4),
                vpm(5),
                tcm(6),
                amp(7)
                }
                
RgbnStandbyState ::= TEXTUAL-CONVENTION
    STATUS       current
    DESCRIPTION
        "The standby state of the item. The values are:
          unknown(1) - item is unable to report standby state
          hotStandby(2) - item is not providing service, but it
                will be immediately able to take over the role
                of the item to be backed up, without the need
                for initialization activity, and will contain
                the same information as the item to be
                backed up
          coldStandby(3) - item is to back up another item, but
                will not be immediately able to take over the role
                of an item to be backed up, and will require some
                initialization activity.
          provideService(4) - item is providing service. Note
                for items that cannot operate in a standby role,
                the value is will always by 'providingService'
                
        Items that are operationally down (or even not present)
        may have any of the values including 'providingService'."
    SYNTAX INTEGER {
                unknown(1),
                hotStandby(2),
                coldStandby(3),
                provideService(4)
                }

RgbnRedunState ::= TEXTUAL-CONVENTION
    STATUS       current
    DESCRIPTION
        "The redundancy state of the item. The values are:
          notRedun(1) - no redundancy provided
          partialRedun(2) - partial redundancy provided
          fullyRedun(3) - complete redundancy provided
          loadSharing(4) - load sharing provided"
    SYNTAX INTEGER {
                notRedun(1),
                partialRedun(2),
                fullyRedun(3),
                loadSharing(4)
                }

RgbnResetRsn ::= TEXTUAL-CONVENTION
    STATUS       current
    DESCRIPTION
        "The reason for system or component reset The values are:
          none(1) - no reset, not applicable, or not available (includes
                        when a component has not been reset since power up
                        of the system)
          operator(2) - reset by operator command
          software(3) - reset due to software failure
          hardware(4) - reset due to hardware failure
          switchover(5) - reset due to system redundancy switch"
    SYNTAX INTEGER {
                none(1),
                operator(2), 
                software(3),
                hardware(4),
                switchover(5)
                }

RgbnUID ::= TEXTUAL-CONVENTION
    STATUS       current
    DESCRIPTION
        "A RGB 'universal identification' (UID) value.
        The encoding is the following

        Physical Component (only info for Ports is shown)
        ----------------------------------
        When a physical component, format is
         1  4   8  12  16  20  24  28  32
        +---+---+---+---+---+---+---+----+
        |STTTTccccttttssssdddkkkrrrrppppp|
        +---+---+---+---+---+---+---+----+
        Where:
          S - 1 bit reserved for the sign, must be zero
          T - 4 bits for ID type (value=0)
          c - 4 bits for component type
          t - 4 bits for top level slot type
          s - 4 bits for slot number
          d - 3 bits reserved
          k - 3 bits reserver
          r - 4 bits for port type
          p - 5 bits for the port number

        c field: The values for component type are:
         0101(5) - a port
         other values - reserved

        t field: The values for slot type are:
         0001(1) - main slots
         other values - reserved
         
        s field: The values for slot number are:
         1 - 15 - The slot number. It must match the external identifier.
         other values - reserved

        d field: The values are:
         0 - not used
         other values - reserved

        k field: The values are:
         0 - not used
         other values - reserved
         
        r field: The values for port type are:
         0010(2) - 1GbE port
         0011(3) - 10GbE port
         other values - reserved
         
        p field: The values for port number are:
         1 - 9 - The port number. It must match the external identifier.
         other values - reserved

        Examples:
         * for a physical port,
            S = 0
            T = 0 (phys component)
            c = 5 (a port)
            t = 1 (main slots)
            s = slot number
            d = 0 (not used)
            k = 0 (not used)
            r = port type (such as 1GbE or 10GbE)
            p = port number


        Network Interface
        -----------------
        When a network interface, format is
         1  4   8  12  16  20  24  28  32
        +---+---+---+---+---+---+---+----+
        |STTTTsssszzrrrrpppppvvvvvvvvvvvv|
        +---+---+---+---+---+---+---+----+
        Where:
          S - 1 bit reserved for the sign, must be zero
          T - 4 bits for ID type (value=1)
          s - 4 bits for slot number
          z - 2 bits that are reserved
          r - 4 bits for port type
          p - 5 bits for the port number
          v - 12 bits for sub-interface ID

        s field: The values for slot number are:
         1 - 14 - The slot number. It must match the external identifier.
         other values - reserved

        z field: The values for the reserved bits should be zero, and must be ignored.

        r field: The values for port type are:
         0010(2) - 1GbE port
         0011(3) - 10GbE port
         other values - reserved
         
        p field: The values for port number are:
         1 - 9 - The port number. It must match the external identifier.
         other values - reserved

        v field: The values for the sub-interface ID
         1 - sub-interface ID
         other values - reserved

        Examples:
         * for a 1GbEth interface
            S = 0
            T = 1 (network interface)
            s = slot number
            z = 0 (reserved)
            r = 2 (1GbE)
            p = port number
            v = 1 (sub-interface ID)
        "
    SYNTAX Unsigned32

RgbnFloatType ::= TEXTUAL-CONVENTION
    STATUS       current
    DESCRIPTION
        "A floating point value specified in ASCII. It should
        be any value parsable by C library function strtold."
    SYNTAX OCTET STRING(SIZE(1..24))

RgbnString ::= TEXTUAL-CONVENTION
    STATUS       current
    DESCRIPTION
        "A DisplayString with a size range of 0 to 63."
    SYNTAX OCTET STRING(SIZE(0..63))

END
