
-- Copyright (C) 2012 by Zhone Technologies.  All Rights Reserved.

-- ======================================================================
-- ==                                                                  ==
-- ==                    ZHNIPFORWARDING MIB                           ==
-- ==                                                                  ==
-- ==  Copyright (C) 2012 Zhone Technologies, Inc.                     ==
-- ==  Confidential, Unpublished Property of Zhone Technologies.       ==
-- ==  Rights Reserved Under the Copyright Laws of the United States.  ==
-- ==                                                                  ==
-- ======================================================================

ZHNIPFORWARDING DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY , OBJECT-TYPE , enterprises,
    Integer32, Unsigned32, IpAddress, Gauge32
        FROM SNMPv2-SMI
    MODULE-COMPLIANCE, OBJECT-GROUP
        FROM SNMPv2-CONF
    TEXTUAL-CONVENTION, MacAddress, RowStatus, TruthValue
        FROM SNMPv2-TC
    ZhoneRowStatus
        FROM Zhone-TC
    zhoneWtn
        FROM Zhone;

-- 1.3.6.1.4.1.5504.2.5.41
zhnIpForwarding  MODULE-IDENTITY
    LAST-UPDATED  "201204201200Z"  -- Apr 20, 2012
    ORGANIZATION
        "Zhone Technologies, Inc."
    CONTACT-INFO 
        "Zhone Technologies, Inc.
         Florida Design Center
         8545 126th Avenue North
         Largo, FL 33773

	 Toll-Free: +1 877-ZHONE20 (+1 877-946-6320)
	 Tel: +1-510-777-7000
	 Fax: +1-510-777-7001
	 E-mail: support@zhone.com"


    DESCRIPTION
        "This file defines the private Enterprise MIB extensions
         that define IP Forwarding objects supported by the Zhone 
	 CPEs."


    REVISION "201201271200Z"  -- Jan 27, 2012
    DESCRIPTION "First Draft"

    REVISION "201204201200Z"  -- Apr 20, 2012
    DESCRIPTION "change ipForwardingInterface and pForwardingForwardingMetric to read-write "

::= { zhoneWtn 44 }



-- 1.3.6.1.4.1.5504.2.5.44.1
zhnIpForwardingObjects           OBJECT IDENTIFIER ::= { zhnIpForwarding 1 }



--
-- LAN Device Objects 
-- TR-98 InternetGatewayDevice.Layer3Forwarding.Forwarding.{i}.
--
-- 1.3.6.1.4.1.5504.2.5.44.1.1
--
ipForwardingTable OBJECT-TYPE
  SYNTAX        SEQUENCE OF IPForwardingEntry
  MAX-ACCESS    not-accessible
  STATUS        current
  DESCRIPTION
    "Table of IP Forwarding rules"
  ::= { zhnIpForwardingObjects 1 }

ipForwardingEntry OBJECT-TYPE
  SYNTAX        IPForwardingEntry
  MAX-ACCESS    not-accessible
  STATUS        current
  DESCRIPTION
    "Table of entries of IP Forwarding rules and static route information."
  INDEX        { ipForwardingIndex }
  ::= { ipForwardingTable 1 }

IPForwardingEntry ::=
  SEQUENCE {
      ipForwardingIndex                      Unsigned32,
      ipForwardingIPVersion                  Unsigned32,
      ipForwardingDestIPAddress              IpAddress,
      ipForwardingDestSubnetMask             IpAddress,
      ipForwardingInterface                  OCTET STRING,
      ipForwardingGatewayIPAddress           IpAddress,
      ipForwardingForwardingMetric           INTEGER,
      ipForwardingTableRowStatus             ZhoneRowStatus
  }

ipForwardingIndex OBJECT-TYPE
  SYNTAX        Unsigned32
  MAX-ACCESS    not-accessible
  STATUS        current
  DESCRIPTION
    "IP Forwarding Table index"
  ::= { ipForwardingEntry 1 }

ipForwardingIPVersion OBJECT-TYPE
  SYNTAX        Unsigned32
  MAX-ACCESS    read-only
  STATUS        current
  DESCRIPTION
    "IP version."
  ::= { ipForwardingEntry 2 }

ipForwardingDestIPAddress OBJECT-TYPE
  SYNTAX        IpAddress
  MAX-ACCESS    read-write
  STATUS        current
  DESCRIPTION
    "Destination address. An empty string or a value of 0.0.0.0
     indicates no destination address is specified."
  ::= { ipForwardingEntry 3 }

ipForwardingDestSubnetMask OBJECT-TYPE
  SYNTAX        IpAddress
  MAX-ACCESS    read-write
  STATUS        current
  DESCRIPTION
    "Destination subnet mask. An empty string or a value of 0.0.0.0
     indicates no destination subnet mask is specified."
  ::= { ipForwardingEntry 4 }

ipForwardingInterface OBJECT-TYPE
  SYNTAX        OCTET STRING
  MAX-ACCESS    read-write
  STATUS        current
  DESCRIPTION
    "Lan interface to transmit packets."
  ::= { ipForwardingEntry 5 }

ipForwardingGatewayIPAddress OBJECT-TYPE
  SYNTAX        IpAddress
  MAX-ACCESS    read-write
  STATUS        current
  DESCRIPTION
    "Next hop IP address."
  ::= { ipForwardingEntry 6 }

ipForwardingForwardingMetric OBJECT-TYPE
  SYNTAX        INTEGER (-1..65535)
  MAX-ACCESS    read-write
  STATUS        current
  DESCRIPTION
    "Number of hops to reach destination. A value of -1 indicates this
     metric is not used. "
  ::= { ipForwardingEntry 7 }

ipForwardingTableRowStatus OBJECT-TYPE
  SYNTAX        ZhoneRowStatus
  MAX-ACCESS    read-write
  STATUS        current
  DESCRIPTION
    "The SNMP RowStatus of the current row. The following objects must
    be specified upon row creation:
        ipForwardingDestIPAddress
        ipForwardingDestSubnetMask
        ipForwardingInterface
    "
  ::= { ipForwardingEntry 8 }


-- ****************************************************************************
--
-- Conformance Information
--

zhnIpForwardingConformance OBJECT IDENTIFIER ::= { zhnIpForwarding 2 }

zhnIpForwardingGroups OBJECT IDENTIFIER ::= { zhnIpForwardingConformance 1}
zhnIpForwardingCompliances OBJECT IDENTIFIER ::= { zhnIpForwardingConformance 2}
 
--
-- Compliance Statements
--

zhnIpForwardingCompliance  MODULE-COMPLIANCE
  STATUS        current
  DESCRIPTION
        "The Compliance statement for SNMP entities which
         manage the Zhone CPE IP Forwarding and Routing Information"
  MODULE  -- this module
  MANDATORY-GROUPS {
         zhnIpForwardingGroup
  }
  ::= {zhnIpForwardingCompliances 1}


--
-- Units of Conformance
--

zhnIpForwardingGroup OBJECT-GROUP
   OBJECTS {
      ipForwardingIPVersion,
      ipForwardingDestIPAddress,
      ipForwardingDestSubnetMask,
      ipForwardingInterface,
      ipForwardingGatewayIPAddress,
      ipForwardingForwardingMetric,
      ipForwardingTableRowStatus
   }
   STATUS current
   DESCRIPTION
      "A collection of Zhone IP objects that describe the 
       layer 3 forwarding and routing information."
   ::= { zhnIpForwardingGroups 1}


END
