-- $Log: E5-121-MIB.mib $
-- Revision 1.80  2011/04/28 03:38:15  Alex.Shih
-- Revision 1.79  2011/03/10 09:37:49  swee
-- Remove supported in R5.x or later version info
-- Revision 1.78  2011/02/09 00:25:01  Alex.Shih
-- Revision 1.78  2011/02/09 00:09:51  Alex.Shih
-- Revision 1.77  2011/01/27 09:24:12  Alex.Shih
-- Revision 1.76  2011/01/26 12:10:03  ChunTing
-- Revision 1.75  2011/01/24 06:03:10  Alex.Shih
-- Revision 1.74  2011/01/07 07:32:04  cylien
-- fix compile error of mibble
-- Revision 1.73  2010/11/15 11:01:02  Alex.Shih
-- Revision 1.72  2010/11/12 02:58:58  cylien
-- Revision 1.71  2010/11/03 11:01:11  john
-- Revision 1.70  2010/11/03 02:23:04  cylien
-- Revision 1.69  2010/10/26 01:35:50  DavidGong
-- Revision 1.68  2010/10/25 10:08:15  Alex.Shih
-- Revision 1.67  2010/10/14 08:58:33  cylien
-- Revision 1.66  2010/09/30 08:17:58  Alex.Shih
-- Revision 1.65  2010/09/30 03:46:25  cylien
-- Revision 1.64  2010/09/29 02:29:28  cylien
-- Revision 1.63  2010/09/28 01:01:46  DavidGong
-- Revision 1.62  2010/09/23 07:59:18  cylien
-- Revision 1.61  2010/09/16 10:34:50  DavidGong
-- Revision 1.60  2010/09/08 07:02:21  Alex.Shih
-- Revision 1.59  2010/09/08 03:48:05  Alex.Shih
-- Revision 1.58  2010/08/27 09:03:48  John
-- Revision 1.57  2010/08/27 05:42:43  Alex.Shih
-- Revision 1.56  2010/08/13 11:48:09  cylien
-- Revision 1.55  2010/08/10 07:48:11  Alex.Shih
-- Revision 1.54  2010/07/19 05:36:01  John
-- Revision 1.53  2010/07/17 05:54:19  Alex.Shih
-- Revision 1.51  2010/07/09 11:03:19  John
-- Revision 1.50  2010/07/01 11:38:22  davidgong
-- Revision 1.49  2010/07/01 11:12:03  davidgong
-- Revision 1.48  2010/06/30 06:56:34  Alex.Shih
-- Revision 1.47  2010/06/29 07:58:06  Ives
-- Revision 1.46  2010/06/29 06:46:04  Alex.Shih
-- Revision 1.45  2010/06/29 06:00:49  Alex.Shih
-- Revision 1.44  2010/06/29 01:01:55  Alex.Shih
-- Revision 1.43  2010/06/28 17:05:05  John
-- Revision 1.41  2010/06/24 08:02:47  maverick
-- Revision 1.40  2010/06/24 07:47:34  davidgong
-- Revision 1.39  2010/06/24 05:28:16  davidgong
-- Revision 1.38  2010/06/15 14:28:37  maverick
-- Revision 1.37  2010/06/10 08:04:27  cylien
-- Revision 1.36  2010/06/10 02:49:55  cylien
-- Revision 1.35  2010/06/08 03:55:22  cylien
-- Revision 1.34  2010/06/07 00:55:31  davidgong
-- Revision 1.33  2010/06/04 11:56:58  Alex_Chang
-- Revision 1.32  2010/06/03 12:07:29  JeFF
-- Revision 1.31  2010/06/02 01:21:38  Alex.Shih
-- Revision 1.30  2010/05/21 03:57:38  maverick
-- Revision 1.29  2010/04/23 10:46:34  maverick
-- Revision 1.28  2009/11/26 13:06:58  maverick
-- add comment to obsoleted mib entries, mibble checked
-- Revision 1.27  2009/09/15 05:51:32  maverick
-- Revision 1.26  2009/09/15 02:48:22  maverick
-- Revision 1.25  2009/09/01 01:32:36  maverick
-- Revision 1.24  2009/07/27 08:16:56  niceguy
-- Revision 1.23  2009/07/21 10:52:52  maverick
-- Revision 1.21  2009/07/10 10:39:44  maverick
-- Revision 1.20  2009/06/26 11:01:57  John
-- Revision 1.19  2009/06/25 08:18:54  maverick
-- Revision 1.18  2009/06/25 02:47:26  niceguy
-- Revision 1.17  2009/06/10 02:26:39  John
-- Revision 1.16  2009/06/09 06:59:07  maverick
-- Revision 1.15  2009/05/27 09:19:31  niceguy
-- Revision 1.14  2009/05/25 08:53:38  maverick
-- Revision 1.13  2009/05/21 12:28:28  maverick
-- Revision 1.12  2009/05/21 08:14:42  lbr
-- Revision 1.11  2009/05/21 04:05:21  John
-- Revision 1.10  2009/05/20 13:04:21  maverick
-- Revision 1.9  2009/05/20 00:59:19  maverick
-- Revision 1.8  2009/04/30 10:10:31  niceguy
-- Revision 1.7  2009/04/29 05:51:22  niceguy
-- Revision 1.6  2009/04/21 02:58:22  niceguy
-- Revision 1.5  2009/03/06 12:32:03  maverick
-- Revision 1.4  2008/11/14 12:17:47  niceguy
-- Revision 1.3  2008/11/12 08:19:35  kenny
-- Revision 1.2  2008/09/26 10:45:37  niceguy
-- Revision 1.1  2008/09/18 01:50:27  niceguy
-- Initial revision
-- Revision 1.5  2008/08/21 10:55:19  kenny
-- Revision 1.4  2008/08/15 10:29:16  maverick
-- Revision 1.3  2008/08/05 06:35:53  maverick
-- Revision 1.2  2008/08/04 12:47:34  maverick
-- Revision 1.1  2008/07/11 09:36:15  maverick
-- Initial revision
-- Revision 1.7  2008/06/27 16:08:09  maverick
-- Revision 1.6  2008/06/23 08:54:10  kenny
-- Revision 1.5  2008/06/10 13:53:03  maverick
-- Revision 1.4  2008/05/30 14:12:22  maverick
-- Revision 1.3  2008/05/20 02:55:59  maverick
-- Revision 1.2  2008/05/13 02:03:13  maverick
-- Revision 1.6  2008/03/07 07:56:43  kenny
-- Revision 1.5  2007/12/14 10:00:11  niceguy
-- Revision 1.4  2007/12/14 02:42:41  niceguy
-- Revision 1.3  2007/12/06 02:03:04  kenny
-- Revision 1.2  2007/12/03 01:54:35  niceguy
-- Revision 1.1  2007/12/03 01:45:30  niceguy
-- Initial revision
-- Initial revision


    E5-121-MIB DEFINITIONS ::= BEGIN

    IMPORTS

	enterprises
		FROM RFC1155-SMI
	OBJECT-TYPE, Counter32, Gauge32, Unsigned32, Counter64, IpAddress, TimeTicks, NOTIFICATION-TYPE
		FROM SNMPv2-SMI
	DisplayString, PhysAddress, ifIndex
		FROM RFC1213-MIB
	RowStatus, TEXTUAL-CONVENTION
		FROM SNMPv2-TC
	VlanIndex, PortList, dot1qVlanIndex
		FROM Q-BRIDGE-MIB
	dot1dTrafficClass
		FROM P-BRIDGE-MIB
	MacAddress, Timeout, BridgeId, dot1dBasePort
		FROM BRIDGE-MIB
	dot1agCfmMdIndex, dot1agCfmMaIndex, dot1agCfmMepIdentifier
		FROM IEEE8021-CFMD8-MIB;


	calixNetworks		OBJECT IDENTIFIER ::= { enterprises 6321 }
	calixRegistrations	OBJECT IDENTIFIER ::= { calixNetworks 1 }
	calixProducts  	    OBJECT IDENTIFIER ::= { calixRegistrations 2 }
	e5x100              OBJECT IDENTIFIER ::= { calixProducts 3 }
	e5x121		OBJECT IDENTIFIER ::= { e5x100 4 }


	alarmconf 	OBJECT IDENTIFIER ::= { e5x121 2 }
	diagnostic 	OBJECT IDENTIFIER ::= { e5x121 4 }
	multicast 	OBJECT IDENTIFIER ::= { e5x121 7 }
	port 		OBJECT IDENTIFIER ::= { e5x121 8 }
	profile		OBJECT IDENTIFIER ::= { e5x121 9 }
	switch 		OBJECT IDENTIFIER ::= { e5x121 10 }
	sys		OBJECT IDENTIFIER ::= { e5x121 11 }
	trap		OBJECT IDENTIFIER ::= { e5x121 12 }
	statistics	OBJECT IDENTIFIER ::= { e5x121 13 }
	clear		OBJECT IDENTIFIER ::= { e5x121 14 }
-- 15 reserved for cluster
	voip		OBJECT IDENTIFIER ::= { e5x121 16 }
	aesSeriesCommon		OBJECT IDENTIFIER ::= { e5x121 97 } -- obsoleted since R2.0 by maverick
	iesSeriesCommon		OBJECT IDENTIFIER ::= { e5x121 98 }
	accessSwitchCommonATM	OBJECT IDENTIFIER ::= { e5x121 99 }



----------------------------------------
-- alarmconf
----------------------------------------

        alarmOps OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"The manager sets the corresponding bit value to 1 to start the operation
        	and the agent clears the object to zero when the operation is successfully completed.
        	The various bit positions are:
		BIT 1: clear
		BIT 2: cutoff"
        ::= { alarmconf 1 }

-- Alarm Conf Table

        alarmConfTable OBJECT-TYPE
        SYNTAX SEQUENCE OF AlarmConfEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"This table includes alarm configuration."
        ::= { alarmconf 2 }

	alarmConfEntry OBJECT-TYPE
        SYNTAX AlarmConfEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"An entry in alarmConfTable."
        INDEX { alarmConfId }
        ::= { alarmConfTable 1 }

        AlarmConfEntry ::=
        	SEQUENCE {
			alarmConfId		INTEGER,
			alarmConfFacility	INTEGER,
			alarmConfTarget		INTEGER,
			alarmConfSeverity	INTEGER,
			alarmConfClearable  INTEGER
           	}

        alarmConfId OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "
 			5000:vdslLine_up
 			5001:vdslLine_down
 			5002:vdsl_tca_lol
 			5003:vdsl_tca_lof
 			5004:vdsl_tca_los
 			5005:vdsl_tca_lop
 			5006:vdsl_tca_es
 			5007:vdsl_tca_ses
 			5008:vdsl_tca_uas
 			5009:xd_xtuc_loftrap
 			5010:xd_xtuc_lostrap
 			5011:xd_xtur_loftrap
 			5012:xd_xtur_lostrap
 			5013:xd_xtur_lprtrap
 			5014:ad_dhcp_rt_full
 			5015:ad_dhcp_dm_conflict
 			5016:ad_dhcp_entry_full
 			5017:ad_dhcp_ip_dup
 			5018:ad_dhcp_mac_dup
			10000:eqptVol_err
			10001:eqptEqpttemp_err
			10002:eqptFan_err
			10003:eqptHw_rtc_fail
			10004:eqptHw_mon_fail
			10005:eqptCold_start
			10006:eqptWarm_start
			10007:eqptAlm_input
			10008:voip_battery_fail
			10009:voip_clock_fail
			10010:voip_ringer_fault
			10011:eqptAlm_input2
			10012:eqptAlm_input3
			15000:sysReboot
			15001:sysAco
			15002:sysAlm_clear
			15003:sysLogin_fail
			15004:sysAnti_spoofing
			15005:sysAlm_svrty_change
			15006:sysHost_terminate
			20000:enetUp
			20001:enetDown
			25000:voip_temp_error
			25001:voip_dc_power_fail
			25002:voip_ac_power_fail
			25003:voip_ring_timer_fail
			25004:voip_ring_rsrce_fail
			25006:voip_dhcp_clt_fail
			25007:voip_call_setup_failed
			25008:voip_call_threshold_violate
			30000:cfmError
		"
        ::= { alarmConfEntry 1 }

        alarmConfFacility OBJECT-TYPE
        SYNTAX  INTEGER {
        		local1(1),
        		local2(2),
        		local3(3),
        		local4(4),
        		local5(5),
        		local6(6),
        		local7(7)
        	}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
                "Alarm facility."
        ::= { alarmConfEntry 2 }

        alarmConfTarget OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
                "The destination which alarms are reported to. Set the bit to 1 to enable the target.
                BIT 1: snmp trap
                BIT 2: syslog"
        ::= { alarmConfEntry 3 }

        alarmConfSeverity OBJECT-TYPE
        SYNTAX 	INTEGER  {
        		critical(1),
        		major(2),
        		minor(3),
        		info(4)
        	}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
                "Alarm severity"
        ::= { alarmConfEntry 4 }

        alarmConfClearable OBJECT-TYPE
        SYNTAX  INTEGER  {
                        clearable(1),
                        unclearable(2)
                }
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
                "Setting the object to one indicates that the alarm is to be cleared when user submits alarm clear."
        ::= { alarmConfEntry 5 }

-- Alarm Current Table

        alarmCurrTable OBJECT-TYPE
        SYNTAX SEQUENCE OF AlarmCurrEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"This table includes current alarm information."
        ::= { alarmconf 3 }

	alarmCurrEntry OBJECT-TYPE
        SYNTAX AlarmCurrEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"An entry in alarmCurrTable."
        INDEX { alarmCurrIndex }
        ::= { alarmCurrTable 1 }

        AlarmCurrEntry ::=
        	SEQUENCE {
			alarmCurrIndex		INTEGER,
			alarmCurrOccurTime	TimeTicks,
			alarmCurrTrapOid	OBJECT IDENTIFIER,
			alarmCurrParam1		INTEGER,
			alarmCurrParam2		INTEGER,
			alarmCurrParam3		INTEGER,
			alarmCurrParam4		INTEGER,
			alarmCurrParam5		INTEGER,
			alarmCurrParam6		INTEGER,
			alarmCurrParam7		INTEGER,
			alarmCurrParam8		INTEGER,
			alarmCurrTimeDescr	DisplayString,
			alarmCurrSeverity	INTEGER,
			alarmCurrDescr		DisplayString
           	}

        alarmCurrIndex OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "Index of the alarm."
        ::= { alarmCurrEntry 1 }

        alarmCurrOccurTime OBJECT-TYPE
        SYNTAX TimeTicks
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "Alarm occurence time (in hundredths of a second) since the system was last re-initialized."
        ::= { alarmCurrEntry 2 }

        alarmCurrTrapOid OBJECT-TYPE
        SYNTAX OBJECT IDENTIFIER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "Trap OID of the alarm."
        ::= { alarmCurrEntry 3 }

        alarmCurrParam1 OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The 1st parameter of the alarm."
        ::= { alarmCurrEntry 4 }

        alarmCurrParam2 OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The 2nd parameter of the alarm."
        ::= { alarmCurrEntry 5 }

        alarmCurrParam3 OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The 3rd parameter of the alarm."
        ::= { alarmCurrEntry 6 }

        alarmCurrParam4 OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The 4th parameter of the alarm."
        ::= { alarmCurrEntry 7 }

        alarmCurrParam5 OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The 5th parameter of the alarm."
        ::= { alarmCurrEntry 8 }

        alarmCurrParam6 OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The 6th parameter of the alarm."
        ::= { alarmCurrEntry 9 }

        alarmCurrParam7 OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The 7th parameter of the alarm."
        ::= { alarmCurrEntry 10 }

        alarmCurrParam8 OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The 8th parameter of the alarm."
        ::= { alarmCurrEntry 11 }

        alarmCurrTimeDescr OBJECT-TYPE
        SYNTAX DisplayString
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The string representation of occurence time (YYYY/MM/DD HH:MM:SS)."
        ::= { alarmCurrEntry 12 }

        alarmCurrSeverity OBJECT-TYPE
        SYNTAX 	INTEGER {
        		critical(1),
        		major(2),
        		minor(3),
        		info(4)
        	}
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The severity of the alarm."
        ::= { alarmCurrEntry 13 }

        alarmCurrDescr OBJECT-TYPE
        SYNTAX DisplayString
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The description of the alarm."
        ::= { alarmCurrEntry 14 }

-- Alarm Severity Port Table

        alarmSeverityPortTable OBJECT-TYPE
        SYNTAX SEQUENCE OF AlarmSeverityPortEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"This table includes the configuration of alarm reporting severity threshold for each port."
        ::= { alarmconf 4 }

	alarmSeverityPortEntry OBJECT-TYPE
        SYNTAX AlarmSeverityPortEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"An entry in alarmSeverityPortTable."
        INDEX { ifIndex }
        ::= { alarmSeverityPortTable 1 }

        AlarmSeverityPortEntry ::=
        	SEQUENCE {
			severityThresh	INTEGER
           	}

        severityThresh OBJECT-TYPE
        SYNTAX 	INTEGER {
        		critical(1),
        		major(2),
        		minor(3),
        		info(4)
        	}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
                "The minimum alarm severity that is reported."
        ::= { alarmSeverityPortEntry 1 }

----------------------------------------
-- diagnostic
----------------------------------------

	selt		OBJECT IDENTIFIER ::= { diagnostic 3 }
	ldm			OBJECT IDENTIFIER ::= { diagnostic 4 }
	mlt		    OBJECT IDENTIFIER ::= { diagnostic 5 }


--------------------
-- selt
--------------------

	seltTarget OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		"IfIndex of the port which would be performed single end loopback test."
	::= { selt 1 }

	seltOps OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		"The manager sets the object to 1 to start the selt
        	and the agent clears the object to zero when selt is successfully completed."
	::= { selt 2 }

	seltStatus OBJECT-TYPE
	SYNTAX DisplayString
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"Status description of the selt result."
	::= { selt 3 }

	seltCableType OBJECT-TYPE
	SYNTAX 	INTEGER {
			awg24(1),
			awg26(2)
		}
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The cable type that selt result indicates."
	::= { selt 4 }

	seltLoopEstimateLengthFt OBJECT-TYPE
	SYNTAX INTEGER
	UNITS "feet"
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The estimated loop length that selt result indicates."
	::= { selt 5 }

	seltLoopEstimateLengthMeter OBJECT-TYPE
	SYNTAX INTEGER
	UNITS "meter"
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The estimated loop length that selt result indicates."
	::= { selt 6 }

--------------------
-- ldm
--------------------

	ldmTarget OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		"IfIndex of the port which would be performed ldm test."
	::= { ldm 1 }

	ldmOps OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		"The manager sets the object to 1 to start the ldm test
        	and the agent clears the object to zero when ldm test is successfully completed."
	::= { ldm 2 }

	ldmStatus OBJECT-TYPE
	SYNTAX DisplayString
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"Status description of ldm test result."
	::= { ldm 3 }

	ldmXtucLoopAttenuation OBJECT-TYPE
	SYNTAX INTEGER
	UNITS "tenth dB"
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"Loop Attenuation."
	::= { ldm 4 }

	ldmXtucSignalAttenuation OBJECT-TYPE
	SYNTAX INTEGER
	UNITS "tenth dB"
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"Signal Attenuation."
	::= { ldm 5 }

	ldmXtucSignalMargin OBJECT-TYPE
	SYNTAX INTEGER
	UNITS "tenth dB"
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"Signal Margin."
	::= { ldm 6 }

	ldmXtucAggregateTxPower OBJECT-TYPE
	SYNTAX INTEGER
	UNITS "tenth dB"
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"Actual Aggregate Transmit Power."
	::= { ldm 7 }

	ldmXtucAttainableBitRate OBJECT-TYPE
	SYNTAX Unsigned32
	UNITS "bits per second"
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"Attainable Bit Rate."
	::= { ldm 8 }

	ldmXturLoopAttenuation OBJECT-TYPE
	SYNTAX INTEGER
	UNITS "tenth dB"
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"Loop Attenuation."
	::= { ldm 9 }

	ldmXturSignalAttenuation OBJECT-TYPE
	SYNTAX INTEGER
	UNITS "tenth dB"
	MAX-ACCESS read-only
	STATUS	current
	DESCRIPTION
		"Signal Attenuation."
	::= { ldm 10 }

	ldmXturSignalMargin OBJECT-TYPE
	SYNTAX INTEGER
	UNITS "tenth dB"
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"Signal Margin."
	::= { ldm 11 }

	ldmXturAggregateTxPower OBJECT-TYPE
	SYNTAX INTEGER
	UNITS "tenth dB"
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"Actual Aggregate Transmit Power."
	::= { ldm 12 }

	ldmXturAttainableBitRate OBJECT-TYPE
	SYNTAX Unsigned32
	UNITS "bits per second"
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"Attainable Bit Rate."
	::= { ldm 13 }

	ldmXtucNumOfSubcarriersPerPort OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The number of subcarriers per port for ATU-C."
	::= { ldm 14 }

	ldmXturNumOfSubcarriersPerPort OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The number of subcarriers per port for ATU-R."
	::= { ldm 15 }

	ldmXtucHlinScale OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"Scale of Hlin."
	::= { ldm 16 }

	ldmXtucHlinReal1 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides real part of Hlin for the first 256 subcarriers.
		Each subcarrier takes two octets to store the value."
	::= { ldm 17 }

	ldmXtucHlinReal2 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides real part of Hlin for the last 256 subcarriers.
		Each subcarrier takes two octets to store the value."
	::= { ldm 18 }

	ldmXtucHlinImage1 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides image part of Hlin for the first 256 subcarriers.
		Each subcarrier takes two octets to store the value."
	::= { ldm 19 }

	ldmXtucHlinImage2 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides image part of Hlin for the last 256 subcarriers.
		Each subcarrier takes two octets to store the value."
	::= { ldm 20 }

	ldmXtucHlog1 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides Hlog for the first 256 subcarriers.
		Each subcarrier takes two octets to store the value."
	::= { ldm 21 }

	ldmXtucHlog2 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides Hlog for the last 256 subcarriers.
		Each subcarrier takes two octets to store the value."
	::= { ldm 22 }

	ldmXtucQln1 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides QLN for the first 256 subcarriers.
		Each subcarrier takes two octets to store the value."
	::= { ldm 23 }

	ldmXtucQln2 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides QLN for the last 256 subcarriers.
		Each subcarrier takes two octets to store the value."
	::= { ldm 24 }

	ldmXtucSnr1 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides SNR for the first 256 subcarriers.
		Each subcarrier takes two octets to store the value."
	::= { ldm 25 }

	ldmXtucSnr2 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides SNR for the last 256 subcarriers.
		Each subcarrier takes two octets to store the value."
	::= { ldm 26 }

	ldmXturHlinScale OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"Scale of Hlin."
	::= { ldm 27 }

	ldmXturHlinReal OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"Real part of Hlin. Each subcarrier takes two octets to store the value."
	::= { ldm 28 }

	ldmXturHlinImage OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"Image part of Hlin. Each subcarrier takes two octets to store the value."
	::= { ldm 29 }

	ldmXturHlog OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"Hlog of subcarrier. Each subcarrier takes two octets to store the value."
	::= { ldm 30 }

	ldmXturQln OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"QLN of subcarrier. Each subcarrier takes two octets to store the value."
	::= { ldm 31 }

	ldmXturSnr OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"SNR of subcarrier. Each subcarrier takes two octets to store the value."
	::= { ldm 32 }

	ldmXtucHlogGroupFactor OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The Hlog group factor of ATU-C."
	::= { ldm 33 }

	ldmXtucQlnGroupFactor OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The Qln group factor of ATU-C."
	::= { ldm 34 }
	
	ldmXtucSnrGroupFactor OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The Snr group factor of ATU-C."
	::= { ldm 35 }
	
	ldmXturHlogGroupFactor OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The Hlog group factor of ATU-R."
	::= { ldm 36 }

	ldmXturQlnGroupFactor OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The Qln group factor of ATU-R."
	::= { ldm 37 }
	
	ldmXturSnrGroupFactor OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The Snr group factor of ATU-R."
	::= { ldm 38 }
	
--------------------
-- mlt
--------------------

	mltTarget OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		"IfIndex of the port which would be performed Metallic Link Test."
	::= { mlt 1 }

	mltOps OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		"The manager sets the object to 1 to start the mlt
        	and the agent clears the object to zero when mlt is successfully completed."
	::= { mlt 2 }

        mltOption OBJECT-TYPE
        SYNTAX INTEGER {
        		all(1),
        		vac(2),
        		vdc(3),
        		rload(4),
        		riso(5),
        		cap(6),
        		ren(7),
        		ring(8),
        		metering(9)
        	}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"all : test all items
		 vac: test AC voltage
		 vdc: test DC voltage
		 rload: test load resistance
		 riso: test isolation resistance
		 cap: test capacitor
		 ren: test REN value
		 ring: test ring voltage
		 metering: test metering voltage"
        ::= { mlt 3 }

        mltForce OBJECT-TYPE
        SYNTAX INTEGER {
        		force(1),
        		notForce(2)
        	}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"Force test even the port is in use."
        ::= { mlt 4 }

        mltResult 	OBJECT IDENTIFIER ::= { mlt 5 }

	mltVacTip OBJECT-TYPE
	SYNTAX INTEGER
	UNITS "0.1 rms"
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { mltResult 1 }

	mltVacRing OBJECT-TYPE
	SYNTAX INTEGER
	UNITS "0.1 rms"
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { mltResult 2 }

	mltVacDiff OBJECT-TYPE
	SYNTAX INTEGER
	UNITS "0.1 rms"
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { mltResult 3 }

	mltVdcTip OBJECT-TYPE
	SYNTAX INTEGER
	UNITS "0.1 volt"
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { mltResult 4 }

	mltVdcRing OBJECT-TYPE
	SYNTAX INTEGER
	UNITS "0.1 volt"
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { mltResult 5 }

	mltVdcDiff OBJECT-TYPE
	SYNTAX INTEGER
	UNITS "0.1 volt"
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { mltResult 6 }

	mltRLoop OBJECT-TYPE
	SYNTAX INTEGER
	UNITS "0.1 ohm"
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { mltResult 7 }

	mltRtg OBJECT-TYPE
	SYNTAX INTEGER
	UNITS "0.1 ohm"
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { mltResult 8 }

	mltRrg OBJECT-TYPE
	SYNTAX INTEGER
	UNITS "0.1 ohm"
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { mltResult 9 }

	mltRtr OBJECT-TYPE
	SYNTAX INTEGER
	UNITS "0.1 ohm"
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { mltResult 10 }

	mltCtg OBJECT-TYPE
	SYNTAX INTEGER
	UNITS "10^-9 F"
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { mltResult 11 }

	mltCrg OBJECT-TYPE
	SYNTAX INTEGER
	UNITS "10^-9 F"
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { mltResult 12 }

	mltCtr OBJECT-TYPE
	SYNTAX INTEGER
	UNITS "10^-9 F"
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { mltResult 13 }

	mltRen OBJECT-TYPE
	SYNTAX INTEGER
	UNITS "0.1 ren"
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { mltResult 14 }

	mltVRing OBJECT-TYPE
	SYNTAX INTEGER
	UNITS "0.1 rms"
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { mltResult 15 }

	mltVMetering OBJECT-TYPE
	SYNTAX INTEGER
	UNITS "0.1 vpeak"
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { mltResult 16 }

	mltDialToneDetected OBJECT-TYPE
	SYNTAX INTEGER {
			yes(1),
			no(2)
		}
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { mltResult 17 }

	mltDetectedDtmfCount OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { mltResult 18 }

	mltDialToneDelay OBJECT-TYPE
	SYNTAX INTEGER
	UNITS "0.001 sec"
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { mltResult 19 }

-- mlt relay table

	mltRelayTable OBJECT-TYPE
        SYNTAX SEQUENCE OF MltRelayEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"Perform specified MLT relay function, or turn off
		MLT relay function in specified subscriber."
        ::= { mlt 6 }

        mltRelayEntry OBJECT-TYPE
        SYNTAX MltRelayEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"An entry of mltRelayTable."
        INDEX  { ifIndex }
        ::= { mltRelayTable 1 }

        MltRelayEntry ::=
		SEQUENCE {
        		mltRelaySet		INTEGER
           	}

        mltRelaySet OBJECT-TYPE
        SYNTAX INTEGER {
        		in(1),
        		out(2),
        		both(3),
        		off(4)
        	}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"By default, relay function is turned off."
        ::= { mltRelayEntry 1 }


----------------------------------------
-- multicast
----------------------------------------
-- Obsoleted in calix MRD20 since Revision 1.20 at 2009/06/25 by niceguy 
--  Object mcastBandwidth, igmpCount below is kept for R1.x below. Not used for R2.x and above.

	mcastBandwidth		OBJECT IDENTIFIER ::= { multicast 4 }
	igmpCount		OBJECT IDENTIFIER ::= { multicast 5 }
	mvlan			OBJECT IDENTIFIER ::= { multicast 6 }
	queryVid		OBJECT IDENTIFIER ::= { multicast 7 }
	igmpTimer		OBJECT IDENTIFIER ::= { multicast 11 }
	auditQuery		OBJECT IDENTIFIER ::= { multicast 12 }
	igmpProfile		OBJECT IDENTIFIER ::= { multicast 13 }

	igmpEnable OBJECT-TYPE
	SYNTAX	INTEGER {
			enableProxy(1),
			enableSnooping(2),
			disable(3)
		}
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		"Enable/disable IGMP protocol."
	::= { multicast 1 }

	igmpVersion OBJECT-TYPE
	SYNTAX	INTEGER {
			v2(1),
			v3(2)
		}
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		"Setting IGMP version."
	::= { multicast 9 }

	igmpLeaveMode OBJECT-TYPE
	SYNTAX	INTEGER {
        		immediateLeave(1),
        		lastMemberQuery(2)
        	}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"Configure IGMP leave message handling mode."
	::= { multicast 10 }

--------------------
--  bandwidth
--------------------
-- removed in calix MRD20
--  To support multiple version of E5-1xx (Currently R1.x and R2.x), we keep all those useful entries in the MIB
	mcastDefaultBandwidth OBJECT-TYPE
	SYNTAX INTEGER (1..100000)
	UNITS "Kbps"
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		"Default bandwidth requirement for a multicast channel."
	::= { mcastBandwidth 1 }

	maxNumOfMcastBw OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The maximum number of row entries that user can create in mcastBwTable."
	::= { mcastBandwidth 2 }

-- mcastBwTable
	mcastBwTable OBJECT-TYPE
        SYNTAX SEQUENCE OF McastBwEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
                "This table defines bandwidth budget for a range of multicast IP channels."
        ::= { mcastBandwidth 3 }

        mcastBwEntry OBJECT-TYPE
        SYNTAX McastBwEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry of mcastBwTable."
        INDEX { mcastBwIndex, mcastBwStartIp, mcastBwEndIp }
        ::= { mcastBwTable 1 }

        McastBwEntry ::=
        	SEQUENCE {
        		mcastBwIndex		INTEGER,
        		mcastBwStartIp		IpAddress,
        		mcastBwEndIp		IpAddress,
        		mcastBwBandwidth	INTEGER,
			mcastBwRowStatus	RowStatus
           	}

	mcastBwIndex OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The index which specify the entry."
	::= { mcastBwEntry 1 }

	mcastBwStartIp OBJECT-TYPE
	SYNTAX IpAddress
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The start multicast IP of the bandwidth control range."
	::= { mcastBwEntry 2 }

	mcastBwEndIp OBJECT-TYPE
	SYNTAX IpAddress
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The end multicast IP of the bandwidth control range."
	::= { mcastBwEntry 3 }

	mcastBwBandwidth OBJECT-TYPE
	SYNTAX INTEGER
	UNITS "Kbps"
	MAX-ACCESS read-create
	STATUS current
	DESCRIPTION
		"The bandwidth budget for the multicast IP channels."
	::= { mcastBwEntry 4 }

	mcastBwRowStatus OBJECT-TYPE
	SYNTAX RowStatus
	MAX-ACCESS read-create
	STATUS current
	DESCRIPTION
		"The row status of the entry."
	::= { mcastBwEntry 5 }

-- mcastBwPortTable

        mcastBwPortTable OBJECT-TYPE
        SYNTAX SEQUENCE OF McastBwPortEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"This table specify the multicast bandwidth control of the port."
        ::= { mcastBandwidth 4 }

	mcastBwPortEntry OBJECT-TYPE
        SYNTAX McastBwPortEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry of mcastBwPortTable."
        INDEX { ifIndex }
        ::= { mcastBwPortTable 1 }

        McastBwPortEntry ::=
        	SEQUENCE {
			mcastBwPortEnable	INTEGER,
			mcastBwPortBandwidth	INTEGER
           	}

        mcastBwPortEnable OBJECT-TYPE
        SYNTAX  INTEGER {
        		enable(1),
        		disable(2)
        	}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"Enable/disable multicast bandwidth control for a port."
        ::= { mcastBwPortEntry 1 }

        mcastBwPortBandwidth OBJECT-TYPE
        SYNTAX INTEGER
        UNITS "Kbps"
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"Set bandwidth threshold for a port."
        ::= { mcastBwPortEntry 2 }

--------------------
--  igmpCount
--------------------
-- removed in calix MRD20
--  To support multiple version of E5-1xx (Currently R1.x and R2.x), we keep all those useful entries in the MIB
        igmpCountPortTable OBJECT-TYPE
        SYNTAX SEQUENCE OF IgmpCountPortEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"This table specify the IGMP count limiting of the port."
        ::= { igmpCount 1 }

	igmpCountPortEntry OBJECT-TYPE
        SYNTAX IgmpCountPortEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry of igmpCountPortTable."
        INDEX { ifIndex }
        ::= { igmpCountPortTable 1 }

        IgmpCountPortEntry ::=
        	SEQUENCE {
			igmpCountPortEnable	INTEGER,
			igmpCountPortLimit	INTEGER
           	}

        igmpCountPortEnable OBJECT-TYPE
        SYNTAX  INTEGER {
        		enable(1),
        		disable(2)
        	}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"Enable/disable IGMP count limiting for a port."
        ::= { igmpCountPortEntry 1 }

        igmpCountPortLimit OBJECT-TYPE
        SYNTAX INTEGER (0..16)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"The maximum allowed IGMP report count for a port."
        ::= { igmpCountPortEntry 2 }

--------------------
--  mvlan
--------------------

	maxNumOfMvlan OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The maximum number of row entries that user can create in mvlanTable."
	::= { mvlan 1 }

-- mvlanTable

	mvlanTable OBJECT-TYPE
   	SYNTAX SEQUENCE OF MvlanEntry
    	MAX-ACCESS not-accessible
    	STATUS current
    	DESCRIPTION
        	"A table containing static configuration information for
        	each multicast VLAN configured into the device."
    	::= { mvlan 2 }

	mvlanEntry OBJECT-TYPE
    	SYNTAX MvlanEntry
    	MAX-ACCESS not-accessible
    	STATUS current
    	DESCRIPTION
        	"An entry of mvlanTable."
    	INDEX { mvlanIndex }
    	::= { mvlanTable 1 }

	MvlanEntry ::=
    		SEQUENCE {
    			mvlanIndex		VlanIndex,
        		mvlanName		DisplayString,
        		mvlanEgressPorts	PortList,
			mvlanUntaggedPorts	PortList,
       			mvlanRowStatus		RowStatus
    		}

	mvlanIndex OBJECT-TYPE
    	SYNTAX VlanIndex
    	MAX-ACCESS read-only
    	STATUS current
    	DESCRIPTION
        	"The VLAN-ID refering to this VLAN."
    	::= { mvlanEntry 1 }

	mvlanName OBJECT-TYPE
    	SYNTAX DisplayString (SIZE (0..31))
    	MAX-ACCESS read-create
    	STATUS current
    	DESCRIPTION
        	"An administratively assigned string, which may be used to identify the VLAN."
    	::= { mvlanEntry 2 }

	mvlanEgressPorts OBJECT-TYPE
    	SYNTAX PortList
    	MAX-ACCESS read-create
    	STATUS current
    	DESCRIPTION
        	"The set of ports which are permanently assigned to the
        	egress list for this multicast VLAN."
    	::= { mvlanEntry 3 }

	mvlanUntaggedPorts OBJECT-TYPE
    	SYNTAX PortList
    	MAX-ACCESS read-create
    	STATUS current
    	DESCRIPTION
        	"The set of ports which should transmit egress packets
		 	for this multicast VLAN as untagged."
    	::= { mvlanEntry 4 }

	mvlanRowStatus OBJECT-TYPE
    	SYNTAX RowStatus
    	MAX-ACCESS read-create
    	STATUS current
    	DESCRIPTION
        	"This object indicates the status of this entry."
    	::= { mvlanEntry 5 }

-- mvlanTranslateTable

	mvlanTranslateTable OBJECT-TYPE
        SYNTAX SEQUENCE OF MvlanTranslateEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
                "A table that contains multicast to VLAN translation."
        ::= { mvlan 3 }

        mvlanTranslateEntry OBJECT-TYPE
        SYNTAX MvlanTranslateEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry of mvlanTranslateTable."
        INDEX { dot1qVlanIndex, mvlanTranslateIndex }
        ::= { mvlanTranslateTable 1 }

        MvlanTranslateEntry ::=
        	SEQUENCE {
        		mvlanTranslateIndex		INTEGER,
        		mvlanTranslateStartIp		IpAddress,
        		mvlanTranslateEndIp		IpAddress
           	}

	mvlanTranslateIndex OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The index which specif the entry."
	::= { mvlanTranslateEntry 1 }

	mvlanTranslateStartIp OBJECT-TYPE
	SYNTAX IpAddress
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		"The start IP of the multicast VLAN translation."
	::= { mvlanTranslateEntry 2 }

	mvlanTranslateEndIp OBJECT-TYPE
	SYNTAX IpAddress
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		"The end IP of the multicast VLAN translation."
	::= { mvlanTranslateEntry 3 }

--------------------
--  queryVid
--------------------

	maxNumOfQryVid OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The maximum number of row entries that user can create in qryVidConfTable."
	::= { queryVid 1 }

-- qryVidConfTable

        qryVidConfTable OBJECT-TYPE
        SYNTAX SEQUENCE OF QryVidConfEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"This table defines statically set VLANs used for response IGMP report."
        ::= { queryVid 2 }

	qryVidConfEntry OBJECT-TYPE
        SYNTAX QryVidConfEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry in qryVidConfTable."
        INDEX { qryVid }
        ::= { qryVidConfTable 1 }

        QryVidConfEntry ::=
        	SEQUENCE {
			qryVid			INTEGER,
			qryVidRowStatus 	RowStatus
           	}

	qryVid OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"VLAN ID."
	::= { qryVidConfEntry 1 }

        qryVidRowStatus OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        	"This object indicates the status of this entry."
        ::= { qryVidConfEntry 2 }

-- qryVidStatusTable

        qryVidStatusTable OBJECT-TYPE
        SYNTAX SEQUENCE OF QryVidStatusEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"This table shows statically set or dynamically learned VLANs used for response IGMP report."
        ::= { queryVid 3 }

	qryVidStatusEntry OBJECT-TYPE
        SYNTAX QryVidStatusEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry in qryVidStatusTable."
        INDEX { qryVid }
        ::= { qryVidStatusTable 1 }

        QryVidStatusEntry ::=
        	SEQUENCE {
			qryVidType		INTEGER
           	}

	qryVidType OBJECT-TYPE
	SYNTAX  INTEGER {
			static(1),
			dynamic(2)
		}
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"VLAN type."
	::= { qryVidStatusEntry 1 }

--------------------
--  igmpTimer
--------------------

	igmpQryInterval OBJECT-TYPE
        SYNTAX INTEGER (10..1000)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"Set IGMP query interval, 10~1000 in seconds."
        ::= { igmpTimer 1 }

	igmpRobust OBJECT-TYPE
        SYNTAX INTEGER (1..5)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"Set IGMP query Robustness, 1~5."
        ::= { igmpTimer 2 }

	igmpQryRespInterval OBJECT-TYPE
        SYNTAX INTEGER (1..100)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"Set IGMP query response interval, 1~100 in 100 milliseconds."
        ::= { igmpTimer 3 }

	igmpLastMemQryInterval OBJECT-TYPE
        SYNTAX INTEGER (1..5)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"Set IGMP Last Member Query interval, 1~5 in 100 milliseconds."
        ::= { igmpTimer 4 }

	igmpLastMemQryRobust OBJECT-TYPE
        SYNTAX INTEGER (1..5)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"Set Last Member Query Robustness, 1~5."
        ::= { igmpTimer 5 }

--------------------
--  auditQuery
--------------------

	auditQryEnable OBJECT-TYPE
        SYNTAX INTEGER {
    		enable(1),
    		disable(2)
        }
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"Enable/disable IGMP audit query."
        ::= { auditQuery 1 }

	auditQryInterval OBJECT-TYPE
        SYNTAX INTEGER (1..4)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"Set IGMP Audit Query Interval, 1~4 in 100 milliseconds."
        ::= { auditQuery 2 }

	auditQryRobust OBJECT-TYPE
        SYNTAX INTEGER (1..5)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"Set IGMP Audit Query Robustness, 1~5."
        ::= { auditQuery 3 }

--------------------
--  igmpProfile
--------------------

	maxNumberOfIgmpProfiles OBJECT-TYPE
	SYNTAX 	INTEGER
	MAX-ACCESS	read-only
	STATUS	current
	DESCRIPTION
		"The max number of IGMP profiles in the system."
	::= { igmpProfile 1 }

	igmpProfileTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF IgmpProfileEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
        	"A table that contains IGMP Profiles."
        ::= { igmpProfile 2 }

	igmpProfileEntry OBJECT-TYPE
        SYNTAX  IgmpProfileEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
        	"The entry of IGMP Profile table."
        INDEX  {IMPLIED igmpProfileName }
        ::= { igmpProfileTable 1 }

        IgmpProfileEntry ::=
           SEQUENCE {
        	igmpProfileName			DisplayString,
        	igmpProfileEnable		INTEGER,
        	igmpProfileMaxGroup		INTEGER,
			igmpProfileRowStatus	RowStatus
           }
	
	igmpProfileName OBJECT-TYPE
		SYNTAX 	DisplayString (SIZE (1..31))
		MAX-ACCESS 	read-only
		STATUS 	current
		DESCRIPTION
			"The IGMP Profile name."
		::= { igmpProfileEntry 1 }

	igmpProfileEnable OBJECT-TYPE
		SYNTAX INTEGER {
    		enable(1),
    		disable(2)
        }
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"Enable/disable IGMP Profile."
        ::= { igmpProfileEntry 2 }

	igmpProfileMaxGroup OBJECT-TYPE
		SYNTAX INTEGER (1..64)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"Set maximum allowed multicast group, 1~64."
        ::= { igmpProfileEntry 3 }
        
	igmpProfileRowStatus OBJECT-TYPE
		SYNTAX	RowStatus
		MAX-ACCESS	read-create
		STATUS	current
		DESCRIPTION
			"The row status of the IGMP Profile entry."
		::= { igmpProfileEntry 4 }

	igmpFilterTable OBJECT-TYPE
        SYNTAX  SEQUENCE OF IgmpFilterEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
        	"A table that contains IGMP Filters."
        ::= { igmpProfile 3 }

	igmpFilterEntry OBJECT-TYPE
        SYNTAX  IgmpFilterEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
        	"The entry of IGMP Filter table."
        INDEX  { igmpProfileName, igmpFilterIndex }
        ::= { igmpFilterTable 1 }

        IgmpFilterEntry ::=
           SEQUENCE {
        	igmpFilterIndex		INTEGER,
        	igmpFilterStartIp	IpAddress,
        	igmpFilterEndIp		IpAddress
           }

	igmpFilterIndex OBJECT-TYPE
		SYNTAX 	INTEGER
		MAX-ACCESS	read-only
		STATUS	current
		DESCRIPTION
			"The index which specifies the filter rule."
		::= { igmpFilterEntry 1 }

	igmpFilterStartIp OBJECT-TYPE
		SYNTAX 	IpAddress
		MAX-ACCESS	read-create
		STATUS	current
		DESCRIPTION
			"The start IP of the filter rule."
		::= { igmpFilterEntry 2 }

	igmpFilterEndIp OBJECT-TYPE
		SYNTAX 	IpAddress
		MAX-ACCESS	read-create
		STATUS	current
		DESCRIPTION
			"The end IP of the filter rule."
		::= { igmpFilterEntry 3 }

	igmpProfilePortTable OBJECT-TYPE
        SYNTAX	SEQUENCE OF IgmpProfilePortEntry
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
        	"This table specifies the IGMP Profile of the port."
        ::= { igmpProfile 4 }

	igmpProfilePortEntry OBJECT-TYPE
        SYNTAX	IgmpProfilePortEntry
        MAX-ACCESS	not-accessible
        STATUS	current
        DESCRIPTION
        	"An entry in igmpProfilePortTable."
        INDEX		{ ifIndex }
        ::= { igmpProfilePortTable 1 }

        IgmpProfilePortEntry ::=
			SEQUENCE {
			igmpProfilePortProfile		OCTET STRING
			}

    igmpProfilePortProfile OBJECT-TYPE
        SYNTAX  OCTET STRING (SIZE (1..31))
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
       		"The IGMP Profile of the port."
   		::= { igmpProfilePortEntry 1 }



----------------------------------------
-- port
----------------------------------------
-- Since we define it latter, mark the definition here
--        subrPortTable           OBJECT IDENTIFIER ::= { port 1 }
--	adslPort		OBJECT IDENTIFIER ::= { port 2 }
	vdslPort	OBJECT IDENTIFIER ::= { port 3 }
	pvc			OBJECT IDENTIFIER ::= { port 4 }
--	ppvc			OBJECT IDENTIFIER ::= { port 5 }
	rpvc			OBJECT IDENTIFIER ::= { port 8 }
-- Since we define it latter, mark the definition here
--        dsBcastDisableTable     OBJECT IDENTIFIER ::= { port 9 }
	paepvc			OBJECT IDENTIFIER ::= { port 10 }
	tlspvc			OBJECT IDENTIFIER ::= { port 11 }
--	ipbpvc			OBJECT IDENTIFIER ::= { port 12 }
    dtpvc			OBJECT IDENTIFIER ::= { port 13 }
	voipPort		OBJECT IDENTIFIER ::= { port 14 }
	snrMgn			OBJECT IDENTIFIER ::= { port 15 }
	dslRate			OBJECT IDENTIFIER ::= { port 16 }	
-- G.bond start from 51
	gbond			OBJECT IDENTIFIER ::= { port 51 }
-- Subscriber Port Table

        subrPortTable OBJECT-TYPE
        SYNTAX SEQUENCE OF SubrPortEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"This table includes subscriber attributes for the port."
        ::= { port 1 }

	subrPortEntry OBJECT-TYPE
        SYNTAX SubrPortEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry in subrPortTable."
        INDEX { ifIndex }
        ::= { subrPortTable 1 }

        SubrPortEntry ::=
        	SEQUENCE {
			subrPortName	DisplayString,
			subrPortTel	DisplayString
		}

        subrPortName OBJECT-TYPE
        SYNTAX DisplayString (SIZE (0..31))
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"Name of the subscriber."
        ::= { subrPortEntry 1 }

        subrPortTel OBJECT-TYPE
        SYNTAX DisplayString (SIZE (0..15))
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"Telephone number of the subscriber."
        ::= { subrPortEntry 2 }

--------------------
--  vdslPort
--------------------

-- VDSL Line Table

        vdslLineConfTable OBJECT-TYPE
        SYNTAX SEQUENCE OF VdslLineConfEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"This table includes common attributes describing the VDSL line.
		This table is supported by R2.00 and later versions."
        ::= { vdslPort 1 }

	vdslLineConfEntry OBJECT-TYPE
        SYNTAX VdslLineConfEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry in vdslLineConfTable."
        INDEX { ifIndex }
        ::= { vdslLineConfTable 1 }

        VdslLineConfEntry ::=
           SEQUENCE {
		vdslLineConfUpbo		INTEGER,
		vdslLineConfVdslProfile		INTEGER,
--		vdslLineConfFrequencyPlan	INTEGER,
		vdslLineConfRfiBand		INTEGER,
		vdslLineConfIpqosProfile	DisplayString,
		vdslLineConfVturInp		INTEGER,
		vdslLineConfVtucInp		INTEGER,
		vdslLineConfOptionMask		INTEGER,
		vdslLineConfUpboForceLength	INTEGER,
		vdslLineConfPsdShape		INTEGER,
		vdslLineConfDpbo		INTEGER,
		vdslLineConfDpboParamEsel	INTEGER,
		vdslLineConfDpboParamEscma	INTEGER,
		vdslLineConfDpboParamEscmb	INTEGER,
		vdslLineConfDpboParamEscmc	INTEGER,
		vdslLineConfDpboParamMus	INTEGER,
		vdslLineConfDpboParamFmin	INTEGER,
		vdslLineConfDpboParamFmax	INTEGER,
		vdslLineConfDpboParamPsdId	INTEGER
--		vdslLineConfPMask			INTEGER
           }

        vdslLineConfUpbo OBJECT-TYPE
        SYNTAX 	INTEGER {
			enable(1),
			disable(2)
		}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"Enable/disable upstream power backoff control."
        ::= { vdslLineConfEntry 1 }

        vdslLineConfVdslProfile OBJECT-TYPE
        SYNTAX 	INTEGER { 
        	vdsl8a(1),
			vdsl8b(2),
			vdsl8c(3),
			vdsl8d(4),
			vdsl12a(5),
			vdsl12b(6),
			vdsl17a(7),
			auto(8),
			adsl2plus(9),
			vdsl2(10),
			gdmt(11),
			glite(12),
			adsl2(13),
			t1413(14),
			vdsl2adsl2(15),			
			vdsl2gdmt(16),
			vdsl2glite(17),
			vdsl2t1413(18)
		}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"Set VDSL profile."
        ::= { vdslLineConfEntry 2 }

--       vdslLineConfFrequencyPlan OBJECT-TYPE
--       SYNTAX 	INTEGER {
--			plan997(1),
--			plan998(2)
--		}
--        MAX-ACCESS read-write
--        STATUS current
--        DESCRIPTION
--		"Set VDSL frequency plan."
--        ::= { vdslLineConfEntry 3 }

	vdslLineConfRfiBand OBJECT-TYPE
        SYNTAX 	INTEGER {
			disable(1),
			ansi(2),
			etsi(3),
			custom(4)
		}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"Set VDSL customized RFI configuration.
		disable: not apply RFI notch to port
		ansi: use pre-defined ANSI RFI notch
		etsi: use pre-defined ETSI notch
		custom: user needs to define customized RFI notch band through vdslRfiCustomTable"
        ::= { vdslLineConfEntry 4 }

        vdslLineConfIpqosProfile OBJECT-TYPE
        SYNTAX DisplayString
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		""
        ::= { vdslLineConfEntry 5 }

        vdslLineConfVturInp OBJECT-TYPE
        SYNTAX INTEGER (0..160)
        UNITS "0.1 DTM symbol"
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"VTUR minimum INP value"
        ::= { vdslLineConfEntry 6 }

        vdslLineConfVtucInp OBJECT-TYPE
        SYNTAX INTEGER (0..160)
        UNITS "0.1 DTM symbol"
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"VTUC mimimum INT value"
        ::= { vdslLineConfEntry 7 }

        vdslLineConfOptionMask OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"
		Bit1: disable Trellis coding in ADSL mode
		Bit2: disable Reed-Solomon coding for ADSL
		Bit3: disable upstream bitswaps
		Bit4: disable downstream bitwaps
		Bit5: disable upstream 1-bit constellation support
		Bit6: disable the transmit windowing in ADSL2+ mode
		Bit7: disable S=0.5 support in G.dmt
		Bit8: reserved
		Bit9: enable nitro
		Bit10: enable ADSL2 Annex L
		Bit11: enable ADSL2+ Annex M
		Bit12: enable US PTM optimization
		Bit13: enable DS PTM optimization
		Bit14: enable US PHYR
		Bit15: enable DS PHYR"
        ::= { vdslLineConfEntry 8 }

        vdslLineConfUpboForceLength OBJECT-TYPE
        SYNTAX INTEGER (-5..1270)
        UNITS "0.1dB"
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"-1 means max(kl0_CO,kl0_CPE).
		-2 means min(kl0_CO,kl0_CPE).
		-3 means kl0_CO.
		-4 means kl0_CPE.
		-5 means kl0_CPE + delta as calculated from.
		"
        ::= { vdslLineConfEntry 9 }

        vdslLineConfPsdShape OBJECT-TYPE
        SYNTAX INTEGER {
			vdsl2aNus0(1),
			vdsl2aEu32(2),
			vdsl2aEu36(3),
			vdsl2aEu40(4),
			vdsl2aEu44(5),
			vdsl2aEu48(6),
			vdsl2aEu52(7),
			vdsl2aEu56(8),
			vdsl2aEu60(9),
			vdsl2aEu64(10),
			vdsl2aEu128(11),
			vdsl1fttexAnsiM1(12),
			vdsl1fttexAnsiM2(13),
			vdsl1fttcabAnsiM1(14),
			vdsl1fttcabAnsiM2(15),
			vdsl1fttexAnsiM1E(16),
			vdsl1fttexAnsiM2E(17),
			vdslFttcabAnsiM1E(18),
			vdslFttcabAnsiM2E(19),
			vdsl2aCt(20),
			vdsl2b8x1(21),
			vdsl2b8x2(22),
			vdsl2b8x3(23),
			vdsl2b8x4(24),
			vdsl2b8x5(25),
			vdsl2b8x6(26),
			vdsl2b8x7(27),
			vdsl2b8x8(28),
			vdsl2b8x9(29),
			vdsl2b8x10(30),
			vdsl2b8x11(31),
			vdsl2b8x12(32),
			vdsl2b8x13(33),
			vdsl2b8x14(34),
			vdsl2b8x15(35),
			vdsl2b8x16(36),
			vdsl2b7x1(37),
			vdsl2b7x2(38),
			vdsl2b7x3(39),
			vdsl2b7x4(40),
			vdsl2b7x5(41),
			vdsl2b7x6(42),
			vdsl2b7x7(43),
			vdsl2b7x8(44),
			vdsl2b7x9(45),
			vdsl2b7x10(46),
			vdsl2btAnfp(47),
			vdsl2c138b(48),
			vdsl2c276b(49),
			vdsl2c138co(50),
			vdsl2c276co(51),
			vdsl2cTcmisdn(52),
			vdsl1QAMCompatible(53)
		}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"PSD mask type"
        ::= { vdslLineConfEntry 10 }

        vdslLineConfDpbo OBJECT-TYPE
        SYNTAX INTEGER {
        		enable(1),
        		disable(2)
        	}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"Enable/Disable DPBO"
        ::= { vdslLineConfEntry 11 }
        
        vdslLineConfDpboParamEsel OBJECT-TYPE
        SYNTAX INTEGER (0..511)
        UNITS "0.5dB"
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"DPBO ESEL parameter"
        ::= { vdslLineConfEntry 12 }
        
        vdslLineConfDpboParamEscma OBJECT-TYPE
        SYNTAX INTEGER (0..640)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"DPBO ESCMA parameter -1~1.5 in step of 1/256."
        ::= { vdslLineConfEntry 13 }
        
        vdslLineConfDpboParamEscmb OBJECT-TYPE
        SYNTAX INTEGER (0..640)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"DPBO ESCMB parameter -1~1.5 in step of 1/256."
        ::= { vdslLineConfEntry 14 }
        
        vdslLineConfDpboParamEscmc OBJECT-TYPE
        SYNTAX INTEGER (0..640)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"DPBO ESCMC parameter -1~1.5 in step of 1/256."
        ::= { vdslLineConfEntry 15 }
        
        vdslLineConfDpboParamMus OBJECT-TYPE
        SYNTAX INTEGER (0..255)
        UNITS "-0.5 dBm/Hz"
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"DPBO MUS parameter."
        ::= { vdslLineConfEntry 16 }
        
        vdslLineConfDpboParamFmin OBJECT-TYPE
        SYNTAX INTEGER (0..2048)
        UNITS "4.3125kHz"
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"DPBO FMIN parameter"
        ::= { vdslLineConfEntry 17 }
        
        vdslLineConfDpboParamFmax OBJECT-TYPE
        SYNTAX INTEGER (32..6956)
        UNITS "4.3125kHz"
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"DPBO FMAX parameter"
        ::= { vdslLineConfEntry 18 }
        
        vdslLineConfDpboParamPsdId OBJECT-TYPE
        SYNTAX INTEGER {
        		unknown(0),
        		psdCo(1),
        		psdFlat(2),
        		psdCabAnsi(3),
        		psdCabEtsi(4),
        		psdExchEtsi(5),
        		psdExchAnsi(6)
		}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"Valid range for setting is 1~6."
        ::= { vdslLineConfEntry 19 }
        
--      	vdslLineConfPMask OBJECT-TYPE
--        SYNTAX INTEGER
--       MAX-ACCESS read-write
--        STATUS current
--        DESCRIPTION
--		"
--		Bit1: G.DMT (G.992.1) 
--		Bit2: G.LITE (G.992.2)
--		Bit3: ADSL2 (G.992.3)
--		Bit5: ADSL2+ (G.992.5)
--		Bit6: ANSI T1.413
--		Bit8: G.993.2 VDSL profile 8a     
--		Bit9: G.993.2 VDSL profile 8b
--		Bit10: G.993.2 VDSL profile 8c
--		Bit11: G.993.2 VDSL profile 8d
--		Bit12: G.993.2 VDSL profile 12a
--		Bit13: G.993.2 VDSL profile 12b
--		Bit14: G.993.2 VDSL profile 17a"
--        ::= { vdslLineConfEntry 20 }

	vdslVlan		OBJECT IDENTIFIER ::= { vdslPort 2 }

-- vdslPortConfTable

        vdslPortConfTable OBJECT-TYPE
        SYNTAX SEQUENCE OF VdslPortConfEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"This table includes common attributes describing the VDSL port.
		This table is supported by R2.00 and later versions."
        ::= { vdslVlan 1 }

	vdslPortConfEntry OBJECT-TYPE
        SYNTAX VdslPortConfEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry in vdslPortConfTable."
        INDEX { ifIndex }
        ::= { vdslPortConfTable 1 }

        VdslPortConfEntry ::=
           SEQUENCE {
--		vdslPortConfPvid		VlanIndex,
--		vdslPortConfPriority		INTEGER,
--		vdslPortConfAcceptableFrameType	INTEGER,
		vdslPortConfTlsEnable		INTEGER,
		vdslPortConfTlsVid		VlanIndex,
		vdslPortConfTlsPriority		INTEGER,
		vdslPortConfDtEnable		INTEGER,
		vdslPortConfDtSVid		VlanIndex,
		vdslPortConfDtSPriority		INTEGER,
		vdslPortConfDtCVid		VlanIndex,
		vdslPortConfDtCPriority		INTEGER
           }

--        vdslPortConfPvid OBJECT-TYPE
--        SYNTAX VlanIndex
--        MAX-ACCESS read-write
--        STATUS current
--        DESCRIPTION
--		"The PVID, the VLAN ID assigned to untagged frames or
-- 		Priority-Tagged frames received on this port."
--        ::= { vdslPortConfEntry 1 }
--
--	vdslPortConfPriority OBJECT-TYPE
--        SYNTAX INTEGER (0..7)
--        MAX-ACCESS read-write
--        STATUS current
--        DESCRIPTION
--		"The default ingress User Priority for this port."
--        ::= { vdslPortConfEntry 2 }
--
--        vdslPortConfAcceptableFrameType OBJECT-TYPE
--        SYNTAX	INTEGER {
--        		admitAll(1),
--        		admitOnlyVlanTagged(2)
--        	}
--        MAX-ACCESS read-write
--        STATUS current
--        DESCRIPTION
--		"When this is admitOnlyVlanTagged(2) the device will
-- 		discard untagged frames or Priority-Tagged frames
-- 		received on this port. When admitAll(1), untagged
-- 		frames or Priority-Tagged frames received on this port
-- 		will be accepted and assigned to the PVID for this port"
--        ::= { vdslPortConfEntry 3 }

	vdslPortConfTlsEnable OBJECT-TYPE
        SYNTAX 	INTEGER {
        		enable(1),
        		disable(2)
        	}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"Enable/disable the transparent LAN service."
        ::= { vdslPortConfEntry 4 }

        vdslPortConfTlsVid OBJECT-TYPE
        SYNTAX VlanIndex
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"The transparent LAN service s-tag VID."
        ::= { vdslPortConfEntry 5 }

        vdslPortConfTlsPriority OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"The transparent LAN service s-tag priority."
        ::= { vdslPortConfEntry 6 }

	vdslPortConfDtEnable OBJECT-TYPE
        SYNTAX 	INTEGER {
        		enable(1),
        		disable(2)
        	}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"Enable/disable the Double Tagging service."
        ::= { vdslPortConfEntry 7 }

        vdslPortConfDtSVid OBJECT-TYPE
        SYNTAX VlanIndex
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"The Double Tagging service s-tag VID."
        ::= { vdslPortConfEntry 8 }

        vdslPortConfDtSPriority OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"The Double Tagging service s-tag priority."
        ::= { vdslPortConfEntry 9 }

        vdslPortConfDtCVid OBJECT-TYPE
        SYNTAX VlanIndex
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"The Double Tagging service c-tag VID."
        ::= { vdslPortConfEntry 10 }

        vdslPortConfDtCPriority OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"The Double Tagging service c-tag priority."
        ::= { vdslPortConfEntry 11 }

-- vdslPortVlanTranslateTable
        vdslPortVlanTranslateTable OBJECT-TYPE
        SYNTAX SEQUENCE OF VdslPortVlanTranslateEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "A table that contains VLAN translation."
        ::= { vdslVlan 2 }
        
        vdslPortVlanTranslateEntry OBJECT-TYPE
        SYNTAX VdslPortVlanTranslateEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry in vdslPortVlanTranslateTable."
        	INDEX { ifIndex , vdslPortVlanTranslateVpi , vdslPortVlanTranslateVci , vdslPortVlanTranslateCvid }
        	::= { vdslPortVlanTranslateTable 1 }
        	
        	VdslPortVlanTranslateEntry ::=
        	SEQUENCE {
        		vdslPortVlanTranslateVpi		INTEGER,
        		vdslPortVlanTranslateVci		INTEGER,
				vdslPortVlanTranslateCxvid		VlanIndex,
        		vdslPortVlanTranslateCvid		VlanIndex,
        		vdslPortVlanTranslateSvid		VlanIndex,
        		vdslPortVlanTranslateDsonly		INTEGER,
        		vdslPortVlanTranslateRowStatus	RowStatus
        	}
        
        vdslPortVlanTranslateVpi OBJECT-TYPE
        SYNTAX INTEGER (0..255)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
		"VPI of the vtt."
        ::= { vdslPortVlanTranslateEntry 1 }
        
        vdslPortVlanTranslateVci OBJECT-TYPE
        SYNTAX INTEGER (1..255)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
		"VCI of the vtt."
        ::= { vdslPortVlanTranslateEntry 2 }
        
        vdslPortVlanTranslateCxvid OBJECT-TYPE
        SYNTAX VlanIndex
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
		"CXVID of the vtt."
        ::= { vdslPortVlanTranslateEntry 3 }
        
        vdslPortVlanTranslateCvid OBJECT-TYPE
        SYNTAX VlanIndex
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
		"CVID of the vtt."
        ::= { vdslPortVlanTranslateEntry 4 }

        vdslPortVlanTranslateSvid OBJECT-TYPE
        SYNTAX VlanIndex
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
		"SVID of the vtt."
        ::= { vdslPortVlanTranslateEntry 5 }
        
		vdslPortVlanTranslateDsonly OBJECT-TYPE
        SYNTAX INTEGER (1..2)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
		"Donwstream direction only of the vtt."
        ::= { vdslPortVlanTranslateEntry 6 }

        vdslPortVlanTranslateRowStatus OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        "This object is used to create a new row or delete an existing row in this table."
        ::= { vdslPortVlanTranslateEntry 7 }

-- vdslPortVlanTable

--        vdslPortVlanTable OBJECT-TYPE
--        SYNTAX SEQUENCE OF VdslPortVlanEntry
--        MAX-ACCESS not-accessible
--        STATUS current
--        DESCRIPTION
--		"This table includes common attributes describing the VDSL port.
--		This table is supported by R2.00 and later versions."
--        ::= { vdslVlan 2 }
--
--	vdslPortVlanEntry OBJECT-TYPE
--        SYNTAX VdslPortVlanEntry
--        MAX-ACCESS not-accessible
--        STATUS current
--        DESCRIPTION
--        	"An entry in vdslPortVlanTable."
--        INDEX { ifIndex, dot1qVlanIndex }
--        ::= { vdslPortVlanTable 1 }
--
--        VdslPortVlanEntry ::=
--           SEQUENCE {
--		vdslPortVlanReg			INTEGER,
--		vdslPortVlanTag			INTEGER,
--		vdslPortVlanRowStatus		RowStatus
--           }
--
--        vdslPortVlanReg OBJECT-TYPE
--        SYNTAX 	INTEGER {
--        		egress(1),
--        		forbidden(2)
--        	}
--        MAX-ACCESS read-create
--        STATUS current
--        DESCRIPTION
--                "The port is egress or forbidden for this VLAN."
--        ::= { vdslPortVlanEntry 1 }
--
--        vdslPortVlanTag OBJECT-TYPE
--        SYNTAX INTEGER {
--        		tag(1),
--        		untag(2)
--        	}
--        MAX-ACCESS read-create
--        STATUS current
--        DESCRIPTION
--                "The port should transmit egress packets for this VLAN as tagged or untagged."
--         ::= { vdslPortVlanEntry 2 }
--
--        vdslPortVlanRowStatus OBJECT-TYPE
--        SYNTAX RowStatus
--        MAX-ACCESS read-create
--        STATUS current
--        DESCRIPTION
--                "This object is used to create a new row or delete an existing row in this table."
--        ::= { vdslPortVlanEntry 3 }

-- vdslVlanStaticTable

--        vdslVlanStaticTable OBJECT-TYPE
--        SYNTAX SEQUENCE OF VdslVlanStaticEntry
--        MAX-ACCESS not-accessible
--        STATUS current
--        DESCRIPTION
--		"A table containing static configuration information for
-- 		each VLAN configured into the device by (local or
-- 		network) management.  All entries are permanent and will
-- 		be restored after the device is reset.
-- 		This table is supported by R2.00 and later versions."
--        ::= { vdslVlan 3 }
--
--	vdslVlanStaticEntry OBJECT-TYPE
--        SYNTAX VdslVlanStaticEntry
--        MAX-ACCESS not-accessible
--        STATUS current
--        DESCRIPTION
--        	"An entry in vdslVlanStaticTable."
--        INDEX { dot1qVlanIndex }
--        ::= { vdslVlanStaticTable 1 }
--
--        VdslVlanStaticEntry ::=
--           SEQUENCE {
--		vdslVlanStaticEgressPorts		PortList,
--		vdslVlanStaticUntaggedPorts		PortList,
--		vdslVlanStaticRowStatus			RowStatus
--           }
--
--        vdslVlanStaticEgressPorts OBJECT-TYPE
--        SYNTAX PortList
--        MAX-ACCESS read-create
--        STATUS current
--        DESCRIPTION
--                "The set of ports which are permanently assigned to the
-- 		egress list for this VLAN by management."
--        ::= { vdslVlanStaticEntry 1 }
--
--        vdslVlanStaticUntaggedPorts OBJECT-TYPE
--        SYNTAX PortList
--        MAX-ACCESS read-create
--        STATUS current
--        DESCRIPTION
--                "The set of ports which should transmit egress packets for this VLAN as untagged."
--        ::= { vdslVlanStaticEntry 2 }
--
--        vdslVlanStaticRowStatus OBJECT-TYPE
--        SYNTAX RowStatus
--        MAX-ACCESS read-create
--        STATUS current
--        DESCRIPTION
--                "This object indicates the status of this entry."
--        ::= { vdslVlanStaticEntry 3 }

-- vdslPortPvlanTable

        vdslPortPvlanTable OBJECT-TYPE
        SYNTAX SEQUENCE OF VdslPortPvlanEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"Protocol VLAN configuration table."
        ::= { vdslVlan 4 }

	vdslPortPvlanEntry OBJECT-TYPE
        SYNTAX VdslPortPvlanEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry in vdslPortPvlanTable."
        INDEX { ifIndex, vdslPortPvlanEtype }
        ::= { vdslPortPvlanTable 1 }

        VdslPortPvlanEntry ::=
           SEQUENCE {
		vdslPortPvlanEtype			Unsigned32,
		vdslPortPvlanVid			VlanIndex,
		vdslPortPvlanPriority			INTEGER,
		vdslPortPvlanRowStatus			RowStatus
           }

        vdslPortPvlanEtype OBJECT-TYPE
        SYNTAX Unsigned32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "0~0xffff."
        ::= { vdslPortPvlanEntry 1 }

        vdslPortPvlanVid OBJECT-TYPE
        SYNTAX VlanIndex
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                ""
        ::= { vdslPortPvlanEntry 2 }

        vdslPortPvlanPriority OBJECT-TYPE
        SYNTAX INTEGER (0..7)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                ""
        ::= { vdslPortPvlanEntry 3 }

        vdslPortPvlanRowStatus OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                ""
        ::= { vdslPortPvlanEntry 4 }

-- VDSL RFI Custom Table

        vdslRfiCustomTable OBJECT-TYPE
        SYNTAX SEQUENCE OF VdslRfiCustomEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"This table includes VDSL customized RFI configuration.
		This table is supported by R2.00 and later versions."
        ::= { vdslPort 3 }

	vdslRfiCustomEntry OBJECT-TYPE
        SYNTAX VdslRfiCustomEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry in vdslRfiCustomTable."
        INDEX { vdslRfiCustomIndex }
        ::= { vdslRfiCustomTable 1 }

        VdslRfiCustomEntry ::=
           SEQUENCE {
		vdslRfiCustomIndex		INTEGER,
		vdslRfiCustomStartFreq		INTEGER,
		vdslRfiCustomEndFreq		INTEGER,
		vdslRfiCustomEnable		INTEGER
           }

        vdslRfiCustomIndex OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
		"Index of the table."
        ::= { vdslRfiCustomEntry 1 }

        vdslRfiCustomStartFreq OBJECT-TYPE
        SYNTAX INTEGER
        UNITS "KHz"
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"The start value of the customized frequency range."
        ::= { vdslRfiCustomEntry 2 }

        vdslRfiCustomEndFreq OBJECT-TYPE
        SYNTAX INTEGER
        UNITS "KHz"
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"The end value of the customized frequency range."
        ::= { vdslRfiCustomEntry 3 }

        vdslRfiCustomEnable OBJECT-TYPE
        SYNTAX	INTEGER {
        		enable(1),
        		disable(2)
        	}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"Enable or disable the customized frequency range setting."
        ::= { vdslRfiCustomEntry 4 }

-- vdslLineConfUpboParamTable

        vdslLineConfUpboParamTable OBJECT-TYPE
        SYNTAX SEQUENCE OF VdslLineConfUpboParamEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"This table includes VDSL UPBO configuration."
        ::= { vdslPort 4 }

	vdslLineConfUpboParamEntry OBJECT-TYPE
        SYNTAX VdslLineConfUpboParamEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry in vdslLineConfUpboParamTable."
        INDEX { ifIndex,vdslLineConfUpboParamBand }
        ::= { vdslLineConfUpboParamTable 1 }

        VdslLineConfUpboParamEntry ::=
           SEQUENCE {
		vdslLineConfUpboParamBand		INTEGER,
		vdslLineConfUpboParamA			INTEGER,
		vdslLineConfUpboParamB			INTEGER
           }

        vdslLineConfUpboParamBand OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
		"Index of the table."
        ::= { vdslLineConfUpboParamEntry 1 }

        vdslLineConfUpboParamA OBJECT-TYPE
        SYNTAX INTEGER (4000..8095)
        UNITS "0.01 dBm/Hz"
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		""
        ::= { vdslLineConfUpboParamEntry 2 }

        vdslLineConfUpboParamB OBJECT-TYPE
        SYNTAX INTEGER (0..4095)
        UNITS "0.01 dBm/Hz"
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		""
        ::= { vdslLineConfUpboParamEntry 3 }

-- vdslLineConfDpboTable

        vdslLineConfDpboTable OBJECT-TYPE
        SYNTAX SEQUENCE OF VdslLineConfDpboEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"This table includes VDSL DPBO configuration."
        ::= { vdslPort 5 }

	vdslLineConfDpboEntry OBJECT-TYPE
        SYNTAX VdslLineConfDpboEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry in vdslLineConfDpboTable."
        INDEX { ifIndex, vdslLineConfDpboIndex }
        ::= { vdslLineConfDpboTable 1 }

        VdslLineConfDpboEntry ::=
           SEQUENCE {
		vdslLineConfDpboIndex		INTEGER,
		vdslLineConfDpboTone		INTEGER,
		vdslLineConfDpboPsd		INTEGER
           }

        vdslLineConfDpboIndex OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
		"Index of the table."
        ::= { vdslLineConfDpboEntry 1 }

        vdslLineConfDpboTone OBJECT-TYPE
        SYNTAX INTEGER (1..512)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		""
        ::= { vdslLineConfDpboEntry 2 }

        vdslLineConfDpboPsd OBJECT-TYPE
        SYNTAX INTEGER (0..255)
        UNITS "-0.5dBm/Hz"
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		""
        ::= { vdslLineConfDpboEntry 3 }

--------------------
-- pvc
--------------------

        maxNumOfPvcs OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        	"The maximum number of PVCs which could be created on a port."
        ::= { pvc 1 }

-- PVC Table

        pvcTable OBJECT-TYPE
        SYNTAX SEQUENCE OF PvcEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"This table includes PVC configuration."
        ::= { pvc 2 }

	pvcEntry OBJECT-TYPE
        SYNTAX PvcEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"An entry in pvcTable."
        INDEX { ifIndex, pvcVpi, pvcVci, pvcPvid }
        ::= { pvcTable 1 }

        PvcEntry ::=
        	SEQUENCE {
			-- Common --
			pvcVpi		INTEGER,
			pvcVci		INTEGER,
			pvcPvid		VlanIndex,
			pvcPriority	INTEGER,
			pvcProfile	DisplayString,
			pvcAuto		INTEGER,
			
			-- Only for pvc --
			pvcEncap	INTEGER,

			-- Only for paepvc --
			pvcAcName		DisplayString,
			pvcServiceName	DisplayString,
			pvcHelloTime	INTEGER,
			
			-- Other --
			pvcRowStatus	RowStatus
			}

		-- Common --
        pvcVpi OBJECT-TYPE
        SYNTAX INTEGER (0..255)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "VPI of the pvc."
         ::= { pvcEntry 1 }

        pvcVci OBJECT-TYPE
        SYNTAX INTEGER (1..65535)
        MAX-ACCESS read-only
       	STATUS current
        DESCRIPTION
                "VCI of the pvc."
         ::= { pvcEntry 2 }

        pvcPvid OBJECT-TYPE
        SYNTAX VlanIndex
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "Default VID of the pvc."
         ::= { pvcEntry 3 }


        pvcPriority OBJECT-TYPE
        SYNTAX INTEGER (0..7)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "802.1p default priority of the pvc."
         ::= { pvcEntry 5 }

        pvcProfile OBJECT-TYPE
        SYNTAX DisplayString (SIZE (1..31))
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "The value of this object identifies the row in the ipqosProfileTable.
                "
         ::= { pvcEntry 6 }

		pvcAuto OBJECT-TYPE
				SYNTAX INTEGER {
				enable(1),
				disable(2)
		}
		MAX-ACCESS read-create
		STATUS current
		DESCRIPTION
			"Enable/disable auto detection for PPPoE/PPPoA encapsulation."
		::= { pvcEntry 14 }         

		-- Only for PVC --
        pvcEncap OBJECT-TYPE
        SYNTAX INTEGER {
        		llc(1),
        		vc(2)
        	}
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Encapsulation of the pvc."
         ::= { pvcEntry 7 }

		-- Other --
        pvcRowStatus OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "This object is used to create a new row or delete an existing row in this table."
         ::= { pvcEntry 8 }

		-- Only for PAEPVC --		
		pvcAcName OBJECT-TYPE
		SYNTAX DisplayString
		MAX-ACCESS read-create
		STATUS current
		DESCRIPTION
			"Access concentrator name for paepvc."
		::= { pvcEntry 11 }

        pvcServiceName OBJECT-TYPE
        SYNTAX DisplayString
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Service name for paepvc."
         ::= { pvcEntry 12 }

		pvcHelloTime OBJECT-TYPE
		SYNTAX INTEGER
		UNITS "second"
		MAX-ACCESS read-create
		STATUS current
		DESCRIPTION
			"The system will close the PVC if there are not any LCP echo messages passed through during the LCP hello time."
		::= { pvcEntry 13 }

-- PVC state --
        pvcStateTable OBJECT-TYPE
        SYNTAX SEQUENCE OF PvcStateEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"This table show current PVC status."
        ::= { pvc 3 }

		pvcStateEntry OBJECT-TYPE
		SYNTAX PvcStateEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"An entry in pvcStateTable."
        INDEX { ifIndex, pvcStateVpi, pvcStateVci, pvcStatePvid }
        ::= { pvcStateTable 1 }

        PvcStateEntry ::=
		SEQUENCE {
			pvcStateVpi			INTEGER,
			pvcStateVci			INTEGER,
			pvcStatePvid		VlanIndex,
			pvcStatePriority	INTEGER,
			--pvcStateCvid		VlanIndex,
			--pvcStateCPriority	INTEGER,
			--pvcStateMode		DisplayString,
			pvcStateChannelType	DisplayString,
			pvcStateEncap		DisplayString
		}

		pvcStateVpi OBJECT-TYPE
		SYNTAX INTEGER (0..255)
		MAX-ACCESS read-only
		STATUS current
		DESCRIPTION
			"VPI of the pvc."
		::= { pvcStateEntry 1 }

		pvcStateVci OBJECT-TYPE
		SYNTAX INTEGER (1..65535)
		MAX-ACCESS read-only
		STATUS current
		DESCRIPTION
			"VCI of the pvc."
		::= { pvcStateEntry 2 }

		pvcStatePvid OBJECT-TYPE
		SYNTAX VlanIndex
		MAX-ACCESS read-only
		STATUS current
		DESCRIPTION
			"Default VID of the pvc."
		::= { pvcStateEntry 3 }

		pvcStatePriority OBJECT-TYPE
		SYNTAX INTEGER (0..7)
		MAX-ACCESS read-only
		STATUS current
		DESCRIPTION
			"802.1p default priority of the pvc."
		::= { pvcStateEntry 4 }

		--pvcStateCvid OBJECT-TYPE
		--SYNTAX VlanIndex
		--MAX-ACCESS read-only
		--STATUS current
		--DESCRIPTION
			--"Default C-VID for paepvc."
		--::= { pvcStateEntry 5 }

		--pvcStateCPriority OBJECT-TYPE
		--SYNTAX INTEGER (0..7)
		--MAX-ACCESS read-only
		--STATUS current
		--DESCRIPTION
			--"802.1p default C-priority for paepvc."
		--::= { pvcStateEntry 6 }

        --pvcStateMode OBJECT-TYPE
        --SYNTAX DisplayString (SIZE (1..31))
        --MAX-ACCESS read-only
        --STATUS current
        --DESCRIPTION
                --"The value of this object identifies the link mode at runntime."
         --::= { pvcStateEntry 7 }

        pvcStateChannelType OBJECT-TYPE
        SYNTAX DisplayString (SIZE (1..31))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The value of this object identifies the channel type at runtime."
         ::= { pvcStateEntry 8 }

        pvcStateEncap OBJECT-TYPE
        SYNTAX DisplayString (SIZE (1..31))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The value of this object identifies the channel encapsulation at runtime."
         ::= { pvcStateEntry 9 }
-------------------------------
-- 2684 routed mode pvc (rpvc)
-------------------------------

-- Routed Gateway Table

        rpvcGatewayTable OBJECT-TYPE
        SYNTAX SEQUENCE OF RpvcGatewayEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"This table includes Routed Gateway configuration."
        ::= { rpvc 1 }

	rpvcGatewayEntry OBJECT-TYPE
        SYNTAX RpvcGatewayEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"An entry in Routed Gateway table."
        INDEX { rpvcGatewayIp }
        ::= { rpvcGatewayTable 1 }

        RpvcGatewayEntry ::=
        	SEQUENCE {
			rpvcGatewayIp		IpAddress,
			rpvcGatewayVlanId    	VlanIndex,
			rpvcGatewayRowStatus 	RowStatus,
                        rpvcGatewayPriority  	INTEGER
           	}

        rpvcGatewayIp OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "IP of RPVC gateway."
        ::= { rpvcGatewayEntry 1 }

        rpvcGatewayVlanId OBJECT-TYPE
        SYNTAX VlanIndex
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
                "Vlan id send to this RPVC gateway."
        ::= { rpvcGatewayEntry 2 }

        rpvcGatewayRowStatus OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "This object is used to create a new row or delete an existing row in this table."
        ::= { rpvcGatewayEntry 3 }

        rpvcGatewayPriority OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
                "802.1p p bit send to this RPVC gateway."
        ::= { rpvcGatewayEntry 4 }

-- Routed PVC Table

        rpvcTable OBJECT-TYPE
        SYNTAX SEQUENCE OF RpvcEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"This table includes RPVC configuration."
        ::= { rpvc 2 }

	rpvcEntry OBJECT-TYPE
        SYNTAX RpvcEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"An entry in rpvcTable."
        INDEX { ifIndex, rpvcVpi, rpvcVci, rpvcIp, rpvcNetmask }
        ::= { rpvcTable 1 }

        RpvcEntry ::=
        	SEQUENCE {
			rpvcVpi				INTEGER,
			rpvcVci				INTEGER,
			rpvcEncap			INTEGER,
			rpvcProfile			DisplayString,
			rpvcIp				IpAddress,
			rpvcNetmask			IpAddress,
			rpvcGatewayIpAddress		IpAddress,
			rpvcRowStatus			RowStatus
           	}

        rpvcVpi OBJECT-TYPE
        SYNTAX INTEGER (0..255)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "VPI of the rpvc."
        ::= { rpvcEntry 1 }

        rpvcVci OBJECT-TYPE
        SYNTAX INTEGER (1..65535)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "VCI of the rpvc."
        ::= { rpvcEntry 2 }

        rpvcEncap OBJECT-TYPE
        SYNTAX INTEGER {
        		llc(1),
        		vc(2)
        	}
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Encapsulation of the rpvc."
         ::= { rpvcEntry 3 }

        rpvcProfile OBJECT-TYPE
        SYNTAX DisplayString (SIZE (1..31))
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "The ipqos profile of the rpvc."
        ::= { rpvcEntry 4 }

        rpvcIp OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The IP of the rpvc."
        ::= { rpvcEntry 5 }

        rpvcNetmask OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The IP mask of the rpvc IP."
        ::= { rpvcEntry 6 }

		rpvcGatewayIpAddress OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "The gateway IP of rpvc."
        ::= { rpvcEntry 7 }

        rpvcRowStatus OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "This object is used to create a new row or delete an existing row in this table."
        ::= { rpvcEntry 8 }

-- Routed PVC Routed Domain Table

        rpvcRouteDomainTable OBJECT-TYPE
        SYNTAX SEQUENCE OF RpvcRouteDomainEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"This table includes RPVC route domain configuration."
        ::= { rpvc 3 }

	rpvcRouteDomainEntry OBJECT-TYPE
        SYNTAX RpvcRouteDomainEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"An entry in rpvcRouteDomainTable."
        INDEX { ifIndex, rpvcRouteDomainVpi, rpvcRouteDomainVci, rpvcRouteDomainIp, rpvcRouteDomainNetmask }
        ::= { rpvcRouteDomainTable 1 }

        RpvcRouteDomainEntry ::=
        	SEQUENCE {
			rpvcRouteDomainVpi		INTEGER,
			rpvcRouteDomainVci		INTEGER,
			rpvcRouteDomainIp		IpAddress,
			rpvcRouteDomainNetmask		IpAddress,
			rpvcRouteDomainRowStatus	RowStatus
           	}

        rpvcRouteDomainVpi OBJECT-TYPE
        SYNTAX INTEGER (0..255)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "VPI of the rpvc."
        ::= { rpvcRouteDomainEntry 1 }

        rpvcRouteDomainVci OBJECT-TYPE
        SYNTAX INTEGER (1..65535)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "VCI of the rpvc."
        ::= { rpvcRouteDomainEntry 2 }

        rpvcRouteDomainIp OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The route domain IP."
        ::= { rpvcRouteDomainEntry 3 }

        rpvcRouteDomainNetmask OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The IP mask of the route domain IP."
        ::= { rpvcRouteDomainEntry 4 }

        rpvcRouteDomainRowStatus OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "This object is used to create a new row or delete an existing row in this table."
        ::= { rpvcRouteDomainEntry 5 }

        rpvcArpAgingTime OBJECT-TYPE
        SYNTAX  INTEGER
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"Set RPVC ARP proxy aging time 10..10000 seconds,
		0 to disable againg."
       	::= { rpvc 4 }

        rpvcArpFlush OBJECT-TYPE
        SYNTAX  INTEGER {
			enable(1)
		}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"Flush the RPVC ARP proxy table."
        ::= { rpvc 5 }

--------------------
-- dsBcastDisableTable
--------------------

        dsBcastDisableTable OBJECT-TYPE
        SYNTAX SEQUENCE OF DsBcastDisableEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"This table includes Down Stream Bcast configuration."
        ::= { port 9 }

	dsBcastDisableEntry OBJECT-TYPE
        SYNTAX DsBcastDisableEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"An entry in Down Stream Bcast table."
        INDEX { ifIndex, dsBcastDisableVlanId }
        ::= { dsBcastDisableTable 1 }

        DsBcastDisableEntry ::=
        	SEQUENCE {
			dsBcastDisableVlanId		INTEGER,
			dsBcastDisableRowStatus 	RowStatus
           	}

        dsBcastDisableVlanId OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "downstream broadcast disabled vid."
        ::= { dsBcastDisableEntry 1 }

        dsBcastDisableRowStatus OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "This object is used to create a new row or delete an existing row in this table."
        ::= { dsBcastDisableEntry 2 }

--------------------
-- paepvc
--------------------

-- PPPoAoE PVC Table

        paepvcTable OBJECT-TYPE
        SYNTAX SEQUENCE OF PaepvcEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"This table includes PPPoAoE PVC configuration."
        ::= { paepvc 1 }

	paepvcEntry OBJECT-TYPE
        SYNTAX PaepvcEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"An entry of paepvcTable."
        INDEX { ifIndex, paepvcVpi, paepvcVci, paepvcPvid }
        ::= { paepvcTable 1 }

        PaepvcEntry ::=
        	SEQUENCE {
			paepvcVpi		INTEGER,
			paepvcVci		INTEGER,
			paepvcPvid		VlanIndex,
			paepvcEncap			INTEGER,
			paepvcPriority		INTEGER,
			paepvcProfile  	DisplayString,
			paepvcAcName		DisplayString,
			paepvcServiceName	DisplayString,
			paepvcHelloTime		INTEGER,
			paepvcRowStatus		RowStatus,
			paepvcCvid		VlanIndex,
			paepvcCPriority		INTEGER
           	}

        paepvcVpi OBJECT-TYPE
        SYNTAX INTEGER (0..255)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "VPI of the pvc."
         ::= { paepvcEntry 1 }

        paepvcVci OBJECT-TYPE
        SYNTAX INTEGER (1..65535)
        MAX-ACCESS read-only
       	STATUS current
        DESCRIPTION
                "VCI of the pvc."
         ::= { paepvcEntry 2 }

        paepvcPvid OBJECT-TYPE
        SYNTAX VlanIndex
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "Default VID of the pvc."
         ::= { paepvcEntry 3 }

        paepvcEncap OBJECT-TYPE
        SYNTAX INTEGER {
        		llc(1),
        		vc(2)
        	}
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Encapsulation of the paepvc."
         ::= { paepvcEntry 4 }

        paepvcPriority OBJECT-TYPE
        SYNTAX INTEGER (0..7)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "802.1p default priority of the pvc."
         ::= { paepvcEntry 5 }

        paepvcProfile OBJECT-TYPE
        SYNTAX DisplayString (SIZE (1..31))
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "The value of this object identifies the row in the ipqosProfileTable."
         ::= { paepvcEntry 6 }

        paepvcAcName OBJECT-TYPE
        SYNTAX DisplayString
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Access concentrator name."
         ::= { paepvcEntry 7 }

        paepvcServiceName OBJECT-TYPE
        SYNTAX DisplayString
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Service name."
         ::= { paepvcEntry 8 }

        paepvcHelloTime OBJECT-TYPE
        SYNTAX INTEGER
        UNITS "second"
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "The system will close the PVC if there are not any LCP echo messages passed through
                during the LCP hello time."
         ::= { paepvcEntry 9 }

        paepvcRowStatus OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "This object is used to create a new row or delete an existing row in this table."
         ::= { paepvcEntry 10 }

        paepvcCvid OBJECT-TYPE
        SYNTAX VlanIndex
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Default C-VID of the pvc."
         ::= { paepvcEntry 12 }


        paepvcCPriority OBJECT-TYPE
        SYNTAX INTEGER (0..7)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "802.1p default C-priority of the pvc."
         ::= { paepvcEntry 13 }

--------------------
-- tlspvc
--------------------

-- TLS PVC Table

        tlspvcTable OBJECT-TYPE
        SYNTAX SEQUENCE OF TlspvcEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"This table includes Transparent LAN Service (TLS) PVC configuration."
        ::= { tlspvc 1 }

	tlspvcEntry OBJECT-TYPE
        SYNTAX TlspvcEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"An entry of tlspvcTable."
        INDEX { ifIndex, tlspvcVpi, tlspvcVci, tlspvcSvid }
        ::= { tlspvcTable 1 }

        TlspvcEntry ::=
        	SEQUENCE {
			tlspvcVpi		INTEGER,
			tlspvcVci		INTEGER,
			tlspvcSvid		VlanIndex,
			tlspvcEncap		INTEGER,
			tlspvcSpriority		INTEGER,
			tlspvcProfile		DisplayString,
			tlspvcRowStatus		RowStatus
			}

        tlspvcVpi OBJECT-TYPE
        SYNTAX INTEGER (0..255)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "VPI of the pvc."
         ::= { tlspvcEntry 1 }

        tlspvcVci OBJECT-TYPE
        SYNTAX INTEGER (1..65535)
        MAX-ACCESS read-only
       	STATUS current
        DESCRIPTION
                "VCI of the pvc."
         ::= { tlspvcEntry 2 }

        tlspvcSvid OBJECT-TYPE
        SYNTAX VlanIndex
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "s-tag VLAN ID of the pvc."
         ::= { tlspvcEntry 3 }

        tlspvcEncap OBJECT-TYPE
        SYNTAX INTEGER {
        		llc(1),
        		vc(2)
        	}
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Encapsulation of the tlspvc."
         ::= { tlspvcEntry 4 }

        tlspvcSpriority OBJECT-TYPE
        SYNTAX INTEGER (0..7)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "s-tag priority of the pvc."
         ::= { tlspvcEntry 5 }

        tlspvcProfile OBJECT-TYPE
        SYNTAX DisplayString (SIZE (1..31))
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "The value of this object identifies the row in the ipqosProfileTable."
         ::= { tlspvcEntry 6 }

        tlspvcRowStatus OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "This object is used to create a new row or delete an existing row in this table."
         ::= { tlspvcEntry 7 }

--------------------
-- dtpvc
--------------------

-- DT PVC Table

        dtpvcTable OBJECT-TYPE
        SYNTAX SEQUENCE OF DtpvcEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"This table includes Double Tagging (DT) PVC configuration."
        ::= { dtpvc 1 }

	dtpvcEntry OBJECT-TYPE
        SYNTAX DtpvcEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"An entry of dtpvcTable."
        INDEX { ifIndex, dtpvcVpi, dtpvcVci, dtpvcSvid }
        ::= { dtpvcTable 1 }

        DtpvcEntry ::=
        	SEQUENCE {
        	-- Common --
			dtpvcVpi		INTEGER,
			dtpvcVci		INTEGER,
			dtpvcSvid		VlanIndex,
			dtpvcSpriority		INTEGER,
			dtpvcCvid		VlanIndex,
			dtpvcCpriority		INTEGER,
			dtpvcEncap		INTEGER,
			dtpvcProfile		DisplayString,
			dtpvcRowStatus		RowStatus,
			dtpvcAuto			INTEGER,
			-- Only for dtpvc --
			dtpvcSuperChannel	INTEGER,
			-- Only for paepvc --
			dtpvcAcName			DisplayString,
			dtpvcServiceName	DisplayString,
			dtpvcHelloTime		INTEGER	
			}

		-- Common --
        dtpvcVpi OBJECT-TYPE
        SYNTAX INTEGER (0..255)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "VPI of the pvc."
         ::= { dtpvcEntry 1 }

        dtpvcVci OBJECT-TYPE
        SYNTAX INTEGER (1..65535)
        MAX-ACCESS read-only
       	STATUS current
        DESCRIPTION
                "VCI of the pvc."
         ::= { dtpvcEntry 2 }

        dtpvcSvid OBJECT-TYPE
        SYNTAX VlanIndex
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "s-tag VLAN ID of the pvc."
         ::= { dtpvcEntry 3 }

        dtpvcSpriority OBJECT-TYPE
        SYNTAX INTEGER (0..7)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "s-tag priority of the pvc."
         ::= { dtpvcEntry 4 }

        dtpvcCvid OBJECT-TYPE
        SYNTAX VlanIndex
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "c-tag VLAN ID of the pvc."
         ::= { dtpvcEntry 5 }

        dtpvcCpriority OBJECT-TYPE
        SYNTAX INTEGER (0..7)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "c-tag priority of the pvc."
         ::= { dtpvcEntry 6 }


        dtpvcEncap OBJECT-TYPE
        SYNTAX INTEGER {
        		llc(1),
        		vc(2)
        	}
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Encapsulation of the dtpvc."
         ::= { dtpvcEntry 7 }

        dtpvcProfile OBJECT-TYPE
        SYNTAX DisplayString (SIZE (1..31))
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "The value of this object identifies the row in the ipqosProfileTable."
         ::= { dtpvcEntry 8 }

        dtpvcRowStatus OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "This object is used to create a new row or delete an existing row in this table."
         ::= { dtpvcEntry 9 }

        dtpvcAuto OBJECT-TYPE
		SYNTAX INTEGER {
    		enable(1),
    		disable(2)
        }
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                 "Enable/disable auto detection for PPPoE/PPPoA encapsulation."
         ::= { dtpvcEntry 14 }
       
        -- Only for DTPVC -- 
		dtpvcSuperChannel OBJECT-TYPE
		SYNTAX INTEGER {
    		enable(1),
    		disable(2)
        }
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                 "Specified the configured DTPVC is a super channel."
         ::= { dtpvcEntry 10 }

		-- Only for PAEPVC --		
		dtpvcAcName OBJECT-TYPE
		SYNTAX DisplayString
		MAX-ACCESS read-create
		STATUS current
		DESCRIPTION
			"Access concentrator name for paepvc."
		::= { dtpvcEntry 11 }

        dtpvcServiceName OBJECT-TYPE
        SYNTAX DisplayString
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Service name for paepvc."
         ::= { dtpvcEntry 12 }

		dtpvcHelloTime OBJECT-TYPE
		SYNTAX INTEGER
		UNITS "second"
		MAX-ACCESS read-create
		STATUS current
		DESCRIPTION
			"The system will close the PVC if there are not any LCP echo messages passed through during the LCP hello time."
		::= { dtpvcEntry 13 }

-- DTPVC state --
		dtpvcStateTable OBJECT-TYPE
		SYNTAX SEQUENCE OF DtpvcStateEntry
		MAX-ACCESS not-accessible
		STATUS current
		DESCRIPTION
			"This table show current DTPVC status."
		::= { dtpvc 2 }

		dtpvcStateEntry OBJECT-TYPE
		SYNTAX DtpvcStateEntry
		MAX-ACCESS not-accessible
		STATUS current
		DESCRIPTION
			"An entry in dtpvcStateTable."
		INDEX { ifIndex, dtpvcStateVpi, dtpvcStateVci, dtpvcStateSvid }
		::= { dtpvcStateTable 1 }

		DtpvcStateEntry ::=
		SEQUENCE {
			dtpvcStateVpi			INTEGER,
			dtpvcStateVci			INTEGER,
			dtpvcStateSvid			VlanIndex,
			dtpvcStateSPriority		INTEGER,
			dtpvcStateCvid			VlanIndex,
			dtpvcStateCPriority		INTEGER,
			--dtpvcStateMode			DisplayString,
			dtpvcStateChannelType	DisplayString,
			dtpvcStateEncap			DisplayString
		}

		dtpvcStateVpi OBJECT-TYPE
		SYNTAX INTEGER (0..255)
		MAX-ACCESS read-only
		STATUS current
		DESCRIPTION
			"VPI of the dtpvc."
		::= { dtpvcStateEntry 1 }

		dtpvcStateVci OBJECT-TYPE
		SYNTAX INTEGER (1..65535)
		MAX-ACCESS read-only
		STATUS current
		DESCRIPTION
			"VCI of the dtpvc."
		::= { dtpvcStateEntry 2 }

		dtpvcStateSvid OBJECT-TYPE
		SYNTAX VlanIndex
		MAX-ACCESS read-only
		STATUS current
		DESCRIPTION
			"Default S-VID of the dtpvc."
		::= { dtpvcStateEntry 3 }

		dtpvcStateSPriority OBJECT-TYPE
		SYNTAX INTEGER (0..7)
		MAX-ACCESS read-only
		STATUS current
		DESCRIPTION
			"S-priority of the dtpvc."
		::= { dtpvcStateEntry 4 }

		dtpvcStateCvid OBJECT-TYPE
		SYNTAX VlanIndex
		MAX-ACCESS read-only
		STATUS current
		DESCRIPTION
			"Default C-VID of the dtpvc."
		::= { dtpvcStateEntry 5 }

		dtpvcStateCPriority OBJECT-TYPE
		SYNTAX INTEGER (0..7)
		MAX-ACCESS read-only
		STATUS current
		DESCRIPTION
			"C-priority of the dtpvc."
		::= { dtpvcStateEntry 6 }

        --dtpvcStateMode OBJECT-TYPE
        --SYNTAX DisplayString (SIZE (1..31))
        --MAX-ACCESS read-only
        --STATUS current
        --DESCRIPTION
                --"The value of this object identifies the link mode at runntime."
         --::= { dtpvcStateEntry 7 }

        dtpvcStateChannelType OBJECT-TYPE
        SYNTAX DisplayString (SIZE (1..31))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The value of this object identifies the channel type at runtime."
         ::= { dtpvcStateEntry 8 }

        dtpvcStateEncap OBJECT-TYPE
        SYNTAX DisplayString (SIZE (1..31))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The value of this object identifies the channel encapsulation at runtime."
         ::= { dtpvcStateEntry 9 }

--------------------
--  voipPort
--------------------

-- voipSipLineConfTable

        voipSipLineConfTable OBJECT-TYPE
        SYNTAX SEQUENCE OF VoipSipLineConfEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"This table includes common attributes describing the VoIP line."
        ::= { voipPort 1 }

	voipSipLineConfEntry OBJECT-TYPE
        SYNTAX VoipSipLineConfEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry in voipSipLineConfTable."
        INDEX { ifIndex }
        ::= { voipSipLineConfTable 1 }

        VoipSipLineConfEntry ::=
           SEQUENCE {
		voipSipLineConfSipProfile		OCTET STRING,
		voipSipLineConfSipCallSvcProfile	OCTET STRING,
		voipSipLineConfDspProfile		OCTET STRING
           }

        voipSipLineConfSipProfile OBJECT-TYPE
        SYNTAX OCTET STRING
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"SIP profile name."
        ::= { voipSipLineConfEntry 1 }

        voipSipLineConfSipCallSvcProfile OBJECT-TYPE
        SYNTAX OCTET STRING
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"SIP call service profile name."
        ::= { voipSipLineConfEntry 2 }

        voipSipLineConfDspProfile OBJECT-TYPE
        SYNTAX OCTET STRING
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"DSP profile name."
        ::= { voipSipLineConfEntry 3 }

--------------------
-- voipPortOperation
--------------------

		portOperations		OBJECT IDENTIFIER ::= { voipPort 2 }

        voipPortTarget OBJECT-TYPE
        SYNTAX OCTET STRING
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"The managed object is used for identify the target on which
		the port configuration should be performed. The target is encoded as:
		Byte 1:   0, Reserved(chaises)
		Byte 2~3: 0,0 Reserved(slot)
		Byte 4:   0, Reserved
		Byte 5~11:Each octet specifies a set of eight ports, with the first
		          octet specifying ports 1 through 8, etc."
        ::= { portOperations 1 }

        voipPortOps OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"The managed object is for VoIP configuration. When the EMS
		wants to issue the desired operation, the EMS shall send SNMP-SET message to set
		the corresponding bit value to be 1. The various bit positions are:
		BIT  1: enable port
		BIT  2: disable port"
        ::= { portOperations 2 }


--------------------
-- voipPortTelTable
--------------------


        voipPortTelTable OBJECT-TYPE
        SYNTAX SEQUENCE OF VoipPortTelEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"This table includes VoIP tel for the port."
        ::= { voipPort 3 }

	voipPortTelEntry OBJECT-TYPE
        SYNTAX VoipPortTelEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry in voipPortTelTable."
        INDEX { ifIndex }
        ::= { voipPortTelTable 1 }

        VoipPortTelEntry ::=
        	SEQUENCE {
			voipPortTel	DisplayString
		}

        voipPortTel OBJECT-TYPE
        SYNTAX DisplayString (SIZE (0..15))
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"VoIP's telephone number of the specified port."
        ::= { voipPortTelEntry 1 }

--------------------
-- voipH248PortOperation
--------------------

-- voipH248LineConfTable

        voipH248LineConfTable OBJECT-TYPE
        SYNTAX SEQUENCE OF VoipH248LineConfEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
    	"This table includes common attributes describing the VoIP line."
       ::= { voipPort 4 }

        voipH248LineConfEntry OBJECT-TYPE
        SYNTAX VoipH248LineConfEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry in voipH248LineConfTable."
        INDEX { ifIndex }
        ::= { voipH248LineConfTable 1 }

        VoipH248LineConfEntry ::=
	    SEQUENCE {
			voipH248LineConfMgName			OCTET STRING,
  		    voipH248LineConfDspProfile		OCTET STRING,
			voipH248LineConfVBDProfile		OCTET STRING
  	    }

        voipH248LineConfMgName OBJECT-TYPE
        SYNTAX OCTET STRING
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
  	        "MG name."
        ::= { voipH248LineConfEntry 1 }

       voipH248LineConfDspProfile OBJECT-TYPE
        SYNTAX OCTET STRING
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
   	        "DSP profile name."
        ::= { voipH248LineConfEntry 2 }

        voipH248LineConfVBDProfile OBJECT-TYPE
        SYNTAX OCTET STRING
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		    "DSP profile name for Voice Band Data (FAX or Modem) mode."
        ::= { voipH248LineConfEntry 3 }



--------------------
-- voipPortH248Termination
--------------------

-- voipPortH248TerminationTable

        voipPortH248TerminationTable OBJECT-TYPE
        SYNTAX SEQUENCE OF VoipPortH248TerminationEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
  	        "This table includes Termination name."
        ::= { voipPort 5 }
  
  	    voipPortH248TerminationEntry OBJECT-TYPE
        SYNTAX VoipPortH248TerminationEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry in voipPortH248TerminationTable."
        INDEX { ifIndex }
        ::= { voipPortH248TerminationTable 1 }
  
        VoipPortH248TerminationEntry ::=
  	    SEQUENCE {
  		    voipPortH248TermName			OCTET STRING
      	}
  
        voipPortH248TermName OBJECT-TYPE
        SYNTAX OCTET STRING
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
  	        "Termination name of MG."
        ::= { voipPortH248TerminationEntry 1 }

--------------------
-- voipPortGain
--------------------

-- voipPortGainTable

        voipPortGainTable OBJECT-TYPE
        SYNTAX SEQUENCE OF VoipPortGainEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"This table includes Port Gain."
        ::= { voipPort 6 }

		voipPortGainEntry OBJECT-TYPE
        SYNTAX VoipPortGainEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry in voipPortGainTable."
        INDEX { ifIndex }
        ::= { voipPortGainTable 1 }

        VoipPortGainEntry ::=
		SEQUENCE {
			voipPortTXGain			INTEGER,
			voipPortRXGain			INTEGER
		}

        voipPortTXGain OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"TX Gain of the port, -200~200 in unit of 0.1dB."
        ::= { voipPortGainEntry 1 }

        voipPortRXGain OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"RX Gain of the port, -200~200 in unit of 0.1dB."
        ::= { voipPortGainEntry 2 }

--------------------
-- voipPortSeizureMode
--------------------

-- voipPortSeizureModeTable

        voipPortSeizureModeTable OBJECT-TYPE
        SYNTAX SEQUENCE OF VoipPortSeizureModeEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"This table includes Port Seizure Mode."
        ::= { voipPort 7 }

	voipPortSeizureModeEntry OBJECT-TYPE
        SYNTAX VoipPortSeizureModeEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry in voipPortSeizureModeTable."
        INDEX { ifIndex }
        ::= { voipPortSeizureModeTable 1 }

        VoipPortSeizureModeEntry ::=
		SEQUENCE {
			voipPortSeizureMode		INTEGER
		}

        voipPortSeizureMode OBJECT-TYPE
        SYNTAX INTEGER {
       		loopstart(1),
       		groundstart(2)
        }
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"Port Seizure Mode."
        ::= { voipPortSeizureModeEntry 1 }

--------------------
-- voipPortSipAuth
--------------------

-- voipPortSipAuthTable

	voipPortSipAuthTable OBJECT-TYPE
        SYNTAX SEQUENCE OF VoipPortSipAuthEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
                "This table includes VoIP port SIP authentication related configuration."
        ::= { voipPort 8 }

	voipPortSipAuthEntry OBJECT-TYPE
        SYNTAX VoipPortSipAuthEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
			"An entry in voipPortSipAuthTable."
        INDEX { ifIndex }
        ::= { voipPortSipAuthTable 1 }

        VoipPortSipAuthEntry ::=
		SEQUENCE {
			voipPortSipAuthMode		INTEGER,
			voipPortSipAuthUsername	OCTET STRING,
			voipPortSipAuthPasswdOn	INTEGER,
			voipPortSipAuthPasswd	OCTET STRING
		}

        voipPortSipAuthMode OBJECT-TYPE
        SYNTAX INTEGER {
        		profile(1),
        		line(2)
        	}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
                "Authentication mode for VoIP port SIP registration."
        ::= { voipPortSipAuthEntry 1 }

        voipPortSipAuthUsername OBJECT-TYPE
        SYNTAX OCTET STRING
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
                "VoIP port SIP registration username."
        ::= { voipPortSipAuthEntry 2 }

        voipPortSipAuthPasswdOn OBJECT-TYPE
        SYNTAX INTEGER {
        		on(1),
        		off(2)
        	}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
                "Password is necessary or not for VoIP port SIP registration."
        ::= { voipPortSipAuthEntry 3 }

        voipPortSipAuthPasswd OBJECT-TYPE
        SYNTAX OCTET STRING
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
                "VoIP port SIP registration password."
        ::= { voipPortSipAuthEntry 4 }

--------------------
-- voipPortSipCallsvc
--------------------

-- voipPortSipCallsvcTable

	voipPortSipCallsvcTable OBJECT-TYPE
        SYNTAX SEQUENCE OF VoipPortSipCallsvcEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
                "This table includes VoIp port SIP call service related configuration."
        ::= { voipPort 9 }

	voipPortSipCallsvcEntry OBJECT-TYPE
        SYNTAX VoipPortSipCallsvcEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
			"An entry in voipPortSipCallsvcTable."
        INDEX { ifIndex }
        ::= { voipPortSipCallsvcTable 1 }

        VoipPortSipCallsvcEntry ::=
		SEQUENCE {
			voipPortSipCallsvcMode			INTEGER,
			voipPortSipCallsvcStateMask		INTEGER,
			voipPortSipCallsvcCPCOn			INTEGER,
			voipPortSipCallsvcCPCTimeout	INTEGER
		}

        voipPortSipCallsvcMode OBJECT-TYPE
        SYNTAX INTEGER {
        		profile(1),
        		line(2)
        	}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
                "VoIP port SIP call service mode."
        ::= { voipPortSipCallsvcEntry 1 }

        voipPortSipCallsvcStateMask OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
                "Bit 1	callforward : call forward(Not supported)
				 Bit 2	callhold : call hold
				 Bit 3	callwait : call waiting
				 Bit 4	callreturn : call return(Not supported)
				 Bit 5	calltransfer : call transfer
				 Bit 6	clip : caller line identification presentation (Caller ID)
				 Bit 7	clir : caller line identification restriction
				 Bit 8	dnd : do not disturb
				 Bit 9	conference : native 3-way conference"
        ::= { voipPortSipCallsvcEntry 2 }

        voipPortSipCallsvcCPCOn OBJECT-TYPE
        SYNTAX INTEGER {
       		on(1),
       		off(2)
        }
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION        
        		"Perform calling party control, or turn off."
        ::= { voipPortSipCallsvcEntry 3 }
 
        voipPortSipCallsvcCPCTimeout OBJECT-TYPE
 		SYNTAX INTEGER (5..60)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION        
        		"VoIP port SIP delay hang up time of called party in seconds."
        ::= { voipPortSipCallsvcEntry 4 }

--------------------
-- snrMgn
--------------------

-- snrMgnTable

	snrMgnTable OBJECT-TYPE
   	SYNTAX SEQUENCE OF SnrMarginEntry
    	MAX-ACCESS not-accessible
    	STATUS current
    	DESCRIPTION
        	"A table containing the per port SNR Margin configuration."
    	::= { snrMgn 1 }

	snrMgnEntry OBJECT-TYPE
    	SYNTAX SnrMarginEntry
    	MAX-ACCESS not-accessible
    	STATUS current
    	DESCRIPTION
        	"An entry of snrMgnTable."
    	INDEX { ifIndex }
    	::= { snrMgnTable 1 }

	SnrMarginEntry ::=
    		SEQUENCE {
				snrMgnMode			INTEGER,
				snrMgnUcTarget		INTEGER,
				snrMgnUcMax			INTEGER,
				snrMgnUcMin			INTEGER,
				snrMgnUcDownshift	INTEGER,
				snrMgnUcUpshift		INTEGER,
				snrMgnUrTarget		INTEGER,
				snrMgnUrMax			INTEGER,
				snrMgnUrMin			INTEGER,
				snrMgnUrDownshift	INTEGER,
				snrMgnUrUpshift		INTEGER
    		}

	snrMgnMode OBJECT-TYPE
		SYNTAX      INTEGER {
						profile(0),
						line(1)
					}
		MAX-ACCESS  read-write
		STATUS      current
		DESCRIPTION
			"Configure DSL SNR margin configuration mode of the specified ports.
			Profile: the SNR margin configuration comes from DSL profile.
			Line: the SNR margin configuration comes from line configuration."
		::= { snrMgnEntry 1 }

	snrMgnUcTarget OBJECT-TYPE
		SYNTAX      INTEGER (0..310)
		UNITS       "tenth dB"
		MAX-ACCESS  read-write
		STATUS      current
		DESCRIPTION
			"Configured Target Signal/Noise Margin.
			This is the Noise Margin the modem must achieve
			with a BER of 10-7 or better to successfully complete
			initialization."
		::= { snrMgnEntry 2 }
		
	snrMgnUcMax OBJECT-TYPE
		SYNTAX      INTEGER (0..310)
		UNITS       "tenth dB"
		MAX-ACCESS  read-write
		STATUS      current
		DESCRIPTION
			"Configured Maximum acceptable Signal/Noise Margin.
			If the Noise Margin is above this the modem should
			attempt to reduce its power output to optimize its
			operation."
		::= { snrMgnEntry 3 }

	snrMgnUcMin OBJECT-TYPE
		SYNTAX      INTEGER (0..310)
		UNITS       "tenth dB"
		MAX-ACCESS  read-write
		STATUS      current
		DESCRIPTION
			"Configured Minimum acceptable Signal/Noise Margin.
			If the noise margin falls below this level, the modem
			should attempt to increase its power output.  If that
			is not possible the modem will attempt to
			re-initialize or shut down."
		::= { snrMgnEntry 4 }

	snrMgnUcDownshift  OBJECT-TYPE
		SYNTAX      INTEGER (0..310)
		UNITS       "tenth dB"
		MAX-ACCESS  read-write
		STATUS      current
		DESCRIPTION
			"Configured Signal/Noise Margin for rate downshift.
			If the noise margin falls below this level, the modem
			should attempt to decrease its transmit rate.  In
			the case that RADSL mode is not present,
			the value will be `0'."
		::= { snrMgnEntry 5 }

	snrMgnUcUpshift  OBJECT-TYPE
		SYNTAX      INTEGER (0..310)
		UNITS       "tenth dB"
		MAX-ACCESS  read-write
		STATUS      current
		DESCRIPTION
			"Configured Signal/Noise Margin for rate upshift.
			If the noise margin rises above this level, the modem
			should attempt to increase its transmit rate.    In
			the case that RADSL is not present, the value will
			be `0'."
		::= { snrMgnEntry 6 }
         
	snrMgnUrTarget OBJECT-TYPE
		SYNTAX      INTEGER (0..310)
		UNITS       "tenth dB"
		MAX-ACCESS  read-write
		STATUS      current
		DESCRIPTION
			"Configured Target Signal/Noise Margin.
			This is the Noise Margin the modem must achieve
			with a BER of 10-7 or better to successfully complete
			initialization."
		::= { snrMgnEntry 7 }

	snrMgnUrMax OBJECT-TYPE
		SYNTAX      INTEGER (0..310)
		UNITS       "tenth dB"
		MAX-ACCESS  read-write
		STATUS      current
		DESCRIPTION
			"Configured Maximum acceptable Signal/Noise Margin.
			If the Noise Margin is above this the modem should
			attempt to reduce its power output to optimize its
			operation."
		::= { snrMgnEntry 8 }

	snrMgnUrMin  OBJECT-TYPE
		SYNTAX      INTEGER (0..310)
		UNITS       "tenth dB"
		MAX-ACCESS  read-write
		STATUS      current
		DESCRIPTION
			"Configured Minimum acceptable Signal/Noise Margin.
			If the noise margin falls below this level, the modem
			should attempt to increase its power output.  If that
			is not possible the modem will attempt to
			re-initialize or shut down."
		::= { snrMgnEntry 9 }

	snrMgnUrDownshift  OBJECT-TYPE
		SYNTAX      INTEGER (0..310)
		UNITS       "tenth dB"
		MAX-ACCESS  read-write
		STATUS      current
		DESCRIPTION
			"Configured Signal/Noise Margin for rate downshift.
			If the noise margin falls below this level, the modem
			should attempt to decrease its transmit rate.
			In the case that RADSL mode is not present,
			the value will be `0'."
		::= { snrMgnEntry 10 }

	snrMgnUrUpshift  OBJECT-TYPE
		SYNTAX      INTEGER (0..310)
		UNITS       "tenth dB"
		MAX-ACCESS  read-write
		STATUS      current
		DESCRIPTION
			"Configured Signal/Noise Margin for rate upshift.
			If the noise margin rises above this level, the modem
			should attempt to increase its transmit rate.
			In the case that RADSL is not present,
			the value will be `0'."
		::= { snrMgnEntry 11 }
    		
--------------------
-- dsl rate
--------------------

-- dslRateTable

	dslRateTable OBJECT-TYPE
   	SYNTAX SEQUENCE OF DslRateEntry
    	MAX-ACCESS not-accessible
    	STATUS current
    	DESCRIPTION
        	"A table containing the per port DSL Rate configuration."
    	::= { dslRate 1 }

	dslRateEntry OBJECT-TYPE
    	SYNTAX DslRateEntry
    	MAX-ACCESS not-accessible
    	STATUS current
    	DESCRIPTION
        	"An entry of dslRateTable."
    	INDEX { ifIndex }
    	::= { dslRateTable 1 }

	DslRateEntry ::=
    		SEQUENCE {
				dslRateMode							INTEGER,
				dslRateLatencyMode  				INTEGER,
				dslRateXtucMaxInterleaveDelay		INTEGER,
				dslRateXtucMaxTxRate				Unsigned32,
				dslRateXtucMinTxRate				Unsigned32,
				dslRateXturMaxInterleaveDelay		INTEGER,
				dslRateXturMaxTxRate				Unsigned32,
				dslRateXturMinTxRate				Unsigned32
	    		}

	dslRateMode OBJECT-TYPE
		SYNTAX      INTEGER {
						profile(0),
						line(1)
					}
		MAX-ACCESS  read-write
		STATUS      current
		DESCRIPTION
			"Configure DSL Rate configuration mode of the specified ports.
			Profile: the DSL Rate configuration comes from DSL profile.
			Line: the DSL Rate configuration comes from line configuration."
		::= { dslRateEntry 1 }

	dslRateLatencyMode OBJECT-TYPE
		SYNTAX      INTEGER  {
						interleave(1),
						fast(2)
					}
		MAX-ACCESS  read-only
		STATUS      current
		DESCRIPTION
			"The latency mode is fast or interleave"
		::= { dslRateEntry 2 }
		
	dslRateXtucMaxInterleaveDelay OBJECT-TYPE
		SYNTAX      INTEGER (0..255)
		UNITS       "milli-seconds"
		MAX-ACCESS  read-write
		STATUS      current
		DESCRIPTION
			"Configured maximum Interleave Delay for this channel.
 	
 			Interleave delay applies only to the interleave channel
 			and defines the mapping (relative spacing) between
 			subsequent input bytes at the interleaver input and
 			their placement in the bit stream at the interleaver
 			output.  Larger numbers provide greater separation
 			between consecutive input bytes in the output bit
 			stream allowing for improved impulse noise immunity
 			at the expense of payload latency."
		::= { dslRateEntry 3 }

	dslRateXtucMaxTxRate OBJECT-TYPE
		SYNTAX      Unsigned32
		UNITS       "kbps"
		MAX-ACCESS  read-write
		STATUS      current
		DESCRIPTION
			"Configured Maximum Transmit rate for `Fast' or `Interleave' channels,
             in bps."
		::= { dslRateEntry 4 }

	dslRateXtucMinTxRate  OBJECT-TYPE
		SYNTAX      Unsigned32
		UNITS       "kbps"
		MAX-ACCESS  read-write
		STATUS      current
		DESCRIPTION
			"Configured Minimum Transmit rate for `Fast' or `Interleave' channels,
 			 in bps"
		::= { dslRateEntry 5 }

	dslRateXturMaxInterleaveDelay  OBJECT-TYPE
		SYNTAX      INTEGER (0..255)
		UNITS       "milli-seconds"
		MAX-ACCESS  read-write
		STATUS      current
		DESCRIPTION
			"Configured maximum Interleave Delay for this channel.
 	
 			Interleave delay applies only to the interleave channel
 			and defines the mapping (relative spacing) between
 			subsequent input bytes at the interleaver input and
 			their placement in the bit stream at the interleaver
 			output.  Larger numbers provide greater separation
 			between consecutive input bytes in the output bit
 			stream allowing for improved impulse noise immunity
 			at the expense of payload latency"
		::= { dslRateEntry 6 }
         
	dslRateXturMaxTxRate OBJECT-TYPE
		SYNTAX      Unsigned32
		UNITS       "kbps"
		MAX-ACCESS  read-write
		STATUS      current
		DESCRIPTION
			"Configured Target Signal/Noise Margin.
			This is the Noise Margin the modem must achieve
			with a BER of 10-7 or better to successfully complete
			initialization."
		::= { dslRateEntry 7 }

	dslRateXturMinTxRate OBJECT-TYPE
		SYNTAX      Unsigned32
		UNITS       "kbps"
		MAX-ACCESS  read-write
		STATUS      current
		DESCRIPTION
			"Configured Maximum Transmit rate for `Fast' or `Interleave'  channels,
 			 in bps."
		::= { dslRateEntry 8 }
    		
--------------------
-- gbond
--------------------

-- gbondTable

	gbondGroupTable OBJECT-TYPE
   	SYNTAX SEQUENCE OF GbondGroupEntry
    	MAX-ACCESS not-accessible
    	STATUS current
    	DESCRIPTION
        	"A table containing the G.Bond configuration information for
        	each bonding group of the device."
    	::= { gbond 1 }

	gbondGroupEntry OBJECT-TYPE
    	SYNTAX GbondGroupEntry
    	MAX-ACCESS not-accessible
    	STATUS current
    	DESCRIPTION
        	"An entry of gbondTable."
    	INDEX { gbondGroupName }
    	::= { gbondGroupTable 1 }

	GbondGroupEntry ::=
    		SEQUENCE {
        		gbondGroupName			OCTET STRING,
				gbondGroupPorts			OCTET STRING,
--				gbondGroupSid			INTEGER,
				gbondGroupUpRate		Unsigned32,
				gbondGroupDownRate		Unsigned32,
       			gbondGroupRowStatus		RowStatus
    		}

	gbondGroupName OBJECT-TYPE
    	SYNTAX OCTET STRING (SIZE (0..31))
    	MAX-ACCESS read-only
    	STATUS current
    	DESCRIPTION
        	"An administratively assigned string, which may be used to identify bonding group."
    	::= { gbondGroupEntry 1 }

	gbondGroupPorts OBJECT-TYPE
    	SYNTAX OCTET STRING
    	MAX-ACCESS read-create
    	STATUS current
    	DESCRIPTION
        	"The set of ports which are currently assigned to the
        	bonding group of specified group name.
			Byte 1:   Reserved(chassis)
			Byte 2~3: Reserved(slot)
			Byte 4:   Reserved
			Byte 5~11:each octet specifies a set of eight ports, with the first
		          octet specifying ports 1 through 8, etc."
    	::= { gbondGroupEntry 2 }

--	gbondGroupSid OBJECT-TYPE
--        SYNTAX  INTEGER {
--                          sid8(1),
--                          sid12(2)
--        }
--    	MAX-ACCESS read-create
--    	STATUS current
--    	DESCRIPTION
--        	"This object indicates the sequence index mode of the bonding group."
--    	::= { gbondGroupEntry 3 }

	gbondGroupUpRate OBJECT-TYPE
        SYNTAX Unsigned32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The UP stream rate."
         ::= { gbondGroupEntry 4 }

	gbondGroupDownRate OBJECT-TYPE
        SYNTAX Unsigned32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The DOWN stream rate."
         ::= { gbondGroupEntry 5 }

	gbondGroupRowStatus OBJECT-TYPE
    	SYNTAX RowStatus
    	MAX-ACCESS read-create
    	STATUS current
    	DESCRIPTION
        	"This object indicates the status of this entry."
    	::= { gbondGroupEntry 6 }

----------------------------------------
-- profile
----------------------------------------

  sraShiftMarginProfile OBJECT IDENTIFIER ::= { profile 1 }
	voipProfile		OBJECT IDENTIFIER ::= { profile 7 }
	ipqosProfile		OBJECT IDENTIFIER ::= { profile 8 }

	--------------------
-- sraShiftMarginProfile
--------------------

-- sraShiftMarginProfile

	sraShiftMarginProfileTable OBJECT-TYPE
        SYNTAX SEQUENCE OF SraShiftMarginProfileEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
                "This table includes sra shift margin related configuration."
        ::= { sraShiftMarginProfile 1 }

	sraShiftMarginProfileEntry OBJECT-TYPE
        SYNTAX SraShiftMarginProfileEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"An entry in ipqosProfileTable."
        INDEX { sraShiftMarginProfileName }
        ::= { sraShiftMarginProfileTable 1 }

        SraShiftMarginProfileEntry ::=
        	SEQUENCE {
			sraShiftMarginProfileName		DisplayString,
			xtucConfDownshiftSnrMgn		INTEGER,
			xtucConfUpshiftSnrMgn		INTEGER,
			xtucConfDownshiftTime INTEGER,
			xtucConfUpshiftTime INTEGER,
			xturConfDownshiftSnrMgn INTEGER,
			xturConfUpshiftSnrMgn INTEGER,
			xturConfDownshiftTime INTEGER,
			xturConfUpshiftTime INTEGER,
			sraShiftMarginProfileStatus RowStatus
           	}

        sraShiftMarginProfileName OBJECT-TYPE
        SYNTAX DisplayString (SIZE (1..40))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "This object identifies a row in this table."
        ::= { sraShiftMarginProfileEntry 1 }

        xtucConfDownshiftSnrMgn OBJECT-TYPE
        SYNTAX INTEGER (0..31)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Specifies the downstream SRA Down Shift Margin in units of 0.25 dB, for a range of 0 to 31.75 dB. in unit of 1 db."
        ::= { sraShiftMarginProfileEntry 2 }

        xtucConfUpshiftSnrMgn OBJECT-TYPE
        SYNTAX INTEGER (0..31)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Specifies the downstream SRA UP Shift Margin in units of 0.25 dB, for a range of 0 to 31.75 dB. in unit of 1 db."
        ::= { sraShiftMarginProfileEntry 3 }

        xtucConfDownshiftTime OBJECT-TYPE
        SYNTAX INTEGER (0..31)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "Specifies the downstream SRA Down Shift time in units of 1 sec , for a range of 0 to 16383 sec. in unit of 1 sec."
        ::= { sraShiftMarginProfileEntry 4 }

        xtucConfUpshiftTime OBJECT-TYPE
        SYNTAX INTEGER (0..31)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "Specifies the downstream SRA UP Shift time in units of 1 sec , for a range of 0 to 16383 sec. in unit of 1 sec."
        ::= { sraShiftMarginProfileEntry 5 }

        xturConfDownshiftSnrMgn OBJECT-TYPE
        SYNTAX INTEGER (0..31)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Specifies the upstream SRA Down Shift Margin in units of 0.25 dB, for a range of 0 to 31.75 dB. in unit of 1 db."
        ::= { sraShiftMarginProfileEntry 6 }

        xturConfUpshiftSnrMgn OBJECT-TYPE
        SYNTAX INTEGER (0..31)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Specifies the upstream SRA UP Shift Margin in units of 0.25 dB, for a range of 0 to 31.75 dB. in unit of 1 db."
        ::= { sraShiftMarginProfileEntry 7 }

        xturConfDownshiftTime OBJECT-TYPE
        SYNTAX INTEGER (0..31)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "Specifies the upstream SRA Down Shift time in units of 1 sec , for a range of 0 to 16383 sec. in unit of 1 sec."
        ::= { sraShiftMarginProfileEntry 8 }

        xturConfUpshiftTime OBJECT-TYPE
        SYNTAX INTEGER (0..31)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "Specifies the upstream SRA UP Shift time in units of 1 sec , for a range of 0 to 16383 sec. in unit of 1 sec."
        ::= { sraShiftMarginProfileEntry 9 }

        sraShiftMarginProfileStatus OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "This object is used to create a new row or modify or delete an existing row in this table."
        ::= { sraShiftMarginProfileEntry 10 }

--------------------
-- voipProfile
--------------------

	sipProfile	OBJECT IDENTIFIER ::= { voipProfile 1 }

-- sip profile

        maxNumOfSipProfiles OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        	"The maximum number of SIP profiles supported by the system."
        ::= { sipProfile 1 }

        sipProfileTable OBJECT-TYPE
        SYNTAX SEQUENCE OF SipProfileEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
                "This table includes SIP protocol related configuration."
        ::= { sipProfile 2 }

	sipProfileEntry OBJECT-TYPE
        SYNTAX SipProfileEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"An entry in sipProfileTable."
        INDEX { IMPLIED sipProfileName }
        ::= { sipProfileTable 1 }

        SipProfileEntry ::=
        	SEQUENCE {
			sipProfileName		DisplayString,
			sipProfileSipSvr	OCTET STRING,
			sipProfileRegSvr	OCTET STRING,
			sipProfileProxySvr	OCTET STRING,
			sipProfileSipPort	INTEGER,
			sipProfileRegSvrPort	INTEGER,
			sipProfileProxySvrPort	INTEGER,
			sipProfileUriType	INTEGER,
			sipProfilePbit		INTEGER,
			sipProfileDscp		INTEGER,
			sipProfileKeepAlive	INTEGER,
			sipProfileSe		INTEGER,
			sipProfilePrack		INTEGER,
			sipProfileRowStatus	RowStatus,
			sipProfileRegExpire INTEGER			
           	}

        sipProfileName OBJECT-TYPE
        SYNTAX DisplayString (SIZE (1..31))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "This object is used by the SIP profile table in order to identify a row of this table."
        ::= { sipProfileEntry 1 }

        sipProfileSipSvr OBJECT-TYPE
        SYNTAX OCTET STRING
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "IP used for SIP registration or SIP domain name."
        ::= { sipProfileEntry 2 }

	sipProfileRegSvr OBJECT-TYPE
        SYNTAX OCTET STRING
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Registration server IP or registration server domain name."
        ::= { sipProfileEntry 3 }

        sipProfileProxySvr OBJECT-TYPE
        SYNTAX OCTET STRING
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Proxy server IP or proxy server doamin name."
        ::= { sipProfileEntry 4 }

        sipProfileSipPort OBJECT-TYPE
        SYNTAX INTEGER (1025..65535)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "SIP UA port number."
        ::= { sipProfileEntry 5 }

        sipProfileRegSvrPort OBJECT-TYPE
        SYNTAX INTEGER (1025..65535)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Registration server port number."
        ::= { sipProfileEntry 6 }

        sipProfileProxySvrPort OBJECT-TYPE
        SYNTAX INTEGER (1025..65535)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Proxy server port number."
        ::= { sipProfileEntry 7 }

        sipProfileUriType OBJECT-TYPE
        SYNTAX INTEGER {
        		useSipUri(1),
        		useTelUri(2)
        	}
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                ""
        ::= { sipProfileEntry 8 }

        sipProfilePbit OBJECT-TYPE
        SYNTAX INTEGER (0..7)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "802.1p bit for SIP and RTP packet."
        ::= { sipProfileEntry 9 }

        sipProfileDscp OBJECT-TYPE
        SYNTAX INTEGER (0..63)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "DSCP for SIP and RTP packet."
        ::= { sipProfileEntry 10 }

        sipProfileKeepAlive OBJECT-TYPE
        SYNTAX INTEGER {
        		on(1),
        		off(2)
        	}
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                ""
        ::= { sipProfileEntry 11 }

        sipProfileSe OBJECT-TYPE
        SYNTAX INTEGER (90..65535)
        UNITS "second"
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Session expiration time in seconds."
        ::= { sipProfileEntry 12 }

        sipProfilePrack OBJECT-TYPE
        SYNTAX INTEGER {
        		on(1),
        		off(2)
        	}
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                ""
        ::= { sipProfileEntry 13 }
        
        sipProfileRowStatus OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "This object is used to create a new row or delete an existing row in the table."
        ::= { sipProfileEntry 14 }   

        sipProfileRegExpire OBJECT-TYPE
        SYNTAX INTEGER (120..2073600)                    
        UNITS "second"
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION        
        		"Registration expiration time in seconds."
        ::= { sipProfileEntry 15 }
        

-- sip call service profile

	maxNumOfSipCallSvcProfiles OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        	"The maximum number of SIP call service profiles supported by the system."
        ::= { sipProfile 3 }

	sipCallSvcProfileTable OBJECT-TYPE
        SYNTAX SEQUENCE OF SipCallSvcProfileEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
                "This table includes SIP call service related configuration."
        ::= { sipProfile 4 }

	sipCallSvcProfileEntry OBJECT-TYPE
        SYNTAX SipCallSvcProfileEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"An entry in sipCallSvcProfileTable."
        INDEX { IMPLIED sipCallSvcProfileName }
        ::= { sipCallSvcProfileTable 1 }

        SipCallSvcProfileEntry ::=
        	SEQUENCE {
			sipCallSvcProfileName			DisplayString,
			sipCallSvcProfilePasswdOn		INTEGER,
			sipCallSvcProfilePasswd			OCTET STRING,
			sipCallSvcProfileNumberPlanOn		INTEGER,
			sipCallSvcProfileNumberPlanCc		OCTET STRING,
			sipCallSvcProfileNumberPlanNdc		OCTET STRING,
			sipCallSvcProfileNumberPlanTable	OCTET STRING,
			sipCallSvcProfileStateMask		INTEGER,
			sipCallSvcProfileDtmf			INTEGER,
			sipCallSvcProfileFax			INTEGER,
			sipCallSvcProfileRowStatus		RowStatus,
			sipCallSvcProfileFlashType		INTEGER,     
			sipCallSvcProfileFlashInfo		OCTET STRING,
			sipCallSvcProfileSoftSwitchType		INTEGER,
			sipCallSvcProfileCPCOn			INTEGER,
			sipCallSvcProfileCPCTimeout		INTEGER			
           	}

        sipCallSvcProfileName OBJECT-TYPE
        SYNTAX DisplayString (SIZE (1..31))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "This object is used by the SIP call service profile table in order to identify a row of this table."
        ::= { sipCallSvcProfileEntry 1 }

        sipCallSvcProfilePasswdOn OBJECT-TYPE
        SYNTAX INTEGER {
        		on(1),
        		off(2)
        	}
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Password is necessary or not for SIP registration."
        ::= { sipCallSvcProfileEntry 2 }

        sipCallSvcProfilePasswd OBJECT-TYPE
        SYNTAX OCTET STRING
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "SIP registration password."
        ::= { sipCallSvcProfileEntry 3 }

        sipCallSvcProfileNumberPlanOn OBJECT-TYPE
        SYNTAX INTEGER {
        		on(1),
        		off(2)
        	}
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                ""
        ::= { sipCallSvcProfileEntry 4 }

        sipCallSvcProfileNumberPlanCc OBJECT-TYPE
        SYNTAX OCTET STRING
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Country code, only digit 0..9 are allowed."
        ::= { sipCallSvcProfileEntry 5 }

        sipCallSvcProfileNumberPlanNdc OBJECT-TYPE
        SYNTAX OCTET STRING
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "National destination code, only digit 0..9 are allowed."
        ::= { sipCallSvcProfileEntry 6 }

        sipCallSvcProfileNumberPlanTable OBJECT-TYPE
        SYNTAX OCTET STRING
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Numbering plan table name."
        ::= { sipCallSvcProfileEntry 7 }

        sipCallSvcProfileStateMask OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Bit 1	callforward : call forward(Not supported)
		 Bit 2	callhold : call hold
		 Bit 3	callwait : call waiting
		 Bit 4	callreturn : call return(Not supported)
		 Bit 5	calltransfer : call transfer
		 Bit 6	clip : caller line identification presentation (Caller ID)
		 Bit 7	clir : caller line identification restriction
		 Bit 8	dnd : do not disturb
		 Bit 9	conference : native 3-way conference"
        ::= { sipCallSvcProfileEntry 8 }

        sipCallSvcProfileDtmf OBJECT-TYPE
        SYNTAX INTEGER {
        		bypass(1),
        		rfc2833(2),
        		rfc2833like(3),
        		sipinfo(4)
        	}
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "dtmf bypass : bypass DTMF tone
		 dtmf rfc2833 : DTMF tone relay according to RFC2833
		 dtmf rfc2833like : DTMF tone relay by SIP INFO message, but RFC2833 payload
		 dtmf sipinfo : DTMF tone relay by SIP INFO message"
        ::= { sipCallSvcProfileEntry 9 }

        sipCallSvcProfileFax OBJECT-TYPE
        SYNTAX INTEGER {
        		g711(1),
        		t38(2)
        	}
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "fax g711 : FAX service pass through by ITU-T G.711
		 fax t38 : FAX service by ITU-T T.38"
        ::= { sipCallSvcProfileEntry 10 }

        sipCallSvcProfileRowStatus OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "This object is used to create a new row or delete an existing row in the table."
        ::= { sipCallSvcProfileEntry 11 }  
        
        sipCallSvcProfileFlashType OBJECT-TYPE 
        SYNTAX INTEGER {
        		invite(1),    
        		rfc2833(2),
        		rfc2833like(3),
        		sipinfo1(4),
        		sipinfo2(5),
        		sipinfo3(6),
        		sipinfo4(7),
        		sipinfo5(8),
        		sipinfo6(9),
        		bypass(10)        		
        	}                  
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "flash invite      : will send SIP INVITE message while press flash button.    
		 flash bypass      : flash event will be handled by current switch type specified in sipCallSvcProfileSwitchType.
		 flash rfc2833     : flash event will send by RTP event (16) defined in RFC 2833.
		 flash rfc2833like : flash event will send by SIP INFO message but RTP payload.
		 flash sipinfo-1   : flash event will be sent by SIP INFO signal=16 message.
		 flash sipinfo-2   : flash event will be sent by SIP INFO signal=hf message.
		 flash sipinfo-3   : flash event will be sent by SIP INFO signal=hook-flash message.
		 flash sipinfo-4   : flash event will be sent by SIP INFO plain text 'FLASH' message.
		 flash sipinfo-5   : flash event will be sent by multiple SIP INFO signal messages and content of signal messages come from sipCallSvcProfileFlashInfo.
		 flash sipinfo-6   : flash event will be sent by SIP INFO and payload is specified in sipCallSvcProfileFlashInfo."
        ::= { sipCallSvcProfileEntry 12 }
        	            
        sipCallSvcProfileFlashInfo OBJECT-TYPE
        SYNTAX OCTET STRING
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Strings carried in SIP INFO when specified in sipCallSvcProfileFlashType is sipinfo-5 and sipinfo-6."
        ::= { sipCallSvcProfileEntry 13 }

        sipCallSvcProfileSoftSwitchType OBJECT-TYPE 
        SYNTAX INTEGER {
        		metaswitch(1),
        		nortel(2)
        	}                  
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Softswitch type is configured to specify softswitch-dependent behavior,
                currently only flash event is softswitch-dependent and should follow the softswitch type setting.
                When configured the flash event to 'bypass', E5 will follow the softswitch type setting to 
                report hook flash event."
        ::= { sipCallSvcProfileEntry 14 }        	            

       
        sipCallSvcProfileCPCOn OBJECT-TYPE
        SYNTAX INTEGER {
       		on(1),
       		off(2)
        }
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION        
        		"Perform calling party control, or turn off."
        ::= { sipCallSvcProfileEntry 15 }

 
        sipCallSvcProfileCPCTimeout OBJECT-TYPE
 	SYNTAX INTEGER (5..60)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION        
        		"Delay hang up time of called party in seconds."
        ::= { sipCallSvcProfileEntry 16 }    
               	            
-- dsp profile

	maxNumOfDspProfiles OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        	"The maximum number of DSP profiles supported by the system."
        ::= { voipProfile 2 }

	dspProfileTable OBJECT-TYPE
        SYNTAX SEQUENCE OF DspProfileEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
                "This table includes DSP related configuration."
        ::= { voipProfile 3 }

	dspProfileEntry OBJECT-TYPE
        SYNTAX DspProfileEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"An entry in dspProfileTable."
        INDEX { IMPLIED dspProfileName }
        ::= { dspProfileTable 1 }

        DspProfileEntry ::=
        	SEQUENCE {
			dspProfileName			DisplayString,
			dspProfileCodec			OCTET STRING,
			dspProfilePlayBufferMinDelay	INTEGER,
			dspProfilePlayBufferMaxDelay	INTEGER,
			dspProfileEchoTail		INTEGER,
			dspProfileRowStatus		RowStatus,
			dspProfileG711Vpi		INTEGER,
			dspProfileG723Vpi		INTEGER,
			dspProfileG726Vpi		INTEGER,
			dspProfileG729Vpi       INTEGER
			}

        dspProfileName OBJECT-TYPE
        SYNTAX DisplayString (SIZE (1..31))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "This object is used by the DSP profile table in order to identify a row of this table."
        ::= { dspProfileEntry 1 }

        dspProfileCodec OBJECT-TYPE
        SYNTAX OCTET STRING
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "0x01: g711a
                 0x02: g711mu
                 0x03: g723
                 0x04: g726-16
                 0x05: g726-24
                 0x06: g726-32
                 0x07: g726-40
                 0x08: g729ab
                 the value of dspProfileCodec is OCTET STRING, there are 8 Octets, each octect is
                 specified as 0x01, 0x03, 0x02, 0x07,0x00, 0x00, 0x00, 0x00  (to specify different
                 CODE in priority) specify as: g711a, g723, g711mu, g726-40
                "
        ::= { dspProfileEntry 2 }

        dspProfilePlayBufferMinDelay OBJECT-TYPE
        SYNTAX INTEGER (10..500)
        UNITS "millisecond"
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Play buffer minimum delay in milliseconds.
                It should be less than or equal to dspProfilePlayBufferMaxDelay."
        ::= { dspProfileEntry 3 }

        dspProfilePlayBufferMaxDelay OBJECT-TYPE
        SYNTAX INTEGER (10..500)
        UNITS "millisecond"
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Play buffer maximum delay in milliseconds.
                It should be greater than or equal to dspProfilePlayBufferMinDelay."
        ::= { dspProfileEntry 4 }

        dspProfileEchoTail OBJECT-TYPE
        SYNTAX INTEGER {
        		echotail8(1),
        		echotail16(2),
        		echotail32(3),
        		echotail128(4)
        	}
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Echo cancellation echo tail period in milliseconds."
        ::= { dspProfileEntry 5 }

        dspProfileRowStatus OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "This object is used to create a new row or delete an existing row in the table."
        ::= { dspProfileEntry 6 }

        dspProfileG711Vpi OBJECT-TYPE
        SYNTAX INTEGER {
            	g711x10ms(1),
            	g711x20ms(2),
            	g711x30ms(3),
            	g711x40ms(4)
        	}
        UNITS "millisecond"
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Voice Packetization Interval(VPI) of codec G.711 in milliseconds.
                The values are 10, 20, 30, 40"
        ::= { dspProfileEntry 7 }

        dspProfileG723Vpi OBJECT-TYPE
        SYNTAX INTEGER {
            	g723x30ms(1),
            	g723x60ms(2)
        	}
        UNITS "millisecond"
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Voice Packetization Interval(VPI) of G.723 codec in milliseconds.
                The values are 30,60"
        ::= { dspProfileEntry 8 }

        dspProfileG726Vpi OBJECT-TYPE
        SYNTAX INTEGER {
            	g726x10ms(1),
            	g726x20ms(2),
            	g726x30ms(3),
            	g726x40ms(4)
        	}
        UNITS "millisecond"
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Voice Packetization Interval(VPI) of G.726 codec in milliseconds.
                The values are 10, 20, 30, 40"
        ::= { dspProfileEntry 9 }

        dspProfileG729Vpi OBJECT-TYPE
        SYNTAX INTEGER {
            	g729x10ms(1),
            	g729x20ms(2),
            	g729x30ms(3),
            	g729x40ms(4),
            	g729x50ms(5),
            	g729x60ms(6)
        	}
       	UNITS "millisecond"
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Voice Packetization Interval(VPI) of G.729 codec in milliseconds.
                The values are 10, 20, 30, 40, 50, 60"
        ::= { dspProfileEntry 10 }

--h248 profile

	h248Profile	OBJECT IDENTIFIER ::= { voipProfile 4 }

	maxNumOfH248Profiles OBJECT-TYPE
		SYNTAX INTEGER
		MAX-ACCESS read-only
		STATUS current
		DESCRIPTION
        	"The maximum number of H248 profiles supported by the system."
        ::= { h248Profile 1 }

	h248ProfileTable OBJECT-TYPE
        SYNTAX SEQUENCE OF H248ProfileEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
                "This table includes H248 profile related configuration."
        ::= { h248Profile 2 }

	h248ProfileEntry OBJECT-TYPE
        SYNTAX H248ProfileEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"An entry in h248ProfileTable."
        INDEX { IMPLIED h248ProfileName }
        ::= { h248ProfileTable 1 }

        H248ProfileEntry ::=
        	SEQUENCE {
			h248ProfileName			DisplayString,
			h248ProfileMgcSvr		OCTET STRING,
			h248ProfileMgcPort		INTEGER,
			h248ProfileMgc2On			INTEGER,
			h248ProfileMgc2Svr		OCTET STRING,
			h248ProfileMgc2Port		INTEGER,
			h248ProfileTransport	INTEGER,
			h248ProfileEncode		INTEGER,
			h248ProfilePbit			INTEGER,
			h248ProfileDscp			INTEGER,
			h248ProfileRowStatus	RowStatus,
			h248ProfileVbd			INTEGER,
--			h248ProfileIt                   INTEGER,
			h248ProfileEphemeralPrefix      OCTET STRING,
			h248ProfileSoftswitch           INTEGER,      
                        h248ProfileForceVer			      INTEGER,
 			h248ProfileStartRTPPort		      INTEGER,
 			h248ProfileEndRTPPort             INTEGER,
  			h248ProfileEphemeralStartNumber   OCTET STRING,
   			h248ProfileEphemeralSuffixLength  INTEGER,
   			h248ProfilePhysicalPrefix      	  OCTET STRING,
   			h248ProfilePhysicalStartNumber    OCTET STRING,
   			h248ProfilePhysicalSuffixLength   INTEGER,
   			h248ProfileRfc2833Mode        INTEGER,
   			h248ProfileRfc2833ModePayloadType    INTEGER
           	}

	h248ProfileName OBJECT-TYPE
        SYNTAX DisplayString (SIZE (1..31))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "This object is used by the H248 profile table in order to identify a row of this table."
        ::= { h248ProfileEntry 1 }

	h248ProfileMgcSvr OBJECT-TYPE
        SYNTAX OCTET STRING
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "MGC IP or MGC doamin name."
        ::= { h248ProfileEntry 2 }

	h248ProfileMgcPort OBJECT-TYPE
        SYNTAX INTEGER (1025..65535)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "MGC port number."
        ::= { h248ProfileEntry 3 }

  h248ProfileMgc2On OBJECT-TYPE
        SYNTAX INTEGER {
        		on(1),
        		off(2)
        }
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Secondary MGC on/off."
        ::= { h248ProfileEntry 4 }
        
	h248ProfileMgc2Svr OBJECT-TYPE
        SYNTAX OCTET STRING
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Secondary MGC IP or MGC doamin name. h248ProfileMgc2On needs to turn on if user want to set Secondary MGC IP or domain name."
        ::= { h248ProfileEntry 5 }

	h248ProfileMgc2Port OBJECT-TYPE
        SYNTAX INTEGER (1025..65535)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Secondary MGC port number. h248ProfileMgc2On needs to turn on if user want to set Secondary MGC port number."
        ::= { h248ProfileEntry 6 }

	h248ProfileTransport OBJECT-TYPE
        SYNTAX INTEGER {
        		udp(1),
        		tcp(2)
        	}
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Transport procotol used by the H.248 protocol stack."
        ::= { h248ProfileEntry 7 }

	h248ProfileEncode OBJECT-TYPE
        SYNTAX INTEGER {
        		longtext(1),
        		shorttext(2)
        	}
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Encoding type used by the H.248 protocol stack"
        ::= { h248ProfileEntry 8 }

	h248ProfilePbit OBJECT-TYPE
        SYNTAX INTEGER (0..7)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "802.1p bit for H.248 packet."
        ::= { h248ProfileEntry 9 }

	h248ProfileDscp OBJECT-TYPE
        SYNTAX INTEGER (0..63)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "DSCP for H.248 packet."
        ::= { h248ProfileEntry 10 }

	h248ProfileRowStatus OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "This object is used to create a new row or delete an existing row in the table."
        ::= { h248ProfileEntry 11 }

  h248ProfileVbd OBJECT-TYPE
        SYNTAX INTEGER {
        		on(1),
        		off(2)
        }
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "VBD mode support on/off"
        ::= { h248ProfileEntry 12 }


-- remove since 3.0.2, ives 2009/12/24
--  h248ProfileIt OBJECT-TYPE
--        SYNTAX INTEGER (0..65535)
--        UNITS "10ms"
--        MAX-ACCESS read-create
--        STATUS current
--        DESCRIPTION
--                "Inactivity timer"
--        ::= { h248ProfileEntry 13 }


  h248ProfileEphemeralPrefix OBJECT-TYPE
        SYNTAX DisplayString (SIZE (1..31))
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Ephemeral Termination Prefix"
        ::= { h248ProfileEntry 14 }


  h248ProfileSoftswitch OBJECT-TYPE
        SYNTAX INTEGER {
        		metaswitch(1), 
        		nortelCs1500(2),
        		nortelCs2000(3)
 --       		zxss10-ss(2)      not support in calix
        }
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Softswitch type"
        ::= { h248ProfileEntry 15 }
                                      
 h248ProfileForceVer OBJECT-TYPE
        SYNTAX INTEGER {
        		on(1),
        		off(2)
        }
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Force using H.248 version 1"
        ::= { h248ProfileEntry 16 }     
        
  h248ProfileStartRTPPort OBJECT-TYPE
        SYNTAX INTEGER (4000..64000)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Start of RTP port number."
        ::= { h248ProfileEntry 17 } 
        
   h248ProfileEndRTPPort OBJECT-TYPE
        SYNTAX INTEGER (5000..65000)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "End of RTP port number."
        ::= { h248ProfileEntry 18 }

   h248ProfileEphemeralStartNumber OBJECT-TYPE
        SYNTAX OCTET STRING
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Ephemeral termination suffix start number, up to 15 digits."
        ::= { h248ProfileEntry 19 }  
        
    h248ProfileEphemeralSuffixLength OBJECT-TYPE
        SYNTAX INTEGER (0..15)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Ephemeral termination suffix number length , padding zero at the front if not long enough."
        ::= { h248ProfileEntry 20 }

    h248ProfilePhysicalPrefix OBJECT-TYPE
        SYNTAX DisplayString (SIZE (1..31))
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Physical Termination Prefix."
        ::= { h248ProfileEntry 21 }   
        
    h248ProfilePhysicalStartNumber OBJECT-TYPE
        SYNTAX OCTET STRING
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Physical termination suffix start number, up to 15 digits."
        ::= { h248ProfileEntry 22 }  
    
    h248ProfilePhysicalSuffixLength OBJECT-TYPE
        SYNTAX INTEGER (0..15)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Physical termination suffix number length , padding zero at the front if not long enough."
        ::= { h248ProfileEntry 23 }

    h248ProfileRfc2833Mode OBJECT-TYPE
        SYNTAX INTEGER {
    			On(1),
    			Off(2)
    		}
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "RFC2833 mode support."
        ::= { h248ProfileEntry 24 }

    h248ProfileRfc2833ModePayloadType OBJECT-TYPE
        SYNTAX INTEGER (96..127)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Payload type of RFC2833 mode."
        ::= { h248ProfileEntry 25 }
        	
--------------------
-- ipqosProfile
--------------------

-- ipqosProfileTable

	maxNumOfIpqosProfiles OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        	"The maximum number of IPQOS profiles supported by the system."
        ::= { ipqosProfile 1 }

	ipqosProfileTable OBJECT-TYPE
        SYNTAX SEQUENCE OF IpqosProfileEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
                "This table includes IPQOS related configuration."
        ::= { ipqosProfile 2 }

	ipqosProfileEntry OBJECT-TYPE
        SYNTAX IpqosProfileEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"An entry in ipqosProfileTable."
        INDEX { ipqosProfileName , ipqosProfileNumOfQueue }
        ::= { ipqosProfileTable 1 }

        IpqosProfileEntry ::=
        	SEQUENCE {
			ipqosProfileName		DisplayString,
			ipqosProfileNumOfQueue		INTEGER,
			ipqosProfileRowStatus		RowStatus
           	}

        ipqosProfileName OBJECT-TYPE
        SYNTAX DisplayString (SIZE (1..31))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "This object is used by the IPQOS profile table in order to identify a row of this table."
        ::= { ipqosProfileEntry 1 }

        ipqosProfileNumOfQueue OBJECT-TYPE
        SYNTAX INTEGER (1..8)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "The number of IPQOS queues."
        ::= { ipqosProfileEntry 2 }

        ipqosProfileRowStatus OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "This object is used to create a new row or delete an existing row in the table."
        ::= { ipqosProfileEntry 3 }

-- ipqosProfileQueueTable

	ipqosProfileQueueTable OBJECT-TYPE
        SYNTAX SEQUENCE OF IpqosProfileQueueEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
                "This table includes IPQOS queue related configuration."
        ::= { ipqosProfile 3 }

	ipqosProfileQueueEntry OBJECT-TYPE
        SYNTAX IpqosProfileQueueEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"An entry in ipqosProfileQueueTable."
        INDEX { ipqosProfileName , ipqosProfileQueueIndex }
        ::= { ipqosProfileQueueTable 1 }

        IpqosProfileQueueEntry ::=
        	SEQUENCE {
			ipqosProfileQueueIndex		INTEGER,
			ipqosProfileQueuePIR		INTEGER,
			ipqosProfileQueueCIR		INTEGER,
			ipqosProfileQueuePBS		INTEGER,
			ipqosProfileQueueCBS		INTEGER,
			ipqosProfileQueueLevel  INTEGER,
			ipqosProfileQueueWeight INTEGER
           	}

        ipqosProfileQueueIndex OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "IPQOS queue index."
        ::= { ipqosProfileQueueEntry 1 }

        ipqosProfileQueuePIR OBJECT-TYPE
        SYNTAX INTEGER (512..131072)
        UNITS "Kbps"
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
                "Peak rate.(multiple of 256)"
        ::= { ipqosProfileQueueEntry 2 }

        ipqosProfileQueueCIR OBJECT-TYPE
        SYNTAX INTEGER (256..65536)
        UNITS "Kbps"
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
                "Commited rate.(multiple of 256)"
        ::= { ipqosProfileQueueEntry 3 }

        ipqosProfileQueuePBS OBJECT-TYPE
        SYNTAX INTEGER (3072..65536)
        UNITS "byte"
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
                "Peak burst size.(mutiple of 256)"
        ::= { ipqosProfileQueueEntry 4 }

        ipqosProfileQueueCBS OBJECT-TYPE
        SYNTAX INTEGER (3072..65536)
        UNITS "byts"
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
                "Commited burst size.(mutiple of 256)"
        ::= { ipqosProfileQueueEntry 5 }

        ipqosProfileQueueLevel OBJECT-TYPE
        SYNTAX INTEGER (0..7)
        UNITS "byts"
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
                "Queue level."
        ::= { ipqosProfileQueueEntry 6 }
        
        ipqosProfileQueueWeight OBJECT-TYPE
        SYNTAX INTEGER (1..127)
        UNITS "byts"
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
                "Queue weight."
        ::= { ipqosProfileQueueEntry 7 }

----------------------------------------
-- switch
----------------------------------------
	dot3ad		OBJECT IDENTIFIER ::= { switch 6 }
	dscp		OBJECT IDENTIFIER ::= { switch 10 }
	vlanIsolation	OBJECT IDENTIFIER ::= { switch 12 }
	enetMtu		OBJECT IDENTIFIER ::= { switch 13 }
	tpid		OBJECT IDENTIFIER ::= { switch 14 }
	cfm		OBJECT IDENTIFIER ::= { switch 15 }

-- Standalone IP DSLAM puts all ACL features in 'switch', from OID 51
	dhcp		OBJECT IDENTIFIER ::= { switch 51 }
	macfilter	OBJECT IDENTIFIER ::= { switch 53 }
	dhcpSnoop	OBJECT IDENTIFIER ::= { switch 55 }
	acl		OBJECT IDENTIFIER ::= { switch 56 }
	pppoeAgent	OBJECT IDENTIFIER ::= { switch 57 }
	n1mac		OBJECT IDENTIFIER ::= { switch 58 }
	macff   OBJECT IDENTIFIER ::= { switch 60 }

--------------------
-- dot3ad
--------------------

	dot3adTable OBJECT-TYPE
	SYNTAX SEQUENCE OF Dot3adEntry
	MAX-ACCESS not-accessible
	STATUS current
	DESCRIPTION
		"The table contains 802.3ad configuration."
	::= { dot3ad 1 }

	dot3adEntry OBJECT-TYPE
	SYNTAX Dot3adEntry
	MAX-ACCESS not-accessible
	STATUS current
	DESCRIPTION
		""
	INDEX { dot3adGroupId }
	::= { dot3adTable 1 }

	Dot3adEntry ::=
		SEQUENCE {
			dot3adGroupId		INTEGER,
			dot3adEnable		INTEGER
		}

	dot3adGroupId OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"Group ID 1 for the subtending group and 2 for the uplink group."
	::= { dot3adEntry 1 }

	dot3adEnable OBJECT-TYPE
	SYNTAX 	INTEGER {
			enable(1),
			enableWithLacp(2),
			disable(3)
		}
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		"Enable/disable 802.3ad function."
	::= { dot3adEntry 2 }

	lacpPriority OBJECT-TYPE
	SYNTAX INTEGER (0..65535)
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		"LACP system priority."
	::= { dot3ad 2 }

	lacpTimeout OBJECT-TYPE
	SYNTAX INTEGER {
			shorttimeout(1),
			longtimeout(2)
		}
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		"The time interval to exchange LACP packets in order to check that the peer port
		in the trunk group is still up."
	::= { dot3ad 3 }

	portTrunkingTable OBJECT-TYPE
	SYNTAX SEQUENCE OF PortTrunkingEntry
	MAX-ACCESS not-accessible
	STATUS current
	DESCRIPTION
		"The table contains current status of port trunking."
	::= { dot3ad 4 }

	portTrunkingEntry OBJECT-TYPE
	SYNTAX PortTrunkingEntry
	MAX-ACCESS not-accessible
	STATUS current
	DESCRIPTION
		""
	INDEX { portTrunkingGroupId }
	::= { portTrunkingTable 1 }

	PortTrunkingEntry ::=
		SEQUENCE {
			portTrunkingGroupId	INTEGER,
			portTrunkingStatus	INTEGER,
			portTrunkingPortList	PortList
		}

	portTrunkingGroupId OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"Group ID 1 for the subtending group and 2 for the uplink group."
	::= { portTrunkingEntry 1 }

	portTrunkingStatus OBJECT-TYPE
	SYNTAX 	INTEGER {
			up(1),
			down(2)
		}
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"Port trunking status."
	::= { portTrunkingEntry 2 }

	portTrunkingPortList OBJECT-TYPE
	SYNTAX PortList
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The port list which actually joins the trunking group."
	::= { portTrunkingEntry 3 }

--------------------
-- dscp
--------------------

	dscpMappingTable OBJECT-TYPE
	SYNTAX SEQUENCE OF DscpMappingEntry
	MAX-ACCESS not-accessible
	STATUS current
	DESCRIPTION
		"The table contains DSCP mapping configuration for the adsl ports."
	::= { dscp 1 }

	dscpMappingEntry OBJECT-TYPE
	SYNTAX DscpMappingEntry
	MAX-ACCESS not-accessible
	STATUS current
	DESCRIPTION
		"An entry of dscpMappingTable."
	INDEX { dscpSrcCodePoint }
	::= { dscpMappingTable 1 }

	DscpMappingEntry ::=
		SEQUENCE {
			dscpSrcCodePoint	INTEGER,
--			dscpMapCodePoint	INTEGER,
			dscpMapPriority		INTEGER
		}

	dscpSrcCodePoint OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The DSCP source code point used for mapping."
	::= { dscpMappingEntry 1 }

--	dscpMapCodePoint OBJECT-TYPE
--	SYNTAX INTEGER (0..63)
--	MAX-ACCESS read-write
--	STATUS current
--	DESCRIPTION
--		"The mapping code point that will replace the source code point in the incoming packet."
--	::= { dscpMappingEntry 2 }

	dscpMapPriority OBJECT-TYPE
	SYNTAX INTEGER (0..7)
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		"The mapping p bits that will replace the source p bits in the incoming packet."
	::= { dscpMappingEntry 3 }

--- pfchen
	dscpPortTable OBJECT-TYPE
	SYNTAX SEQUENCE OF DscpPortEntry
	MAX-ACCESS not-accessible
	STATUS current
	DESCRIPTION
		"The table contains DSCP mapping configuration for the adsl ports."
	::= { dscp 2 }

	dscpPortEntry OBJECT-TYPE
	SYNTAX DscpPortEntry
	MAX-ACCESS not-accessible
	STATUS current
	DESCRIPTION
		"An entry of dscpPortTable."
	INDEX { ifIndex }
	::= { dscpPortTable 1 }

	DscpPortEntry ::=
		SEQUENCE {
			dscpStatusEnable	INTEGER
		}

	dscpStatusEnable OBJECT-TYPE
	SYNTAX INTEGER {
			enable(1),
			disable(2)
		}
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		"The DSCP port status."
	::= { dscpPortEntry 1 }

--------------------
-- Vlan Isolation
--------------------

	vlanIsolationTable OBJECT-TYPE
        SYNTAX SEQUENCE OF VlanIsolationEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"A table contains configuration of isolated VLAN."
        ::= { vlanIsolation 1 }

	vlanIsolationEntry OBJECT-TYPE
        SYNTAX VlanIsolationEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry of vlanIsolationTable."
        INDEX { dot1qVlanIndex }
        ::= { vlanIsolationTable 1 }

        VlanIsolationEntry ::=
		SEQUENCE {
			vlanIsolationRowStatus		INTEGER
              }

	vlanIsolationRowStatus OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        	"Row status of the table used to create/delete an entry."
        ::= { vlanIsolationEntry 1 }

--------------------
-- enet MTU
--------------------

	enetMtuEntry OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"Sets the MTU size for layer 2 frame, size from 1526 to 1532, default value is 1526."
        ::= { enetMtu 1 }

--------------------
-- TPID (Tag Protocol Identifier)
--------------------

	tpidEntry OBJECT-TYPE
        SYNTAX Unsigned32
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"Sets TPID(Tag Protocol Identifier) of tagged frame, 0~FFFF."
        ::= { tpid 1 }

--------------------
-- CFM
--------------------

-- cfmLoopbackPortTable

	cfmLoopbackPortTable OBJECT-TYPE
        SYNTAX SEQUENCE OF CfmLoopbackPortEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"A table that contains CFM information."
        ::= { cfm 1 }

	cfmLoopbackPortEntry OBJECT-TYPE
        SYNTAX CfmLoopbackPortEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry in cfmLoopbackPortTable."
        INDEX { ifIndex }
        ::= { cfmLoopbackPortTable 1 }

	CfmLoopbackPortEntry ::= SEQUENCE {
        	cfmLoopbackPortState 	INTEGER
        }

	cfmLoopbackPortState OBJECT-TYPE
    	SYNTAX  INTEGER {
    			enable(1),
    			disable(2)
    		}
    	MAX-ACCESS read-write
    	STATUS current
    	DESCRIPTION
        	"CFM loopback enable/disable on the port."
    	::= { cfmLoopbackPortEntry 1 }

-- cfmMIPTable

        cfmMIPTable OBJECT-TYPE
        SYNTAX SEQUENCE OF CfmMIPEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
                 ""
        ::= { cfm 2 }

	cfmMIPEntry OBJECT-TYPE
        SYNTAX CfmMIPEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"An entry in cfmMIPTable."
        INDEX { dot1agCfmMdIndex, cfmPort }
        ::= { cfmMIPTable 1 }

        CfmMIPEntry ::=
	SEQUENCE {
        	cfmPort		INTEGER,
        	cfmMIPRowStatus	RowStatus,
        	cfmMIPMacAddr	PhysAddress
        }

--        cfmLevel OBJECT-TYPE
--        SYNTAX  INTEGER
--        MAX-ACCESS  not-accessible
--        STATUS  current
--        DESCRIPTION
--                      	""
--        ::= { cfmMIPEntry 1 }
--
--        cfmVlanID OBJECT-TYPE
--        SYNTAX  INTEGER
--        MAX-ACCESS  not-accessible
--        STATUS  current
--        DESCRIPTION
--                      	""
--        ::= { cfmMIPEntry 2 }

        cfmPort OBJECT-TYPE
        SYNTAX  INTEGER
        MAX-ACCESS  not-accessible
        STATUS  current
        DESCRIPTION
                      	""
        ::= { cfmMIPEntry 3 }

        cfmMIPRowStatus OBJECT-TYPE
        SYNTAX  RowStatus
        MAX-ACCESS  read-create
        STATUS  current
        DESCRIPTION
                      	""
        ::= { cfmMIPEntry 4 }
        
        cfmMIPMacAddr OBJECT-TYPE
        SYNTAX  PhysAddress
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
                      	"CFM MIP mac address"
        ::= { cfmMIPEntry 5 }

	cfmActionEnableStatus OBJECT-TYPE
    	SYNTAX  INTEGER {
    			enable(1),
    			disable(2)
    		}
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
                      	"CFM Action enable status for the CO device"
        ::= { cfm 3 }

	cfmMode OBJECT-TYPE
    	SYNTAX  INTEGER {
    			mode802Dot1Ag(1),
    			modeYDot1731(2)
    		}
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
                      	"CFM follow standard mode"
        ::= { cfm 4 }
        
	cfmLbmTimeout OBJECT-TYPE
    	SYNTAX  INTEGER (100..86400)
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
                      	"CFM LBM timeout, 100-86400 ms"
        ::= { cfm 5 }
        
	cfmLbmDataTlvLength OBJECT-TYPE
    	SYNTAX  INTEGER (0..1400)
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
                      	"CFM LBM data tlv length, 0-1400 bytes"
        ::= { cfm 6 }
        
-- cfmLbrTable

	cfmLbrTable OBJECT-TYPE
        SYNTAX SEQUENCE OF CfmLbrEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"A table that contains CFM LBR results."
        ::= { cfm 7 }

	cfmLbrEntry OBJECT-TYPE
        SYNTAX CfmLbrEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry in cfmLbrTable."
        INDEX { dot1agCfmMdIndex, dot1agCfmMaIndex, dot1agCfmMepIdentifier, cfmLbmIndex, cfmLbrIndex}
        ::= { cfmLbrTable 1 }

	CfmLbrEntry ::= SEQUENCE {
			cfmLbmIndex 	INTEGER,
			cfmLbrIndex 	INTEGER,
        	cfmLbrSrcMac 	PhysAddress,
        	cfmLbrStatus	INTEGER,
        	cfmLbrRtt		INTEGER
        }

	cfmLbmIndex OBJECT-TYPE
    	SYNTAX  INTEGER
    	MAX-ACCESS read-only
    	STATUS current
    	DESCRIPTION
        	"CFM lbm index."
    	::= { cfmLbrEntry 1 }

    cfmLbrIndex OBJECT-TYPE
    	SYNTAX  INTEGER
    	MAX-ACCESS read-only
    	STATUS current
    	DESCRIPTION
        	"CFM lbr index."
    	::= { cfmLbrEntry 2 }

	cfmLbrSrcMac OBJECT-TYPE
    	SYNTAX  PhysAddress
    	MAX-ACCESS read-only
    	STATUS current
    	DESCRIPTION
        	"CFM lbr source address."
    	::= { cfmLbrEntry 3 }

	cfmLbrStatus OBJECT-TYPE
    	SYNTAX  INTEGER {
			ready(1),
        	notready(2),
        	xmit(3),
        	success(4),
        	timeout(5)
		}
    	MAX-ACCESS read-only
    	STATUS current
    	DESCRIPTION
        	"CFM lbr status."
    	::= { cfmLbrEntry 4 }
    	        
	cfmLbrRtt OBJECT-TYPE
    	SYNTAX  INTEGER
    	MAX-ACCESS read-only
    	STATUS current
    	DESCRIPTION
        	"CFM lbr rtt in ms."
    	::= { cfmLbrEntry 5 }
    	
--------------------
-- DHCP Relay
--------------------
	dhcpRelay82Table OBJECT-TYPE
        SYNTAX SEQUENCE OF DhcpRelay82Entry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
                "A table that contains DHCP Relay configuration."
        ::= { dhcp 2 }

        dhcpRelay82Entry OBJECT-TYPE
        SYNTAX DhcpRelay82Entry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"The entry of DHCP Relay table."
        INDEX  { dot1qVlanIndex }
        ::= { dhcpRelay82Table 1 }

        DhcpRelay82Entry ::=
        	SEQUENCE {
        		dhcpRelay82PrimaryServer	IpAddress,
        		dhcpRelay82SecondaryServer	IpAddress,
        		dhcpRelay82ActiveServer		INTEGER,
        		dhcpRelay82Enable		INTEGER,
        		dhcpRelay82Info			DisplayString,
        		dhcpRelay82RelayMode		INTEGER,
        		dhcpRelay82Suboption2Enable	INTEGER,
        		dhcpRelay82Suboption2Info	DisplayString,
                dhcpRelay82EntryEnable		        INTEGER,
            dhcpRelay82EntryOptionMode    INTEGER, 
            dhcpRelay82VlanIp	IpAddress,
            dhcpRelay82VlanMask	INTEGER,
            dhcpRelay82VlanGateway	IpAddress,
         		dhcpRelay82ThirdServer	IpAddress,
        		dhcpRelay82FourthServer	IpAddress,
        		dhcpRelay82FifthServer	IpAddress,
        		dhcpRelay82ServerVid	INTEGER
           	}

        dhcpRelay82PrimaryServer OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"The IP address of the DHCP Relay primary server."
        ::= { dhcpRelay82Entry 1 }

        dhcpRelay82SecondaryServer OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"The IP address of the DHCP Relay secondary server."
        ::= { dhcpRelay82Entry 2 }

        dhcpRelay82ActiveServer OBJECT-TYPE
        SYNTAX	INTEGER {
        		primary(1),
        		secondary(2),
        		third(3),
        		fourth(4),
        		fifth(5)
        	}
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
		"The current active DHCP Relay server."
        ::= { dhcpRelay82Entry 3 }

	dhcpRelay82Enable OBJECT-TYPE
        SYNTAX  INTEGER {
			enable(1),
        		disable(2)
		}
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
		"Enable/disable DHCP relay and Option82 function."
        ::= { dhcpRelay82Entry 4 }

        dhcpRelay82Info OBJECT-TYPE
        SYNTAX DisplayString (SIZE (0..23))
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
		"User specific Option82 information."
        ::= { dhcpRelay82Entry 5 }

        dhcpRelay82RelayMode OBJECT-TYPE
        SYNTAX  INTEGER {
			auto(1),
			all(2)
		}
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
		"DHCP relay mode."
        ::= { dhcpRelay82Entry 6 }


        dhcpRelay82Suboption2Enable OBJECT-TYPE
        SYNTAX	INTEGER {
        		enable(1),
        		disable(2)
        	}
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
		"Enable/disable Option 82 sub-option 2."
        ::= { dhcpRelay82Entry 8 }

        dhcpRelay82Suboption2Info OBJECT-TYPE
        SYNTAX DisplayString
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
		"User specified information for Option 82 sub-option 2."
        ::= { dhcpRelay82Entry 9 }

        dhcpRelay82EntryEnable OBJECT-TYPE
        SYNTAX	INTEGER {
        		auto(1),
        		all(2),
                        disable(3)
        	}
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
		"Enable/disable DHCP Relay"
        ::= { dhcpRelay82Entry 10 }

        dhcpRelay82EntryOptionMode OBJECT-TYPE
        SYNTAX INTEGER {
        private(1),
        tr101(2),
	customer-remote-id(3),
        }
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
		"Option82 format."
        ::= { dhcpRelay82Entry 11 }

        dhcpRelay82VlanIp OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"The IP address of the DHCP Relay interface for this VLAN."
        ::= { dhcpRelay82Entry 12 }

        dhcpRelay82VlanMask OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"The network mask of the DHCP Relay interface for this VLAN."
        ::= { dhcpRelay82Entry 13 }

        dhcpRelay82VlanGateway OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"The gateway of the DHCP Relay interface for this VLAN."
        ::= { dhcpRelay82Entry 14 }

        dhcpRelay82ThirdServer OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"The IP address of the DHCP Relay third server."
        ::= { dhcpRelay82Entry 15 }

        dhcpRelay82FourthServer OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"The IP address of the DHCP Relay fourth server."
        ::= { dhcpRelay82Entry 16 }


        dhcpRelay82FifthServer OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"The IP address of the DHCP Relay fifth server."
        ::= { dhcpRelay82Entry 17 }

        dhcpRelay82ServerVid OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"The VID of the DHCP Relay server for this VLAN."
        ::= { dhcpRelay82Entry 18 }

-- dhcpRelayTest
        dhcpRelayTest	OBJECT IDENTIFIER ::= { dhcp 8 }
   
		dhcpRelayTestVid OBJECT-TYPE
		SYNTAX INTEGER
		MAX-ACCESS read-write
		STATUS current
		DESCRIPTION
		"Setting the VID of the test server."
		::= { dhcpRelayTest 1 }    
	
		dhcpRelayTestIp OBJECT-TYPE
		SYNTAX IpAddress
		MAX-ACCESS read-write
		STATUS current
		DESCRIPTION
		"Setting the IP of the test server."
		::= { dhcpRelayTest 2 }
        
        dhcpRelayTestOps OBJECT-TYPE
		SYNTAX INTEGER
		MAX-ACCESS read-write
		STATUS current
		DESCRIPTION
		"Set the object to 1 to test DHCP server."
		::= { dhcpRelayTest 3 }

    	dhcpRelayTestStatus OBJECT-TYPE
		SYNTAX DisplayString
		MAX-ACCESS read-only
		STATUS current
		DESCRIPTION
		"Display testing server status."
		::= { dhcpRelayTest 4 }
                     
-- dhcpRelayArp      
        dhcpRelayArp	OBJECT IDENTIFIER ::= { dhcp 9 }

        dhcpRelayArpShowTable OBJECT-TYPE
        SYNTAX SEQUENCE OF DhcpRelayArpShowEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "The table displays DHCP ARP."
        ::= { dhcpRelayArp 1 }
        
        dhcpRelayArpShowEntry OBJECT-TYPE
        SYNTAX DhcpRelayArpShowEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        "An entry of dhcpRelayArpShowTable."
        INDEX { dhcpRelayArpShowVid, dhcpRelayArpShowIp }
        ::= { dhcpRelayArpShowTable 1 }

        DhcpRelayArpShowEntry ::=
        	SEQUENCE {   
        	    dhcpRelayArpShowVid			INTEGER,
        		dhcpRelayArpShowIp			IpAddress,
        		dhcpRelayArpShowMac			PhysAddress         	
              	}

	    dhcpRelayArpShowVid OBJECT-TYPE
		SYNTAX INTEGER
		MAX-ACCESS read-only
		STATUS current
		DESCRIPTION
		"Display the VID of the DHCP ARP entry."
		::= { dhcpRelayArpShowEntry 1 }    
	
		dhcpRelayArpShowIp OBJECT-TYPE
		SYNTAX IpAddress
		MAX-ACCESS read-only
		STATUS current
		DESCRIPTION
		"Display the IP of the DHCP ARP entry."
		::= { dhcpRelayArpShowEntry 2 }

		dhcpRelayArpShowMac OBJECT-TYPE
		SYNTAX  PhysAddress
		MAX-ACCESS read-only
		STATUS current
		DESCRIPTION
		"Display the MAC of the DHCP ARP entry."
		::= { dhcpRelayArpShowEntry 3 }
 
     	dhcpRelayArpFlushOps OBJECT-TYPE
	 	SYNTAX INTEGER
	 	MAX-ACCESS read-write
	 	STATUS current
     	DESCRIPTION
	 	"Set the object to 1 to start flushing."
     	::= { dhcpRelayArp 2 }

--------------------
-- MAC Filter
--------------------

-- MAC Filter Port Table

        macFilterPortTable OBJECT-TYPE
        SYNTAX SEQUENCE OF MacFilterPortEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"This table includes the status of mac filtering for each port."
        ::= { macfilter 1 }

	macFilterPortEntry OBJECT-TYPE
        SYNTAX MacFilterPortEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"An entry in macFilterPortTable."
        INDEX { ifIndex }
        ::= { macFilterPortTable 1 }

        MacFilterPortEntry ::=
        	SEQUENCE {
			macFilterPortEnable	INTEGER,
			macFilterPortMacCount	INTEGER,
			macFilterPortFilterMode	INTEGER
           	}

        macFilterPortEnable OBJECT-TYPE
        SYNTAX  INTEGER {
			enableMacFilter(1),
			enableMacCount(2),
--			enableOuiFilter(3),
			disable(4),
			enableMacFilterAndMacCount(5)
		}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
                "Enable/disable MAC filtering for the port."
         ::= { macFilterPortEntry 1 }

        macFilterPortMacCount OBJECT-TYPE
        SYNTAX INTEGER (1..128)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
                "The total number of MAC addresses allowed for the port."
         ::= { macFilterPortEntry 2 }

        macFilterPortFilterMode OBJECT-TYPE
        SYNTAX	INTEGER {
        		accept(1),
        		deny(2)
        	}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
                "The mac filter mode (accept or deny) for the port."
         ::= { macFilterPortEntry 3 }

	maxNumOfMacFiltersInSystem OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The max number of mac filters supported in the system."
	::= { macfilter 2 }

	maxNumOfMacFiltersPerPort OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The max number of mac filters supported per port."
	::= { macfilter 3 }

	currNumOfMacFiltersInSystem OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The current number of mac filters in the system."
	::= { macfilter 4 }

-- MAC Table

	macFilterTable OBJECT-TYPE
   	SYNTAX SEQUENCE OF MacFilterEntry
    	MAX-ACCESS not-accessible
    	STATUS current
    	DESCRIPTION
                "A table that contains the mac filter addresses."
    	::= { macfilter 5 }

    	macFilterEntry OBJECT-TYPE
        SYNTAX MacFilterEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"The entry of macFilterTable."
        INDEX { ifIndex, macFilterAddr }
        ::= { macFilterTable 1 }

   	MacFilterEntry ::=
        	SEQUENCE {
	    		macFilterAddr		PhysAddress,
	    		macFilterRowStatus	RowStatus
    	   	}

        macFilterAddr OBJECT-TYPE
        SYNTAX PhysAddress
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        	"The mac address which can pass through or be rejected from the port."
        ::= { macFilterEntry 1 }

	macFilterRowStatus OBJECT-TYPE
	SYNTAX RowStatus
	MAX-ACCESS read-create
	STATUS current
	DESCRIPTION
		"The row status of the entry."
	::= { macFilterEntry 2 }

-- Batch Set for MAC Filter

	macfilterBatchSet		OBJECT IDENTIFIER ::= { macfilter 6 }

        macfilterTarget OBJECT-TYPE
        SYNTAX OCTET STRING
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"This managed object is used for identify the target on which
		the port configuration should be performed. The target is encoded as:
		Byte 1:   0, Reserved(chassis)
		Byte 2~3: 0, Reserved(slot)
		Byte 4:   0, reserved
		Byte 5~11:each octet specifies a set of eight ports, with the first
		          octet specifying ports 1 through 8, etc."
        ::= { macfilterBatchSet 1 }

        macfilterOps OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"The corresponding bit is set to 1 to start the operation.
		The various bit positions are:
		BIT 1: enable mac filter
		BIT 2: enable mac count filter
		BIT 3: disable mac filter
		BIT 4: set mac count
		BIT 5: disable mac count filter."
        ::= { macfilterBatchSet 2 }

        macFilterMacCountForBatchSet OBJECT-TYPE
        SYNTAX INTEGER (1..128)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
                "The total number of MAC addresses allowed for a port."
         ::= { macfilterBatchSet 3 }


-- OUI Filter Table

	ouiFilterTable OBJECT-TYPE
   	SYNTAX SEQUENCE OF OuiFilterEntry
    	MAX-ACCESS not-accessible
    	STATUS current
    	DESCRIPTION
                "A table that contains the OUI filter addresses."
    	::= { macfilter 7 }

    	ouiFilterEntry OBJECT-TYPE
        SYNTAX OuiFilterEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"The entry of ouiFilterTable."
        INDEX { ifIndex, ouiFilterAddr }
        ::= { ouiFilterTable 1 }

   	OuiFilterEntry ::=
        	SEQUENCE {
	    		ouiFilterAddr		OCTET STRING,
	    		ouiFilterRowStatus	RowStatus
    	   	}

        ouiFilterAddr OBJECT-TYPE
        SYNTAX OCTET STRING
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        	"The first three bytes of the mac address which can pass through or be rejected from the port."
        ::= { ouiFilterEntry 1 }

	ouiFilterRowStatus OBJECT-TYPE
	SYNTAX RowStatus
	MAX-ACCESS read-create
	STATUS current
	DESCRIPTION
		"The row status of the entry."
	::= { ouiFilterEntry 2 }

	maxNumOfOuiFiltersPerPort OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The max number of OUI filters supported per port."
	::= { macfilter 8 }


        ouiFilterPortTable OBJECT-TYPE
        SYNTAX SEQUENCE OF OuiFilterPortEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"This table includes the status of oui filtering for each port."
        ::= { macfilter 9 }

	ouiFilterPortEntry OBJECT-TYPE
        SYNTAX OuiFilterPortEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"An entry in macFilterPortTable."
        INDEX { ifIndex }
        ::= { ouiFilterPortTable 1 }

        OuiFilterPortEntry ::=
        	SEQUENCE {
			ouiFilterPortEnable	INTEGER,
			ouiFilterPortFilterMode	INTEGER
           	}


        ouiFilterPortEnable OBJECT-TYPE
        SYNTAX  INTEGER {
			enableOuiFilter(1),
			disable(2)
		}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
                "Enable/disable oui filtering for the port."
         ::= { ouiFilterPortEntry 1 }



        ouiFilterPortFilterMode OBJECT-TYPE
        SYNTAX	INTEGER {
        		accept(1),
        		deny(2)
        	}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
                "The oui filter mode (accept or deny) for the port."
         ::= { ouiFilterPortEntry 2 }

--------------------
-- DHCP Snoop
--------------------

-- dhcpSnoopPortTable

        dhcpSnoopPortTable OBJECT-TYPE
        SYNTAX SEQUENCE OF DhcpSnoopPortEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"This table includes DHCP snooping enable/disable for each port."
        ::= { dhcpSnoop 1 }

	dhcpSnoopPortEntry OBJECT-TYPE
        SYNTAX DhcpSnoopPortEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"An entry of dhcpSnoopPortTable."
        INDEX { ifIndex }
        ::= { dhcpSnoopPortTable 1 }

        DhcpSnoopPortEntry ::=
        	SEQUENCE {
			dhcpSnoopEnable			  INTEGER, 
			dhcpSnoopMaxcnt			  INTEGER,
			dhcpSnoopSmacverifyEnable INTEGER
           	}

        dhcpSnoopEnable OBJECT-TYPE
        SYNTAX  INTEGER {
        		enable(1),
        		disable(2)
        	}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
                "Enable/disable DHCP snooping for a port."
         ::= { dhcpSnoopPortEntry 1 }
         
        dhcpSnoopMaxcnt OBJECT-TYPE
        SYNTAX  INTEGER 
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
         		"Set the max entries of the DHCP ARP table."
         ::= { dhcpSnoopPortEntry 2 }   
         
        dhcpSnoopSmacverifyEnable OBJECT-TYPE
        SYNTAX  INTEGER {
        		enable(1),
        		disable(2)
        	}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
                "Enable/disable DHCP source MAC verify for a port."
         ::= { dhcpSnoopPortEntry 3 } 


-- dhcpSnoopOperation

        dhcpSnoopTarget OBJECT-TYPE
        SYNTAX OCTET STRING
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"This managed object is used for identify the target on which
		the operation should be performed. The target is encoded as:
		Byte 1:   the octet specifies a set of eight chassis, chassis 0 through 7
		Byte 2~3: each octet specifies a set of eight slots, with the
			  first octet specifying slots 1 through 8 and the second
		          octet specifying slots 9 through 16.
		Byte 4:   reserved
		Byte 5~11:each octet specifies a set of eight ports, with the first
		          octet specifying ports 1 through 8, etc."
        ::= { dhcpSnoop 2 }

        dhcpSnoopOps OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"The corresponding bit is set to 1 to start the operation.
		The various bit positions are:
		BIT 1: DHCP snooping table flush."
        ::= { dhcpSnoop 3 }

-- dhcpStaticTable

        dhcpStaticTable OBJECT-TYPE
        SYNTAX SEQUENCE OF DhcpStaticEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"This table defines DHCP static IP addresses."
        ::= { dhcpSnoop 4 }

	dhcpStaticEntry OBJECT-TYPE
        SYNTAX DhcpStaticEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"An entry of dhcpStaticTable."
        INDEX { ifIndex, dhcpStaticIpAddr }
        ::= { dhcpStaticTable 1 }

        DhcpStaticEntry ::=
        	SEQUENCE {
			dhcpStaticIpAddr	IpAddress,
			dhcpStaticRowStatus	RowStatus
           	}

        dhcpStaticIpAddr OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The IP address which can pass through the port."
        ::= { dhcpStaticEntry 1 }

        dhcpStaticRowStatus OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
                "Row status of the table entry."
        ::= { dhcpStaticEntry 2 }

        maxNumOfDhcpStaticIp OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The maximum number of DHCP static IP addresses which can be created for a port."
         ::= { dhcpSnoop 5 }
         
        dhcpSnoopMaxcntMode OBJECT-TYPE
               SYNTAX  INTEGER {
        		replace(1),
        		drop(2)
        	}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        "When DHCP snooping table is full, new DHCP lease will replace first one in option 0 or will be dropped in option 1."
         ::= { dhcpSnoop 6 }

--------------------
-- ACL Rule
--------------------

-- aclSetTable

        aclSetTable OBJECT-TYPE
        SYNTAX SEQUENCE OF AclSetEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"aclsetTable."
        ::= { acl 1 }

		aclSetEntry OBJECT-TYPE
        SYNTAX AclSetEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"An entry of aclSetTable."
        INDEX { ifIndex, aclSetVpi, aclSetVci, aclSetProfileName }
        ::= { aclSetTable 1 }

        AclSetEntry ::=
        	SEQUENCE {
			aclSetVpi		INTEGER,
			aclSetVci       	INTEGER,
			aclSetProfileName  	DisplayString,
			aclSetRowStatus		RowStatus
           	}

        aclSetVpi OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        	"VPI value"
        ::= { aclSetEntry 1 }

	aclSetVci OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        	"VCI value"
        ::= { aclSetEntry 2 }

        aclSetProfileName OBJECT-TYPE
        SYNTAX DisplayString
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        	"ACL Profile name"
        ::= { aclSetEntry 3 }

        aclSetRowStatus OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"RowStatus of aclSetEntry"
        ::= { aclSetEntry 4 }

-- aclProfileTable

        aclProfileTable OBJECT-TYPE
        SYNTAX SEQUENCE OF AclProfileEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"aclProfileTable."
        ::= { acl 2 }

	aclProfileEntry OBJECT-TYPE
        SYNTAX AclProfileEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"An entry of aclProfileTable."
        INDEX { aclProfileRuleName  }
        ::= { aclProfileTable 1 }

        AclProfileEntry ::=
        	SEQUENCE {
        		aclProfileRuleName  				DisplayString,
			aclProfileRuleNumber				INTEGER,
			aclProfileActionNumber				INTEGER,
			aclProfileRuleParamMask				INTEGER,
			aclProfileRuleEtype				INTEGER,
			aclProfileRuleVid				INTEGER,
			aclProfileRuleSmac				PhysAddress,
			aclProfileRuleDmac				PhysAddress,
			aclProfileRulePriority				INTEGER,
			aclProfileRuleProtocol				INTEGER,
--			aclProfileRuleSrcIP				IpAddress,
--			aclProfileRuleSrcIPMask				INTEGER,
--			aclProfileRuleDestIP				IpAddress,
--			aclProfileRuleDestIPMask			INTEGER,
--			aclProfileRuleStartTos				INTEGER,
--			aclProfileRuleEndTos				INTEGER,
--			aclProfileRuleSrcStartPort			INTEGER,
--			aclProfileRuleSrcEndPort			INTEGER,
--			aclProfileRuleDestStartPort			INTEGER,
--			aclProfileRuleDestEndPort			INTEGER,
			aclProfileActionRate				INTEGER,
			aclProfileActionrvlan				INTEGER,
			aclProfileActionrpri				INTEGER,
			aclProfileRowStatus				RowStatus,
			aclProfileRuleSip				IpAddress,
			aclProfileRuleDip				IpAddress,
			aclProfileRuleSport				INTEGER,
			aclProfileRuleDport				INTEGER

           	}

	aclProfileRuleName OBJECT-TYPE
        SYNTAX DisplayString
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        	"Profile rule name"
        ::= { aclProfileEntry 1 }

        aclProfileRuleNumber OBJECT-TYPE
        SYNTAX  INTEGER
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"The managed object is for acl profile rule configuration.
        	etype <etype> vlan <vid> (1),
        	etype <etype> smac <mac> (2),
        	etype <etype> dmac <mac> (3),
        	vlan <vid> smac <mac> (4),
        	vlan <vid> dmac <mac> (5),
        	smac <mac> dmac <mac> (6),
        	vlan <vid> priority <priority> (7),
        	etype <etype> (8),
        	vlan <vid> (9),
        	smac <mac> (10),
        	dmac <mac> (11),
        	priority <priority> (12),
        	protocol <protocol> (13),
        	vlan <vid> sip <ip> (14),
        	vlan <vid> dip <ip> (15),
        	vlan <vid> sport tcp|udp <port> (16),
        	vlan <vid> dport tcp|udp <port> (17) "
        ::= { aclProfileEntry 2 }

        aclProfileActionNumber OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"Profile action number.
		  Bit 1: rate
		  Bit 2: rvlan
		  Bit 3: rpri
		  Bit 4: deny
		  Bit 1, Bit 2 & Bit 3 can multiple selection."
        ::= { aclProfileEntry 3 }

        aclProfileRuleParamMask OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"Profile rule parameter mask.
		 BIT 1: srcip <ip>/<mask>
		 BIT 2: dstip <ip>/<mask>
		 BIT 3: tos <stos> <etos>
		 BIT 4: srcport <sport> <eport>
		 BIT 5: dstport <sport> <eport>"
        ::= { aclProfileEntry 4 }

        aclProfileRuleEtype OBJECT-TYPE
        SYNTAX INTEGER (0..65535)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"Profile rule etype"
        ::= { aclProfileEntry 5 }

        aclProfileRuleVid OBJECT-TYPE
        SYNTAX INTEGER (1..4094)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"Profile rule vid"
        ::= { aclProfileEntry 6 }

        aclProfileRuleSmac OBJECT-TYPE
        SYNTAX PhysAddress
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"Profile rule source MAC"
        ::= { aclProfileEntry 7 }

        aclProfileRuleDmac OBJECT-TYPE
        SYNTAX PhysAddress
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"Profile rule destination MAC"
        ::= { aclProfileEntry 8 }

        aclProfileRulePriority OBJECT-TYPE
        SYNTAX INTEGER (0..7)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"Profile rule priority"
        ::= { aclProfileEntry 9 }

        aclProfileRuleProtocol OBJECT-TYPE
        SYNTAX INTEGER (0..255)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"Profile rule protocol.
		  icmp(1),igmp(2),ip(4),tcp(6),
		  udp(17),gre(47),ospf(89),
		  other ptype"
        ::= { aclProfileEntry 10 }

--       aclProfileRuleSrcIP OBJECT-TYPE
--       SYNTAX IpAddress
--       MAX-ACCESS read-write
--       STATUS current
--       DESCRIPTION
--       	"Profile rule source IP"
--       ::= { aclProfileEntry 11 }
--
--       aclProfileRuleSrcIPMask OBJECT-TYPE
--       SYNTAX INTEGER (0..32)
--       MAX-ACCESS read-write
--       STATUS current
--       DESCRIPTION
--       	"The subnet mask of source IP mask"
--       ::= { aclProfileEntry 12 }
--
--       aclProfileRuleDestIP OBJECT-TYPE
--       SYNTAX IpAddress
--       MAX-ACCESS read-write
--       STATUS current
--       DESCRIPTION
--       	"Profile rule source IP"
--       ::= { aclProfileEntry 13 }
--
--       aclProfileRuleDestIPMask OBJECT-TYPE
--       SYNTAX INTEGER (0..32)
--       MAX-ACCESS read-write
--       STATUS current
--       DESCRIPTION
--       	"The subnet mask of dest IP mask"
--       ::= { aclProfileEntry 14 }
--
--       aclProfileRuleStartTos OBJECT-TYPE
--       SYNTAX INTEGER (0..255)
--       MAX-ACCESS read-write
--       STATUS current
--       DESCRIPTION
--       	"Profile rule start type of service"
--       ::= { aclProfileEntry 15 }
--
--       aclProfileRuleEndTos OBJECT-TYPE
--       SYNTAX INTEGER (0..255)
--       MAX-ACCESS read-write
--       STATUS current
--       DESCRIPTION
--       	"Profile rule end type of service"
--       ::= { aclProfileEntry 16 }
--
--       aclProfileRuleSrcStartPort OBJECT-TYPE
--       SYNTAX INTEGER (0..65535)
--       MAX-ACCESS read-write
--       STATUS current
--       DESCRIPTION
--       	"Profile rule source start port"
--       ::= { aclProfileEntry 17 }
--
--       aclProfileRuleSrcEndPort OBJECT-TYPE
--       SYNTAX INTEGER (0..65535)
--       MAX-ACCESS read-write
--       STATUS current
--       DESCRIPTION
--       	"Profile rule source end port"
--       ::= { aclProfileEntry 18 }
--
--       aclProfileRuleDestStartPort OBJECT-TYPE
--       SYNTAX INTEGER (0..65535)
--       MAX-ACCESS read-write
--       STATUS current
--       DESCRIPTION
--       	"Profile rule destination start port"
--       ::= { aclProfileEntry 19 }
--
--       aclProfileRuleDestEndPort OBJECT-TYPE
--       SYNTAX INTEGER (0..65535)
--       MAX-ACCESS read-write
--       STATUS current
--       DESCRIPTION
--       	"Profile rule destination end port"
--       ::= { aclProfileEntry 20 }

        aclProfileActionRate OBJECT-TYPE
        SYNTAX INTEGER (32..65472)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
         	"Profile action to replace to this rate"
        ::= { aclProfileEntry 21 }

        aclProfileActionrvlan OBJECT-TYPE
        SYNTAX INTEGER (1..4094)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"Profile action to replace to this vlan"
        ::= { aclProfileEntry 22 }

        aclProfileActionrpri OBJECT-TYPE
        SYNTAX INTEGER (0..7)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"Profile action to replace to this priority"
        ::= { aclProfileEntry 23 }

        aclProfileRowStatus OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"The row status of the entry."
        ::= { aclProfileEntry 24 }

        aclProfileRuleSip OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        	"Source IP."
        ::= { aclProfileEntry 25 }

        aclProfileRuleDip OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        	"Destination IP."
        ::= { aclProfileEntry 26 }

        aclProfileRuleSport OBJECT-TYPE
        SYNTAX INTEGER (0..65535)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        	"Source port."
        ::= { aclProfileEntry 27 }

        aclProfileRuleDport OBJECT-TYPE
        SYNTAX INTEGER (0..65535)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        	"Destination port."
        ::= { aclProfileEntry 28 }


--------------------
-- PPPoE Agent
--------------------

-- pppoeAgentTable

        pppoeAgentTable OBJECT-TYPE
        SYNTAX SEQUENCE OF PppoeAgentEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"A table that contains PPPoE intermediate agent configuration."
        ::= { pppoeAgent 1 }

	pppoeAgentEntry OBJECT-TYPE
        SYNTAX PppoeAgentEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"An entry of pppoeAgentTable."
        INDEX { dot1qVlanIndex }
        ::= { pppoeAgentTable 1 }

        PppoeAgentEntry ::=
           SEQUENCE {
        		pppoeAgentEnable		INTEGER,
        		pppoeAgentInfo			DisplayString,
        		pppoeAgentRowStatus		RowStatus,
        		pppoeAgentOptionMode INTEGER
           	}

	pppoeAgentEnable OBJECT-TYPE
        SYNTAX  INTEGER {
			enable(1),
			disable(2)
		}
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
		"Enable/disable PppoE intermediate agent function."
        ::= { pppoeAgentEntry 1 }

        pppoeAgentInfo OBJECT-TYPE
        SYNTAX DisplayString (SIZE (0..23))
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
		"User specific Option82 information."
        ::= { pppoeAgentEntry 2 }

        pppoeAgentRowStatus OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
		"Row status of the table entry."
        ::= { pppoeAgentEntry 3 }

        pppoeAgentOptionMode OBJECT-TYPE
        SYNTAX INTEGER {
        private(1),
        tr101(2)
        }
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
		"Option82 format."
        ::= { pppoeAgentEntry 4 }

	maxNumOfPppoeAgentConf OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The maximum number of rows that can be created in pppoeAgentTable."
	::= { pppoeAgent 2 }


--------------------
-- n1mac
--------------------
	n1macReplaceMac OBJECT-TYPE
	SYNTAX MacAddress
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"This MAC address will be used to replace client's MAC address."
	::= { n1mac 1 }

	n1macPortTable OBJECT-TYPE
	SYNTAX SEQUENCE OF N1macPortEntry
	MAX-ACCESS not-accessible
	STATUS current
	DESCRIPTION
		"The table contains N to 1 MAC configuration for DSL ports."
	::= { n1mac 2 }

	n1macPortEntry OBJECT-TYPE
	SYNTAX N1macPortEntry
	MAX-ACCESS not-accessible
	STATUS current
	DESCRIPTION
		"An entry of n1macPortTable."
	INDEX { ifIndex }
	::= { n1macPortTable 1 }

	N1macPortEntry ::=
		SEQUENCE {
			n1macStatusEnable	INTEGER
		}

	n1macStatusEnable OBJECT-TYPE
	SYNTAX INTEGER {
			enable(1),
			disable(2)
		}
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		"The port status of n1mac function."
	::= { n1macPortEntry 1 }

----------------------------------------
-- macff
---------------------------------------- 
    macFfTable OBJECT-TYPE
    SYNTAX SEQUENCE OF MacFfEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
    	"A table that contains MAC Force Forwarding configuration."
    ::= { macff 1 }
    
    macFfEntry OBJECT-TYPE
    SYNTAX MacFfEntry
    MAX-ACCESS not-accessible                                                        
    STATUS current
    DESCRIPTION
    	"An entry of macFfTable."
    INDEX	{ macFfIndex }
    ::= { macFfTable 1 }
    
    MacFfEntry ::=
    	SEQUENCE {
    		macFfIndex 			INTEGER,
			macFfVid			INTEGER,
			macFfArIP			IpAddress,
--			macFfArMask			INTEGER,
			macFfSrcIP			IpAddress,
			macFfSrcMask		INTEGER,
			macFfRowStatus		RowStatus
		}
					
			macFfIndex OBJECT-TYPE
			SYNTAX INTEGER
      		MAX-ACCESS read-only
      		STATUS current
     		 DESCRIPTION
        		"Index of the MACFF."
      		::= { macFfEntry 1 }
					
			macFfVid OBJECT-TYPE		
			SYNTAX INTEGER
			MAX-ACCESS read-write
			STATUS current
			DESCRIPTION
        		"The VLAN-ID refering to this AR/AS."
			::= { macFfEntry 2 }
			
			
			macFfArIP	OBJECT-TYPE		
			SYNTAX IpAddress
			MAX-ACCESS read-write
			STATUS current
			DESCRIPTION
        		"IP of this AR/AS"
      		::= { macFfEntry 3 }
		
			macFfSrcIP OBJECT-TYPE		
			SYNTAX IpAddress
			MAX-ACCESS read-write
			STATUS current
			DESCRIPTION
        		"The source IP address of the MACFF."
      		::= { macFfEntry 4 }
						
			macFfSrcMask OBJECT-TYPE	
			SYNTAX INTEGER
			MAX-ACCESS read-write
			STATUS current
			DESCRIPTION
        		"The subnet mask of source IP mask."
     		::= { macFfEntry 5 }
			
		
			macFfRowStatus OBJECT-TYPE
			SYNTAX RowStatus
			MAX-ACCESS read-create
			STATUS current
			DESCRIPTION
        		"The row status of the MacFfEntry entry."
     	 	::= { macFfEntry 6 }
			    
     
    macFfArpFlush OBJECT-TYPE
  	SYNTAX INTEGER
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
    	"Set the object to 1 to flush mac table."
    ::= { macff 3 }
	
    maxNumOfMacFfVlanInSystem OBJECT-TYPE
  	SYNTAX INTEGER
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
    	"The max number of macff Vlans supported in the system."
    ::= { macff 4 }
    
    macFfVlanTable OBJECT-TYPE
    SYNTAX SEQUENCE OF MacFfVlanEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
    	"A table that contains MAC Force Forwarding Vlan configuration."
    ::= { macff 5 }
    
    macFfVlanEntry OBJECT-TYPE
    SYNTAX MacFfVlanEntry
    MAX-ACCESS not-accessible                                                        
    STATUS current
    DESCRIPTION
    	"An entry of macFfVlanTable."
    INDEX { dot1qVlanIndex }
    ::= { macFfVlanTable 1 }
    
    MacFfVlanEntry ::=
    	SEQUENCE {
    		macFfVlanRowstatus 			INTEGER
--    		macFfVlanUnknownUnicast	INTEGER  removed since R3.1
		}
					
			macFfVlanRowstatus OBJECT-TYPE
			SYNTAX RowStatus
      		MAX-ACCESS read-create
      		STATUS current
     		 DESCRIPTION
        		"Row status of the table used to create/delete an entry."
      		::= { macFfVlanEntry 1 }
-- removed since R3.1
--			macFfVlanUnknownUnicast OBJECT-TYPE
--			SYNTAX	INTEGER {
--					flood(1),
--					drop(2)
--				}
--      		MAX-ACCESS read-create
--      		STATUS current
--     		 DESCRIPTION
--        		"Setting downstream unknown uni-cast packet on macff vlan to flooding or dropping."
--      		::= { macFfVlanEntry 2 }

    macFfStaticIPTable OBJECT-TYPE
    SYNTAX SEQUENCE OF MacFfStaticIPEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
    	" "
    ::= { macff 6 }
    
    macFfStaticIPEntry OBJECT-TYPE
    SYNTAX MacFfStaticIPEntry
    MAX-ACCESS not-accessible                                                        
    STATUS current
    DESCRIPTION
    	"An entry of macFfTable."    
    INDEX	{ macFfStaticIPPort, macFfStaticIPVid, macFfstaticIP , macFfStaticIPMask}
    ::= { macFfStaticIPTable 1 }
    
    MacFfStaticIPEntry ::=
    	SEQUENCE {
    		macFfStaticIPPort 		INTEGER,
			macFfStaticIPVid		INTEGER,
			macFfstaticIP			IpAddress,
			macFfStaticIPMask		INTEGER,
			macFfStaticIPRowStatus 	RowStatus
		}
					
			macFfStaticIPPort OBJECT-TYPE
			SYNTAX INTEGER
      		MAX-ACCESS read-only
      		STATUS current
     		 DESCRIPTION
        		" The port number, 1 ~ 48."
      		::= { macFfStaticIPEntry 1 }
					
			macFfStaticIPVid OBJECT-TYPE		
			SYNTAX INTEGER
			MAX-ACCESS read-only

			STATUS current
			DESCRIPTION
        		"VLAN ID of the IP range, 1 ~ 4094, the vid should be enable the MACFF function first."
			::= { macFfStaticIPEntry 2 }
			
		
			macFfstaticIP OBJECT-TYPE		
			SYNTAX IpAddress
			MAX-ACCESS read-only

			STATUS current
			DESCRIPTION
        		"The specified IP range."
      		::= { macFfStaticIPEntry 3 }
						
			macFfStaticIPMask OBJECT-TYPE	
			SYNTAX INTEGER
			MAX-ACCESS read-only

			STATUS current
			DESCRIPTION
        		"Mask_bits is 24 .. 32."
     		::= { macFfStaticIPEntry 4 }
			
		
			macFfStaticIPRowStatus OBJECT-TYPE
			SYNTAX RowStatus
			MAX-ACCESS read-create
			STATUS current
			DESCRIPTION
        		"The row status used to configure the table entry."
     	 	::= { macFfStaticIPEntry 5 }

-- Server Mac --

    macFfServerMacTable OBJECT-TYPE
    SYNTAX SEQUENCE OF MacFfServerMacEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
    	" "
    ::= { macff 7 }
    
    macFfServerMacEntry OBJECT-TYPE
    SYNTAX MacFfServerMacEntry
    MAX-ACCESS not-accessible                                                        
    STATUS current
    DESCRIPTION
    	"An entry of macFfTable."    
    INDEX	{ macFfServerMacVid, macFfServerMacAddr}
    ::= { macFfServerMacTable 1 }
    
    MacFfServerMacEntry ::=
    	SEQUENCE {
   			macFfServerMacVid		INTEGER,     
			macFfServerMacAddr 		PhysAddress,
			macFfServerMacRowStatus 	RowStatus
		}
		
	macFfServerMacVid OBJECT-TYPE	
		SYNTAX INTEGER
		MAX-ACCESS read-only

		STATUS current
		DESCRIPTION
        	"VLAN ID of the IP range, 1 ~ 4094, the vid should be enable the MACFF function first."
     	::= { macFfServerMacEntry 1 }

	macFfServerMacAddr OBJECT-TYPE	
		SYNTAX PhysAddress
		MAX-ACCESS read-only

		STATUS current
		DESCRIPTION
        	"The mac address."
     	::= { macFfServerMacEntry 2 }

	macFfServerMacRowStatus OBJECT-TYPE
		SYNTAX RowStatus
		MAX-ACCESS read-create
		STATUS current
		DESCRIPTION
       		"The row status used to configure the table entry."
   	 	::= { macFfServerMacEntry 3 }

----------------------------------------
-- sys
----------------------------------------
		timeSetup	OBJECT IDENTIFIER ::= { sys 4 }
        accessCtrl	OBJECT IDENTIFIER ::= { sys 5 }
        extAlarm    OBJECT IDENTIFIER ::= { sys 8 }
	    user		OBJECT IDENTIFIER ::= { sys 9 }
	    usbCastCtrl OBJECT IDENTIFIER ::= { sys 10}
	    dsQos		OBJECT IDENTIFIER ::= { sys 11}
	    
	stdioTimeout OBJECT-TYPE
		SYNTAX INTEGER (0..300)
		MAX-ACCESS read-write
		STATUS current
		DESCRIPTION
			"Set the CLI/TELNET/WEB Session timeout, 0, or 1~300 minutes, 0 => disable."
		::= { sys 12 }
		
	isConfigChanged OBJECT-TYPE
		SYNTAX INTEGER {
			yes(1),
			no(2)
		}
		MAX-ACCESS read-only
		STATUS current
		DESCRIPTION
			"If system configuration has been changed."
		::= { sys 13 }

	fwUpgrade OBJECT IDENTIFIER ::= {sys 14}     
    delayedReboot OBJECT IDENTIFIER ::= {sys 15}
--------------------
-- Time Setup
--------------------
-- 	dayLightSaving 

	dayLightSaving	OBJECT IDENTIFIER ::= { timeSetup 7 }
	
	dayLightSavingAdminStatus OBJECT-TYPE
	SYNTAX INTEGER {
        		enable(1),
        		disable(2)
		}
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		""
	::= { dayLightSaving 1 }	  
	
	dayLightSavingStartTime	OBJECT IDENTIFIER ::= { dayLightSaving 2 }
	
	dayLightSavingStartMonth OBJECT-TYPE
	SYNTAX INTEGER {
        		Jan(1),
        		Feb(2),
        		Mar(3), 
				Apr(4),
				May(5), 
				Jun(6), 
				Jul(7), 
				Aug(8), 
				Sep(9), 
				Oct(10), 
				Nov(11), 
				Dec(12)
		}
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		""
	::= { dayLightSavingStartTime 1 } 
	
	dayLightSavingStartWeek OBJECT-TYPE
	SYNTAX INTEGER {
        		First(1), 
				Second(2), 
				Third(3), 
				Fourth(4), 
				Last(5)
		}
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		""
	::= { dayLightSavingStartTime 2 } 
	
	dayLightSavingStartWday OBJECT-TYPE
	SYNTAX INTEGER {
        		Sun(1), 
				Mon(2), 
				Tus(3), 
				Wed(4), 
				Thu(5), 
				Fri(6), 
				Sat(7)
		}
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		""
	::= { dayLightSavingStartTime 3 } 
	
	dayLightSavingStartHour OBJECT-TYPE
		SYNTAX INTEGER { 
		        "0:00"(0), 
        		"1:00"(1), 
				"2:00"(2), 
				"3:00"(3), 
				"4:00"(4), 
				"5:00"(5), 
				"6:00"(6), 
				"7:00"(7),  
        		"8:00"(8), 
				"9:00"(9), 
				"10:00"(10), 
				"11:00"(11), 
				"12:00"(12), 
				"13:00"(13), 
				"14:00"(14), 
		        "15:00"(15), 
        		"16:00"(16), 
				"17:00"(17), 
				"18:00"(18), 
				"19:00"(19), 
				"20:00"(20), 
				"21:00"(21), 
				"22:00"(22),  
        		"23:00"(23),  
		}
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		"1: 01:00,
		2: 02:00
		3: 03:00
		4: 04:00
		5: 05:00
		6: 06:00
		7: 07:00
		8: 08:00
		9: 09:00
		10: 10:00
		11: 11:00
		12: 12:00
		13: 13:00
		14: 14:00
		15: 15:00
		16: 16:00
		17: 17:00
		18: 18:00
		19: 19:00
		20: 20:00
		21: 21:00
		22: 22:00
		23: 23:00"
	::= { dayLightSavingStartTime 4 }

	
	dayLightSavingEndTime	OBJECT IDENTIFIER ::= { dayLightSaving 3 }
	
	dayLightSavingEndMonth OBJECT-TYPE
	SYNTAX INTEGER {
        		Jan(1),
        		Feb(2),
        		Mar(3), 
				Apr(4),
				May(5), 
				Jun(6), 
				Jul(7), 
				Aug(8), 
				Sep(9), 
				Oct(10), 
				Nov(11), 
				Dec(12)
		}
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		""
	::= { dayLightSavingEndTime 1 } 
	
	dayLightSavingEndWeek OBJECT-TYPE
	SYNTAX INTEGER {
        		First(1), 
				Second(2), 
				Third(3), 
				Fourth(4), 
				Last(5)
		}
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		""
	::= { dayLightSavingEndTime 2 } 
	
	dayLightSavingEndWday OBJECT-TYPE
	SYNTAX INTEGER {
        		Sun(1), 
				Mon(2), 
				Tus(3), 
				Wed(4), 
				Thu(5), 
				Fri(6), 
				Sat(7)
		}
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		""
	::= { dayLightSavingEndTime 3 } 
	
	dayLightSavingEndHour OBJECT-TYPE
		SYNTAX INTEGER { 
		        "0:00"(0), 
        		"1:00"(1), 
				"2:00"(2), 
				"3:00"(3), 
				"4:00"(4), 
				"5:00"(5), 
				"6:00"(6), 
				"7:00"(7),  
        		"8:00"(8), 
				"9:00"(9), 
				"10:00"(10), 
				"11:00"(11), 
				"12:00"(12), 
				"13:00"(13), 
				"14:00"(14), 
		        "15:00"(15), 
        		"16:00"(16), 
				"17:00"(17), 
				"18:00"(18), 
				"19:00"(19), 
				"20:00"(20), 
				"21:00"(21), 
				"22:00"(22),  
        		"23:00"(23), 
    }
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		"1: 01:00,
		2: 02:00
		3: 03:00
		4: 04:00
		5: 05:00
		6: 06:00
		7: 07:00
		8: 08:00
		9: 09:00
		10: 10:00
		11: 11:00
		12: 12:00
		13: 13:00
		14: 14:00
		15: 15:00
		16: 16:00
		17: 17:00
		18: 18:00
		19: 19:00
		20: 20:00
		21: 21:00
		22: 22:00
		23: 23:00"
	::= { dayLightSavingEndTime 4 }

--------------------
-- Access Control
--------------------
-- Secured Client Table

        securedClientTable OBJECT-TYPE
        SYNTAX SEQUENCE OF SecuredClientEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"A table that contains information about secured clients."
        ::= { accessCtrl 2 }

        securedClientEntry OBJECT-TYPE
        SYNTAX SecuredClientEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"A list of secured client entry."
        INDEX { securedClientIndex }
        ::= { securedClientTable 1 }

        SecuredClientEntry ::=
        	SEQUENCE {
        		securedClientIndex	INTEGER,
        		securedClientStartIp	IpAddress,
			securedClientEndIp	IpAddress,
			securedClientService	INTEGER,
			securedClientEnable	INTEGER
           	}

        securedClientIndex OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
		"The index of the entry."
        ::= { securedClientEntry 1 }

        securedClientStartIp OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"The starting IP address of the secured client set."
        ::= { securedClientEntry 2 }

        securedClientEndIp OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"The ending IP address of the secured client set."
        ::= { securedClientEntry 3 }

        securedClientService OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"Each bit corresponds to a service. The bit is set to 1 if the
		service is enabled, and set to 0 if the service is disabled.
		The various bit positions are:
		BIT 1: telnet
		BIT 2: ftp
		BIT 3: web
		BIT 4: icmp
		BIT 5: not support
		BIT 6: snmp."
        ::= { securedClientEntry 4 }

        securedClientEnable OBJECT-TYPE
        SYNTAX INTEGER {
        	enable(1),
        	disable(2)
        }
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"Enable/disable the entry."
        ::= { securedClientEntry 5 }


--------------------
-- extAlarm
--------------------

	extAlarmTable OBJECT-TYPE
    	SYNTAX SEQUENCE OF ExtAlarmEntry
    	MAX-ACCESS not-accessible
    	STATUS current
    	DESCRIPTION
                "A table that contains external alarm information."
    	::= { extAlarm 1 }

    	extAlarmEntry OBJECT-TYPE
        SYNTAX ExtAlarmEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"The entry of external alarm table."
        INDEX { extAlarmIndex }
        ::= { extAlarmTable 1 }

   	ExtAlarmEntry ::=
        	SEQUENCE {
        		extAlarmIndex	INTEGER,
            		extAlarmName	OCTET STRING,
            		extAlarmStatus	OCTET STRING,
            		extAlarmTriggeredMode	INTEGER
    	   	}

	extAlarmIndex OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The index of the entry."
	::= { extAlarmEntry 1 }

	extAlarmName OBJECT-TYPE
	SYNTAX DisplayString (SIZE (1..31))
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		"The external alarm name."
	::= { extAlarmEntry 2 }

	extAlarmStatus OBJECT-TYPE
	SYNTAX DisplayString (SIZE (1..31))
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"Dispaly 'Normal' or 'Alarm' string"
	::= { extAlarmEntry 3 }

	extAlarmTriggeredMode OBJECT-TYPE
	SYNTAX INTEGER {
		closeAlarm(1),
		openAlarm(2)
	}
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		"The external alarm triggered mode."
	::= { extAlarmEntry 4 }

--------------------
-- User Management
--------------------

	userAuthMode OBJECT-TYPE
	SYNTAX 	INTEGER {
			local(1),
			radius(2),
			localThenRadius(3)
		}
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		"User authentication procsssing mode."
	::= { user 1 }

	userAuthServerIp OBJECT-TYPE
	SYNTAX IpAddress
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		"The IP address of the authentication server."
	::= { user 2 }

	userAuthServerPort OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		"The port of the authentication server."
	::= { user 3 }

	userAuthServerSecret OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		"The secret between the authentication server and the NE for authentication process."
	::= { user 4 }

-- userTable

	userTable OBJECT-TYPE
    	SYNTAX SEQUENCE OF UserEntry
    	MAX-ACCESS not-accessible
    	STATUS current
    	DESCRIPTION
                "A table that contains user information."
    	::= { user 5 }

    	userEntry OBJECT-TYPE
        SYNTAX UserEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry of userTable."
        INDEX { userName }
        ::= { userTable 1 }

   	UserEntry ::=
        	SEQUENCE {
            		userName		DisplayString,
            		userPassword		DisplayString,
            		userPriviledge		INTEGER,
            		userRowStatus		RowStatus
    	   	}

	userName OBJECT-TYPE
	SYNTAX DisplayString
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The user name."
	::= { userEntry 1 }

	userPassword OBJECT-TYPE
	SYNTAX DisplayString
	MAX-ACCESS read-create
	STATUS current
	DESCRIPTION
		"The user password."
	::= { userEntry 2 }

	userPriviledge OBJECT-TYPE
	SYNTAX  INTEGER {
			high(1),
			middle(2),
			low(3)
		}
	MAX-ACCESS read-create
	STATUS current
	DESCRIPTION
		"The user priviledge to decide what operation the user can and cannot do."
	::= { userEntry 3 }

	userRowStatus OBJECT-TYPE
	SYNTAX RowStatus
	MAX-ACCESS read-create
	STATUS current
	DESCRIPTION
		"The row status used to create or delete a user."
	::= { userEntry 4 }

	userAuthDefaultPriviledge OBJECT-TYPE
	SYNTAX	INTEGER {
			high(1),
			middle(2),
			low(3),
			deny(4)
		}
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		"The user default priviledge to be assigned when radius authentication succeds
		but no user priviledge information(radius service-type) is provided."
	::= { user 6 }

--------------------
-- Upstream Broadcast
--------------------

	usBcastCtrlEnable OBJECT-TYPE
        SYNTAX INTEGER {
        		enable(1),
        		disable(2)
        	}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"Enable/disable upstream broadcast control."
        ::= { usbCastCtrl 1 }

        usBcastCtrlRate OBJECT-TYPE
        SYNTAX INTEGER
        UNITS "Kbps"
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		""
        ::= { usbCastCtrl 2 }

--------------------
-- Downstream QoS
--------------------        
    dsQosEnableMode OBJECT-TYPE
    	SYNTAX INTEGER {
    			disable(1),
    			vlan(2),
    			dscp(3),
    			ippre(4)
    		}                
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"Enable internal overriding mode to VLAN, DSCP or IP Precedence, or disable the overriding mode."
        ::= { dsQos 1 }    
        
    dsQosDefaultPri OBJECT-TYPE
    	SYNTAX INTEGER (0..7)       
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"Set the internal default p.bit after overiding. All values not configured in the 
		overriding table are assigned to the default p.bit"
        ::= { dsQos 2 } 
        
    dsQoSOverridingTable OBJECT-TYPE
        SYNTAX SEQUENCE OF DsQoSOverridingEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"This table includes downstream QoS overriding information."
        ::= { dsQos 3 }

	dsQoSOverridingEntry OBJECT-TYPE
        SYNTAX DsQoSOverridingEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"An entry in dsQoSOverridingTable."
        INDEX { dsQosPriority }
        ::= { dsQoSOverridingTable 1 }

        DsQoSOverridingEntry ::=
        	SEQUENCE {
			dsQosPriority			INTEGER,
			dsQosValueList			DisplayString
			}

        dsQosPriority OBJECT-TYPE
        SYNTAX INTEGER (0..7)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "Internal P.bit after overriding."
        ::= { dsQoSOverridingEntry 1 }  
        
        dsQosValueList OBJECT-TYPE
        SYNTAX DisplayString
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
                "VLAN ID, DSCP, or IP Precedence based on the internal overriding mode configured. 
                VLAN ID 1 ~ 4094, DSCP 0 ~ 63, IP Precedence 0 ~ 7. value_list example: <1>, <1,3>, <1,5,6~10>."
         ::= { dsQoSOverridingEntry 2 }        
    	  		
--------------------
-- fwUpgrade
--------------------

	fwUpgradeVersion OBJECT-TYPE
		SYNTAX OCTET STRING
		MAX-ACCESS read-write
		STATUS current
        DESCRIPTION
		"Configure the target firmware version that will be upgraded."
        ::= { fwUpgrade 1 }

    fwUpgradeCheck OBJECT-TYPE
        SYNTAX INTEGER {
        		enable(1),
        		disable(2)
        	}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"Enable/disable firmware upgrade version checking feature."
        ::= { fwUpgrade 2 }   
        
    fwUpgradeStatus OBJECT-TYPE
		SYNTAX DisplayString
		MAX-ACCESS read-only
		STATUS current
		DESCRIPTION
			"Display current firmware upgrade status."
		::= { fwUpgrade 3 }

--------------------
-- delayedReboot
--------------------
  	delayedRebootTimer OBJECT-TYPE
        SYNTAX INTEGER
        UNITS "sec"
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"5~1800 secs, 0: reboot immediately."
        ::= { delayedReboot 1 }
          
  	delayedRebootRemainingTime OBJECT-TYPE
        SYNTAX INTEGER      
        UNITS "sec"
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
		"Display the remaining time of scheduled reboot."
        ::= { delayedReboot 2 }          
        
  	delayedRebootCancel OBJECT-TYPE
        SYNTAX INTEGER {
        		cancel(1)
        	}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"cancel the scheduled reboot."
        ::= { delayedReboot 3 }

----------------------------------------
-- statistics
----------------------------------------

	dhcpStats		OBJECT IDENTIFIER ::= { statistics 11 }
	paepvcStats		OBJECT IDENTIFIER ::= { statistics 12 }
	macStats		OBJECT IDENTIFIER ::= { statistics 13 }
--	ipbpvcStats		OBJECT IDENTIFIER ::= { statistics 14 }
	n1macStats		OBJECT IDENTIFIER ::= { statistics 15 }
	enetStats		OBJECT IDENTIFIER ::= { statistics 16 }
	vdslStats		OBJECT IDENTIFIER ::= { statistics 17 }
	voipStats		OBJECT IDENTIFIER ::= { statistics 18 }
macffStats		OBJECT IDENTIFIER ::= { statistics 19 }
	adslStats		OBJECT IDENTIFIER ::= { statistics 20 }

--------------------
--  IGMP
--------------------

	igmpQueryCntTotal OBJECT-TYPE
	SYNTAX Counter32
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The total number of IGMP query messages received."
	::= { statistics 1 }

	igmpReportCntTotal OBJECT-TYPE
	SYNTAX Counter32
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The total number of IGMP report messages received."
	::= { statistics 2 }

	igmpLeaveCntTotal OBJECT-TYPE
	SYNTAX Counter32
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The total number of IGMP leave messages received."
	::= { statistics 3 }

	igmpNumOfActiveGroups OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The total number of IGMP learned groups."
	::= { statistics 4 }

-- igmpGroupTable

        igmpGroupTable OBJECT-TYPE
        SYNTAX SEQUENCE OF IgmpGroupEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"This table includes igmp group information."
        ::= { statistics 5 }

	igmpGroupEntry OBJECT-TYPE
        SYNTAX IgmpGroupEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"An entry in igmpGroupTable."
        INDEX { igmpGroupIp }
        ::= { igmpGroupTable 1 }

        IgmpGroupEntry ::=
        	SEQUENCE {
			igmpGroupIp			IpAddress,
			igmpGroupvid			INTEGER,
			igmpGroupnumberOfMembers	INTEGER,
			igmpGroupMemberPorts		PortList

           	}

        igmpGroupIp OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "igmp group IP"
        ::= { igmpGroupEntry 1 }

        igmpGroupvid OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "vlan id"
        ::= { igmpGroupEntry 2 }

        igmpGroupnumberOfMembers OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "number Of Members"

        ::= { igmpGroupEntry 3 }

        igmpGroupMemberPorts OBJECT-TYPE
        SYNTAX PortList
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "Group Member Ports"

        ::= { igmpGroupEntry 4 }

-- igmpGroupPortTable

        igmpGroupPortTable OBJECT-TYPE
        SYNTAX SEQUENCE OF IgmpGroupPortEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"This table includes igmp Group port information."
        ::= { statistics 6 }

	igmpGroupPortEntry OBJECT-TYPE
        SYNTAX IgmpGroupPortEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"An entry in igmpGroupPortTable."
        INDEX { ifIndex , igmpGroupPortIp , igmpGroupPortvid}
        ::= { igmpGroupPortTable 1 }

        IgmpGroupPortEntry ::=
        	SEQUENCE {
			igmpGroupPortIp		IpAddress,
			igmpGroupPortvid	INTEGER
           	}

        igmpGroupPortIp OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "Igmp Group IP"
         ::= { igmpGroupPortEntry 1 }

        igmpGroupPortvid OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "Igmp Group vid"
         ::= { igmpGroupPortEntry 2 }

-- igmpGroupV2Table

	igmpGroupV2Table OBJECT-TYPE
        SYNTAX SEQUENCE OF IgmpGroupV2Entry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
                "A table that displays IGMP learned group member information."
        ::= { statistics 7 }

        igmpGroupV2Entry OBJECT-TYPE
        SYNTAX IgmpGroupV2Entry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry of igmpGroupV2Table."
        INDEX { igmpGroupV2Vid, igmpGroupV2Ip }
        ::= { igmpGroupV2Table 1 }

        IgmpGroupV2Entry ::=
        	SEQUENCE {
        		igmpGroupV2Vid			VlanIndex,
        		igmpGroupV2Ip			IpAddress,
        		igmpGroupV2NumOfMembers		INTEGER,
        		igmpGroupV2MemberPorts		PortList
           	}

	igmpGroupV2Vid OBJECT-TYPE
	SYNTAX VlanIndex
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The IGMP group VLAN ID."
	::= { igmpGroupV2Entry 1 }

	igmpGroupV2Ip OBJECT-TYPE
	SYNTAX IpAddress
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The multicast IP address."
	::= { igmpGroupV2Entry 2 }

	igmpGroupV2NumOfMembers OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The number of member ports in the group."
	::= { igmpGroupV2Entry 3 }

	igmpGroupV2MemberPorts OBJECT-TYPE
	SYNTAX PortList
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The member port list of the group."
	::= { igmpGroupV2Entry 4 }

-- igmpGroupPortV2Table

	igmpGroupPortV2Table OBJECT-TYPE
        SYNTAX SEQUENCE OF IgmpGroupPortV2Entry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
                "A table that displays IGMP joined groups in this port."
        ::= { statistics 8 }

        igmpGroupPortV2Entry OBJECT-TYPE
        SYNTAX IgmpGroupPortV2Entry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry of igmpGroupPortV2Table."
        INDEX { ifIndex, igmpGroupPortV2Vid, igmpGroupPortV2Ip, igmpGroupPortV2SourceIp }
        ::= { igmpGroupPortV2Table 1 }

        IgmpGroupPortV2Entry ::=
        	SEQUENCE {
        		igmpGroupPortV2Vid		VlanIndex,
        		igmpGroupPortV2Ip		IpAddress,
        		igmpGroupPortV2SourceIp		IpAddress
           	}

	igmpGroupPortV2Vid OBJECT-TYPE
	SYNTAX VlanIndex
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The IGMP group VLAN ID."
	::= { igmpGroupPortV2Entry 1 }

	igmpGroupPortV2Ip OBJECT-TYPE
	SYNTAX IpAddress
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The multicast IP address."
	::= { igmpGroupPortV2Entry 2 }

	igmpGroupPortV2SourceIp OBJECT-TYPE
	SYNTAX IpAddress
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The source IP address that joins the IGMP group."
	::= { igmpGroupPortV2Entry 3 }

-- igmpPortCtrlPduTable

	igmpPortCtrlPduTable OBJECT-TYPE
        SYNTAX SEQUENCE OF IgmpPortCtrlPduEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
                "A table that displays IGMP related counter values in this port."
        ::= { statistics 9 }

        igmpPortCtrlPduEntry OBJECT-TYPE
        SYNTAX IgmpPortCtrlPduEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry of igmpPortCtrlPduTable."
        INDEX { ifIndex }
        ::= { igmpPortCtrlPduTable 1 }

        IgmpPortCtrlPduEntry ::=
        	SEQUENCE {
        		igmpPortCtrlPduQueryCnt		Counter32,
        		igmpPortCtrlPduReportCnt	Counter32,
        		igmpPortCtrlPduLeaveCnt		Counter32,
        		igmpPortNumOfActiveGroups	INTEGER,
        		igmpPortCtrlAuditLeaveCnt	Counter32
           	}

	igmpPortCtrlPduQueryCnt OBJECT-TYPE
	SYNTAX Counter32
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The total number of IGMP query messages received in this port."
	::= { igmpPortCtrlPduEntry 1 }

	igmpPortCtrlPduReportCnt OBJECT-TYPE
	SYNTAX Counter32
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The total number of IGMP report messages received in this port."
	::= { igmpPortCtrlPduEntry 2 }

	igmpPortCtrlPduLeaveCnt OBJECT-TYPE
	SYNTAX Counter32
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The total number of IGMP leave messages received in this port."
	::= { igmpPortCtrlPduEntry 3 }

	igmpPortNumOfActiveGroups OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The total number of active IGMP groups in this port."
	::= { igmpPortCtrlPduEntry 4 }

	igmpPortCtrlAuditLeaveCnt OBJECT-TYPE
	SYNTAX Counter32
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The total number of groups left by audit query."
	::= { igmpPortCtrlPduEntry 5 }
	
--------------------
-- vdslStats
--------------------
-- vdslLineStatsTable

        vdslLineStatsTable OBJECT-TYPE
        SYNTAX SEQUENCE OF VdslLineStatsEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"The table displays VDSL line statistics."
        ::= { vdslStats 2 }

        vdslLineStatsEntry OBJECT-TYPE
        SYNTAX VdslLineStatsEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry of vdslLineStatsTable."
        INDEX { ifIndex }
        ::= { vdslLineStatsTable 1 }

        VdslLineStatsEntry ::=
        	SEQUENCE {
                  	vdslLineStatsVtucBits1		OCTET STRING,
			vdslLineStatsVtucBits2		OCTET STRING,
			vdslLineStatsVtucBits3		OCTET STRING,
			vdslLineStatsVtucBits4		OCTET STRING,
			vdslLineStatsVturBits1		OCTET STRING,
			vdslLineStatsVturBits2		OCTET STRING,
			vdslLineStatsVturBits3		OCTET STRING,
			vdslLineStatsVturBits4		OCTET STRING,
			vdslLineStatsVtucGain1		OCTET STRING,
			vdslLineStatsVtucGain2		OCTET STRING,
			vdslLineStatsVtucGain3		OCTET STRING,
			vdslLineStatsVtucGain4		OCTET STRING,
			vdslLineStatsVtucGain5		OCTET STRING,
			vdslLineStatsVtucGain6		OCTET STRING,
			vdslLineStatsVtucGain7		OCTET STRING,
			vdslLineStatsVtucGain8		OCTET STRING,
			vdslLineStatsVturGain1		OCTET STRING,
			vdslLineStatsVturGain2		OCTET STRING,
			vdslLineStatsVturGain3		OCTET STRING,
			vdslLineStatsVturGain4		OCTET STRING,
			vdslLineStatsVturGain5		OCTET STRING,
			vdslLineStatsVturGain6		OCTET STRING,
			vdslLineStatsVturGain7		OCTET STRING,
			vdslLineStatsVturGain8		OCTET STRING,
			vdslLineStatsVtucHlog		OCTET STRING,
			vdslLineStatsVturHlog		OCTET STRING,
			vdslLineStatsVtucQln		OCTET STRING,
			vdslLineStatsVturQln		OCTET STRING,
			vdslLineStatsVtucSnr		OCTET STRING,
			vdslLineStatsVturSnr		OCTET STRING,
			vdslLineStatsVtucTssi		OCTET STRING,
			vdslLineStatsVturTssi		OCTET STRING,
			vdslLineStatsProtocol		INTEGER
              	}
              	
	vdslLineStatsVtucBits1 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides Bits for the VTU-C 1024 subcarriers.
		Each subcarrier takes two octets to store the value.
		The value is in the range 0 to 15."
	::= { vdslLineStatsEntry 1 }
	
	vdslLineStatsVtucBits2 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides Bits for the VTU-C 1024 subcarriers.
		Each subcarrier takes two octets to store the value.
		The value is in the range 0 to 15."
	::= { vdslLineStatsEntry 2 }
	
	vdslLineStatsVtucBits3 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides Bits for the VTU-C 1024 subcarriers.
		Each subcarrier takes two octets to store the value.
		The value is in the range 0 to 15."
	::= { vdslLineStatsEntry 3 }
	
	vdslLineStatsVtucBits4 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides Bits for the VTU-C 1024 subcarriers.
		Each subcarrier takes two octets to store the value.
		The value is in the range 0 to 15."
	::= { vdslLineStatsEntry 4 }
	
	vdslLineStatsVturBits1 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides Bits for the VTU-R 1024 subcarriers.
		Each subcarrier takes two octets to store the value.
		The value is in the range 0 to 15."
	::= { vdslLineStatsEntry 5 }
	
	vdslLineStatsVturBits2 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides Bits for the VTU-R 1024 subcarriers.
		Each subcarrier takes two octets to store the value.
		The value is in the range 0 to 15."
	::= { vdslLineStatsEntry 6 }
	
	vdslLineStatsVturBits3 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides Bits for the VTU-R 1024 subcarriers.
		Each subcarrier takes two octets to store the value.
		The value is in the range 0 to 15."
	::= { vdslLineStatsEntry 7 }
	
	vdslLineStatsVturBits4 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides Bits for the VTU-R 1024 subcarriers.
		Each subcarrier takes two octets to store the value.
		The value is in the range 0 to 15."
	::= { vdslLineStatsEntry 8 }
	
	vdslLineStatsVtucGain1 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides Gain for the VTU-C 512 subcarriers.
		Each subcarrier takes two octets to store the value.
		The value is in the range 0 to 4093. Each value in this array is 16 bits wide.
		The gain value is represented as a multiple of 1/512 on linear scale."
	::= { vdslLineStatsEntry 9 }
	
	vdslLineStatsVtucGain2 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides Gain for the VTU-C 512 subcarriers.
		Each subcarrier takes two octets to store the value.
		The value is in the range 0 to 4093. Each value in this array is 16 bits wide.
		The gain value is represented as a multiple of 1/512 on linear scale."
	::= { vdslLineStatsEntry 10 }
	
	vdslLineStatsVtucGain3 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides Gain for the VTU-C 512 subcarriers.
		Each subcarrier takes two octets to store the value.
		The value is in the range 0 to 4093. Each value in this array is 16 bits wide.
		The gain value is represented as a multiple of 1/512 on linear scale."
	::= { vdslLineStatsEntry 11 }
	
	vdslLineStatsVtucGain4 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides Gain for the VTU-C 512 subcarriers.
		Each subcarrier takes two octets to store the value.
		The value is in the range 0 to 4093. Each value in this array is 16 bits wide.
		The gain value is represented as a multiple of 1/512 on linear scale."
	::= { vdslLineStatsEntry 12 }
	
	vdslLineStatsVtucGain5 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides Gain for the VTU-C 512 subcarriers.
		Each subcarrier takes two octets to store the value.
		The value is in the range 0 to 4093. Each value in this array is 16 bits wide.
		The gain value is represented as a multiple of 1/512 on linear scale."
	::= { vdslLineStatsEntry 13 }
	
	vdslLineStatsVtucGain6 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides Gain for the VTU-C 512 subcarriers.
		Each subcarrier takes two octets to store the value.
		The value is in the range 0 to 4093. Each value in this array is 16 bits wide.
		The gain value is represented as a multiple of 1/512 on linear scale."
	::= { vdslLineStatsEntry 14 }
	
	vdslLineStatsVtucGain7 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides Gain for the VTU-C 512 subcarriers.
		Each subcarrier takes two octets to store the value.
		The value is in the range 0 to 4093. Each value in this array is 16 bits wide.
		The gain value is represented as a multiple of 1/512 on linear scale."
	::= { vdslLineStatsEntry 15 }
	
	vdslLineStatsVtucGain8 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides Gain for the VTU-C 512 subcarriers.
		Each subcarrier takes two octets to store the value.
		The value is in the range 0 to 4093. Each value in this array is 16 bits wide.
		The gain value is represented as a multiple of 1/512 on linear scale."
	::= { vdslLineStatsEntry 16 }
	
	vdslLineStatsVturGain1 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides Gain for the VTU-R 512 subcarriers.
		Each subcarrier takes two octets to store the value.
		The value is in the range 0 to 4093. Each value in this array is 16 bits wide.
		The gain value is represented as a multiple of 1/512 on linear scale."
	::= { vdslLineStatsEntry 17 }
	
	vdslLineStatsVturGain2 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides Gain for the VTU-R 512 subcarriers.
		Each subcarrier takes two octets to store the value.
		The value is in the range 0 to 4093. Each value in this array is 16 bits wide.
		The gain value is represented as a multiple of 1/512 on linear scale."
	::= { vdslLineStatsEntry 18 }
	
	vdslLineStatsVturGain3 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides Gain for the VTU-R 512 subcarriers.
		Each subcarrier takes two octets to store the value.
		The value is in the range 0 to 4093. Each value in this array is 16 bits wide.
		The gain value is represented as a multiple of 1/512 on linear scale."
	::= { vdslLineStatsEntry 19 }
	
	vdslLineStatsVturGain4 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides Gain for the VTU-R 512 subcarriers.
		Each subcarrier takes two octets to store the value.
		The value is in the range 0 to 4093. Each value in this array is 16 bits wide.
		The gain value is represented as a multiple of 1/512 on linear scale."
	::= { vdslLineStatsEntry 20 }
	
	vdslLineStatsVturGain5 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides Gain for the VTU-R 512 subcarriers.
		Each subcarrier takes two octets to store the value.
		The value is in the range 0 to 4093. Each value in this array is 16 bits wide.
		The gain value is represented as a multiple of 1/512 on linear scale."
	::= { vdslLineStatsEntry 21 }
	
	vdslLineStatsVturGain6 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides Gain for the VTU-R 512 subcarriers.
		Each subcarrier takes two octets to store the value.
		The value is in the range 0 to 4093. Each value in this array is 16 bits wide.
		The gain value is represented as a multiple of 1/512 on linear scale."
	::= { vdslLineStatsEntry 22 }
	
	vdslLineStatsVturGain7 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides Gain for the VTU-R 512 subcarriers.
		Each subcarrier takes two octets to store the value.
		The value is in the range 0 to 4093. Each value in this array is 16 bits wide.
		The gain value is represented as a multiple of 1/512 on linear scale."
	::= { vdslLineStatsEntry 23 }
	
	vdslLineStatsVturGain8 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides Gain for the VTU-R 512 subcarriers.
		Each subcarrier takes two octets to store the value.
		The value is in the range 0 to 4093. Each value in this array is 16 bits wide.
		The gain value is represented as a multiple of 1/512 on linear scale."
	::= { vdslLineStatsEntry 24 }
	
	vdslLineStatsVtucHlog OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides Hlog for the VTU-C 512 subcarriers.
		Each subcarrier takes two octets to store the value.
		The real Hlog(f) value is represented as (6-m(i)/10), with m(i) in the range 0 to 1022.
		A special value m=1023 indicates that no measurement could be done for the 
		sub-carrier group becauseit is out of the passband or that the attenuation 
		is out of range to be represented. Each value in this array is 16 bits wide."
	::= { vdslLineStatsEntry 25 }
	
	vdslLineStatsVturHlog OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides Hlog for the VTU-R 512 subcarriers.
		Each subcarrier takes two octets to store the value.
		The real Hlog(f) value is represented as (6-m(i)/10), with m(i) in the range 0 to 1022.
		A special value m=1023 indicates that no measurement could be done for the
		sub-carrier group because it is out of the passband or that the attenuation
		is out ofrange to be represented. Each value in this array is 16 bits wide."
	::= { vdslLineStatsEntry 26 }
	
	vdslLineStatsVtucQln OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides Qln for the VTU-C 512 subcarriers.
		Each subcarrier takes two octets to store the value.
		The QLN(f) is represented as ( -23-n(i)/2), with n(i) in the range 0 to 254.
		A special value n(i)=255 indicates that no measurement could be done for the
		sub-carrier group. Each value in this array is 8 bits wide."
	::= { vdslLineStatsEntry 27 }
	
	vdslLineStatsVturQln OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides Qln for the VTU-R 512 subcarriers.
		Each subcarrier takes two octets to store the value.
		The QLN(f) is represented as ( -23-n(i)/2), with n(i) in the range 0 to 254.
		A special value n(i)=255 indicates that no measurement could be done for the
		sub-carrier group. Each value in this array is 8 bits wide."
	::= { vdslLineStatsEntry 28 }
	
	vdslLineStatsVtucSnr OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides Snr for the VTU-C 512 subcarriers.
		Each subcarrier takes two octets to store the value.
		Octet i is set to a value in the range 0 to 254 (-32 + vdslLineStatsVtucSnr (i)/2) in dB
		(i.e., -32 to 95dB). Each value in this array is 8 bits wide."
	::= { vdslLineStatsEntry 29 }
	
	vdslLineStatsVturSnr OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides Snr for the VTU-R 512 subcarriers.
		Each subcarrier takes two octets to store the value.
		Octet i is set to a value in the range 0 to 254 (-32 + vdslLineStatsVturSnr (i)/2) in dB
		(i.e., -32 to 95dB). Each value in this array is 8 bits wide."
	::= { vdslLineStatsEntry 30 }
	
	vdslLineStatsVtucTssi OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides Tssi for the VTU-C 512 subcarriers.
		Each subcarrier takes two octets to store the value.
		Each value in this array is 16 bits wide.
		The tssi value is represented as a multiple of 1/32768 on linear scale."
	::= { vdslLineStatsEntry 31 }
	
	vdslLineStatsVturTssi OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The object provides Tssi for the VTU-R 512 subcarriers.
		Each subcarrier takes two octets to store the value.
		Each value in this array is 16 bits wide.
		The tssi value is represented as a multiple of 1/32768 on linear scale."
	::= { vdslLineStatsEntry 32 }
	
	vdslLineStatsProtocol OBJECT-TYPE
	SYNTAX INTEGER {
        	        none(1), 
			vdsl8a(2),
			vdsl8b(3),
			vdsl8c(4),
			vdsl8d(5),
			vdsl12a(6),
			vdsl12b(7),
			vdsl17a(8), 
			gdmt(9),
			glite(10),
			adsl2(11),
			adsl2plus(12),
			t1413(13)
		}
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"The actual line protocol."
	::= { vdslLineStatsEntry 33 }

--------------------
-- DHCP
--------------------

-- dhcpSnoopIpTable

        dhcpSnoopIpTable OBJECT-TYPE
        SYNTAX SEQUENCE OF DhcpSnoopIpEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"This table shows the IP addresses and netmasks offered by the DHCP server."
        ::= { dhcpStats 1 }

	dhcpSnoopIpEntry OBJECT-TYPE
        SYNTAX DhcpSnoopIpEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"An entry of dhcpSnoopIpTable."
        INDEX { ifIndex, dhcpSnoopIp }
        ::= { dhcpSnoopIpTable 1 }

        DhcpSnoopIpEntry ::=
        	SEQUENCE {
			dhcpSnoopIp		IpAddress,
			dhcpSnoopMac		PhysAddress,
			dhcpSnoopVid		VlanIndex,
			dhcpSnoopMask		INTEGER,
			dhcpSnoopGateway	IpAddress,
			dhcpSnoopRouteMap	OCTET STRING
           	}

        dhcpSnoopIp OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The snooped IP address."
        ::= { dhcpSnoopIpEntry 1 }

        dhcpSnoopMac OBJECT-TYPE
        SYNTAX PhysAddress
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The snooped MAC address."
        ::= { dhcpSnoopIpEntry 2 }

        dhcpSnoopVid OBJECT-TYPE
        SYNTAX VlanIndex
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The snooped VLAN ID."
        ::= { dhcpSnoopIpEntry 3 }

				dhcpSnoopMask OBJECT-TYPE
				SYNTAX INTEGER
				MAX-ACCESS read-only
				STATUS current
				DESCRIPTION
					"The snooped IP mask"
				::= { dhcpSnoopIpEntry 4 }
				
        dhcpSnoopGateway OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          "The snooped Gateway."
        ::= { dhcpSnoopIpEntry 5 }

        dhcpSnoopRouteMap OBJECT-TYPE
        SYNTAX OCTET STRING
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          "The refrence bit map of the dhcp route"
        ::= { dhcpSnoopIpEntry 6 }
        
-- dhcpSnoopCounterTable

        dhcpSnoopCounterTable OBJECT-TYPE
        SYNTAX SEQUENCE OF DhcpSnoopCounterEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"This table shows the DHCP statistics."
        ::= { dhcpStats 2 }

	dhcpSnoopCounterEntry OBJECT-TYPE
        SYNTAX DhcpSnoopCounterEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"An entry of dhcpSnoopCounterTable."
        INDEX { ifIndex }
        ::= { dhcpSnoopCounterTable 1 }

        DhcpSnoopCounterEntry ::=
        	SEQUENCE {
			dhcpDiscovery		Counter64,
			dhcpOffer		Counter64,
			dhcpRequest		Counter64,
			dhcpAck			Counter64,
			dhcpAckBySnoopFull	Counter64
           	}

        dhcpDiscovery OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The total number of received DHCP server discovery packets."
        ::= { dhcpSnoopCounterEntry 1 }

        dhcpOffer OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The total number of received DHCP server offer packets."
        ::= { dhcpSnoopCounterEntry 2 }

        dhcpRequest OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The total number of received DHCP IP request packets."
        ::= { dhcpSnoopCounterEntry 3 }

        dhcpAck OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The total number of received DHCP IP acknowledge packets."
        ::= { dhcpSnoopCounterEntry 4 }

        dhcpAckBySnoopFull OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The total number of received DHCP IP acknowledge packets that replace the oldest snooping
                entry in snooping table due to table full."
        ::= { dhcpSnoopCounterEntry 5 }

    dhcpRouteTable OBJECT-TYPE
    SYNTAX SEQUENCE OF DhcpRouteEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
    	"A table that contains dhcp route information."
    ::= { dhcpStats 3 }
    
    dhcpRouteEntry OBJECT-TYPE
    SYNTAX DhcpRouteEntry
    MAX-ACCESS not-accessible                                                        
    STATUS current
    DESCRIPTION
    	"An entry of dhcpRouteTable."
    INDEX	{ dhcpRouteIndex }
    ::= { dhcpRouteTable 1 }
    
    DhcpRouteEntry ::=
    	SEQUENCE {
      dhcpRouteIndex		INTEGER,
			dhcpRouteVid			VlanIndex,
			dhcpRouteIP				IpAddress,
			dhcpRouteMask			INTEGER,
			dhcpRouteGwIP			IpAddress
		}

      dhcpRouteIndex OBJECT-TYPE
      SYNTAX INTEGER (1..24)
      MAX-ACCESS read-only
      STATUS current
      DESCRIPTION
      	""
      ::= { dhcpRouteEntry 1 }
					
			dhcpRouteVid OBJECT-TYPE		
			SYNTAX VlanIndex
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
        		"The VLAN-ID refering to this dhcp route."
			::= { dhcpRouteEntry 2 }
			
			
			dhcpRouteIP	OBJECT-TYPE		
			SYNTAX IpAddress
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
        		"IP of this dhcp route"
      		::= { dhcpRouteEntry 3 }

			dhcpRouteMask OBJECT-TYPE	
			SYNTAX INTEGER
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
        		"The subnet mask of source IP mask."
     		::= { dhcpRouteEntry 4 }
     		
			dhcpRouteGwIP OBJECT-TYPE		
			SYNTAX IpAddress
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
        		"The gateway IP address."
      		::= { dhcpRouteEntry 5 }

--------------------
-- PAE PVC
--------------------

-- paepvcSessionTable

        paepvcSessionTable OBJECT-TYPE
        SYNTAX SEQUENCE OF PaepvcSessionEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"This table shows the paepvc session statistics."
        ::= { paepvcStats 1 }

	paepvcSessionEntry OBJECT-TYPE
        SYNTAX PaepvcSessionEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"An entry of paepvcSessionTable."
        INDEX { ifIndex , paepvcSessionVpi, paepvcSessionVci }
        ::= { paepvcSessionTable 1 }

        PaepvcSessionEntry ::=
        	SEQUENCE {
			paepvcSessionVpi		INTEGER,
			paepvcSessionVci		INTEGER,
			paepvcSessionState		INTEGER,
			paepvcSessionId			INTEGER,
			paepvcSessionUptime		Unsigned32,
			paepvcSessionacname		DisplayString,
			paepvcSessionsrvcname		DisplayString
           	}

        paepvcSessionVpi OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The PAEPVC VPI."
         ::= { paepvcSessionEntry 1 }

        paepvcSessionVci OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The PAEPVC VCI."
         ::= { paepvcSessionEntry 2 }

        paepvcSessionState OBJECT-TYPE
        SYNTAX INTEGER {
        			down(1),
        			pppoe(2),
				ppp(3),
				up(4)
        		}
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The PAEPVC status."
        ::= { paepvcSessionEntry 3 }

        paepvcSessionId OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The PAEPVC session ID."
        ::= { paepvcSessionEntry 4 }

        paepvcSessionUptime OBJECT-TYPE
        SYNTAX Unsigned32
        UNITS "second"
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The PAEPVC session uptime."
        ::= { paepvcSessionEntry 5 }

        paepvcSessionacname OBJECT-TYPE
        SYNTAX DisplayString
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "Access concentrator name."
        ::= { paepvcSessionEntry 6 }

        paepvcSessionsrvcname OBJECT-TYPE
        SYNTAX DisplayString
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "Service name."
        ::= { paepvcSessionEntry 7 }

-- paepvcCountTable

        paepvcCountTable OBJECT-TYPE
        SYNTAX SEQUENCE OF PaepvcCountEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"This table shows the paepvc counters."
        ::= { paepvcStats 2 }

	paepvcCountEntry OBJECT-TYPE
        SYNTAX PaepvcCountEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
	"An entry of paepvcCountTable."
        INDEX { ifIndex , paepvcCountVpi, paepvcCountVci }
        ::= { paepvcCountTable 1 }

        PaepvcCountEntry ::=
        	SEQUENCE {
			paepvcCountVpi				INTEGER,
			paepvcCountVci				INTEGER,
			paepvcCountPppLcpCfgReqRx		Unsigned32,
			paepvcCountPppLcpEchoReqRx		Unsigned32,
			paepvcCountPppLcpEchoReplyRx		Unsigned32,
			paepvcCountPadiTx			Unsigned32,
			paepvcCountPadoRx			Unsigned32,
			paepvcCountPadrTx			Unsigned32,
			paepvcCountPadsRx			Unsigned32,
			paepvcCountPadtTx			Unsigned32,
			paepvcCountPadtRx			Unsigned32,
			paepvcCountSrvcnameErrRx		Unsigned32,
			paepvcCountAcSystemErrRx		Unsigned32,
			paepvcCountGenericErrTx			Unsigned32,
			paepvcCountGenericErrRx			Unsigned32
           	}


        paepvcCountVpi OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The PAEPVC VPI."
        ::= { paepvcCountEntry 1 }

        paepvcCountVci OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The PAEPVC VCI."
        ::= { paepvcCountEntry 2 }

        paepvcCountPppLcpCfgReqRx OBJECT-TYPE
        SYNTAX Unsigned32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The number of ppp lcp config-request received."
        ::= { paepvcCountEntry 3 }

        paepvcCountPppLcpEchoReqRx OBJECT-TYPE
        SYNTAX Unsigned32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The number of ppp lcp echo-request received."
        ::= { paepvcCountEntry 4 }

        paepvcCountPppLcpEchoReplyRx OBJECT-TYPE
        SYNTAX Unsigned32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The number of ppp lcp echo-reply received."
        ::= { paepvcCountEntry 5 }

        paepvcCountPadiTx OBJECT-TYPE
        SYNTAX Unsigned32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The number of pppoe padi transfered"
        ::= { paepvcCountEntry 6 }

        paepvcCountPadoRx OBJECT-TYPE
        SYNTAX Unsigned32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The number of pppoe pado received"
        ::= { paepvcCountEntry 7 }

        paepvcCountPadrTx OBJECT-TYPE
        SYNTAX Unsigned32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The number of pppoe padr transfered"
        ::= { paepvcCountEntry 8 }

        paepvcCountPadsRx OBJECT-TYPE
        SYNTAX Unsigned32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The number of pppoe pads received"
        ::= { paepvcCountEntry 9 }

        paepvcCountPadtTx OBJECT-TYPE
        SYNTAX Unsigned32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The number of pppoe padt transfered"
        ::= { paepvcCountEntry 10 }

        paepvcCountPadtRx OBJECT-TYPE
        SYNTAX Unsigned32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The number of pppoe padt received"
        ::= { paepvcCountEntry 11 }

        paepvcCountSrvcnameErrRx OBJECT-TYPE
        SYNTAX Unsigned32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The number of pppoe service name error received"
        ::= { paepvcCountEntry 12 }

        paepvcCountAcSystemErrRx OBJECT-TYPE
        SYNTAX Unsigned32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The number of pppoe access concentrator name error received"
        ::= { paepvcCountEntry 13 }

        paepvcCountGenericErrTx OBJECT-TYPE
        SYNTAX Unsigned32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The number of pppoe generic error transfered"
        ::= { paepvcCountEntry 14 }

        paepvcCountGenericErrRx OBJECT-TYPE
        SYNTAX Unsigned32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The number of pppoe generic error received"
        ::= { paepvcCountEntry 15 }

--------------------
--  MAC
--------------------

	macDisplayTarget OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		"This managed object is a filter used for identify the target from which
  		 the MAC addresses are learned in macTable. The target could be:
  		 99: all ports in the system
  		 98: all subscriber ports
  		 97: all Ethernet ports

  		 IfIndex is used for identifying subscriber ports and Ethernet Ports(e.g. 1 ~ 50)."
	::= { macStats 1 }

-- macTable

        macTable OBJECT-TYPE
        SYNTAX SEQUENCE OF MacEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"A table that contains information about unicast
                entries for which the bridge has forwarding and/or
                filtering information. This information is used
                by the transparent bridging function in
                determining how to propagate a received frame."
        ::= { macStats 2 }

        macEntry OBJECT-TYPE
        SYNTAX MacEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry of macTable."
        INDEX { dot1qVlanIndex, macAddress }
        ::= { macTable 1 }

        MacEntry ::=
        	SEQUENCE {
                  	macAddress	MacAddress,
                  	macPort		INTEGER,
                  	macStatus	INTEGER,
					macVid  VlanIndex
              	}

        macAddress OBJECT-TYPE
        SYNTAX MacAddress
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        	"A unicast MAC address for which the bridge has
                forwarding and/or filtering information."
        ::= { macEntry 1 }

        macPort OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        	"The port from which the mac address has been learned."
        ::= { macEntry 2 }

        macStatus OBJECT-TYPE
        SYNTAX  INTEGER {
                          other(1),
                          invalid(2),
                          learned(3),
                          self(4),
                          mgmt(5)
        	}
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        	"The status of this entry."
	::= { macEntry 3 }

	macVid OBJECT-TYPE
        SYNTAX  VlanIndex
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        	"The vlan id of this entry."
	::= { macEntry 4 }

------------------------------
-- n1macStats
------------------------------

        n1macTable OBJECT-TYPE
        SYNTAX SEQUENCE OF N1macEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"A table that contains information about N to 1
        	 MAC translation, including connection type,
        	 session id/IP and MAC address."
        ::= { n1macStats 1 }

        n1macEntry OBJECT-TYPE
        SYNTAX N1macEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry of n1macTable."
        INDEX { ifIndex, n1macProtoVal}
        ::= { n1macTable 1 }

        N1macEntry ::=
        	SEQUENCE {
                  	n1macProtoVal	Unsigned32,
                  	n1macProtoType	INTEGER,
                  	n1macMacAddr	MacAddress
              	}

        n1macProtoVal OBJECT-TYPE
        SYNTAX Unsigned32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        	"The protocol value of specified connection. If the connection
        	 is pppoe/pppoaoe, the value stands for session id; if the
        	 connection is ipoe/ipoaoe, the value means IP address."
        ::= { n1macEntry 1 }

        n1macProtoType OBJECT-TYPE
        SYNTAX INTEGER {
                          unknown(1),
                          ipoe(2),
                          ipoaoe(3),
                          pppoe(4),
                          pppoaoe(5)
			}
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        	"Protocol type of the connection which the MAC is translated."
        ::= { n1macEntry 2 }

        n1macMacAddr OBJECT-TYPE
        SYNTAX  MacAddress
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        	"The translated MAC address."
		::= { n1macEntry 3 }

------------------------------
-- enetStats
------------------------------
	enetPrimaryPort OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		" IfIndex is used for identifying the Primary Ethernet Port when dot3ad is disabled."
	::= { enetStats 1 }

	     enetSfpInfoTable OBJECT-TYPE
    SYNTAX SEQUENCE OF EnetSfpInfoEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"This table includes sfp info of enet port."
        ::= { enetStats 2 }

		enetSfpInfoEntry OBJECT-TYPE
    SYNTAX EnetSfpInfoEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry in enetSfpInfoTable."
        INDEX {ifIndex}
        ::= { enetSfpInfoTable 1 }

    EnetSfpInfoEntry ::=
        	SEQUENCE {
			enetSfpInfoTxpower	INTEGER,
			enetSfpInfoRxpower	INTEGER,
			enetSfpInfoTemperature	INTEGER,
			enetSfpInfoTxBias	INTEGER,
			enetSfpInfoVoltage	INTEGER			
		}

        enetSfpInfoTxpower OBJECT-TYPE
        SYNTAX INTEGER (1..65535)
        UNITS "10^-4 mW"
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
		"Measured Tx Output Power."
        ::= { enetSfpInfoEntry 1 }

        enetSfpInfoRxpower OBJECT-TYPE
        SYNTAX INTEGER (1..65535)
        UNITS "10^-4 C"
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
		"Measured Rx Output Power."
        ::= { enetSfpInfoEntry 2 }

        enetSfpInfoTemperature OBJECT-TYPE
        SYNTAX INTEGER (-1280000..1280000)
        UNITS "10^-4 C"
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
		"Measured temperature."
        ::= { enetSfpInfoEntry 3 }
        
        enetSfpInfoTxBias OBJECT-TYPE
        SYNTAX INTEGER (0..131000)
        UNITS "10^-3 mA"
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
		"Measured tx bias."
        ::= { enetSfpInfoEntry 4 }        
        
        enetSfpInfoVoltage OBJECT-TYPE
        SYNTAX INTEGER (0..65000)
        UNITS "0.1mV"
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
		"Measured voltage."
        ::= { enetSfpInfoEntry 5 }    
 
----------------------------------------
-- macFfStats
---------------------------------------- 
    macFfStatsTable OBJECT-TYPE
    SYNTAX SEQUENCE OF MacFfStatsEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
    	"A table that contains MAC Force Forwarding static configuration and dynamic information."
    ::= { macffStats 1 }
    
    macFfStatsEntry OBJECT-TYPE
    SYNTAX MacFfStatsEntry
    MAX-ACCESS not-accessible                                                        
    STATUS current
    DESCRIPTION
    	"An entry of macFfStatsTable."
    INDEX	{ macFfStatsIndex }
    ::= { macFfStatsTable 1 }
    
    MacFfStatsEntry ::=
    	SEQUENCE {
    	macFfStatsIndex 		INTEGER,
			macFfStatsVid				VlanIndex,
			macFfStatsArIP			IpAddress,
			macFfStatsSrcIP			IpAddress,
			macFfStatsSrcMask		INTEGER
		}
					
			macFfStatsIndex OBJECT-TYPE
			SYNTAX INTEGER
      		MAX-ACCESS read-only
      		STATUS current
     		 DESCRIPTION
        		"Index of the MACFF."
      		::= { macFfStatsEntry 1 }
					
			macFfStatsVid OBJECT-TYPE		
			SYNTAX VlanIndex
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
        		"The VLAN-ID refering to this AR/AS."
			::= { macFfStatsEntry 2 }
			
			
			macFfStatsArIP	OBJECT-TYPE		
			SYNTAX IpAddress
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
        		"IP of this AR/AS"
      		::= { macFfStatsEntry 3 }
		
			macFfStatsSrcIP OBJECT-TYPE		
			SYNTAX IpAddress
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
        		"The source IP address of the MACFF."
      		::= { macFfStatsEntry 4 }
						
			macFfStatsSrcMask OBJECT-TYPE	
			SYNTAX INTEGER
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
        		"The subnet mask of source IP mask."
     		::= { macFfStatsEntry 5 }

    macFfArpTable OBJECT-TYPE
    SYNTAX SEQUENCE OF MacFfArpEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
    	"A table that contains MAC Force Forwarding ARP information."
    ::= { macffStats 2 }
    
    macFfArpEntry OBJECT-TYPE
    SYNTAX MacFfArpEntry
    MAX-ACCESS not-accessible                                                        
    STATUS current
    DESCRIPTION
    	"An entry of macFfArpTable."
    INDEX	{ macFfArpVid,  macFfArpIP}
    ::= { macFfArpTable 1 }
    
    MacFfArpEntry ::=
    	SEQUENCE {
    	macFfArpVid 		VlanIndex,
			macFfArpIP			IpAddress,
			macFfArpPort		INTEGER,
			macFfArpMac			PhysAddress
		}
					
			macFfArpVid OBJECT-TYPE
			SYNTAX VlanIndex
      		MAX-ACCESS read-only
      		STATUS current
     		 DESCRIPTION
        		"The VLAN-ID refering to this AR/AS."
      		::= { macFfArpEntry 1 }
					
			macFfArpIP OBJECT-TYPE		
			SYNTAX IpAddress
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
        		"IP of this AR/AS."
			::= { macFfArpEntry 2 }
			
			
			macFfArpPort	OBJECT-TYPE		
			SYNTAX INTEGER
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
        		"Port of this AR/AS."
      		::= { macFfArpEntry 3 }
		
			macFfArpMac OBJECT-TYPE		
			SYNTAX PhysAddress
			MAX-ACCESS read-only
			STATUS current
			DESCRIPTION
        		"MAC address of the AR or AS."
      		::= { macFfArpEntry 4 }
      		
    macFfArpCounterTable OBJECT-TYPE
    SYNTAX SEQUENCE OF MacFfArpCounterEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
    	"A table that contains MAC Force Forwarding ARP counter information."
    ::= { macffStats 3 }
    
    macFfArpCounterEntry OBJECT-TYPE
    SYNTAX MacFfArpCounterEntry
    MAX-ACCESS not-accessible                                                        
    STATUS current
    DESCRIPTION
    	"An entry of macFfArpCounterTable."
    INDEX { ifIndex }
    ::= { macFfArpCounterTable 1 }
    
    MacFfArpCounterEntry ::=
    	SEQUENCE {
    	macFfArpCounterRequestTX 			Counter32,
			macFfArpCounterRequestRX			Counter32,
			macFfArpCounterRequestRXDrop	Counter32,
    	macFfArpCounterReplyTX 				Counter32,
			macFfArpCounterReplyRX				Counter32,
			macFfArpCounterReplyRXDrop		Counter32
		}
					
			macFfArpCounterRequestTX OBJECT-TYPE
			SYNTAX Counter32
      		MAX-ACCESS read-only
      		STATUS current
     		 DESCRIPTION
        		"ARP Request TX counter."
      		::= { macFfArpCounterEntry 1 }

			macFfArpCounterRequestRX OBJECT-TYPE
			SYNTAX Counter32
      		MAX-ACCESS read-only
      		STATUS current
     		 DESCRIPTION
        		"ARP Request RX counter."
      		::= { macFfArpCounterEntry 2 }
      		
 			macFfArpCounterRequestRXDrop OBJECT-TYPE
			SYNTAX Counter32
      		MAX-ACCESS read-only
      		STATUS current
     		 DESCRIPTION
        		"ARP Request RX drop counter."
      		::= { macFfArpCounterEntry 3 }				
      		
			macFfArpCounterReplyTX OBJECT-TYPE
			SYNTAX Counter32
      		MAX-ACCESS read-only
      		STATUS current
     		 DESCRIPTION
        		"ARP Reply TX counter."
      		::= { macFfArpCounterEntry 4 }

			macFfArpCounterReplyRX OBJECT-TYPE
			SYNTAX Counter32
      		MAX-ACCESS read-only
      		STATUS current
     		 DESCRIPTION
        		"ARP Reply RX counter."
      		::= { macFfArpCounterEntry 5 }
      		
 			macFfArpCounterReplyRXDrop OBJECT-TYPE
			SYNTAX Counter32
      		MAX-ACCESS read-only
      		STATUS current
     		 DESCRIPTION
        		"ARP Reply RX drop counter."
      		::= { macFfArpCounterEntry 6 }	

------------------------------
-- adslStats
------------------------------

	     adslPortUtilTable OBJECT-TYPE
    SYNTAX SEQUENCE OF AdslPortUtilEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
		"This table includes adsl port utilization."
        ::= { adslStats 1 }

		adslPortUtilEntry OBJECT-TYPE
    SYNTAX AdslPortUtilEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry in adslPortUtilEntry."
        INDEX {ifIndex}
        ::= { adslPortUtilTable 1 }

    AdslPortUtilEntry ::=
        	SEQUENCE {
			adslPortUtilTx	INTEGER,
			adslPortUtilRx	INTEGER,
			adslStatsXturInp  DisplayString,
			adslStatsXtucInp	DisplayString
		}

        adslPortUtilTx OBJECT-TYPE
        SYNTAX INTEGER (0..100)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
		"Measure adsl port's tx utilization."
        ::= { adslPortUtilEntry 1 }

        adslPortUtilRx OBJECT-TYPE
        SYNTAX INTEGER (0..100)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
		"Measure adsl port's rx utilization."
        ::= { adslPortUtilEntry 2 }
	
	adslStatsXturInp OBJECT-TYPE
        SYNTAX DisplayString 
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
		"XTUR minimum INP value."
        ::= { adslPortUtilEntry 3 }

        adslStatsXtucInp OBJECT-TYPE
        SYNTAX DisplayString 
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
		"XTUC minimum INP valu."
        ::= { adslPortUtilEntry 4 }
        

----------------------------------------
-- clear
----------------------------------------

       	counterClearTarget OBJECT-TYPE
        SYNTAX OCTET STRING
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"This managed object is used for identify the target on which
		the counter would be cleared. The target is encoded as:
		Byte 1:   reserved
		Byte 2~3: reserved
		Byte 4:   reserved
		Byte 5~11:each octet specifies a set of eight ports, with the first
		          octet specifying ports 1 through 8, etc."
        ::= { clear 1 }

        counterClearOps OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"The corresponding bit is set to 1 to start the operation.
		The various bit positions are:
		BIT 1: clear interface counters
		BIT 2: clear pvc packet counters
		BIT 3: not support
		BIT 4: not support
		BIT 5: clear DHCP counters
		BIT 6: clear IGMP counters
		BIT 7: clear IGMP port counters
		BIT 8: not support
		BIT 9: clear current lineperf
		BIT 10: clear current 15 minute lineperf
		BIT 11: clear current 1 day lineperf"
        ::= { clear 2 }

        counterClearVpi OBJECT-TYPE
        SYNTAX INTEGER (0..255)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
                "VPI of the pvc whose counters would be cleared."
        ::= { clear 3 }

        counterClearVci OBJECT-TYPE
        SYNTAX INTEGER (1..65535)
        MAX-ACCESS read-write
       	STATUS current
        DESCRIPTION
                "VCI of the pvc whose counters would be cleared."
        ::= { clear 4 }

--------------------
--  VoIP
--------------------

-- voipLineStatusTable

        voipLineStatusTable OBJECT-TYPE
        SYNTAX SEQUENCE OF VoipLineStatusEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"The table displays VoIP line status."
        ::= { voipStats 1 }

        voipLineStatusEntry OBJECT-TYPE
        SYNTAX VoipLineStatusEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry of voipLineStatusTable."
        INDEX { ifIndex }
        ::= { voipLineStatusTable 1 }

        VoipLineStatusEntry ::=
        	SEQUENCE {
                  	voipLineStatusPhoneStatus			INTEGER,
                  	voipLineStatusServiceStatus		INTEGER
              	}

	voipLineStatusPhoneStatus OBJECT-TYPE
	SYNTAX INTEGER {
			disabled(1),
			onHook(2),
			offHook(3),
			ringing(4),
			powerCutDown(5),
			testing(6),
			fault(7),
			bad(8),
			uninitialized(9)
		}
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"Phone status of the line."
	::= { voipLineStatusEntry 1 }

	voipLineStatusServiceStatus OBJECT-TYPE
	SYNTAX INTEGER {
			disabled(1),
			outOfService(2),
			idle(3),
			waitingForDialing(4),
			dialingOut(5),
			ringing(6),
			conversationCaller(7),
			conversationCallee(8),
			faxModemCaller(9),
			faxModemCallee(10),
			waitingForOnHook(11),
			dialingTimeout(12),
			alertingOffHook(13),
			powerCutDown(14)
		}
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"Service status of the line."
	::= { voipLineStatusEntry 2 }

-- voipLineInfoTable

        voipLineInfoTable OBJECT-TYPE
        SYNTAX SEQUENCE OF VoipLineInfoEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"The table displays VoIP line information."
        ::= { voipStats 2 }

        voipLineInfoEntry OBJECT-TYPE
        SYNTAX VoipLineInfoEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry of voipLineInfoTable."
        INDEX { ifIndex }
        ::= { voipLineInfoTable 1 }

        VoipLineInfoEntry ::=
        	SEQUENCE {
                  	voipLineInfoSipLocalUri			OCTET STRING,
                  	voipLineInfoSipRemoteUri		OCTET STRING,
                  	voipLineInfoRtpTxCodecType		OCTET STRING,
                  	voipLineInfoRtpRxCodecType		OCTET STRING,
                  	voipLineInfoRtpTxPt			INTEGER,
                  	voipLineInfoRtpRxPt			INTEGER,
                  	voipLineInfoRtpLocalIp			IpAddress,
                  	voipLineInfoRtpRemoteIp			IpAddress,
                  	voipLineInfoRtpLocalPort		INTEGER,
                  	voipLineInfoRtpRemotePort		INTEGER,  
                  	voipLineInfoSipLocalUri2		OCTET STRING,
                  	voipLineInfoSipRemoteUri2		OCTET STRING,
                  	voipLineInfoRtpTxCodecType2		OCTET STRING,
                  	voipLineInfoRtpRxCodecType2		OCTET STRING,
                  	voipLineInfoRtpTxPt2			INTEGER,
                  	voipLineInfoRtpRxPt2			INTEGER,
                  	voipLineInfoRtpLocalIp2			IpAddress,
                  	voipLineInfoRtpRemoteIp2		IpAddress,
                  	voipLineInfoRtpLocalPort2		INTEGER,
                  	voipLineInfoRtpRemotePort2		INTEGER                  	
              	}

	voipLineInfoSipLocalUri OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { voipLineInfoEntry 1 }

	voipLineInfoSipRemoteUri OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { voipLineInfoEntry 2 }

	voipLineInfoRtpTxCodecType OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { voipLineInfoEntry 3 }

	voipLineInfoRtpRxCodecType OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { voipLineInfoEntry 4 }

	voipLineInfoRtpTxPt OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { voipLineInfoEntry 5 }

	voipLineInfoRtpRxPt OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { voipLineInfoEntry 6 }

	voipLineInfoRtpLocalIp OBJECT-TYPE
	SYNTAX IpAddress
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { voipLineInfoEntry 7 }

	voipLineInfoRtpRemoteIp OBJECT-TYPE
	SYNTAX IpAddress
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { voipLineInfoEntry 8 }

	voipLineInfoRtpLocalPort OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { voipLineInfoEntry 9 }

	voipLineInfoRtpRemotePort OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { voipLineInfoEntry 10 }     
	
	voipLineInfoSipLocalUri2 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { voipLineInfoEntry 11 }

	voipLineInfoSipRemoteUri2 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { voipLineInfoEntry 12 }

	voipLineInfoRtpTxCodecType2 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { voipLineInfoEntry 13 }

	voipLineInfoRtpRxCodecType2 OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { voipLineInfoEntry 14 }

	voipLineInfoRtpTxPt2 OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { voipLineInfoEntry 15 }

	voipLineInfoRtpRxPt2 OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { voipLineInfoEntry 16 }

	voipLineInfoRtpLocalIp2 OBJECT-TYPE
	SYNTAX IpAddress
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { voipLineInfoEntry 17 }

	voipLineInfoRtpRemoteIp2 OBJECT-TYPE
	SYNTAX IpAddress
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { voipLineInfoEntry 18 }

	voipLineInfoRtpLocalPort2 OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { voipLineInfoEntry 19 }

	voipLineInfoRtpRemotePort2 OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		""
	::= { voipLineInfoEntry 20 }
	
-- voipH248Status

	voipH248Status	OBJECT IDENTIFIER ::= { voipStats 3  }

	voipH248StatusMgName OBJECT-TYPE
	SYNTAX OCTET STRING
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"MG name."
        ::= { voipH248Status 1 }

	voipH248StatusMgStatus OBJECT-TYPE
		SYNTAX INTEGER {
			disabled(1),
			registering(2),
			registered(3),
			unregistering(4),
			unregistered(5),
			disconnected(6),
			disabledByMGC(7)
		}
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"Mg connection status."
	::= { voipH248Status 2 }

-- voipActiveCallStat
	voipActiveCallStat	OBJECT IDENTIFIER ::= { voipStats 4  }

	voipActiveCallStatCurrentActiveCalls OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"Number of current active calls."
        ::= { voipActiveCallStat 1 }
                                    
	voipActiveCallStatFailAttempts OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
		"Failed attempts to setup active call."
        ::= { voipActiveCallStat 2 }

	voipActiveCallStatClear OBJECT-TYPE
	SYNTAX INTEGER
	MAX-ACCESS read-write
	STATUS current
	DESCRIPTION
		"The manager sets the corresponding bit value to 1 to start the operation
        	and the agent clears the object to zero when the operation is successfully completed.
        	The various bit positions is:
		BIT 1: Clear failed attempts to setup active call."
        ::= { voipActiveCallStat 3 }

-- voipH248StatusTable

--voipH248StatusTable OBJECT-TYPE
--      SYNTAX SEQUENCE OF VoipH248StatusEntry
--      MAX-ACCESS not-accessible
--      STATUS current
--      DESCRIPTION
--      	"The table displays MG status."
--      ::= { voipStats 3 }
--
--voipH248StatusEntry OBJECT-TYPE
--      SYNTAX VoipH248StatusEntry
--      MAX-ACCESS not-accessible
--      STATUS current
--      DESCRIPTION
--      	"An entry of voipH248StatusTable."
--      INDEX { VoipH248StatusMgName }
--      ::= { voipH248StatusTable 1 }
--
--      VoipH248StatusEntry ::=
--      	SEQUENCE {
--                	VoipH248StatusMgName	OCTET STRING,
--				VoipH248StatusMgStatus	INTEGER
--            	}
--
--VoipH248StatusMgName OBJECT-TYPE
--      SYNTAX OCTET STRING
--      MAX-ACCESS read-only
--      STATUS current
--      DESCRIPTION
--	"MG name."
--      ::= { voipH248StatusEntry 1 }
--
--VoipH248StatusMgStatus OBJECT-TYPE
--	SYNTAX INTEGER {
--		disabled(1),
--		registering(2),
--		registered(3),
--		unregistering(4),
--		unregistered(5),
--		disconnected(6),
--		disabled(7)
--	}
--MAX-ACCESS read-only
--STATUS current
--DESCRIPTION
--	"Mg connection status."
--::= { voipH248StatusEntry 2 }

----------------------------------------
-- voip
----------------------------------------

	voipArp			OBJECT IDENTIFIER ::= { voip 1 }
	voipSip			OBJECT IDENTIFIER ::= { voip 2 }
	voipIp			OBJECT IDENTIFIER ::= { voip 3 }
	voipDns			OBJECT IDENTIFIER ::= { voip 4 }
	voipH248		OBJECT IDENTIFIER ::= { voip 10 }
	voipRing		OBJECT IDENTIFIER ::= { voip 11 }
	voipActiveCall	OBJECT IDENTIFIER ::= { voip 13 }
-- voipArpFlushOperation

        voipArpFlushOps OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
		"Set the object to 1 to start flushing."
        ::= { voipArp 1 }

-- voipArpShowTable

        voipArpShowTable OBJECT-TYPE
        SYNTAX SEQUENCE OF VoipArpShowEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"Display ARP entries learnt in specified slot."
        ::= { voipArp 2 }

        voipArpShowEntry OBJECT-TYPE
        SYNTAX VoipArpShowEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry of voipArpShowTable."
        INDEX { voipArpShowIp  }
        ::= { voipArpShowTable 1 }

        VoipArpShowEntry ::=
        	SEQUENCE {
        		voipArpShowIp			IpAddress,
        		voipArpShowMac			PhysAddress
              	}

	voipArpShowIp OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        	""
        ::= { voipArpShowEntry 1 }

        voipArpShowMac OBJECT-TYPE
        SYNTAX PhysAddress
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        	""
        ::= { voipArpShowEntry 2 }

-- voipNumberPlanTable

	maxNumOfVoipNumberPlan OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        	"The maximum number of VoIP number plan supported by the system."
        ::= { voipSip 1 }

        voipNumberPlanTable OBJECT-TYPE
        SYNTAX SEQUENCE OF VoipNumberPlanEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"Configure numbering plan entry of specified index in specified payphone charging table."
        ::= { voipSip 2 }

        voipNumberPlanEntry OBJECT-TYPE
        SYNTAX VoipNumberPlanEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry of voipNumberPlanTable."
        INDEX { voipNumberPlanName, voipNumberPlanIndex }
        ::= { voipNumberPlanTable 1 }

        VoipNumberPlanEntry ::=
        	SEQUENCE {
        		voipNumberPlanName		DisplayString,
        		voipNumberPlanIndex		INTEGER,
        		voipNumberPlanPattern		OCTET STRING,
        		voipNumberPlanRule		OCTET STRING,
        		voipNumberPlanRowStatus		RowStatus
        		}

	voipNumberPlanName OBJECT-TYPE
        SYNTAX DisplayString (SIZE (1..31))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        	"Numbering plan table name."
        ::= { voipNumberPlanEntry 1 }

        voipNumberPlanIndex OBJECT-TYPE
        SYNTAX INTEGER (1..32)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        	""
        ::= { voipNumberPlanEntry 2 }

        voipNumberPlanPattern OBJECT-TYPE
        SYNTAX OCTET STRING
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        	"Allowed characters are 0~9, *, T, S, P, x, ., |
            and range format characters that include '~', ','
            and parenthesis '(', ')', brackets '[', ']', braces '{', '}'
            and at most one parenthesis pair are allowed,
        	Examples: '002(*)', '0(*)', and '(*)'.
        	'*'      represents one or more digit characters
			'x'      represents any digit character
			'T'      timeout send of dial string, can only appear at the end of pattern
			'S'      star phone key (*) match character in dial plan
			'P'      pound key (#) match character in dial plan
			'.'      represents zero or more repetitions of character or range
                     that precedes it, can't use the dot character '.' in brackets
			'|'      used to separate multiple number plan patterns
			[n~m,k]  match a range of digits n~m or a specified digit k,
                     '[' and ']' must pair and nest brackets is illegal
                     '~' and ',' are allowed showing in brackets only
                     '~' connected characters must be digit
            {n}      match n digits"
        ::= { voipNumberPlanEntry 3 }

        voipNumberPlanRule OBJECT-TYPE
        SYNTAX OCTET STRING
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        	"Allowed characters are 0~9, and 
        	'\c' stand for country code,
        	'\d' stand for national destination code,
        	'\1' stand for matched string enclosed by the parenthesis pair,
        	'\n' stand for no local disconnect
        	'\p' stand for partial pattern
        	'\t' stand for confirmation tone play                             
        	'\tr' stand for recall dial tone play
        	'deny' stand for the pattern specified is not allowed.    
        	Examples: '\1', '\c\1', and '\c\d\1'."
        ::= { voipNumberPlanEntry 4 }

        voipNumberPlanRowStatus OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        	"This object is used to create a new entry or delete an existing entry in this table."
        ::= { voipNumberPlanEntry 5 }   
                           
        voipNumberPlanDftTable OBJECT-TYPE
        SYNTAX SEQUENCE OF VoipNumberPlanDftEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"Configure the action rule after inter-digit timeout in specified entry of numbering plan table."
        ::= { voipSip 3 }

        voipNumberPlanDftEntry OBJECT-TYPE
        SYNTAX VoipNumberPlanDftEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry of voipNumberDftPlanTable."
        INDEX { voipNumberPlanName }
        ::= { voipNumberPlanDftTable 1 }

        VoipNumberPlanDftEntry ::=
        	SEQUENCE {
        		voipNumberPlanDftRule		OCTET STRING
        		}

        voipNumberPlanDftRule OBJECT-TYPE
        SYNTAX OCTET STRING
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        	"Allowed characters are 0~9, and 
        	'\c' stand for country code,
        	'\d' stand for national destination code,
        	'\1' stand for matched string enclosed by the parenthesis pair,
          '\n' stand for no local disconnect
          '\p' stand for partial pattern
          '\t' stand for confirmation tone play
 				  'deny' stand for the pattern specified is not allowed.
        	Examples: '\1', '\c\1', and '\c\d\1'."
        ::= { voipNumberPlanDftEntry 1 }
                                   
		digitSetup	OBJECT IDENTIFIER ::= { voipSip 4 }
		timeoutSetup OBJECT IDENTIFIER ::= {digitSetup 1}
                              
		initialTimeout OBJECT-TYPE
		SYNTAX INTEGER (1..20)
	      MAX-ACCESS read-write
	      STATUS current
	      DESCRIPTION
	      	"First digit must be dialed before this timeout, 1 ~ 20 seconds."
	      ::= { timeoutSetup 1 }

		interDigitTimeout OBJECT-TYPE
		SYNTAX INTEGER (1..20)
	      MAX-ACCESS read-write
	      STATUS current
	      DESCRIPTION
	      	"If no pattern string is fully matched, the inter-digit timeout will 
	      	trigger device to send out current dialed digits, 1 ~ 20 seconds."
	      ::= { timeoutSetup 2 }
	                   
		digitPauseTimeout OBJECT-TYPE
		SYNTAX INTEGER (1..20)
	      MAX-ACCESS read-write
	      STATUS current
	      DESCRIPTION
	      	"If a pattern string is end with the T pattern, the pattern string 
	      	will not be matched until the timeout happens, 1 ~ 20 seconds."
	      ::= { timeoutSetup 3 }
	                   
		matchingTimeout OBJECT-TYPE
		SYNTAX INTEGER (1..20)
	      MAX-ACCESS read-write
	      STATUS current
	      DESCRIPTION
	      	"If a pattern string is fully matched, and there are other pattern 
	      	strings partially matched, the pattern string will be sent out if 
	      	the timeout happens, 1 ~ 20 seconds."
	      ::= { timeoutSetup 4 }
                                   
-- voipIp

        voipIpSetIp OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"VoIP's IP address."
        ::= { voipIp 1 }

        voipIpSetVid OBJECT-TYPE
        SYNTAX VlanIndex
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"VoIP's VLAN ID."
        ::= { voipIp 2 }

        voipIpSetMask OBJECT-TYPE
        SYNTAX INTEGER (0..32)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"VoIP's network mask."
        ::= { voipIp 3 }

        voipIpSetDhcpClientEnable OBJECT-TYPE
        SYNTAX INTEGER {
        		enable(1),
        		disable(2)
        }
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"Enable/disable VoIP's DHCP Client."
        ::= { voipIp 4 }

        voipIpGateway OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"IP of default VoIP gateway."
        ::= { voipIp 5 }

-- voipDns


        voipDnsIp OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"IP address."
        ::= { voipDns 1 }

-- voipRouteTable

	maxNumOfVoipRoute OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        	"The maximum number of VoIP routing entries."
        ::= { voip 7 }

        voipRouteTable OBJECT-TYPE
        SYNTAX SEQUENCE OF VoipRouteEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	""
        ::= { voip 8 }

        voipRouteEntry OBJECT-TYPE
        SYNTAX VoipRouteEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry of voipRouteTable."
        INDEX { voipRouteIp, voipRouteGateway, voipRouteMask }
        ::= { voipRouteTable 1 }

        VoipRouteEntry ::=
        	SEQUENCE {
        		voipRouteIp			IpAddress,
        		voipRouteGateway		IpAddress,
        		voipRouteMask			INTEGER,
        		voipRouteMetric			INTEGER,
        		voipRouteRowStatus		RowStatus
              	}

        voipRouteIp OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        	"IP address."
        ::= { voipRouteEntry 1 }

        voipRouteGateway OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        	"Gateway IP."
        ::= { voipRouteEntry 2 }

        voipRouteMask OBJECT-TYPE
        SYNTAX INTEGER (0..32)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        	"Network mask."
        ::= { voipRouteEntry 3 }

        voipRouteMetric OBJECT-TYPE
        SYNTAX INTEGER (1..15)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        	"Metric number of the route."
        ::= { voipRouteEntry 4 }

        voipRouteRowStatus OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        	"This object is used to create a new entry or delete an existing entry in this table."
        ::= { voipRouteEntry 5 }

-- voipCountryCode

        voipCountryCode OBJECT-TYPE
        SYNTAX INTEGER {
        		usa(1)
--        		taiwan(2),
--        		austria(3),
--        		belgium(4),
--        		denmark(5),
--        		finland(6),
--        		netherland(7),
--         		norway(8),
--         		spain(9),
--         		sweden(10),
--         		switzerland(11),
--         		uk(12),
--         		germany(13),
--         		australia(14),
--         		ireland(15),
--         		czech(16),
--         		italy(17),
--         		japan(18),
--         		new_zealand(19),
--         		russia(20),
--         		china(21),
--         		vietnam(22),
--         		brazil(23)
        	}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"Configure country (information) for VoIP services."
        ::= { voip 9 }

-- voipH248

	maxNumOfVoipH248MgConf OBJECT-TYPE
	      SYNTAX INTEGER
	      MAX-ACCESS read-only
	      STATUS current
	      DESCRIPTION
	      	"The maximum number of virtual media gateway supported by the system."
	      ::= { voipH248 1 }

	voipH248MgConf	OBJECT IDENTIFIER ::= { voipH248 2  }


	voipH248MgName OBJECT-TYPE
        SYNTAX DisplayString
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"MG name."
        ::= { voipH248MgConf 1 }

	voipH248MgEnable OBJECT-TYPE
        SYNTAX  INTEGER {
        		enable(1),
        		disable(2)
        	}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
                "Enable/disable MG."
         ::= { voipH248MgConf 2 }

	voipH248MgH248Profile OBJECT-TYPE
        SYNTAX DisplayString
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"H248 profile name used by MG."
        ::= { voipH248MgConf 3 }

	voipH248MgPort OBJECT-TYPE
        SYNTAX INTEGER (1025..65535)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"Port number used by MG."
        ::= { voipH248MgConf 4 }

        voipBootRegDelay OBJECT-TYPE
        SYNTAX INTEGER (0..30)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
        	"Registration delay in seconds."
        ::= { voip 12}

-- voipRingTable

        voipRingTable OBJECT-TYPE
        SYNTAX SEQUENCE OF VoipRingEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	""
        ::= { voipRing 1 }

        voipRingEntry OBJECT-TYPE
        SYNTAX VoipRingEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
        	"An entry of voipRouteTable."
        INDEX { voipRingIndex }
        ::= { voipRingTable 1 }

        VoipRingEntry ::=
        	SEQUENCE {
        		voipRingIndex			INTEGER,
        		voipRingName			DisplayString,
        		voipRingOn1			INTEGER,
        		voipRingOff1			INTEGER,
        		voipRingOn2			INTEGER,
        		voipRingOff2			INTEGER,
        		voipRingOn3			INTEGER,
        		voipRingOff3			INTEGER
              	}

        voipRingIndex OBJECT-TYPE
        SYNTAX INTEGER(1..16)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        	""
        ::= { voipRingEntry 1 }

        voipRingName OBJECT-TYPE
        SYNTAX DisplayString (SIZE (1..31))
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        	"Ring identifier used in SIP Alert-Info header field"
        ::= { voipRingEntry 2 }

        voipRingOn1 OBJECT-TYPE
        SYNTAX INTEGER (100..10000)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        	"first on time in milliseconds"
        ::= { voipRingEntry 3 }

        voipRingOff1 OBJECT-TYPE
        SYNTAX INTEGER (100..10000)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        	"first off time in milliseconds"
        ::= { voipRingEntry 4 }

        voipRingOn2 OBJECT-TYPE
        SYNTAX INTEGER (100..10000)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        	"second on time in milliseconds"
        ::= { voipRingEntry 5 }

        voipRingOff2 OBJECT-TYPE
        SYNTAX INTEGER (100..10000)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        	"second off time in milliseconds"
        ::= { voipRingEntry 6 }

        voipRingOn3 OBJECT-TYPE
        SYNTAX INTEGER (100..10000)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        	"third on time in milliseconds"
        ::= { voipRingEntry 7 }

        voipRingOff3 OBJECT-TYPE
        SYNTAX INTEGER (100..10000)
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
        	"third off time in milliseconds"
        ::= { voipRingEntry 8 }


        voipRingSetDefault OBJECT-TYPE
        SYNTAX INTEGER (1..16)
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
      	    "Set the index to default value."
        ::= { voipRing 2 }

-- voipActiveCall
	voipActiveCallMaxActiveCalls OBJECT-TYPE
	SYNTAX INTEGER
      MAX-ACCESS read-write
      STATUS current
      DESCRIPTION
      	"Configure maximum number of concurrent active calls, 0~96."
      ::= { voipActiveCall 1 }

	voipActiveCallThreshold OBJECT-TYPE
	SYNTAX INTEGER
      MAX-ACCESS read-write
      STATUS current
      DESCRIPTION
      	"The threshold to report or clear alarm, 50~100."
      ::= { voipActiveCall 2 }
      
-- voipMode
	voipMode OBJECT-TYPE
	SYNTAX INTEGER {
			sip(1),
			csip(2),
			h248(3)
		}
      MAX-ACCESS read-write
      STATUS current
      DESCRIPTION
      	"Configure the Mode for VoIP Service."
      ::= { voip 100 }

-- voipH248MgConfTable

--voipH248MgConfTable OBJECT-TYPE
--       SYNTAX SEQUENCE OF VoipH248MgConfEntry
--       MAX-ACCESS not-accessible
--       STATUS current
--       DESCRIPTION
--       	"This table includes H248 MG related configuration."
--       ::= { voipH248 1 }
--
--voipH248MgConfEntry OBJECT-TYPE
--       SYNTAX VoipH248MgConfEntry
--       MAX-ACCESS not-accessible
--       STATUS current
--       DESCRIPTION
--       	"An entry of voipH248MgConfTable."
--       INDEX { voipH248MgName  }
--       ::= { voipH248MgConfTable 1 }
--
--VoipH248MgConfEntry ::=
--       	SEQUENCE {
--       		voipH248MgName			DisplayString,
--			voipH248MgEnable		INTEGER,
--       		voipH248MgH248Profile	DisplayString,
--			voipH248MgPort			INTEGER,
--			voipH248MgRowStatus		RowStatus
--		}
--
--voipH248MgName OBJECT-TYPE
--       SYNTAX DisplayString
--       MAX-ACCESS read-only
--       STATUS current
--       DESCRIPTION
--       	"MG name."
--       ::= { voipH248MgConfEntry 1 }
--
--voipH248MgEnable OBJECT-TYPE
--       SYNTAX  INTEGER {
--       		enable(1),
--       		disable(2)
--       	}
--       MAX-ACCESS read-write
--       STATUS current
--       DESCRIPTION
--               "Enable/disable MG."
--        ::= { voipH248MgConfEntry 2 }
--
--voipH248MgH248Profile OBJECT-TYPE
--       SYNTAX DisplayString
--       MAX-ACCESS read-write
--       STATUS current
--       DESCRIPTION
--       	"H248 profile name used by MG."
--       ::= { voipH248MgConfEntry 3 }
--
--voipH248MgPort OBJECT-TYPE
--       SYNTAX INTEGER (1025..65535)
--       MAX-ACCESS read-write
--       STATUS current
--       DESCRIPTION
--       	"Port number used by MG."
--       ::= { voipH248MgConfEntry 4 }
--
--voipH248MgRowStatus OBJECT-TYPE
--       SYNTAX RowStatus
--       MAX-ACCESS read-create
--       STATUS current
--       DESCRIPTION
--       	"This object is used to create a new entry or delete an existing entry in this table."
--       ::= { voipH248MgConfEntry 5 }
END