-- MIB module extracted from ITU-T J.192 (03/2004)
CABH-CAP-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY,
OBJECT-TYPE,
Unsigned32 FROM SNMPv2-SMI
TEXTUAL-CONVENTION,
TruthValue,
RowStatus,
PhysAddress FROM SNMPv2-TC
OBJECT-GROUP,
MODULE-COMPLIANCE FROM SNMPv2-CONF
InetAddressType,
InetAddress,
InetPortNumber FROM INET-ADDRESS-MIB
clabProjCableHome FROM CLAB-DEF-MIB;
--==========================================================================
--
-- History:
--
-- Date Modified by Reason
-- 04/05/02 Issued I01
-- 09/20/02 Issued I02
-- 04/11/03 Issued I03
--
--===================================================================
cabhCapMib MODULE-IDENTITY
LAST-UPDATED "200304110000Z" -- April 11, 2003
ORGANIZATION "CableLabs Broadband Access Department"
CONTACT-INFO
"Kevin Luehrs
Postal: Cable Television Laboratories, Inc.
400 Centennial Parkway
Louisville, Colorado 80027-1266
U.S.A.
Phone: +1 303-661-9100
Fax: +1 303-661-9199
E-mail: k.luehrs@cablelabs.com"
DESCRIPTION
"This MIB module supplies the basic management objects
for the CableHome Addressing Portal (CAP) portion of
the PS database.
Acknowledgements:
Roy Spitzer - Consultant to CableLabs
Mike Mannette - Consultant to Cable Labs
Randy Dunton - Intel
Dmitrii Loukianov - Intel
Itay Sherman - Texas Instruments
Chris Zacker - Broadcom
Rick Vetter - Consultant to Cable Labs
John Bevilacqua - YAS"
::= { clabProjCableHome 3 }
-- Textual conventions
CabhCapPacketMode ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"The data type established when
a binding/mapping is established."
SYNTAX INTEGER {
napt (1), -- NAT with port translation
nat (2), -- Basic NAT
passthrough (3) -- Pass Through External Address
}
cabhCapObjects OBJECT IDENTIFIER ::= { cabhCapMib 1 }
cabhCapBase OBJECT IDENTIFIER ::= { cabhCapObjects 1 }
cabhCapMap OBJECT IDENTIFIER ::= { cabhCapObjects 2 }
--====================================================================
--
-- General CAP Parameters
--
--====================================================================
cabhCapTcpTimeWait OBJECT-TYPE
SYNTAX Unsigned32
UNITS "seconds"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"This object is the maximum inactivity time to wait before assuming
TCP session is terminated. It has no relation to the TCP session
TIME_WAIT state referred to in [RFC793]"
DEFVAL { 300 }
::= { cabhCapBase 1 }
cabhCapUdpTimeWait OBJECT-TYPE
SYNTAX Unsigned32
UNITS "seconds"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The inactivity time to wait before destroying
CAP mappings for UDP."
DEFVAL { 300 } -- 5 minutes
::={ cabhCapBase 2 }
cabhCapIcmpTimeWait OBJECT-TYPE
SYNTAX Unsigned32
UNITS "seconds"
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The inactivity time to wait before destroying
CAP mappings for ICMP."
DEFVAL { 300 } -- 5 minutes
::= { cabhCapBase 3 }
cabhCapPrimaryMode OBJECT-TYPE
SYNTAX CabhCapPacketMode
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The Primary Packet Handling Mode to be used."
DEFVAL { napt }
::= { cabhCapBase 4 }
cabhCapSetToFactory OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"Reading this object always returns false(2). When the
cabhCapSetToFactory object is set to true(1), the PS must
take the following actions:
1. Clear all entries in the cabhCapMappingTable and
cabhCapPassthroughTable.
2. Reset the following objects to their factory default values:
cabhCapTcpTimeWait,
cabhCapUdpTimeWait,
cabhCapIcmpTimeWait,
cabhCapPrimaryMode"
::= { cabhCapBase 5 }
--===================================================================
--
-- cabhCapMappingTable (CAP Mapping Table)
--
-- The cabhCapMappingTable contains the info for all CAP mappings.
--
--===================================================================
cabhCapMappingTable OBJECT-TYPE
SYNTAX SEQUENCE OF CabhCapMappingEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table contains IP address mappings between private network
addresses, or network addresses and port numbers/ICMP sequence numbers,
assigned to devices on the subscriber's home LAN, and network
addresses, or network addresses and port numbers/ICMP sequence number,
assigned by the cable operator, presumed to be on a separate subnetwork
than the private IP addresses. The CAP Mapping Table is used by the
CableHome Address Portal (CAP) function of the PS to make packet
forwarding decisions."
::= { cabhCapMap 1 }
cabhCapMappingEntry OBJECT-TYPE
SYNTAX CabhCapMappingEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"List of the private IP (LAN) address - to - cable operator
assigned IP (WAN) address mappings stored in the PS and
used by the PS to make packet forwarding decisions."
INDEX { cabhCapMappingIndex }
::= { cabhCapMappingTable 1 }
CabhCapMappingEntry ::= SEQUENCE {
cabhCapMappingIndex INTEGER,
cabhCapMappingWanAddrType InetAddressType,
cabhCapMappingWanAddr InetAddress,
cabhCapMappingWanPort InetPortNumber,
cabhCapMappingLanAddrType InetAddressType,
cabhCapMappingLanAddr InetAddress,
cabhCapMappingLanPort InetPortNumber,
cabhCapMappingMethod INTEGER,
cabhCapMappingProtocol INTEGER,
cabhCapMappingRowStatus RowStatus
}
cabhCapMappingIndex OBJECT-TYPE
SYNTAX INTEGER (1..65535)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The Index into the CAP Mapping Table."
::= { cabhCapMappingEntry 1 }
cabhCapMappingWanAddrType OBJECT-TYPE
SYNTAX InetAddressType
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The IP address type assigned on the WAN side"
DEFVAL { ipv4 }
::= { cabhCapMappingEntry 2 }
cabhCapMappingWanAddr OBJECT-TYPE
SYNTAX InetAddress
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The IP address assigned by the cable operator's address (DHCP)
server, and comprising the WAN-side IP address of the CAP
Mapping tuple. This object is populated either dynamically by
LAN-to-WAN outbound traffic or statically by the cable operator."
::= { cabhCapMappingEntry 3 }
cabhCapMappingWanPort OBJECT-TYPE
SYNTAX InetPortNumber
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The TCP/UDP port number or ICMP sequence number on the WAN
side. A port number of 0 indicates a NAT mapping. A
non-zero port number indicates an NAPT mapping."
DEFVAL { 0 }
::= { cabhCapMappingEntry 4 }
cabhCapMappingLanAddrType OBJECT-TYPE
SYNTAX InetAddressType
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The IP address type assigned on the LAN side."
DEFVAL { ipv4 }
::= { cabhCapMappingEntry 5 }
cabhCapMappingLanAddr OBJECT-TYPE
SYNTAX InetAddress
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The IP address assigned by the DHCP server function of the
PS (CableHome DHCP Server, CDS), and comprising the
LAN-side IP address of the CAP Mapping tuple.
This object is populated either dynamically as a result of LAN
-to-WAN outbound traffic or statically by the cable operator."
::= { cabhCapMappingEntry 6 }
cabhCapMappingLanPort OBJECT-TYPE
SYNTAX InetPortNumber
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The TCP/UDP port number or ICMP sequence number on the LAN
side. A port number/sequence number of 0 indicates a NAT mapping.
A non-zero port number/sequence number indicates an NAPT mapping."
DEFVAL { 0 }
::= { cabhCapMappingEntry 7 }
cabhCapMappingMethod OBJECT-TYPE
SYNTAX INTEGER {
static (1),
dynamic (2)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Indicates how this mapping was created. Static means that it
was provisioned, and dynamic means that it was handled by the
PS itself."
::= { cabhCapMappingEntry 8 }
cabhCapMappingProtocol OBJECT-TYPE
SYNTAX INTEGER {
other (1), -- any other protocol; e.g. IGMP
icmp (2),
udp (3),
tcp (4)
}
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The protocol for this mapping."
::= { cabhCapMappingEntry 9 }
cabhCapMappingRowStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The RowStatus interlock for the creation and deletion of a
cabhCapMappingTable entry. Changing the value of the IP
address or port number columns of the CAP Mapping Table may
have an effect on active traffic, so the PS will prevent modification
of this table's columns and return an inconsistentValue error when
cabhCapMappingRowStatus object is active(1). The PS must not allow
RowStatus to be set to notInService(2) by a manager. A newly created
row cannot be set to active(1) until the corresponding instances of
cabhCapMappingWanAddrType, cabhCapMappingWanAddr,
cabhCapMappingLanAddrType, cabhCapMappingLanAddr, and
cabhCapMappingProtocol have been set. If Primary Packet-handling
Mode is NAPT (cabhCapPrimaryMode is napt(1)), a newly created row
can not be set to active(1) until a non-zero value of
cabhCapMappingWanPort and cabhCapMappingLanPort have been set.
If Primary Packet-handling Mode is NAT (cabhCapPrimaryMode is nat(2)),
a newly created row can not be set to active(1) if a non-zero value of
cabhCapMappingWanPort and cabhCapMappingLanPort have been set."
::={ cabhCapMappingEntry 10 }
--====================================================================
--
-- cabhCapPassthroughTable (CAP Passthrough Table)
--
-- The cabhCapPassthroughTable contains the MAC Addresses for all
-- LAN-IP Devices which will be configured as passthrough.
--
--====================================================================
cabhCapPassthroughTable OBJECT-TYPE
SYNTAX SEQUENCE OF CabhCapPassthroughEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table contains MAC addresses for LAN-IP Devices which are
configured as passthrough mode."
::= { cabhCapMap 2 }
cabhCapPassthroughEntry OBJECT-TYPE
SYNTAX CabhCapPassthroughEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"List of hardware addresses of LAN IP Devices which are configured
for passthrough mode."
INDEX {cabhCapPassthroughIndex}
::= {cabhCapPassthroughTable 1}
CabhCapPassthroughEntry::=SEQUENCE {
cabhCapPassthroughIndex INTEGER,
cabhCapPassthroughMacAddr PhysAddress,
cabhCapPassthroughRowStatus RowStatus
}
cabhCapPassthroughIndex OBJECT-TYPE
SYNTAX INTEGER (1..65535)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The index into the CAP Passthrough Table."
::= { cabhCapPassthroughEntry 1 }
cabhCapPassthroughMacAddr OBJECT-TYPE
SYNTAX PhysAddress
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"Hardware address of the LAN-IP Device to be configured as
passthrough mode."
::={cabhCapPassthroughEntry 2}
cabhCapPassthroughRowStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The RowStatus interlock for the creation and deletion
of a cabhCapPassthroughTable entry. Any writable object in each
row can be modified at any time while the row is active(1)."
::= { cabhCapPassthroughEntry 3 }
--
-- notification group is for future extension.
--
cabhCapNotification OBJECT IDENTIFIER ::= { cabhCapMib 2 0 }
cabhCapConformance OBJECT IDENTIFIER ::= { cabhCapMib 3 }
cabhCapCompliances OBJECT IDENTIFIER ::= { cabhCapConformance 1 }
cabhCapGroups OBJECT IDENTIFIER ::= { cabhCapConformance 2 }
--
-- Notification Group
--
-- compliance statements
cabhCapBasicCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"The compliance statement for devices that implement
MTA feature."
MODULE --cabhCapMib
-- unconditionally mandatory groups
MANDATORY-GROUPS {
cabhCapGroup
}
::= { cabhCapCompliances 1 }
cabhCapGroup OBJECT-GROUP
OBJECTS {
cabhCapTcpTimeWait,
cabhCapUdpTimeWait,
cabhCapIcmpTimeWait,
cabhCapPrimaryMode,
cabhCapSetToFactory,
cabhCapMappingWanAddrType,
cabhCapMappingWanAddr,
cabhCapMappingWanPort,
cabhCapMappingLanAddrType,
cabhCapMappingLanAddr,
cabhCapMappingLanPort,
cabhCapMappingMethod,
cabhCapMappingProtocol,
cabhCapMappingRowStatus,
cabhCapPassthroughMacAddr,
cabhCapPassthroughRowStatus
}
STATUS current
DESCRIPTION
"Group of objects for CableHome CAP MIB."
::= { cabhCapGroups 1 }
END