--  **************************************************************************
--  CISCO_DMN_DSG_MOIPINPUT.mib: Feature MIB file for MOIP Input
--  
--  Nov. 2012, Ming Yao
--
--  Copyright (c) Cisco Systems, Inc. 2012. All rights reserved.
--  **************************************************************************

CISCO-DMN-DSG-MOIPINPUT-MIB

DEFINITIONS ::= BEGIN

IMPORTS
    OBJECT-TYPE,
    MODULE-IDENTITY, Integer32
        FROM SNMPv2-SMI
    DisplayString, RowStatus
        FROM SNMPv2-TC
    OBJECT-GROUP, MODULE-COMPLIANCE
        FROM SNMPv2-CONF
    ciscoDSGUtilities
        FROM CISCO-DMN-DSG-ROOT-MIB;


ciscoDSGMOIPInput MODULE-IDENTITY
    LAST-UPDATED    "201211121800Z"
    ORGANIZATION    "Cisco Systems, Inc."
    CONTACT-INFO
        "Cisco Systems, Inc.
        Customer Service
        Postal: 170 W Tasman Drive
        San Jose, CA 95134
        USA
        Tel: +1 800 553 NETS

        E-mail: cs-ipsla@cisco.com"
    DESCRIPTION     "Cisco generic MOIP Input MIB."

    REVISION        "201211121800Z"
    DESCRIPTION     "V01.00.00 2012-11-12
                    Initial Revision."

    ::= { ciscoDSGUtilities 41 }

moipInputInfo   OBJECT IDENTIFIER ::= { ciscoDSGMOIPInput 1 }
moipInputTable  OBJECT IDENTIFIER ::= { ciscoDSGMOIPInput 2 }

--**************************************
-- MOIP Input Configuration Info 
--**************************************

moipInputFlowIsMulticast OBJECT-TYPE
     SYNTAX  INTEGER {
             no(1),
             yes(2)
             }
     MAX-ACCESS  read-write
     STATUS  current
     DESCRIPTION
         "Delivery Type: Multicast or Unicast."
     ::= { moipInputInfo 1 }

moipInputFlowMulticastDstIPV4 OBJECT-TYPE
    SYNTAX  IpAddress
    MAX-ACCESS read-write
    STATUS  current
    DESCRIPTION
        "Muticast V4 IP Address."
     ::= { moipInputInfo 2 }

moipInputFlowFecMode OBJECT-TYPE
     SYNTAX  INTEGER {
             none(1),
             oneD(2),
             twoD(3)
             }
     MAX-ACCESS  read-write
     STATUS  current
     DESCRIPTION
         "FEC Mode."
     ::= { moipInputInfo 3 }

moipInputFlowSrcFilter OBJECT-TYPE
     SYNTAX  INTEGER {
             none(1),
             whiteList(2),
             blackList(3)
             }
     MAX-ACCESS  read-write
     STATUS  current
     DESCRIPTION
         "Source Filtering Mode."
     ::= { moipInputInfo 4 }

moipInputFlowTsUDPPort OBJECT-TYPE
     SYNTAX  INTEGER (1..65534)
     MAX-ACCESS  read-write
     STATUS  current
     DESCRIPTION
         "UDP Port for Transport Stream. "
     ::= { moipInputInfo 5 }

moipInputFlowFec1UDPPort OBJECT-TYPE
     SYNTAX  INTEGER (2..65534)
     MAX-ACCESS  read-write
     STATUS  current
     DESCRIPTION
         "UDP Port for FEC Columns Stream in step of 2."
     ::= { moipInputInfo 6 }

moipInputFlowFec2UDPPort OBJECT-TYPE
     SYNTAX  INTEGER (2..65534)
     MAX-ACCESS  read-write
     STATUS  current
     DESCRIPTION
         "UDP Port for FEC Rows Stream in step of 2."
     ::= { moipInputInfo 7 }

moipInputFlowSrcStrmSel OBJECT-TYPE
     SYNTAX  INTEGER {
             swMap(1),
             userCfg(2)
             }
     MAX-ACCESS  read-write
     STATUS  current
     DESCRIPTION
         "Selects how to lock to source IP. In SwMap, 
          first source present on both data ports is 
          selected. In UserCfg, user selected source 
          ip is locked per port."
     ::= { moipInputInfo 8 }

moipInputDejitterAlgorithm OBJECT-TYPE
     SYNTAX  INTEGER {
             cbr(1),
             vbr(2)
             }
     MAX-ACCESS  read-write
     STATUS  current
     DESCRIPTION
         "Dejitter Algorithm."
     ::= { moipInputInfo 9 }

moipInputDejitterBufLatency OBJECT-TYPE
     SYNTAX  INTEGER (0..2147483647)
     MAX-ACCESS  read-write
     STATUS  current
     DESCRIPTION
         "Dejitter Buffer Latency."
     ::= { moipInputInfo 10 }

moipInputRednMode OBJECT-TYPE
     SYNTAX  INTEGER {
             bkpPriData1(1),
             bkpPriData2(2),
             manualData1(3),
             manualData2(4)
             }
     MAX-ACCESS  read-write
     STATUS  current
     DESCRIPTION
         "Input Redundancy Mode."
     ::= { moipInputInfo 11 }

moipInputRednDir OBJECT-TYPE
     SYNTAX  INTEGER {
             Revertive(1),
             nonRevertive(2)
             }
     MAX-ACCESS  read-write
     STATUS  current
     DESCRIPTION
         "IPI Redundancy Switch Over Type."
     ::= { moipInputInfo 12 }

moipInputRednDelayDir OBJECT-TYPE
     SYNTAX  INTEGER (0..10000)
     MAX-ACCESS  read-write
     STATUS  current
     DESCRIPTION
         "Direct Redundancy Switch Over Delay in msec."
     ::= { moipInputInfo 13 }

moipInputRednDelRev OBJECT-TYPE
     SYNTAX  INTEGER (0..30)
     MAX-ACCESS  read-write
     STATUS  current
     DESCRIPTION
         "Revertive Redundancy Switch Over Delay in sec."
     ::= { moipInputInfo 14 }

moipInputRednPortInUse  OBJECT-TYPE
    SYNTAX  DisplayString (SIZE(0..32))
    MAX-ACCESS read-only
    STATUS  current
    DESCRIPTION
        "Redundancy: Port In use."
    ::= { moipInputInfo 15 }

moipInputRednSwReason  OBJECT-TYPE
    SYNTAX  DisplayString (SIZE(0..32))
    MAX-ACCESS read-only
    STATUS  current
    DESCRIPTION
        "Reason for port Switch Over: None, Setup, EthLinkLoss, UdpLoss, PrgmLoss."
    ::= { moipInputInfo 16 }

moipInputRednSwDateTime  OBJECT-TYPE
    SYNTAX  DisplayString (SIZE(0..32))
    MAX-ACCESS read-only
    STATUS  current
    DESCRIPTION
        "Redundancy: Switch Over date and time."
    ::= { moipInputInfo 17 }

moipInputData1SelIPV4 OBJECT-TYPE
    SYNTAX  IpAddress
    MAX-ACCESS read-write
    STATUS  current
    DESCRIPTION
        "Select this host for DATA1 port. This object replaces moipInputSrcSelectData1Sel 
         for backup and restore purpose and should not be used by any UIs."
     ::= { moipInputInfo 18 }

moipInputData2SelIPV4 OBJECT-TYPE
    SYNTAX  IpAddress
    MAX-ACCESS read-write
    STATUS  current
    DESCRIPTION
        "Select this host for DATA2 port. This object replaces moipInputSrcSelectData2Sel 
         for backup and restore purpose and should not be used by any UIs."
     ::= { moipInputInfo 19 }


--**************************************
-- MOIP Input Src Select Table
--**************************************
moipInputSrcSelectTable  OBJECT-TYPE
    SYNTAX  SEQUENCE OF MOIPInputSrcSelectEntry
    MAX-ACCESS not-accessible
    STATUS  current
    DESCRIPTION
        "MOIP input source IP select table."
    ::= { moipInputTable 1 }

moipInputSrcSelectEntry OBJECT-TYPE
    SYNTAX  MOIPInputSrcSelectEntry
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
        "Entry for source IP select table."
    INDEX   { moipInputSrcSelectIdx }
    ::= { moipInputSrcSelectTable 1 }

MOIPInputSrcSelectEntry ::=  SEQUENCE
{
    moipInputSrcSelectIdx            INTEGER,
    moipInputSrcSelectV4IPAddr       IpAddress,
    moipInputSrcSelectData1Sel       INTEGER,
    moipInputSrcSelectData2Sel       INTEGER,
    moipInputSrcSelectData1Avail     INTEGER,
    moipInputSrcSelectData2Avail     INTEGER,
    moipInputSrcSelectData1Enabled   INTEGER,
    moipInputSrcSelectData2Enabled   INTEGER,
    moipInputSrcSelectRowEnabled     INTEGER
}

moipInputSrcSelectIdx  OBJECT-TYPE
    SYNTAX  INTEGER (1..16)
    MAX-ACCESS read-only
    STATUS  current
    DESCRIPTION
        "Host Index."
    ::= { moipInputSrcSelectEntry 1 }

moipInputSrcSelectV4IPAddr  OBJECT-TYPE
    SYNTAX  IpAddress
    MAX-ACCESS read-only
    STATUS  current
    DESCRIPTION
        "Host IP Address."
    ::= { moipInputSrcSelectEntry 2 }

moipInputSrcSelectData1Sel OBJECT-TYPE
     SYNTAX  INTEGER {
             no(1),
             yes(2)
             }
     MAX-ACCESS  read-only
     STATUS  current
     DESCRIPTION
         "The host selected for DATA1 port. Use moipInputData1SelIPV4 to select."
     ::= { moipInputSrcSelectEntry 3 }

moipInputSrcSelectData2Sel OBJECT-TYPE
     SYNTAX  INTEGER {
             no(1),
             yes(2)
             }
     MAX-ACCESS  read-only
     STATUS  current
     DESCRIPTION
         "The host selected for DATA2 port. Use moipInputData2SelIPV4 to select."
     ::= { moipInputSrcSelectEntry 4 }

moipInputSrcSelectData1Avail OBJECT-TYPE
     SYNTAX  INTEGER {
             no(1),
             yes(2)
             }
    MAX-ACCESS read-only
     STATUS  current
     DESCRIPTION
         "Stream from this host is present on DATA1 port."
     ::= { moipInputSrcSelectEntry 5 }

moipInputSrcSelectData2Avail OBJECT-TYPE
     SYNTAX  INTEGER {
             no(1),
             yes(2)
             }
    MAX-ACCESS read-only
     STATUS  current
     DESCRIPTION
         "Stream from this host is present on DATA2 port."
     ::= { moipInputSrcSelectEntry 6 }

moipInputSrcSelectData1Enabled OBJECT-TYPE
     SYNTAX  INTEGER {
             no(1),
             yes(2)
             }
     MAX-ACCESS read-only
     STATUS  current
     DESCRIPTION
         "This host can be selected for DATA1."
     ::= { moipInputSrcSelectEntry 7 }

moipInputSrcSelectData2Enabled OBJECT-TYPE
     SYNTAX  INTEGER {
             no(1),
             yes(2)
             }
     MAX-ACCESS read-only
     STATUS  current
     DESCRIPTION
         "This host can be selected for DATA2."
     ::= { moipInputSrcSelectEntry 8 }

moipInputSrcSelectRowEnabled OBJECT-TYPE
     SYNTAX  INTEGER {
             no(1),
             yes(2)
             }
     MAX-ACCESS read-only
     STATUS  current
     DESCRIPTION
         "Rows disabled should be hidden from user."
     ::= { moipInputSrcSelectEntry 9 }


--**************************************
-- MOIP Input Src Filter Table
--**************************************
moipInputSrcFilterTable  OBJECT-TYPE
    SYNTAX  SEQUENCE OF MOIPInputSrcFilterEntry
    MAX-ACCESS not-accessible
    STATUS  current
    DESCRIPTION
        "MOIP input source IP filter table."
    ::= { moipInputTable 2 }

moipInputSrcFilterEntry OBJECT-TYPE
    SYNTAX  MOIPInputSrcFilterEntry
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
        "Entry for source IP filter table."
    INDEX   { moipInputSrcFilterIdx }
    ::= { moipInputSrcFilterTable 1 }

MOIPInputSrcFilterEntry ::=  SEQUENCE
{
    moipInputSrcFilterIdx            INTEGER,
    moipInputSrcFilterV4IPAddr       IpAddress,
    moipInputSrcFilterRowStatus      RowStatus
}

moipInputSrcFilterIdx  OBJECT-TYPE
    SYNTAX  INTEGER (1..16)
    MAX-ACCESS read-only
    STATUS  current
    DESCRIPTION
        "Source IP Filter Index."
    ::= { moipInputSrcFilterEntry 1 }

moipInputSrcFilterV4IPAddr  OBJECT-TYPE
    SYNTAX  IpAddress
    MAX-ACCESS read-write
    STATUS  current
    DESCRIPTION
        "Source IP to be filtered."
    ::= { moipInputSrcFilterEntry 2 }

moipInputSrcFilterRowStatus OBJECT-TYPE
     SYNTAX  RowStatus
     MAX-ACCESS  read-write
     STATUS  current
     DESCRIPTION
         "Source Filter IP row status."
     ::= { moipInputSrcFilterEntry 3 }


--**************************************
-- MOIP Input Flow status Table
--**************************************
moipInputFlowTable  OBJECT-TYPE
    SYNTAX  SEQUENCE OF MOIPInputFlowEntry
    MAX-ACCESS not-accessible
    STATUS  current
    DESCRIPTION
        "DPM Configuration Table."
    ::= { moipInputTable 3 }

moipInputFlowEntry OBJECT-TYPE
    SYNTAX  MOIPInputFlowEntry
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
        "Entry for DPM global configuration table."
    INDEX   { moipInputFlowID }
    ::= { moipInputFlowTable 1 }

MOIPInputFlowEntry ::=  SEQUENCE
{
    moipInputFlowID                  INTEGER,
    moipInputFlowTsAct               INTEGER,
    moipInputFlowFecColStrmAct       INTEGER,
    moipInputFlowFecRowStrmAct       INTEGER
}

moipInputFlowID  OBJECT-TYPE
    SYNTAX  INTEGER (1..2)
    MAX-ACCESS read-only
    STATUS  current
    DESCRIPTION
        "Flow ID."
    ::= { moipInputFlowEntry 1 }

moipInputFlowTsAct OBJECT-TYPE
     SYNTAX  INTEGER {
             no(1),
             yes(2)
             }
     MAX-ACCESS  read-only
     STATUS  current
     DESCRIPTION
         "Flow Transport Stream Active."
     ::= { moipInputFlowEntry 2 }

moipInputFlowFecColStrmAct OBJECT-TYPE
     SYNTAX  INTEGER {
             no(1),
             yes(2)
             }
     MAX-ACCESS  read-only
     STATUS  current
     DESCRIPTION
         "Flow FEC Column Stream Active."
     ::= { moipInputFlowEntry 3 }

moipInputFlowFecRowStrmAct OBJECT-TYPE
     SYNTAX  INTEGER {
             no(1),
             yes(2)
             }
     MAX-ACCESS  read-only
     STATUS  current
     DESCRIPTION
         "Flow FEC Row Stream Active."
     ::= { moipInputFlowEntry 4 }

END

