-- =================================================================
-- Copyright (c) 2010-2013 Hewlett-Packard Development Company, L.P.
-- 
-- Description:This MIB file is used for management of Class Based 
--             FR QoS information. 
-- Reference:
-- Version: V1.1
-- History:      
-- 			V1.0 caolei,2004.7.12,publish 
--          V1.1 2004-10-12 updated by gaolong
--               Relocate hpnicfFrQoSMib MODULE-IDENTITY.
-- =================================================================

	HPN-ICF-FR-QOS-MIB DEFINITIONS ::= BEGIN
 
		IMPORTS
			hpnicfQoS
				FROM HPN-ICF-OID-MIB
		
			ifIndex			
				FROM RFC1213-MIB
			
			OBJECT-GROUP, MODULE-COMPLIANCE                 
				FROM SNMPv2-CONF
			
			Integer32, Counter32, OBJECT-TYPE, MODULE-IDENTITY                   
				FROM SNMPv2-SMI
			
			TEXTUAL-CONVENTION, RowStatus
				FROM SNMPv2-TC;        

            hpnicfFrQoSMib MODULE-IDENTITY 
                    LAST-UPDATED "200407120000Z"            -- JULY 12, 2004 at 00:00 GMT
                    ORGANIZATION
                        ""
                    CONTACT-INFO
                        ""
                    DESCRIPTION 
                            "This MIB contains objects to 
                            Manage configuration and Monitor running state 
                            for Class Based FR QoS feature.
                            
                           	    *********************************
                        			MIB Tables
                           	    **********************************
                        	This MIB consists of the following tables:
                        	     1 :  hpnicfFrClassCfgInfoTable
                        	     2 :  hpnicfCirCfgInfoTable
                        	     3 :  hpnicfIfApplyFrClassTable
                        	     4 :  hpnicfPvcApplyFrClassTable
                        	     5 :  hpnicfFrPvcBandwidthTable
                        	     5 :  hpnicfRTPFrClassApplyTable
                        	     6 :  hpnicfRTPFrPvcQueueRunInfoTable  	             	 
                            "
                    ::= { hpnicfQoS 3 } -- need modification later

--            
--type definitions in the policy 
--
				
--Direction         
				
			HpnicfCirAllowDirection ::= TEXTUAL-CONVENTION
			        STATUS  current  
			        DESCRIPTION
			              "The Packet Direction apply on."				 
					SYNTAX  INTEGER { 
						inbound (1),
						outbound (2),
						inboundAndOutbound (3)
					}                  
	
--            
--end of type definitions in policy 
--				 

--
-- Node definitions
--     
	hpnicfFrQoSObjects OBJECT IDENTIFIER ::= { hpnicfFrQoSMib 1 } 
                                                                                                           
--hpnicfFrClassObjects 
		
	hpnicfFrClassObjects OBJECT IDENTIFIER ::= { hpnicfFrQoSObjects 1 } 
		
-- Fr Class Next Index 
	hpnicfFrClassIndexNext OBJECT-TYPE
		SYNTAX Integer32 
		MAX-ACCESS read-only
		STATUS current
		DESCRIPTION
			"This object contains an appropriate value to be used for 
			hpnicfFrClassIndex when creating rows in the 
			hpnicfFrClassCfgInfoTable. Begin with 0.
			"                                
		::= { hpnicfFrClassObjects 1 }
		                                                                                         
-- Fr Class               
	hpnicfFrClassCfgInfoTable OBJECT-TYPE
		SYNTAX SEQUENCE OF HpnicfFrClassCfgInfoEntry
		MAX-ACCESS not-accessible
		STATUS current
		DESCRIPTION
			"A table of Fr Class configuration information."
		::= { hpnicfFrClassObjects 2 }

	hpnicfFrClassCfgInfoEntry OBJECT-TYPE
		SYNTAX HpnicfFrClassCfgInfoEntry
		MAX-ACCESS not-accessible
		STATUS current
		DESCRIPTION
			"Fr Class Configuration Information Entry."
		INDEX { hpnicfFrClassIndex }
		::= { hpnicfFrClassCfgInfoTable 1 }
		
	HpnicfFrClassCfgInfoEntry ::=
		SEQUENCE { 
			hpnicfFrClassIndex
				Integer32,
			hpnicfFrClassName
				OCTET STRING,
			hpnicfFrClassRowStatus
				RowStatus
		} 	

		
	hpnicfFrClassIndex OBJECT-TYPE
		SYNTAX Integer32 
		MAX-ACCESS not-accessible
		STATUS current
		DESCRIPTION
			"Index of Fr Class. Begin with 0."
		::= { hpnicfFrClassCfgInfoEntry 1 }
		        
	hpnicfFrClassName OBJECT-TYPE
		SYNTAX OCTET STRING (SIZE (1..31))
		MAX-ACCESS read-create
		STATUS current
		DESCRIPTION
			"Name of Fr Class."
		::= { hpnicfFrClassCfgInfoEntry 2 }                                  
		
	hpnicfFrClassRowStatus OBJECT-TYPE
		SYNTAX RowStatus
		MAX-ACCESS read-create
		STATUS current
		DESCRIPTION
			"RowStatus. Three actions are used: active,
			createAndGo, destroy"
		::= { hpnicfFrClassCfgInfoEntry 3 }

-- Cir Allow on the Fr Class               
	hpnicfCirAllowCfgInfoTable OBJECT-TYPE
		SYNTAX SEQUENCE OF HpnicfCirAllowCfgInfoEntry
		MAX-ACCESS not-accessible
		STATUS current
		DESCRIPTION
			"A table of DCE allowed rate Configuration information."
		::= { hpnicfFrClassObjects 3 }
		
	hpnicfCirAllowCfgInfoEntry OBJECT-TYPE
		SYNTAX HpnicfCirAllowCfgInfoEntry
		MAX-ACCESS not-accessible
		STATUS current
		DESCRIPTION
			"DCE allowed ratee Configuration Information Entry."
		INDEX { hpnicfCirAllowFrClassIndex,
				hpnicfCirAllowDirection}
		::= { hpnicfCirAllowCfgInfoTable 1 }
		
	HpnicfCirAllowCfgInfoEntry ::=
		SEQUENCE { 
			hpnicfCirAllowFrClassIndex
				Integer32,  
			hpnicfCirAllowDirection 
				HpnicfCirAllowDirection,                                        
			hpnicfCirAllowValue
				Integer32, 
			hpnicfCirAllowRowStatus
				RowStatus
		} 
		
	hpnicfCirAllowFrClassIndex OBJECT-TYPE
		SYNTAX Integer32 
		MAX-ACCESS not-accessible
		STATUS current
		DESCRIPTION
			"Index of Fr Class. Begin with 0.Equal to hpnicfFrClassIndex"
		::= { hpnicfCirAllowCfgInfoEntry 1 }
		        
	hpnicfCirAllowDirection OBJECT-TYPE
		SYNTAX HpnicfCirAllowDirection     
		MAX-ACCESS not-accessible
		STATUS current
		DESCRIPTION
			"Packet Direction. 		
			inbound (1)
			outbound (2)
			inbound and outbound (3)  
			"
		::= { hpnicfCirAllowCfgInfoEntry 2 }                                  
		
	hpnicfCirAllowValue OBJECT-TYPE
		SYNTAX Integer32(1..45000000) 
		MAX-ACCESS read-create
		STATUS current
		DESCRIPTION
			"DCE allowed rate (value greater than CIR) 
			Unit : Bits per second. 
			Value : <1-45000000> ."
		::= { hpnicfCirAllowCfgInfoEntry 3 } 
		
	hpnicfCirAllowRowStatus OBJECT-TYPE
		SYNTAX RowStatus
		MAX-ACCESS read-create
		STATUS current
		DESCRIPTION
			"RowStatus. Three actions are used: active,
			createAndGo, destroy"
		::= { hpnicfCirAllowCfgInfoEntry 4 }
		                                    
-- Cir on the Fr Class               
	hpnicfCirCfgInfoTable OBJECT-TYPE
		SYNTAX SEQUENCE OF HpnicfCirCfgInfoEntry
		MAX-ACCESS not-accessible
		STATUS current
		DESCRIPTION
			"A table of Committed Information Rate Configuration information."
		::= { hpnicfFrClassObjects 4 }
		
	hpnicfCirCfgInfoEntry OBJECT-TYPE
		SYNTAX HpnicfCirCfgInfoEntry
		MAX-ACCESS not-accessible
		STATUS current
		DESCRIPTION
			"Committed Information Rate Configuration Information Entry."
		INDEX { hpnicfCirFrClassIndex }
		::= { hpnicfCirCfgInfoTable 1 }
		
	HpnicfCirCfgInfoEntry ::=
		SEQUENCE { 
			hpnicfCirFrClassIndex
				Integer32,  
			hpnicfCirValue
				Integer32,		
			hpnicfCirRowStatus
				RowStatus
		} 
		
	hpnicfCirFrClassIndex OBJECT-TYPE
		SYNTAX Integer32 
		MAX-ACCESS not-accessible
		STATUS current
		DESCRIPTION
			"Index of Fr Class. Begin with 0.Equal to hpnicfFrClassIndex"
		::= { hpnicfCirCfgInfoEntry 1 }
		        
	hpnicfCirValue OBJECT-TYPE
		SYNTAX Integer32(1000..45000000)
		MAX-ACCESS read-create
		STATUS current
		DESCRIPTION
			" CIR in packet output direction ,bps. 
			Value : <1000-45000000>."
		::= { hpnicfCirCfgInfoEntry 2 } 
		                               
	hpnicfCirRowStatus OBJECT-TYPE
		SYNTAX RowStatus
		MAX-ACCESS read-create
		STATUS current
		DESCRIPTION
			"RowStatus. Three actions are used: active,
			createAndGo, destroy"
		::= { hpnicfCirCfgInfoEntry 3 }
		
		                                  
-- Fr Class Instance on interface Table
	hpnicfIfApplyFrClassTable OBJECT-TYPE
		SYNTAX SEQUENCE OF HpnicfIfApplyFrClassEntry
		MAX-ACCESS not-accessible
		STATUS current
		DESCRIPTION
			"A table of QoS Fr Class instance."
		::= { hpnicfFrClassObjects 5 }
		
	hpnicfIfApplyFrClassEntry OBJECT-TYPE
		SYNTAX HpnicfIfApplyFrClassEntry
		MAX-ACCESS not-accessible
		STATUS current
		DESCRIPTION
			"FrClass applied on interface Configuration Information Entry."
		INDEX { hpnicfIfApplyFrClassIfIndex }
		::= { hpnicfIfApplyFrClassTable 1 }
		
	HpnicfIfApplyFrClassEntry ::=
			SEQUENCE {        
				hpnicfIfApplyFrClassIfIndex
			Integer32,                                                                                                                                              
				hpnicfIfApplyFrClassIndex
			Integer32,    
				hpnicfIfApplyFrClassRowStatus
			RowStatus                            	                                            
		}    
			                                 
	hpnicfIfApplyFrClassIfIndex OBJECT-TYPE
		SYNTAX Integer32
		MAX-ACCESS not-accessible
		STATUS current
		DESCRIPTION
			"Interface Index, equal to ifIndex."
		::= { hpnicfIfApplyFrClassEntry 1 }    
		
	hpnicfIfApplyFrClassIndex OBJECT-TYPE
		SYNTAX Integer32
		MAX-ACCESS read-create
		STATUS current
		DESCRIPTION
			"Index of Fr Class, equal to hpnicfFrClassIndex"
		::= { hpnicfIfApplyFrClassEntry 2 }    
		
	hpnicfIfApplyFrClassRowStatus OBJECT-TYPE
		SYNTAX RowStatus
		MAX-ACCESS read-create
		STATUS current
		DESCRIPTION
			"RowStatus. Three actions are used: active,
			createAndGo, destroy"
		::= { hpnicfIfApplyFrClassEntry 3 }
		         
-- Fr Class Instance on fr pvc Table                        
	hpnicfPvcApplyFrClassTable OBJECT-TYPE
		SYNTAX SEQUENCE OF HpnicfPvcApplyFrClassEntry
		MAX-ACCESS not-accessible
		STATUS current
		DESCRIPTION
			"A table of QoS Fr Class instance."
		::= { hpnicfFrClassObjects 6 }
		
	hpnicfPvcApplyFrClassEntry OBJECT-TYPE
		SYNTAX HpnicfPvcApplyFrClassEntry
		MAX-ACCESS not-accessible
		STATUS current
		DESCRIPTION
			"Fr Class applied on FR Pvc Configuration Information Entry."
		INDEX { hpnicfPvcApplyFrClassIfIndex, 
			hpnicfPvcApplyFrClassDlciNum 
		}
		::= { hpnicfPvcApplyFrClassTable 1 }
		
	HpnicfPvcApplyFrClassEntry ::=
		SEQUENCE {            
			hpnicfPvcApplyFrClassIfIndex
				Integer32,
			hpnicfPvcApplyFrClassDlciNum
				Integer32,                                                                                                                                        
			hpnicfPvcApplyFrClassIndex
				Integer32,
			hpnicfPvcApplyFrClassRowStatus
				RowStatus                           		                              	                                            
		}    
			                                 
	hpnicfPvcApplyFrClassIfIndex OBJECT-TYPE
		SYNTAX Integer32
		MAX-ACCESS not-accessible
		STATUS current
		DESCRIPTION
			"Fr Interface Index, equal to ifIndex."
		::= { hpnicfPvcApplyFrClassEntry 1 }
		
	hpnicfPvcApplyFrClassDlciNum OBJECT-TYPE
		SYNTAX Integer32 (16..1007)
		MAX-ACCESS not-accessible
		STATUS current
		DESCRIPTION
			"Fr DLCI number."
		::= { hpnicfPvcApplyFrClassEntry 2 }                            
		
	hpnicfPvcApplyFrClassIndex OBJECT-TYPE
		SYNTAX Integer32
		MAX-ACCESS read-create
		STATUS current
		DESCRIPTION
			"Index of Fr Class, equal to hpnicfFrClassIndex"
		::= { hpnicfPvcApplyFrClassEntry 3 }    
		
	hpnicfPvcApplyFrClassRowStatus OBJECT-TYPE
		SYNTAX RowStatus
		MAX-ACCESS read-create
		STATUS current
		DESCRIPTION
			"RowStatus. Three actions are used: active,
			createAndGo, destroy"
		::= { hpnicfPvcApplyFrClassEntry 4 }


-- bandwidth parameter on interface                        
                       
	hpnicfFrPvcBandwidthTable OBJECT-TYPE
		SYNTAX SEQUENCE OF HpnicfFrPvcBandwidthEntry
		MAX-ACCESS not-accessible
		STATUS current
		DESCRIPTION
			"A table of Running statistics for bandwidth.
			"
		::= { hpnicfFrClassObjects 7 }
		
	hpnicfFrPvcBandwidthEntry OBJECT-TYPE
		SYNTAX HpnicfFrPvcBandwidthEntry
		MAX-ACCESS not-accessible
		STATUS current
		DESCRIPTION
			"Bandwidth Running statistics"
		INDEX { hpnicfPvcApplyFrClassIfIndex, 
			hpnicfPvcApplyFrClassDlciNum 
		}

		::= { hpnicfFrPvcBandwidthTable 1 }
		
	HpnicfFrPvcBandwidthEntry ::=
			SEQUENCE {                                                                                                                                                                          
				hpnicfFrPvcBandwidthMaxReservedBW
					Integer32,
				hpnicfFrPvcBandwidthAvailable
					Integer32					                                	                                            
				}    		 		                                                       
					
	hpnicfFrPvcBandwidthMaxReservedBW OBJECT-TYPE
		SYNTAX Integer32
		MAX-ACCESS read-only
		STATUS current
		DESCRIPTION
			"Max reserved bandWidth. Unit : Kbps"
		::= { hpnicfFrPvcBandwidthEntry 1 }	
		
	hpnicfFrPvcBandwidthAvailable OBJECT-TYPE
		SYNTAX Integer32
		MAX-ACCESS read-only
		STATUS current
		DESCRIPTION
			"Available bandWidth. Unit : Kbps"
		::= { hpnicfFrPvcBandwidthEntry 2 }  			
		
                                                                                                       
--hpnicfRTPQoSObjects 
		
	hpnicfRTPQoSObjects OBJECT IDENTIFIER ::= { hpnicfFrQoSObjects 2 } 
		
-- Rtpq applied on the Fr Class 
		
	hpnicfRTPFrClassApplyTable OBJECT-TYPE
		SYNTAX SEQUENCE OF HpnicfRTPFrClassApplyEntry
		MAX-ACCESS not-accessible
		STATUS current
		DESCRIPTION
			"A table of RTP(Realtime Transport Protocol) Queue instance."
		::= { hpnicfRTPQoSObjects 1 }
		
	hpnicfRTPFrClassApplyEntry OBJECT-TYPE
		SYNTAX HpnicfRTPFrClassApplyEntry
		MAX-ACCESS not-accessible
		STATUS current
		DESCRIPTION
			"RTP(Realtime Transport Protocol) Queue Configuration Information Entry."
		INDEX { hpnicfRTPFrClassApplyFrClassIndex }
		::= { hpnicfRTPFrClassApplyTable 1 }
		
	HpnicfRTPFrClassApplyEntry ::=
		SEQUENCE { 
			hpnicfRTPFrClassApplyFrClassIndex
				Integer32,
			hpnicfRTPFrClassApplyStartPort
				Integer32,
			hpnicfRTPFrClassApplyEndPort 
				Integer32,
			hpnicfRTPFrClassApplyBandWidth 
				Integer32,
			hpnicfRTPFrClassApplyCbs 
				Integer32,				
			hpnicfRTPFrClassApplyRowStatus 
				RowStatus                               		 
		}  
		
	hpnicfRTPFrClassApplyFrClassIndex OBJECT-TYPE
		SYNTAX Integer32
		MAX-ACCESS not-accessible
		STATUS current
		DESCRIPTION
			"Fr Class Index, equal to HpnicfFrClassIndex."
		::= { hpnicfRTPFrClassApplyEntry 1 }    
		
	hpnicfRTPFrClassApplyStartPort OBJECT-TYPE
		SYNTAX Integer32(2000..65535)
		MAX-ACCESS read-create
		STATUS current
		DESCRIPTION
			"                                                                                        
			RTP-PORT(3): start-port: 2000~65535   
			"                         
		::= { hpnicfRTPFrClassApplyEntry 2 }
		
	hpnicfRTPFrClassApplyEndPort OBJECT-TYPE
		SYNTAX Integer32(2000..65535)
		MAX-ACCESS read-create
		STATUS current
		DESCRIPTION
			"                         
			RTP-PORT(3): end-port: 2000~65535
			"                         
		::= { hpnicfRTPFrClassApplyEntry 3 }
		
	hpnicfRTPFrClassApplyBandWidth OBJECT-TYPE
		SYNTAX Integer32 (8..1000000)
		MAX-ACCESS read-create
		STATUS current
		DESCRIPTION
			"Max bandWidth Value:
			Absolute value: 8~1000000. Unit: Kbps             
			"                
		::= { hpnicfRTPFrClassApplyEntry 4 }  
		
	hpnicfRTPFrClassApplyCbs OBJECT-TYPE
		SYNTAX Integer32 (1500..2000000)
		MAX-ACCESS read-create
		STATUS current
		DESCRIPTION
			"
			Committed Burst Size: 1500~2000000. Unit: byte             
			"                
		::= { hpnicfRTPFrClassApplyEntry 5 }  		
		
	hpnicfRTPFrClassApplyRowStatus OBJECT-TYPE
		SYNTAX RowStatus
		MAX-ACCESS read-create
		STATUS current
		DESCRIPTION
			"RowStatus for RTPFrClassApply Table. 
			Three actions are used: active, createAndGo, destroy"
		::= { hpnicfRTPFrClassApplyEntry 6 } 

-- RTPQ statistics on the Fr Pvc 
		                 
	hpnicfRTPFrPvcQueueRunInfoTable OBJECT-TYPE
		SYNTAX SEQUENCE OF HpnicfRTPFrPvcQueueRunInfoEntry
		MAX-ACCESS not-accessible
		STATUS current
		DESCRIPTION
			"A table of Running statistics for RTP(Realtime Transport Protocol) Queue
			applied on the FR PVC"
		::= { hpnicfRTPQoSObjects 2 }
		
	hpnicfRTPFrPvcQueueRunInfoEntry OBJECT-TYPE
		SYNTAX HpnicfRTPFrPvcQueueRunInfoEntry
		MAX-ACCESS not-accessible
		STATUS current
		DESCRIPTION
			"RTP(Realtime Transport Protocol) Queue statistics entry."
		INDEX { hpnicfPvcApplyFrClassIfIndex,                        		
			hpnicfPvcApplyFrClassDlciNum                      	    
		}
		::= { hpnicfRTPFrPvcQueueRunInfoTable 1 }
		
	HpnicfRTPFrPvcQueueRunInfoEntry ::=
		SEQUENCE {
			hpnicfRTPFrPvcQueueSize
				Integer32,
			hpnicfRTPFrPvcQueueMaxSize
				Integer32, 
			hpnicfRTPFrPvcQueueOutputs
				Counter32,
			hpnicfRTPFrPvcQueueDiscards
				Counter32                                                                                                                                                                                                                                    
		}  
		    
	hpnicfRTPFrPvcQueueSize OBJECT-TYPE
		SYNTAX Integer32
		MAX-ACCESS read-only
		STATUS current
		DESCRIPTION
			"the packet number of RTP(Realtime Transport Protocol) Queue now."
		::= { hpnicfRTPFrPvcQueueRunInfoEntry 1 }    
		    		         
	hpnicfRTPFrPvcQueueMaxSize OBJECT-TYPE
		SYNTAX Integer32
		MAX-ACCESS read-only
		STATUS current
		DESCRIPTION
			"the Max packet number of RTP(Realtime Transport Protocol) Queue."
		::= { hpnicfRTPFrPvcQueueRunInfoEntry 2 }
		
	hpnicfRTPFrPvcQueueOutputs OBJECT-TYPE
		SYNTAX Counter32
		MAX-ACCESS read-only
		STATUS current
		DESCRIPTION
			"the Output packet number of RTP(Realtime Transport Protocol) Queue."
		::= { hpnicfRTPFrPvcQueueRunInfoEntry 3 } 
		         
	hpnicfRTPFrPvcQueueDiscards OBJECT-TYPE
		SYNTAX Counter32
		MAX-ACCESS read-only
		STATUS current
		DESCRIPTION
			"the Discarded packet number of RTP(Realtime Transport Protocol) Queue."
		::= { hpnicfRTPFrPvcQueueRunInfoEntry 4 }
											        
END

       
                             
                                                                                                       
