This MIB module manages the charging related function on the GGSN node of a GPRS system.
The following diagram illustrates a simplified GPRS logical architecture with the interface name denotations:
+==+ +===+ +====+ +====+ +===+
|MS|-----|BSS|-----|SGSN|---Gn---|GGSN|---Gi---|PDN|
+==+ +===+ +====+ +====+ +===+
\ /
Ga Ga
\ +==+ / |CG| +==+
Charging information in GPRS is collected for each MS by SGSNs and GGSNs that are serving that MS. The GGSN collects charging information for each MS based on both external data network usage and the GPRS network resources.
Acronyms and terms:
APN Access Point Name
BSS Base Station System
CCA Credit Control Answer
CDR Call Detail Record
CID Charging Identification
CG Charging Gateway
CGF Charging Gateway Functionality
CGG Charging Gateway Group.
DCCA Diameter Credit Control Application
ETSI European Telecommunications Standards
Institute
Ga Name of the interface between SGSN/GGSN and CG
Gi Name of the interface between GGSN and PDN
Gn Name of the interface between GGSN and SGSN
G-CDR Gateway GPRS Support Node-Call Detail Record
GGSN Gateway GPRS Support Node
GPRS General Packet Radio Service
GSM Global System for Mobile communication
GTP GPRS Tunneling Protocol
GTP' GTP enchanced for charging
IE Information Element
MS Mobile Station
PDN Packet Data Network
PDP Packet Data Protocol
SGSN Serving GPRS support Node
TOS Type of Service.
PSD Persistance Storage Device.
PTC Packet Transfer Command.
EPC Evolved Packet Core
PGW PDN Gateway
SGW Serving Gateway
SPGW When a single physical EPC Gateway acts as both SGW and
PGW for a session, then that session is said to be in SPGW mode.
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object is used to enable/disable the charging transaction feature on the GGSN. When the object is set to 'true', charging processing is enabled on the GGSN.
cgprsCgCdrLocalSeqNumEnable
1.3.6.1.4.1.9.9.192.1.1.2
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object is used to enable/disable the feature of using the local record sequence number field in G-CDRs on the GGSN. When the object is set to 'true', the G-CDRs contain the local record sequence number in the CDR.
cgprsCgCdrNodeIdEnable
1.3.6.1.4.1.9.9.192.1.1.3
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object is used to enable/disable the feature of using the NodeID field in G-CDRs on the GGSN. When the object is set to 'true', the G-CDRs include the NodeID field.
cgprsCgFlowControlEcho
1.3.6.1.4.1.9.9.192.1.1.4
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object is used to enable/disable flow control between the GGSN and CG. When the object is set to 'true', the GGSN enables private extension information element in the echo request. This is used for maintaining flow control on packets transmitted to the CG.
cgprsCgCdrPktsStatEnable
1.3.6.1.4.1.9.9.192.1.1.5
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object is used to enable/disable G-CDR packet statistics collection. When the object is set to 'true', the G-CDR is enabled to collect the packet statistics from cgprsGtpChargingPktsUplink and cgprsGtpChargingPktsDownlink object.
cgprsCgCdrNonPrimaryEnable
1.3.6.1.4.1.9.9.192.1.1.6
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object controls the generation of non-primary partial CDRs on GGSN as follows: 'true(1)' - the generation of non-primary partial CDRs is enabled. 'false(2)'- the generation of non-primary partial CDRs is disabled and all partial CDRs have the same content of primary partial CDRs.
cgprsCgCdrAggreLimit
1.3.6.1.4.1.9.9.192.1.1.7
Unsigned32 (1..255) · CDRs
The Maximum number of G-CDRs that can be aggregated in a charging data transfer message to a CG.
cgprsCgTransInterval
1.3.6.1.4.1.9.9.192.1.1.8
Unsigned32 (1..4294967295) · seconds
Specifies the time interval between transfers of GPRS charging data for a PDP context (user session) between the GGSN and the charging gateway.
cgprsCgPktsQSize
1.3.6.1.4.1.9.9.192.1.1.9
Unsigned32 (1..512) · PDUs
The maximum size of the GGSN's queue of outstanding charging data transfer requests.
cgprsCgPathRequest
1.3.6.1.4.1.9.9.192.1.1.10
Unsigned32 (0..10) · minutes
The time interval between two TCP connection establishment retry attempts if the TCP connection can't be established for the communication with CG.
cgprsCgContainerVolThresh
1.3.6.1.4.1.9.9.192.1.1.11
Unsigned32 (1..4294967295) · bytes
The traffic volume threshold that triggers addition of a container and closing the G-CDR.
cgprsCgMapDataTos
1.3.6.1.4.1.9.9.192.1.1.12
Unsigned32 (0..5)
Specifies a IP Type of Service (TOS) mapping for GPRS charging data packets transmitted by the GGSN. A higher TOS mapping value indicates a higher service priority. The values '6' and '7' are not used in the mapping.
cgprsCgPathProtocol
1.3.6.1.4.1.9.9.192.1.1.13
INTEGER1 = udp2 = tcp · Integer32
Specifies the transport protocol used by the GGSN to transmit and receive charging data to and from a CG.
udp - use UDP for charging data transfers.
tcp - use TCP for charging data transfers.
cgprsCgServerSwitchTimeout
1.3.6.1.4.1.9.9.192.1.1.14
Unsigned32 (0..300) · seconds
A timeout value that determines when the GGSN attempts to switch over to an alternate CG after a destination CG cannot be located or becomes unusable. Setting value 0 disables this feature.
cgprsCgConditionLimit
1.3.6.1.4.1.9.9.192.1.1.15
Unsigned32 (1..100)
The maximum number of charging condition changes to trigger closure of a G-CDR partial record. When the maximum number is reached, the G-CDR is closed and a new partial G-CDR is opened.
cgprsCgGtpPrimePort
1.3.6.1.4.1.9.9.192.1.1.16
Unsigned32 (1024..10000)
The destination port for transferring G-CDR between GGSN and CG. The port number is used for both UDP and TCP.
cgprsCgN3BufferSize
1.3.6.1.4.1.9.9.192.1.1.17
Unsigned32 (300..1460) · bytes
The transmit buffer size for sending GTP' PDU.
cgprsCgChargeForRoamersOnly
1.3.6.1.4.1.9.9.192.1.1.18
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object is used to indicate to the GGSN that it needs to generate CDRs only for roamers. When the object is set to 'false' GGSN will generate CDRs for non-roamers also. This option only affects new PDP contexts while the ones that have already been created are not affected.
cgprsCgTariffTimeMaxEntries
1.3.6.1.4.1.9.9.192.1.1.19
Unsigned32 (1..32)
Indicates the upper limit on the number of entries that the
cgprsCgTariffTimeTable may contain.
cgprsCgTariffTimeNextIndex
1.3.6.1.4.1.9.9.192.1.1.20
TestAndIncrRepresents integer-valued information used for atomic operations. When the management protocol is used to specify that an object instance having this syntax is to be modified, the new value supplied via the management protocol must precisely match the value presently held by the instance. If not, the management protocol set operation fails with an error of `inconsistentValue'. Otherwise, if the current value is the maximum value of 2^31-1 (2147483647 decimal), then the value held by the instance is wrapped to zero; otherwise, the value held by the instance is incremented by one. (Note that regardless of whether the management protocol set operation succeeds, the variable- binding in the request and response PDUs are identical.)
The value of the ACCESS clause for objects having this syntax is either `read-write' or `read-create'. When an instance of a columnar object having this syntax is created, any value may be supplied via the management protocol.
When the network management portion of the system is re- initialized, the value of every object instance having this syntax must either be incremented from its value prior to the re-initialization, or (if the value prior to the re- initialization is unknown) be set to a pseudo-randomly generated value. (0..2147483647) · Integer32
This object contains an appropriate value to be used for cgprsCgTariffTimeIndex when creating entries in the cgprsCgTariffTimeTable. The value 0 indicates that no new rows can be created. Otherwise, it is recommended that values are assigned contiguously, starting from 1. Algorithm for Tariff Time creation by a Manager: done = false while done == false begin index = GET (cgprsCgTariffTimeNextIndex.0) if ( index == 0 ) break; SET (cgprsCgTariffTimeNextIndex.0=index) && SET(cgprsCgTariffTimeRowStatus.index=createAndGo) if (set failed) done = false else done = true end.
This object is used to close all existing CDRs, transfer them to the CG and open new partial CDRs for any existing PDP contexts. closeCdr - close all existing CDRs. canCloseCdr - CDRs can be closed. This object can be set to 'closeCdr' only when it is in 'canCloseCdr' state. cannotCloseCdr - CDRs cannot be closed. closingCdr - CDRs are being closed.
cgprsCgSgsnChangeLimit
1.3.6.1.4.1.9.9.192.1.1.24
Unsigned32 (0..15)
This object denotes the maximum number of SGSN changes that will trigger the closure of G-CDR or partial record. When the maximum number is reached, the record is closed and a new partial record is opened. When the value is zero, then for every SGSN change, the G-CDR or partial record is closed. This object is deprecated by cgprsCgCdrSgsnChangeLimit.
cgprsCgCdrSgsnChangeLimit
1.3.6.1.4.1.9.9.192.1.1.25
Integer32 (-1..15)
This object denotes the maximum number of SGSN changes that will trigger the closure of G-CDR or partial record. When the maximum number is reached, the record is closed and a new partial record is opened. When the value is zero, then for every SGSN change, the G-CDR or partial record is closed. If the value of object is set to '-1', then the number of SGSN changes is not associated with the closure of G-CDR or creation/closure of partial record.
This object specifies the release specific parameters that needs to be used when communicating with the CG. for eg: Qos Profile Info, Charging Characteristics field, etc.,
This object also defines the charging release to enable the CRs implemented in GGSN version 5.0 (GGSN version is defined in cGgsnVersion in CISCO-GGSN-MIB, which is out of scope of this MIB).
'release98' - No behavior change in GGSN 5.0. 'release99' - From the baseline support of R99 that we already have in GGSN4.0, add support of 32.015 CR 032 with the latest (Data Record Format Version) of 32.015 v3.10.0. 'release4' or 'release5' - From the baseline support of R99 in GGSN 5.0, add 32.215 CR 002 and Charging Characteristics Selection Mode.
cgprsCgGtpShortHeaderEnable
1.3.6.1.4.1.9.9.192.1.1.27
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object enables the GGSN to use the 6-byte GTP short header for charging transactions. This object cannot be toggled when there are pending CDR's.
cgprsCgTransFormNumRespEnable
1.3.6.1.4.1.9.9.192.1.1.28
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
When this object is set to 'true', the data record transfer response IE uses the one octet format which contains the number of records responded. When set to 'false', it uses the 2-octet format and it contains the length of this IE. This object cannot be toggled when there are active MS sessions on the GGSN.
cgprsCgContainerTimeLimit
1.3.6.1.4.1.9.9.192.1.1.29
Unsigned32 (0 | 5..4294967295) · seconds
Reference: 3GPP; Technical Specification Group Services and System Aspects; Telecommunication Management; Charging and billing; GSM call and event data for the Packet Switched (PS) domain (Release 1999); 3GPP TS 32.015
A G-CDR is used to collect charging information related to the packet data information for a GPRS mobile in the GGSN.The List of Traffic Data Volumes attribute of the G-CDR consists of a set of containers, that can be closed on certain trigers conditions like,
- Data volume limit - Time duration limit - Maximum number of change condition limit
This object when set to some non-zero time value, enables the G-CDR updation when the time limit is reached.
cgprsCgChargingCharReject
1.3.6.1.4.1.9.9.192.1.1.32
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object defines whether the incoming PDP create request has to be rejected or accepted depending on the charging profile match.
If in case a PDP create request comes in and if there is no matching profile configured and there is no overriding profile set, then if this object is set to 'false', the PDP will be accepted and the default profile will be applied to it. If this object is set to 'true', the PDP will be rejected if no matching profile in the create request or overriding profile is present.
cgprsCgServiceMode
1.3.6.1.4.1.9.9.192.1.1.33
INTEGER1 = operational2 = maintenance · Integer32
This object specifies the service mode for charging. The charging functions in the GGSN involve mainly collection/accumulation of CDRs and transmitting CDRs to the Charging Gateways. The charging service-mode function has no impact to the collection/accumulation of CDRs. The charging service mode function only involves the transmission of CDRs to the charging gateways. The charging service-mode has the following two states:
'operational' : Normal operation. 'maintenance' : In this state, transmission of CDRs to the charging gateways will not be performed; However, collection and accumulation of CDRs will continue as is done normally.
The default charging service-mode state is 'in-service'(This mode is set with value as 'operational'). When the GGSN is in 'outOfService' mode set in cGgsnServiceMode, all the charging configurations will be allowed. In the system-init phase, the charging service mode CLI configs will not be handled.
The handling of 'Redirecting Request', 'Node Alive' and charging gateway switchover mechanisms will not be performed while the charging is in maintenance mode. After the mode is changed to in-service, the messages in the pending queue will be sent towards the newly configured active charging gateway and the normal functions will continue from thereon.
When switching between modes, traps will be generated using cgprsCgInServiceModeNotif and cgprsCgMaintenanceModeNotif. This object is deprecated by cgprsCgGroupServiceMode.
cgprsCgPartialCdrGenEnable
1.3.6.1.4.1.9.9.192.1.1.34
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
A Primary CDR refers to the first CDR for a PDP. Subsequent CDR's, called secondary CDR's, will be opened when the primary CDR is closed by triggers like exceeding data volume limit, max number of charging condition changes, SGSN change, etc., A Partial CDR is such subsequent CDR in which some fields, like Access Point Name, PDP Type, etc., that cannot change during the life time of the PDP are not included. This object controls the generation of partial CDRs on GGSN. When set to 'true', partial CDR's are generated. When set to 'false', partial CDR's are not generated i.e., all the fields are sent in the CDR.
cgprsCgSwitchOverPriority
1.3.6.1.4.1.9.9.192.1.1.35
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object is used to enable the switch over priority mechanism.
'true' - If a higher priority CG comes up, it becomes the
active CG.
'false' - If a higher priority CG comes up, the existing active CG continues to be active. This object is deprecated by cgprsCgGroupSwitchOverPriority.
cgprsCgCharSelectionMode
1.3.6.1.4.1.9.9.192.1.1.36
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object is used to add the charging characteristic selection mode in the CDR.
'true' - Charging characteristic selection mode will be
added in the CDR. 'false' - Charging characteristic selection mode will not be added in the CDR.
cgprsCgReconnect
1.3.6.1.4.1.9.9.192.1.1.37
Integer32 (0..600) · minutes
This object enables the charging reconnect feature.
This feature when enabled, reconnects to the CG that is unreachable due to some transient network or link failures. It is only needed for CG using path protocoal as UDP and when the CG can only respond to echo but cannot send echo request.
By default this feature is disabled.
cgprsCgPtcEnable
1.3.6.1.4.1.9.9.192.1.1.38
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
Reference: GSM 12.15 version 7.6.0 Release 1998
When this object is set, GGSN sends the Packet Transfer
Command (PTC) IE in the CDR message.
'true' - send PTC IE with the CDR. The value in the IE will be 'Send Data Record Packet' if the object cgprsCgPtcPossiblyDupEnable is not set to 'true' and there is no condition of possibly duplicate scenario. 'false' - do not send PTC IE with the CDR.
This object cannot be set to 'false' if the object cgprsCgPtcPossiblyDupEnable is set to 'true'.
cgprsCgPtcPossiblyDupEnable
1.3.6.1.4.1.9.9.192.1.1.39
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
Reference: GSM 12.15 version 7.6.0 Release 1998
This object is used to send possibly duplicated Data Record Packet. When the CDR packet is directed to a secondary CGF (by a CDR generating node) because the currently used CGF is not working or the CDR transfer is not working properly, then this Packet Transfer Command is used instead of the normal 'Send Data Record Packet'.
This object has no meaning unless the object cgprsCgPtcEnable is set to 'true'.
'true' - send PTC IE with 'Possibly Duplicate Record' with the CDR when the possibly duplicate scenario occurs. 'false' - Do not set the PTC IE with 'Possibly Duplicate Record' even if possibly duplicate scenario occurs.
cgprsCgCdrOptionServiceRecord
1.3.6.1.4.1.9.9.192.1.1.40
Unsigned32 (0..100)
G-CDRs contain information for part, or the entire duration, of a PDP context. The G-CDR includes information such as the subscriber (MSISDN, IMSI), APN used, QoS applied, SGSN ID (as the mobile access location), a time stamp and duration, data volume recorded separately for the upstream and downstream direction, and volume thresholds for intermediate CDR generation and tariff time switches.
In addition to all of the above, additionally, enhanced G-CDRs contain a service-record part that contains the usage data of each service flow used by a PDP session (specified by category ID). For example, the upstream and downstream volume and duration is recorded per service flow.
By default this feature is not enabled.
The number specified is the maximum number of service records a G-CDR can contain before the G-CDR is closed and a partial G-CDR is opened.
cgprsCgPartialCdrGenEnableAll
1.3.6.1.4.1.9.9.192.1.1.41
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object when set to 'true' enables the GGSN to copy the SGSN list for charging release prior to release 4 (cgprsCgRelease). The SGSN change limit trigger specified in the object cgprsCgCdrSgsnChangeLimit has to be set as well.
If this object is set to 'false'-current SGSN address may not be present in CDR.
This object can be set to true only when the object cgprsCgPartialCdrGenEnable is set to 'true'.
cgprsCgCdrOptionApn
1.3.6.1.4.1.9.9.192.1.1.42
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object when set to 'true' includes real APN in the G-CDR and accounting records.
If object is set to 'false'- Access Point Name is disabled in G-CDRs. The option cannot be disabed if the CHARGING_RELEASE is 98 or 99.
cgprsCgCdrOptionVirtualApn
1.3.6.1.4.1.9.9.192.1.1.43
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object when set to 'true' includes virtual APN in G-CDR and accounting records.
If this object is set to 'false'- Real APN is included in the G-CDRs.
cgprsCgCdrOptionApnSelMode
1.3.6.1.4.1.9.9.192.1.1.44
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object when set to 'true' includes 'APN selection mode' field in G-CDR and sent to CG.
The field 'APN selection mode' indicates how the SGSN selected the APN to be used. Selection Mode indicates whether a subscribed APN was selected, or whether a non subscribed APN sent by the MS, or a non-subscribed APN chosen by SGSN was was selected.
cgprsCgCdrOptionDynamicAddr
1.3.6.1.4.1.9.9.192.1.1.45
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object when set to 'true' includes 'Dynamic Address' field in G-CDR and sent to CG.
This field indicates that PDP address has been dynamically allocated for that particular PDP context. This field is missing if address is static i.e. part of PDP context subscription.
cgprsCgCdrOptionNip
1.3.6.1.4.1.9.9.192.1.1.46
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object when set to 'true' includes NIP (Network Initiated PDP context) field in G-CDR and sent to CG.
This field indicates that PDP context is network initiated. The field is missing in case of mobile activated PDP context.
cgprsCgCdrOptionPdpAddress
1.3.6.1.4.1.9.9.192.1.1.47
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object when set to 'true' includes 'Served PDP Address' field in G-CDR and sent to CG.
This field (Served PDP Address) contains the PDP address of the served IMSI. This is a network layer address i.e. of type IP version 4 or IP version 6. This parameter shall be present except when both the PDP type is PPP and dynamic PDP address assignment is used.
cgprsCgCdrOptionPdpType
1.3.6.1.4.1.9.9.192.1.1.48
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object if set to 'true' includes 'PDP Type' field in G-CDRs.
This field defines the PDP type,e.g.IP,PPP or IHOSS:OSP.
cgprsCgCdrOptionSerMsisdn
1.3.6.1.4.1.9.9.192.1.1.49
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object when set to 'true' enable the GGSN to provide the MSISDN number from the create PDP context request in the G-CDRs.
This field contains the Mobile Station (MS) ISDN number (MSISDN) of the served party. The term 'served' party is used to describe the mobile subscriber involved in the transaction recorded.
If the object is set to 'false', Disable the GGSN to provide MSISDN number in the G-CDRs.
cgprsCgCdrOptionSgsnPlmn
1.3.6.1.4.1.9.9.192.1.1.50
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object whe set to 'true' includes SGSN PLMN ID (MCC and MNC) in the G-CDR and sent to CG.
The SGSN PLMN ID field contains a SGSN PLMN Identifier, for the SGSNs which have been connected during the record. This implies that when the MS moves to another PLMN, the G-CDR has to be closed.
cgprsCgCdrOptionCamelCharInfo
1.3.6.1.4.1.9.9.192.1.1.51
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
Reference: 3GPP;Technical Specification Group Services and System Aspects;Telecommunication Management;Charging Management; Charging data description for the Packet Switched (PS) domain (Release 5); 3GPP TS 32.215 V5.7.0
This object if set to 'true', S-CDR CAMEL information recieved from SGSN, which is a copy of Tag and Length from SGSN's CDR (S-CDR) is included in G-CDR.
If this object is set to 'false', CAMEL field is not included in G-CDRs.
cgprsCgCdrOptionImeisv
1.3.6.1.4.1.9.9.192.1.1.52
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object when set to 'true' the IMEI (Software Version) IE shall be handled by GGSN in a transparent manner and shall be sent to the Charging gateway that is release 5.0 compliant without any modification.
International Mobile Equipment Identity IMEI Software Version (IMEISV): indicates identity of mobile equipment used by the subscriber.
cgprsCgCdrOptionMsTimeZone
1.3.6.1.4.1.9.9.192.1.1.53
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object when set to 'true' includes MS Time Zone field in the G-CDRs and sent to CG.
MS Time Zone indicates the offset between universal time and local time in steps of 15 minutes of where the MS currently resides.
cgprsCgCdrOptionRatType
1.3.6.1.4.1.9.9.192.1.1.54
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object when set to 'true' includes Radio Access Type (RAT) IE in the G-CDRs and sent to CG.
RAT, indicates whether the SGSN serves the User Equipment (UE) by Universal Terrestrial Radio Access Network (UTRAN) or GSM/EDGE RAN (GERAN).
cgprsCgCdrOptionUserLocInfo
1.3.6.1.4.1.9.9.192.1.1.55
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object when set to 'true' includes the User Location Information IE in G-CDRs and sent to CG.
User Location Information gives Cell Global Identity (CGI)/Service Area Identity (SAI) of where the MS is currently located.
cgprsCgServiceRecordIncludeRat
1.3.6.1.4.1.9.9.192.1.1.56
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object when set to 'true', writes the RAT value into into the service record when RAT change is recieved.
If this object is set to 'false', it disables the RAT trigger set by the object cgprsCgProfileContentPostRatChange.
cgprsCgServiceRecordIncludePlmn
1.3.6.1.4.1.9.9.192.1.1.57
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object when set to 'true', writes the PLMN-ID of the PDP into the service record when there is change in the PLMN-ID.
If this object is set to 'false', it disables the plmn trigger set by the object cgprsCgProfileContentPostPlmnChange.
cgprsCgChargingSrcInterface
1.3.6.1.4.1.9.9.192.1.1.58
Integer32 (-1..2147483647)
This object specifies the loopback interface to be used by GGSN as the charging source interface. When this is set to any value other than -1, the GTP path to the charging gateways will be re-created with the new address obtained from the loopback interface and this address will be used for all the charging messages in GGSN. When this is set to -1, the global GTP virtual template will be used as source interface for all charging messages.
cgprsCgServiceRecordIncludeUserLocInfo
1.3.6.1.4.1.9.9.192.1.1.59
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
When this object is set to 'true', the user location information of the PDP is written into the service record when there is change in the user location information.
When this object is set to 'false', the user location information of the PDP is not written into the service record.
cgprsCgScdrEnable
1.3.6.1.4.1.9.9.192.1.1.63
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object specifies whether the SGW CDR generation is enabled or disabled, for the sessions in SPGW mode. When set to 'true' SGW mode CDR generation is enabled. when set to 'false' SGW mode CDR generation is Disabled. By default the value of this object is 'false'.
cgprsCgDownTimes
1.3.6.1.4.1.9.9.192.1.3.1
Counter32 · transitions
The number of occurrences of cgprsCgAlarmEchoFailure traps state transitions since system startup.
Trigger Condition: This counter is incremented when the GGSN detects a CG has gone down. Condition includes, a) Link state down. b) Redirection request.
cgprsCgAccPtNum
1.3.6.1.4.1.9.9.192.1.3.2
Counter32 · access-points
The number of access points for which charging data is being collected.
Trigger Condition: This counter is triggered when a CDR is opened for a PDP and that PDP belongs to a new APN.
cgprsCgCdrOpenedNum
1.3.6.1.4.1.9.9.192.1.3.3
Gauge32 · CDRs
The number of currently opened G-CDRs on the GGSN. A G-CDR shall be opened for each activated PDP context.
Trigger Condition: This counter is triggered when a new CDR is opened. This new CDR might be opened initially and also due to the closure of the existing opened CDR.
cgprsCgCdrClosedNum
1.3.6.1.4.1.9.9.192.1.3.4
Gauge32 · CDRs
The number of currently closed G-CDRs on the GGSN which have not been sent to the CG. The G-CDR shall be closed on encountering some trigger conditions. In the event that the G-CDR is closed and the PDP remains active, a new G-CDR will be opened for the PDP.
Trigger Condition: This counter is triggered when the CDR is closed. The closure might be due to different trigger conditions. a) Clearing of the CDR using CLI. b) Tigger conditions like vloume limit, time limit, sgsn change limit, container change limit set with configuration objects. c) CDR size reaches maximum.
cgprsCgContainerNum
1.3.6.1.4.1.9.9.192.1.3.5
Gauge32 · containers
The number of currently open or closed charging containers.
Trigger Condition: This counter is triggered when the CDR is closed or the CDR is updated.
cgprsCgPendingMsgNum
1.3.6.1.4.1.9.9.192.1.3.6
Gauge32 · messages
The number of currently pending G-CDR output messages.
Trigger Condition: This counter is triggered when the CDR is sent to the CG and the response from the CG failed.
cgprsCgSentMsgNum
1.3.6.1.4.1.9.9.192.1.3.7
Counter32 · messages
The number of transmitted G-CDR output messages since the charging service is enabled. The sent G-CDR is the CDR that was sent to the CG for which the GGSN got a response back from the CG.
Trigger Condition: This counter is incremented when a CDR is sent to the CG and got a positive response.
cgprsCgTotalCdrOpened
1.3.6.1.4.1.9.9.192.1.3.8
Counter32 · CDRs
This object gives the total number of CDRs opened on the GGSN, either since system startup or since the last time the charging statistics was cleared.
Trigger Condition: This counter is incremented when a new CDR is opened. This new CDR might be opened initially and also due to the closure of the existing opened CDR.
cgprsCgTotalContainerCreated
1.3.6.1.4.1.9.9.192.1.3.9
Counter32 · containers
This object gives the total number of containers created on the GGSN, either since system startup or since the last time the charging statistics was cleared.
Trigger Condition: This counter is incremented when the CDR is closed or the CDR is updated.
cgprsCgTotalServiceRecords
1.3.6.1.4.1.9.9.192.1.3.10
Counter32 · records
This object reflects the total number of service records created on the GGSN, either since the system startup or since the time the service aware feature is enabled.
Trigger Condition: This counter is incremented when the service record is closed.
cgprsCgAlarmEnable
1.3.6.1.4.1.9.9.192.1.4.1
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
The object controls the generation of cgprsCgAlarmNotif as follows: 'true(1)' - the generation of cgprsCgAlarmNotif notifications is enabled. 'false(2)' - the generation of cgprsCgAlarmNotif notifications is disabled.
cgprsCgAlarmHistTableMax
1.3.6.1.4.1.9.9.192.1.4.2
Unsigned32 (1..4294967295)
Specifies the upper limit on the number of entries
that the cgprsCgAlarmHistTable may contain.
cgprsCgAlarmHistLatestIndex
1.3.6.1.4.1.9.9.192.1.4.4
Unsigned32 (1..4294967295)
The value of cgprsCgAlarmHistIndex for the most recently created entry in cgprsCgAlarmHistTable.
cgprsCgGatewayGroupAlarmEnable
1.3.6.1.4.1.9.9.192.1.4.6
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
The object controls the generation of cgprsCgGatewayGroupAlarmNotif as follows: 'true(1)' - the generation of cgprsCgGatewayGroupAlarmNotif notifications is enabled. 'false(2)' - the generation of cgprsCgGatewayGroupAlarmNotif notifications is disabled.
cgprsCgActiveChgGatewayAddrType
1.3.6.1.4.1.9.9.192.1.5.1
InetAddressType0 = unknown1 = ipv42 = ipv63 = ipv4z4 = ipv6z16 = dnsA value that represents a type of Internet address.
unknown(0) An unknown address type. This value MUST
be used if the value of the corresponding InetAddress object is a zero-length string. It may also be used to indicate an IP address that is not in one of the formats defined below.
ipv4(1) An IPv4 address as defined by the
InetAddressIPv4 textual convention.
ipv6(2) An IPv6 address as defined by the
InetAddressIPv6 textual convention.
ipv4z(3) A non-global IPv4 address including a zone
index as defined by the InetAddressIPv4z textual convention.
ipv6z(4) A non-global IPv6 address including a zone
index as defined by the InetAddressIPv6z textual convention.
dns(16) A DNS domain name as defined by the
InetAddressDNS textual convention.
Each definition of a concrete InetAddressType value must be accompanied by a definition of a textual convention for use with that InetAddressType.
To support future extensions, the InetAddressType textual convention SHOULD NOT be sub-typed in object type definitions. It MAY be sub-typed in compliance statements in order to require only a subset of these address types for a compliant implementation.
Implementations must ensure that InetAddressType objects and any dependent objects (e.g., InetAddress objects) are consistent. An inconsistentValue error must be generated if an attempt to change an InetAddressType object would, for example, lead to an undefined InetAddress value. In particular, InetAddressType/InetAddress pairs must be changed together if the address type changes (e.g., from ipv6(2) to ipv4(1)). · Integer32
This object specifies the address type of the active charging gateway. This object is deprecated by cgprsCgGatewayGroupStatusAddrType.
cgprsCgActiveChgGatewayAddress
1.3.6.1.4.1.9.9.192.1.5.2
InetAddressDenotes a generic Internet address.
An InetAddress value is always interpreted within the context of an InetAddressType value. Every usage of the InetAddress textual convention is required to specify the InetAddressType object that provides the context. It is suggested that the InetAddressType object be logically registered before the object(s) that use the InetAddress textual convention, if they appear in the same logical row.
The value of an InetAddress object must always be consistent with the value of the associated InetAddressType object. Attempts to set an InetAddress object to a value inconsistent with the associated InetAddressType must fail with an inconsistentValue error.
When this textual convention is used as the syntax of an index object, there may be issues with the limit of 128 sub-identifiers specified in SMIv2, STD 58. In this case, the object definition MUST include a 'SIZE' clause to limit the number of potential instance sub-identifiers; otherwise the applicable constraints MUST be stated in the appropriate conceptual row DESCRIPTION clauses, or in the surrounding documentation if there is no single DESCRIPTION clause that is appropriate. SIZE (0..255) · OCTET STRING
This object specifies the address of the active charging gateway.
The type of address will be represented by cgprsCgActiveChgGatewayAddrType. This object is deprecated by cgprsCgGatewayGroupStatusActiveCgAddr.
cgprsCgOldChgGatewayAddress
1.3.6.1.4.1.9.9.192.1.5.3
InetAddressDenotes a generic Internet address.
An InetAddress value is always interpreted within the context of an InetAddressType value. Every usage of the InetAddress textual convention is required to specify the InetAddressType object that provides the context. It is suggested that the InetAddressType object be logically registered before the object(s) that use the InetAddress textual convention, if they appear in the same logical row.
The value of an InetAddress object must always be consistent with the value of the associated InetAddressType object. Attempts to set an InetAddress object to a value inconsistent with the associated InetAddressType must fail with an inconsistentValue error.
When this textual convention is used as the syntax of an index object, there may be issues with the limit of 128 sub-identifiers specified in SMIv2, STD 58. In this case, the object definition MUST include a 'SIZE' clause to limit the number of potential instance sub-identifiers; otherwise the applicable constraints MUST be stated in the appropriate conceptual row DESCRIPTION clauses, or in the surrounding documentation if there is no single DESCRIPTION clause that is appropriate. SIZE (0..255) · OCTET STRING
This object specifies the address of the previous active charging gateway. The type of address will same as the one present in cgprsCgActiveChgGatewayAddrType. This object is deprecated by cgprsCgGatewayGroupStatusOldCgAddr.
Table details
cgprsCgTariffTimeTable
1.3.6.1.4.1.9.9.192.1.1.21
Index: cgprsCgTariffTimeIndex
The tariff time table. The tariff time table contains all currently configured tariff times on the GGSN
cgprsCgTariffTimeIndex
1.3.6.1.4.1.9.9.192.1.1.21.1.1
Unsigned32
An arbitrary non-zero integer value uniquely identifying each charging tariff time.
cgprsCgTariffTimeRowStatus
1.3.6.1.4.1.9.9.192.1.1.21.1.2
RowStatus1 = active2 = notInService3 = notReady4 = createAndGo5 = createAndWait6 = destroyThe RowStatus textual convention is used to manage the creation and deletion of conceptual rows, and is used as the value of the SYNTAX clause for the status column of a conceptual row (as described in Section 7.7.1 of [2].)
The status column has six defined values:
- `active', which indicates that the conceptual row is available for use by the managed device;
- `notInService', which indicates that the conceptual row exists in the agent, but is unavailable for use by the managed device (see NOTE below); 'notInService' has no implication regarding the internal consistency of the row, availability of resources, or consistency with the current state of the managed device;
- `notReady', which indicates that the conceptual row exists in the agent, but is missing information necessary in order to be available for use by the managed device (i.e., one or more required columns in the conceptual row have not been instanciated);
- `createAndGo', which is supplied by a management station wishing to create a new instance of a conceptual row and to have its status automatically set to active, making it available for use by the managed device;
- `createAndWait', which is supplied by a management station wishing to create a new instance of a conceptual row (but not make it available for use by the managed device); and, - `destroy', which is supplied by a management station wishing to delete all of the instances associated with an existing conceptual row.
Whereas five of the six values (all except `notReady') may be specified in a management protocol set operation, only three values will be returned in response to a management
protocol retrieval operation: `notReady', `notInService' or
`active'. That is, when queried, an existing conceptual row
has only three states: it is either available for use by
the managed device (the status column has value `active'); it is not available for use by the managed device, though the agent has sufficient information to attempt to make it so (the status column has value `notInService'); or, it is not available for use by the managed device, and an attempt to make it so would fail because the agent has insufficient information (the state column has value `notReady').
NOTE WELL
This textual convention may be used for a MIB table, irrespective of whether the values of that table's conceptual rows are able to be modified while it is active, or whether its conceptual rows must be taken out of service in order to be modified. That is, it is the responsibility of the DESCRIPTION clause of the status column to specify whether the status column must not be `active' in order for the value of some other column of the same conceptual row to be modified. If such a specification is made, affected columns may be changed by an SNMP set PDU if the RowStatus would not be equal to `active' either immediately before or after processing the PDU. In other words, if the PDU also contained a varbind that would change the RowStatus value, the column in question may be changed if the RowStatus was not equal to `active' as the PDU was received, or if the varbind sets the status to a value other than 'active'.
Also note that whenever any elements of a row exist, the RowStatus column must also exist.
To summarize the effect of having a conceptual row with a status column having a SYNTAX clause value of RowStatus, consider the following state diagram:
STATE +--------------+-----------+-------------+-------------
| A | B | C | D
| |status col.|status column|
|status column | is | is |status column
ACTION |does not exist| notReady | notInService| is active
--------------+--------------+-----------+-------------+-------------
set status |noError ->D|inconsist- |inconsistent-|inconsistent-
column to | or | entValue| Value| Value
createAndGo |inconsistent- | | |
| Value| | |
--------------+--------------+-----------+-------------+-------------
set status |noError see 1|inconsist- |inconsistent-|inconsistent-
column to | or | entValue| Value| Value
createAndWait |wrongValue | | |
--------------+--------------+-----------+-------------+-------------
set status |inconsistent- |inconsist- |noError |noError
column to | Value| entValue| |
active | | | |
| | or | |
| | | |
| |see 2 ->D|see 8 ->D| ->D
--------------+--------------+-----------+-------------+-------------
set status |inconsistent- |inconsist- |noError |noError ->C
column to | Value| entValue| |
notInService | | | |
| | or | | or
| | | |
| |see 3 ->C| ->C|see 6
--------------+--------------+-----------+-------------+-------------
set status |noError |noError |noError |noError ->A
column to | | | | or
destroy | ->A| ->A| ->A|see 7
--------------+--------------+-----------+-------------+-------------
set any other |see 4 |noError |noError |see 5
column to some| | | |
value | | see 1| ->C| ->D
--------------+--------------+-----------+-------------+-------------
(1) goto B or C, depending on information available to the agent.
(2) if other variable bindings included in the same PDU, provide values for all columns which are missing but required, and all columns have acceptable values, then return noError and goto D.
(3) if other variable bindings included in the same PDU, provide legal values for all columns which are missing but required, then return noError and goto C.
(4) at the discretion of the agent, the return value may be either:
inconsistentName: because the agent does not choose to
create such an instance when the corresponding RowStatus instance does not exist, or
inconsistentValue: if the supplied value is
inconsistent with the state of some other MIB object's value, or
noError: because the agent chooses to create the instance.
If noError is returned, then the instance of the status column must also be created, and the new state is B or C, depending on the information available to the agent. If inconsistentName or inconsistentValue is returned, the row remains in state A.
(5) depending on the MIB definition for the column/table, either noError or inconsistentValue may be returned.
(6) the return value can indicate one of the following errors:
wrongValue: because the agent does not support notInService (e.g., an agent which does not support createAndWait), or
inconsistentValue: because the agent is unable to take the row out of service at this time, perhaps because it is in use and cannot be de-activated.
(7) the return value can indicate the following error:
inconsistentValue: because the agent is unable to remove the row at this time, perhaps because it is in use and cannot be de-activated.
(8) the transition to D can fail, e.g., if the values of the conceptual row are inconsistent, then the error code would be inconsistentValue.
NOTE: Other processing of (this and other varbinds of) the set request may result in a response other than noError being returned, e.g., wrongValue, noCreation, etc.
Conceptual Row Creation
There are four potential interactions when creating a
conceptual row: selecting an instance-identifier which is
not in use; creating the conceptual row; initializing any objects for which the agent does not supply a default; and, making the conceptual row available for use by the managed device.
Interaction 1: Selecting an Instance-Identifier
The algorithm used to select an instance-identifier varies for each conceptual row. In some cases, the instance- identifier is semantically significant, e.g., the destination address of a route, and a management station selects the instance-identifier according to the semantics.
In other cases, the instance-identifier is used solely to distinguish conceptual rows, and a management station without specific knowledge of the conceptual row might examine the instances present in order to determine an unused instance-identifier. (This approach may be used, but it is often highly sub-optimal; however, it is also a questionable practice for a naive management station to attempt conceptual row creation.)
Alternately, the MIB module which defines the conceptual row might provide one or more objects which provide assistance in determining an unused instance-identifier. For example, if the conceptual row is indexed by an integer-value, then an object having an integer-valued SYNTAX clause might be defined for such a purpose, allowing a management station to issue a management protocol retrieval operation. In order to avoid unnecessary collisions between competing management stations, `adjacent' retrievals of this object should be different.
Finally, the management station could select a pseudo-random number to use as the index. In the event that this index
was already in use and an inconsistentValue was returned in response to the management protocol set operation, the management station should simply select a new pseudo-random number and retry the operation.
A MIB designer should choose between the two latter algorithms based on the size of the table (and therefore the efficiency of each algorithm). For tables in which a large number of entries are expected, it is recommended that a MIB object be defined that returns an acceptable index for creation. For tables with small numbers of entries, it is recommended that the latter pseudo-random index mechanism be used.
Interaction 2: Creating the Conceptual Row
Once an unused instance-identifier has been selected, the management station determines if it wishes to create and activate the conceptual row in one transaction or in a negotiated set of interactions.
Interaction 2a: Creating and Activating the Conceptual Row
The management station must first determine the column requirements, i.e., it must determine those columns for which it must or must not provide values. Depending on the complexity of the table and the management station's knowledge of the agent's capabilities, this determination can be made locally by the management station. Alternately, the management station issues a management protocol get operation to examine all columns in the conceptual row that it wishes to create. In response, for each column, there are three possible outcomes:
- a value is returned, indicating that some other management station has already created this conceptual row. We return to interaction 1.
- the exception `noSuchInstance' is returned, indicating that the agent implements the object-type associated with this column, and that this column in at least one conceptual row would be accessible in the MIB view used by the retrieval were it to exist. For those columns to which the agent provides read-create access, the `noSuchInstance' exception tells the management station that it should supply a value for this column when the conceptual row is to be created.
- the exception `noSuchObject' is returned, indicating that the agent does not implement the object-type associated with this column or that there is no conceptual row for which this column would be accessible in the MIB view used by the retrieval. As such, the management station can not issue any management protocol set operations to create an instance of this column.
Once the column requirements have been determined, a management protocol set operation is accordingly issued. This operation also sets the new instance of the status column to `createAndGo'.
When the agent processes the set operation, it verifies that it has sufficient information to make the conceptual row available for use by the managed device. The information
available to the agent is provided by two sources: the
management protocol set operation which creates the conceptual row, and, implementation-specific defaults supplied by the agent (note that an agent must provide implementation-specific defaults for at least those objects which it implements as read-only). If there is sufficient information available, then the conceptual row is created, a `noError' response is returned, the status column is set to `active', and no further interactions are necessary (i.e., interactions 3 and 4 are skipped). If there is insufficient information, then the conceptual row is not created, and the set operation fails with an error of `inconsistentValue'. On this error, the management station can issue a management protocol retrieval operation to determine if this was because it failed to specify a value for a required column, or, because the selected instance of the status column already existed. In the latter case, we return to interaction 1. In the former case, the management station can re-issue the set operation with the additional information, or begin interaction 2 again using `createAndWait' in order to negotiate creation of the conceptual row.
NOTE WELL
Regardless of the method used to determine the column requirements, it is possible that the management station might deem a column necessary when, in fact, the agent will not allow that particular columnar instance to be created or written. In this case, the management protocol set operation will fail with an error such as `noCreation' or `notWritable'. In this case, the management station decides whether it needs to be able to set a value for that particular columnar instance. If not, the management station re-issues the management protocol set operation, but without setting a value for that particular columnar instance; otherwise, the management station aborts the row creation algorithm.
Interaction 2b: Negotiating the Creation of the Conceptual Row
The management station issues a management protocol set operation which sets the desired instance of the status column to `createAndWait'. If the agent is unwilling to process a request of this sort, the set operation fails with an error of `wrongValue'. (As a consequence, such an agent must be prepared to accept a single management protocol set operation, i.e., interaction 2a above, containing all of the
columns indicated by its column requirements.) Otherwise,
the conceptual row is created, a `noError' response is returned, and the status column is immediately set to either `notInService' or `notReady', depending on whether it has sufficient information to (attempt to) make the conceptual row available for use by the managed device. If there is sufficient information available, then the status column is set to `notInService'; otherwise, if there is insufficient information, then the status column is set to `notReady'. Regardless, we proceed to interaction 3.
Interaction 3: Initializing non-defaulted Objects
The management station must now determine the column requirements. It issues a management protocol get operation to examine all columns in the created conceptual row. In the response, for each column, there are three possible outcomes:
- a value is returned, indicating that the agent implements the object-type associated with this column and had sufficient information to provide a value. For those columns to which the agent provides read-create access (and for which the agent allows their values to be changed after their creation), a value return tells the management station that it may issue additional management protocol set operations, if it desires, in order to change the value associated with this column.
- the exception `noSuchInstance' is returned, indicating that the agent implements the object-type associated with this column, and that this column in at least one conceptual row would be accessible in the MIB view used by the retrieval were it to exist. However, the agent does not have sufficient information to provide a value, and until a value is provided, the conceptual row may not be made available for use by the managed device. For those columns to which the agent provides read-create access, the `noSuchInstance' exception tells the management station that it must issue additional management protocol set operations, in order to provide a value associated with this column.
- the exception `noSuchObject' is returned, indicating that the agent does not implement the object-type associated with this column or that there is no conceptual row for which this column would be accessible in the MIB view used by the retrieval. As such, the management station can not issue any management protocol set operations to create an instance of this column.
If the value associated with the status column is `notReady', then the management station must first deal with all `noSuchInstance' columns, if any. Having done so, the value of the status column becomes `notInService', and we proceed to interaction 4.
Interaction 4: Making the Conceptual Row Available
Once the management station is satisfied with the values associated with the columns of the conceptual row, it issues a management protocol set operation to set the status column to `active'. If the agent has sufficient information to make the conceptual row available for use by the managed device, the management protocol set operation succeeds (a `noError' response is returned). Otherwise, the management protocol set operation fails with an error of `inconsistentValue'.
NOTE WELL
A conceptual row having a status column with value `notInService' or `notReady' is unavailable to the managed device. As such, it is possible for the managed device to create its own instances during the time between the management protocol set operation which sets the status column to `createAndWait' and the management protocol set operation which sets the status column to `active'. In this case, when the management protocol set operation is issued to set the status column to `active', the values held in the agent supersede those used by the managed device.
If the management station is prevented from setting the status column to `active' (e.g., due to management station or network failure) the conceptual row will be left in the `notInService' or `notReady' state, consuming resources indefinitely. The agent must detect conceptual rows that have been in either state for an abnormally long period of time and remove them. It is the responsibility of the DESCRIPTION clause of the status column to indicate what an abnormally long period of time would be. This period of time should be long enough to allow for human response time (including `think time') between the creation of the conceptual row and the setting of the status to `active'. In the absence of such information in the DESCRIPTION clause, it is suggested that this period be approximately 5 minutes in length. This removal action applies not only to newly-created rows, but also to previously active rows which are set to, and left in, the notInService state for a prolonged period exceeding that which is considered normal for such a conceptual row.
Conceptual Row Suspension
When a conceptual row is `active', the management station may issue a management protocol set operation which sets the instance of the status column to `notInService'. If the agent is unwilling to do so, the set operation fails with an error of `wrongValue' or `inconsistentValue'. Otherwise, the conceptual row is taken out of service, and a `noError' response is returned. It is the responsibility of the DESCRIPTION clause of the status column to indicate under what circumstances the status column should be taken out of service (e.g., in order for the value of some other column of the same conceptual row to be modified).
Conceptual Row Deletion
For deletion of conceptual rows, a management protocol set operation is issued which sets the instance of the status column to `destroy'. This request may be made regardless of the current value of the status column (e.g., it is possible to delete conceptual rows which are either `notReady',
`notInService' or `active'.) If the operation succeeds,
then all instances associated with the conceptual row are immediately removed. · Integer32
This object is used to create a new row or delete an existing row in this table. The objects in this table can't be modified if the value of this object is 'active'.RowStatus options 'notInService' and 'createAndWait' are not supported.
cgprsCgTariffTimeHour
1.3.6.1.4.1.9.9.192.1.1.21.1.3
Unsigned32 (0..23) · hours
Specifies the hours part of GPRS tariffs time.
cgprsCgTariffTimeMin
1.3.6.1.4.1.9.9.192.1.1.21.1.4
Unsigned32 (0..59) · minutes
Specifies the minutes part of GPRS tariffs time.
cgprsCgTariffTimeSec
1.3.6.1.4.1.9.9.192.1.1.21.1.5
Unsigned32 (0..59) · seconds
Specifies the seconds part of GPRS tariffs time.
cgprsCgGatewayTable
1.3.6.1.4.1.9.9.192.1.1.22
Index: cgprsCgGatewayIndex
Charging gateway table. The table contains a list of charging gateways. A charging gateway contains databases to store the collected G-CDRs for billing purposes. cgprsCgGatewayTable only stores information about the global default charging gateway group. However, either of global default charing gateway or charging gateway 1-29 can be used under an APN. This table is deprecated by cgprsCgGatewayIpTable.
cgprsCgGatewayIndex
1.3.6.1.4.1.9.9.192.1.1.22.1.1
Integer32 (1..3)
An unique identifier for the CG.
cgprsCgGatewayAddrType
1.3.6.1.4.1.9.9.192.1.1.22.1.2
InetAddressType0 = unknown1 = ipv42 = ipv63 = ipv4z4 = ipv6z16 = dnsA value that represents a type of Internet address.
unknown(0) An unknown address type. This value MUST
be used if the value of the corresponding InetAddress object is a zero-length string. It may also be used to indicate an IP address that is not in one of the formats defined below.
ipv4(1) An IPv4 address as defined by the
InetAddressIPv4 textual convention.
ipv6(2) An IPv6 address as defined by the
InetAddressIPv6 textual convention.
ipv4z(3) A non-global IPv4 address including a zone
index as defined by the InetAddressIPv4z textual convention.
ipv6z(4) A non-global IPv6 address including a zone
index as defined by the InetAddressIPv6z textual convention.
dns(16) A DNS domain name as defined by the
InetAddressDNS textual convention.
Each definition of a concrete InetAddressType value must be accompanied by a definition of a textual convention for use with that InetAddressType.
To support future extensions, the InetAddressType textual convention SHOULD NOT be sub-typed in object type definitions. It MAY be sub-typed in compliance statements in order to require only a subset of these address types for a compliant implementation.
Implementations must ensure that InetAddressType objects and any dependent objects (e.g., InetAddress objects) are consistent. An inconsistentValue error must be generated if an attempt to change an InetAddressType object would, for example, lead to an undefined InetAddress value. In particular, InetAddressType/InetAddress pairs must be changed together if the address type changes (e.g., from ipv6(2) to ipv4(1)). · Integer32
This object indicates the type of Internet address given in cgprsCgGatewayAddr.
cgprsCgGatewayAddr
1.3.6.1.4.1.9.9.192.1.1.22.1.3
InetAddressDenotes a generic Internet address.
An InetAddress value is always interpreted within the context of an InetAddressType value. Every usage of the InetAddress textual convention is required to specify the InetAddressType object that provides the context. It is suggested that the InetAddressType object be logically registered before the object(s) that use the InetAddress textual convention, if they appear in the same logical row.
The value of an InetAddress object must always be consistent with the value of the associated InetAddressType object. Attempts to set an InetAddress object to a value inconsistent with the associated InetAddressType must fail with an inconsistentValue error.
When this textual convention is used as the syntax of an index object, there may be issues with the limit of 128 sub-identifiers specified in SMIv2, STD 58. In this case, the object definition MUST include a 'SIZE' clause to limit the number of potential instance sub-identifiers; otherwise the applicable constraints MUST be stated in the appropriate conceptual row DESCRIPTION clauses, or in the surrounding documentation if there is no single DESCRIPTION clause that is appropriate. SIZE (0..255) · OCTET STRING
The IP address that is used to uniquely identify the CG.
cgprsCgGatewayRowStatus
1.3.6.1.4.1.9.9.192.1.1.22.1.4
RowStatus1 = active2 = notInService3 = notReady4 = createAndGo5 = createAndWait6 = destroyThe RowStatus textual convention is used to manage the creation and deletion of conceptual rows, and is used as the value of the SYNTAX clause for the status column of a conceptual row (as described in Section 7.7.1 of [2].)
The status column has six defined values:
- `active', which indicates that the conceptual row is available for use by the managed device;
- `notInService', which indicates that the conceptual row exists in the agent, but is unavailable for use by the managed device (see NOTE below); 'notInService' has no implication regarding the internal consistency of the row, availability of resources, or consistency with the current state of the managed device;
- `notReady', which indicates that the conceptual row exists in the agent, but is missing information necessary in order to be available for use by the managed device (i.e., one or more required columns in the conceptual row have not been instanciated);
- `createAndGo', which is supplied by a management station wishing to create a new instance of a conceptual row and to have its status automatically set to active, making it available for use by the managed device;
- `createAndWait', which is supplied by a management station wishing to create a new instance of a conceptual row (but not make it available for use by the managed device); and, - `destroy', which is supplied by a management station wishing to delete all of the instances associated with an existing conceptual row.
Whereas five of the six values (all except `notReady') may be specified in a management protocol set operation, only three values will be returned in response to a management
protocol retrieval operation: `notReady', `notInService' or
`active'. That is, when queried, an existing conceptual row
has only three states: it is either available for use by
the managed device (the status column has value `active'); it is not available for use by the managed device, though the agent has sufficient information to attempt to make it so (the status column has value `notInService'); or, it is not available for use by the managed device, and an attempt to make it so would fail because the agent has insufficient information (the state column has value `notReady').
NOTE WELL
This textual convention may be used for a MIB table, irrespective of whether the values of that table's conceptual rows are able to be modified while it is active, or whether its conceptual rows must be taken out of service in order to be modified. That is, it is the responsibility of the DESCRIPTION clause of the status column to specify whether the status column must not be `active' in order for the value of some other column of the same conceptual row to be modified. If such a specification is made, affected columns may be changed by an SNMP set PDU if the RowStatus would not be equal to `active' either immediately before or after processing the PDU. In other words, if the PDU also contained a varbind that would change the RowStatus value, the column in question may be changed if the RowStatus was not equal to `active' as the PDU was received, or if the varbind sets the status to a value other than 'active'.
Also note that whenever any elements of a row exist, the RowStatus column must also exist.
To summarize the effect of having a conceptual row with a status column having a SYNTAX clause value of RowStatus, consider the following state diagram:
STATE +--------------+-----------+-------------+-------------
| A | B | C | D
| |status col.|status column|
|status column | is | is |status column
ACTION |does not exist| notReady | notInService| is active
--------------+--------------+-----------+-------------+-------------
set status |noError ->D|inconsist- |inconsistent-|inconsistent-
column to | or | entValue| Value| Value
createAndGo |inconsistent- | | |
| Value| | |
--------------+--------------+-----------+-------------+-------------
set status |noError see 1|inconsist- |inconsistent-|inconsistent-
column to | or | entValue| Value| Value
createAndWait |wrongValue | | |
--------------+--------------+-----------+-------------+-------------
set status |inconsistent- |inconsist- |noError |noError
column to | Value| entValue| |
active | | | |
| | or | |
| | | |
| |see 2 ->D|see 8 ->D| ->D
--------------+--------------+-----------+-------------+-------------
set status |inconsistent- |inconsist- |noError |noError ->C
column to | Value| entValue| |
notInService | | | |
| | or | | or
| | | |
| |see 3 ->C| ->C|see 6
--------------+--------------+-----------+-------------+-------------
set status |noError |noError |noError |noError ->A
column to | | | | or
destroy | ->A| ->A| ->A|see 7
--------------+--------------+-----------+-------------+-------------
set any other |see 4 |noError |noError |see 5
column to some| | | |
value | | see 1| ->C| ->D
--------------+--------------+-----------+-------------+-------------
(1) goto B or C, depending on information available to the agent.
(2) if other variable bindings included in the same PDU, provide values for all columns which are missing but required, and all columns have acceptable values, then return noError and goto D.
(3) if other variable bindings included in the same PDU, provide legal values for all columns which are missing but required, then return noError and goto C.
(4) at the discretion of the agent, the return value may be either:
inconsistentName: because the agent does not choose to
create such an instance when the corresponding RowStatus instance does not exist, or
inconsistentValue: if the supplied value is
inconsistent with the state of some other MIB object's value, or
noError: because the agent chooses to create the instance.
If noError is returned, then the instance of the status column must also be created, and the new state is B or C, depending on the information available to the agent. If inconsistentName or inconsistentValue is returned, the row remains in state A.
(5) depending on the MIB definition for the column/table, either noError or inconsistentValue may be returned.
(6) the return value can indicate one of the following errors:
wrongValue: because the agent does not support notInService (e.g., an agent which does not support createAndWait), or
inconsistentValue: because the agent is unable to take the row out of service at this time, perhaps because it is in use and cannot be de-activated.
(7) the return value can indicate the following error:
inconsistentValue: because the agent is unable to remove the row at this time, perhaps because it is in use and cannot be de-activated.
(8) the transition to D can fail, e.g., if the values of the conceptual row are inconsistent, then the error code would be inconsistentValue.
NOTE: Other processing of (this and other varbinds of) the set request may result in a response other than noError being returned, e.g., wrongValue, noCreation, etc.
Conceptual Row Creation
There are four potential interactions when creating a
conceptual row: selecting an instance-identifier which is
not in use; creating the conceptual row; initializing any objects for which the agent does not supply a default; and, making the conceptual row available for use by the managed device.
Interaction 1: Selecting an Instance-Identifier
The algorithm used to select an instance-identifier varies for each conceptual row. In some cases, the instance- identifier is semantically significant, e.g., the destination address of a route, and a management station selects the instance-identifier according to the semantics.
In other cases, the instance-identifier is used solely to distinguish conceptual rows, and a management station without specific knowledge of the conceptual row might examine the instances present in order to determine an unused instance-identifier. (This approach may be used, but it is often highly sub-optimal; however, it is also a questionable practice for a naive management station to attempt conceptual row creation.)
Alternately, the MIB module which defines the conceptual row might provide one or more objects which provide assistance in determining an unused instance-identifier. For example, if the conceptual row is indexed by an integer-value, then an object having an integer-valued SYNTAX clause might be defined for such a purpose, allowing a management station to issue a management protocol retrieval operation. In order to avoid unnecessary collisions between competing management stations, `adjacent' retrievals of this object should be different.
Finally, the management station could select a pseudo-random number to use as the index. In the event that this index
was already in use and an inconsistentValue was returned in response to the management protocol set operation, the management station should simply select a new pseudo-random number and retry the operation.
A MIB designer should choose between the two latter algorithms based on the size of the table (and therefore the efficiency of each algorithm). For tables in which a large number of entries are expected, it is recommended that a MIB object be defined that returns an acceptable index for creation. For tables with small numbers of entries, it is recommended that the latter pseudo-random index mechanism be used.
Interaction 2: Creating the Conceptual Row
Once an unused instance-identifier has been selected, the management station determines if it wishes to create and activate the conceptual row in one transaction or in a negotiated set of interactions.
Interaction 2a: Creating and Activating the Conceptual Row
The management station must first determine the column requirements, i.e., it must determine those columns for which it must or must not provide values. Depending on the complexity of the table and the management station's knowledge of the agent's capabilities, this determination can be made locally by the management station. Alternately, the management station issues a management protocol get operation to examine all columns in the conceptual row that it wishes to create. In response, for each column, there are three possible outcomes:
- a value is returned, indicating that some other management station has already created this conceptual row. We return to interaction 1.
- the exception `noSuchInstance' is returned, indicating that the agent implements the object-type associated with this column, and that this column in at least one conceptual row would be accessible in the MIB view used by the retrieval were it to exist. For those columns to which the agent provides read-create access, the `noSuchInstance' exception tells the management station that it should supply a value for this column when the conceptual row is to be created.
- the exception `noSuchObject' is returned, indicating that the agent does not implement the object-type associated with this column or that there is no conceptual row for which this column would be accessible in the MIB view used by the retrieval. As such, the management station can not issue any management protocol set operations to create an instance of this column.
Once the column requirements have been determined, a management protocol set operation is accordingly issued. This operation also sets the new instance of the status column to `createAndGo'.
When the agent processes the set operation, it verifies that it has sufficient information to make the conceptual row available for use by the managed device. The information
available to the agent is provided by two sources: the
management protocol set operation which creates the conceptual row, and, implementation-specific defaults supplied by the agent (note that an agent must provide implementation-specific defaults for at least those objects which it implements as read-only). If there is sufficient information available, then the conceptual row is created, a `noError' response is returned, the status column is set to `active', and no further interactions are necessary (i.e., interactions 3 and 4 are skipped). If there is insufficient information, then the conceptual row is not created, and the set operation fails with an error of `inconsistentValue'. On this error, the management station can issue a management protocol retrieval operation to determine if this was because it failed to specify a value for a required column, or, because the selected instance of the status column already existed. In the latter case, we return to interaction 1. In the former case, the management station can re-issue the set operation with the additional information, or begin interaction 2 again using `createAndWait' in order to negotiate creation of the conceptual row.
NOTE WELL
Regardless of the method used to determine the column requirements, it is possible that the management station might deem a column necessary when, in fact, the agent will not allow that particular columnar instance to be created or written. In this case, the management protocol set operation will fail with an error such as `noCreation' or `notWritable'. In this case, the management station decides whether it needs to be able to set a value for that particular columnar instance. If not, the management station re-issues the management protocol set operation, but without setting a value for that particular columnar instance; otherwise, the management station aborts the row creation algorithm.
Interaction 2b: Negotiating the Creation of the Conceptual Row
The management station issues a management protocol set operation which sets the desired instance of the status column to `createAndWait'. If the agent is unwilling to process a request of this sort, the set operation fails with an error of `wrongValue'. (As a consequence, such an agent must be prepared to accept a single management protocol set operation, i.e., interaction 2a above, containing all of the
columns indicated by its column requirements.) Otherwise,
the conceptual row is created, a `noError' response is returned, and the status column is immediately set to either `notInService' or `notReady', depending on whether it has sufficient information to (attempt to) make the conceptual row available for use by the managed device. If there is sufficient information available, then the status column is set to `notInService'; otherwise, if there is insufficient information, then the status column is set to `notReady'. Regardless, we proceed to interaction 3.
Interaction 3: Initializing non-defaulted Objects
The management station must now determine the column requirements. It issues a management protocol get operation to examine all columns in the created conceptual row. In the response, for each column, there are three possible outcomes:
- a value is returned, indicating that the agent implements the object-type associated with this column and had sufficient information to provide a value. For those columns to which the agent provides read-create access (and for which the agent allows their values to be changed after their creation), a value return tells the management station that it may issue additional management protocol set operations, if it desires, in order to change the value associated with this column.
- the exception `noSuchInstance' is returned, indicating that the agent implements the object-type associated with this column, and that this column in at least one conceptual row would be accessible in the MIB view used by the retrieval were it to exist. However, the agent does not have sufficient information to provide a value, and until a value is provided, the conceptual row may not be made available for use by the managed device. For those columns to which the agent provides read-create access, the `noSuchInstance' exception tells the management station that it must issue additional management protocol set operations, in order to provide a value associated with this column.
- the exception `noSuchObject' is returned, indicating that the agent does not implement the object-type associated with this column or that there is no conceptual row for which this column would be accessible in the MIB view used by the retrieval. As such, the management station can not issue any management protocol set operations to create an instance of this column.
If the value associated with the status column is `notReady', then the management station must first deal with all `noSuchInstance' columns, if any. Having done so, the value of the status column becomes `notInService', and we proceed to interaction 4.
Interaction 4: Making the Conceptual Row Available
Once the management station is satisfied with the values associated with the columns of the conceptual row, it issues a management protocol set operation to set the status column to `active'. If the agent has sufficient information to make the conceptual row available for use by the managed device, the management protocol set operation succeeds (a `noError' response is returned). Otherwise, the management protocol set operation fails with an error of `inconsistentValue'.
NOTE WELL
A conceptual row having a status column with value `notInService' or `notReady' is unavailable to the managed device. As such, it is possible for the managed device to create its own instances during the time between the management protocol set operation which sets the status column to `createAndWait' and the management protocol set operation which sets the status column to `active'. In this case, when the management protocol set operation is issued to set the status column to `active', the values held in the agent supersede those used by the managed device.
If the management station is prevented from setting the status column to `active' (e.g., due to management station or network failure) the conceptual row will be left in the `notInService' or `notReady' state, consuming resources indefinitely. The agent must detect conceptual rows that have been in either state for an abnormally long period of time and remove them. It is the responsibility of the DESCRIPTION clause of the status column to indicate what an abnormally long period of time would be. This period of time should be long enough to allow for human response time (including `think time') between the creation of the conceptual row and the setting of the status to `active'. In the absence of such information in the DESCRIPTION clause, it is suggested that this period be approximately 5 minutes in length. This removal action applies not only to newly-created rows, but also to previously active rows which are set to, and left in, the notInService state for a prolonged period exceeding that which is considered normal for such a conceptual row.
Conceptual Row Suspension
When a conceptual row is `active', the management station may issue a management protocol set operation which sets the instance of the status column to `notInService'. If the agent is unwilling to do so, the set operation fails with an error of `wrongValue' or `inconsistentValue'. Otherwise, the conceptual row is taken out of service, and a `noError' response is returned. It is the responsibility of the DESCRIPTION clause of the status column to indicate under what circumstances the status column should be taken out of service (e.g., in order for the value of some other column of the same conceptual row to be modified).
Conceptual Row Deletion
For deletion of conceptual rows, a management protocol set operation is issued which sets the instance of the status column to `destroy'. This request may be made regardless of the current value of the status column (e.g., it is possible to delete conceptual rows which are either `notReady',
`notInService' or `active'.) If the operation succeeds,
then all instances associated with the conceptual row are immediately removed. · Integer32
This object is used to create a new row or delete an existing row in this table.
To create a row, set this object to 'createAndGo'. cgprsCgGatewayAddrType and cgprsCgGatewayAddr are the mandatory objects in a create request.
To delete a row, set this object to 'destroy'.
This object is used to indicate whether the configured CG is active(2) or standby(3).The object will return undefined(1) when its not used either as active(2) or standby(3).
cgprsCgLinkState
1.3.6.1.4.1.9.9.192.1.1.22.1.6
INTEGER1 = on2 = off3 = pending · Integer32
This object is used to indicate the reachability of the CG. If the CG is reachable then this object is set to 'on'. When the CG is not reachable but the GGSN tries to establish a connection then the object will be set to 'pending' state. When the CG is not reachable then the value returned for this object will be 'off'.
cgprsCgProfileTable
1.3.6.1.4.1.9.9.192.1.1.30
Index: cgprsCgProfileNum
Charging characteristics is a parameter introduced in Release 99.Charging Characteristics allows the operator to apply different charging methods on a per PDP basis.
Charging Characteristics is a 2-octet parameter:
The first 4 bits of the first octet, the 'P' bits, is called the charging profile index. It specifies up to 16 different charging profiles.
The remaining bits, the 'B' bits, can be used to further characterize the Charging behavior.
Charging characteristics can be received from the SGSN as an IE in the create PDP request message or from locally defined defaults. There can be local default at the access-point or GGSN levels. At either level, there may be also different defaults for home, roaming, visiting subscribers, etc.
This table allows to create a charging profile and define all the characteristics for that profile. This profile will be mapped to some APN.
cgprsCgProfileNum
1.3.6.1.4.1.9.9.192.1.1.30.1.1
Unsigned32 (0..65535)
This object is the charging profile index. This object represents the 'P' bits in charging characteristics.
cgprsCgProfileRowStatus
1.3.6.1.4.1.9.9.192.1.1.30.1.2
RowStatus1 = active2 = notInService3 = notReady4 = createAndGo5 = createAndWait6 = destroyThe RowStatus textual convention is used to manage the creation and deletion of conceptual rows, and is used as the value of the SYNTAX clause for the status column of a conceptual row (as described in Section 7.7.1 of [2].)
The status column has six defined values:
- `active', which indicates that the conceptual row is available for use by the managed device;
- `notInService', which indicates that the conceptual row exists in the agent, but is unavailable for use by the managed device (see NOTE below); 'notInService' has no implication regarding the internal consistency of the row, availability of resources, or consistency with the current state of the managed device;
- `notReady', which indicates that the conceptual row exists in the agent, but is missing information necessary in order to be available for use by the managed device (i.e., one or more required columns in the conceptual row have not been instanciated);
- `createAndGo', which is supplied by a management station wishing to create a new instance of a conceptual row and to have its status automatically set to active, making it available for use by the managed device;
- `createAndWait', which is supplied by a management station wishing to create a new instance of a conceptual row (but not make it available for use by the managed device); and, - `destroy', which is supplied by a management station wishing to delete all of the instances associated with an existing conceptual row.
Whereas five of the six values (all except `notReady') may be specified in a management protocol set operation, only three values will be returned in response to a management
protocol retrieval operation: `notReady', `notInService' or
`active'. That is, when queried, an existing conceptual row
has only three states: it is either available for use by
the managed device (the status column has value `active'); it is not available for use by the managed device, though the agent has sufficient information to attempt to make it so (the status column has value `notInService'); or, it is not available for use by the managed device, and an attempt to make it so would fail because the agent has insufficient information (the state column has value `notReady').
NOTE WELL
This textual convention may be used for a MIB table, irrespective of whether the values of that table's conceptual rows are able to be modified while it is active, or whether its conceptual rows must be taken out of service in order to be modified. That is, it is the responsibility of the DESCRIPTION clause of the status column to specify whether the status column must not be `active' in order for the value of some other column of the same conceptual row to be modified. If such a specification is made, affected columns may be changed by an SNMP set PDU if the RowStatus would not be equal to `active' either immediately before or after processing the PDU. In other words, if the PDU also contained a varbind that would change the RowStatus value, the column in question may be changed if the RowStatus was not equal to `active' as the PDU was received, or if the varbind sets the status to a value other than 'active'.
Also note that whenever any elements of a row exist, the RowStatus column must also exist.
To summarize the effect of having a conceptual row with a status column having a SYNTAX clause value of RowStatus, consider the following state diagram:
STATE +--------------+-----------+-------------+-------------
| A | B | C | D
| |status col.|status column|
|status column | is | is |status column
ACTION |does not exist| notReady | notInService| is active
--------------+--------------+-----------+-------------+-------------
set status |noError ->D|inconsist- |inconsistent-|inconsistent-
column to | or | entValue| Value| Value
createAndGo |inconsistent- | | |
| Value| | |
--------------+--------------+-----------+-------------+-------------
set status |noError see 1|inconsist- |inconsistent-|inconsistent-
column to | or | entValue| Value| Value
createAndWait |wrongValue | | |
--------------+--------------+-----------+-------------+-------------
set status |inconsistent- |inconsist- |noError |noError
column to | Value| entValue| |
active | | | |
| | or | |
| | | |
| |see 2 ->D|see 8 ->D| ->D
--------------+--------------+-----------+-------------+-------------
set status |inconsistent- |inconsist- |noError |noError ->C
column to | Value| entValue| |
notInService | | | |
| | or | | or
| | | |
| |see 3 ->C| ->C|see 6
--------------+--------------+-----------+-------------+-------------
set status |noError |noError |noError |noError ->A
column to | | | | or
destroy | ->A| ->A| ->A|see 7
--------------+--------------+-----------+-------------+-------------
set any other |see 4 |noError |noError |see 5
column to some| | | |
value | | see 1| ->C| ->D
--------------+--------------+-----------+-------------+-------------
(1) goto B or C, depending on information available to the agent.
(2) if other variable bindings included in the same PDU, provide values for all columns which are missing but required, and all columns have acceptable values, then return noError and goto D.
(3) if other variable bindings included in the same PDU, provide legal values for all columns which are missing but required, then return noError and goto C.
(4) at the discretion of the agent, the return value may be either:
inconsistentName: because the agent does not choose to
create such an instance when the corresponding RowStatus instance does not exist, or
inconsistentValue: if the supplied value is
inconsistent with the state of some other MIB object's value, or
noError: because the agent chooses to create the instance.
If noError is returned, then the instance of the status column must also be created, and the new state is B or C, depending on the information available to the agent. If inconsistentName or inconsistentValue is returned, the row remains in state A.
(5) depending on the MIB definition for the column/table, either noError or inconsistentValue may be returned.
(6) the return value can indicate one of the following errors:
wrongValue: because the agent does not support notInService (e.g., an agent which does not support createAndWait), or
inconsistentValue: because the agent is unable to take the row out of service at this time, perhaps because it is in use and cannot be de-activated.
(7) the return value can indicate the following error:
inconsistentValue: because the agent is unable to remove the row at this time, perhaps because it is in use and cannot be de-activated.
(8) the transition to D can fail, e.g., if the values of the conceptual row are inconsistent, then the error code would be inconsistentValue.
NOTE: Other processing of (this and other varbinds of) the set request may result in a response other than noError being returned, e.g., wrongValue, noCreation, etc.
Conceptual Row Creation
There are four potential interactions when creating a
conceptual row: selecting an instance-identifier which is
not in use; creating the conceptual row; initializing any objects for which the agent does not supply a default; and, making the conceptual row available for use by the managed device.
Interaction 1: Selecting an Instance-Identifier
The algorithm used to select an instance-identifier varies for each conceptual row. In some cases, the instance- identifier is semantically significant, e.g., the destination address of a route, and a management station selects the instance-identifier according to the semantics.
In other cases, the instance-identifier is used solely to distinguish conceptual rows, and a management station without specific knowledge of the conceptual row might examine the instances present in order to determine an unused instance-identifier. (This approach may be used, but it is often highly sub-optimal; however, it is also a questionable practice for a naive management station to attempt conceptual row creation.)
Alternately, the MIB module which defines the conceptual row might provide one or more objects which provide assistance in determining an unused instance-identifier. For example, if the conceptual row is indexed by an integer-value, then an object having an integer-valued SYNTAX clause might be defined for such a purpose, allowing a management station to issue a management protocol retrieval operation. In order to avoid unnecessary collisions between competing management stations, `adjacent' retrievals of this object should be different.
Finally, the management station could select a pseudo-random number to use as the index. In the event that this index
was already in use and an inconsistentValue was returned in response to the management protocol set operation, the management station should simply select a new pseudo-random number and retry the operation.
A MIB designer should choose between the two latter algorithms based on the size of the table (and therefore the efficiency of each algorithm). For tables in which a large number of entries are expected, it is recommended that a MIB object be defined that returns an acceptable index for creation. For tables with small numbers of entries, it is recommended that the latter pseudo-random index mechanism be used.
Interaction 2: Creating the Conceptual Row
Once an unused instance-identifier has been selected, the management station determines if it wishes to create and activate the conceptual row in one transaction or in a negotiated set of interactions.
Interaction 2a: Creating and Activating the Conceptual Row
The management station must first determine the column requirements, i.e., it must determine those columns for which it must or must not provide values. Depending on the complexity of the table and the management station's knowledge of the agent's capabilities, this determination can be made locally by the management station. Alternately, the management station issues a management protocol get operation to examine all columns in the conceptual row that it wishes to create. In response, for each column, there are three possible outcomes:
- a value is returned, indicating that some other management station has already created this conceptual row. We return to interaction 1.
- the exception `noSuchInstance' is returned, indicating that the agent implements the object-type associated with this column, and that this column in at least one conceptual row would be accessible in the MIB view used by the retrieval were it to exist. For those columns to which the agent provides read-create access, the `noSuchInstance' exception tells the management station that it should supply a value for this column when the conceptual row is to be created.
- the exception `noSuchObject' is returned, indicating that the agent does not implement the object-type associated with this column or that there is no conceptual row for which this column would be accessible in the MIB view used by the retrieval. As such, the management station can not issue any management protocol set operations to create an instance of this column.
Once the column requirements have been determined, a management protocol set operation is accordingly issued. This operation also sets the new instance of the status column to `createAndGo'.
When the agent processes the set operation, it verifies that it has sufficient information to make the conceptual row available for use by the managed device. The information
available to the agent is provided by two sources: the
management protocol set operation which creates the conceptual row, and, implementation-specific defaults supplied by the agent (note that an agent must provide implementation-specific defaults for at least those objects which it implements as read-only). If there is sufficient information available, then the conceptual row is created, a `noError' response is returned, the status column is set to `active', and no further interactions are necessary (i.e., interactions 3 and 4 are skipped). If there is insufficient information, then the conceptual row is not created, and the set operation fails with an error of `inconsistentValue'. On this error, the management station can issue a management protocol retrieval operation to determine if this was because it failed to specify a value for a required column, or, because the selected instance of the status column already existed. In the latter case, we return to interaction 1. In the former case, the management station can re-issue the set operation with the additional information, or begin interaction 2 again using `createAndWait' in order to negotiate creation of the conceptual row.
NOTE WELL
Regardless of the method used to determine the column requirements, it is possible that the management station might deem a column necessary when, in fact, the agent will not allow that particular columnar instance to be created or written. In this case, the management protocol set operation will fail with an error such as `noCreation' or `notWritable'. In this case, the management station decides whether it needs to be able to set a value for that particular columnar instance. If not, the management station re-issues the management protocol set operation, but without setting a value for that particular columnar instance; otherwise, the management station aborts the row creation algorithm.
Interaction 2b: Negotiating the Creation of the Conceptual Row
The management station issues a management protocol set operation which sets the desired instance of the status column to `createAndWait'. If the agent is unwilling to process a request of this sort, the set operation fails with an error of `wrongValue'. (As a consequence, such an agent must be prepared to accept a single management protocol set operation, i.e., interaction 2a above, containing all of the
columns indicated by its column requirements.) Otherwise,
the conceptual row is created, a `noError' response is returned, and the status column is immediately set to either `notInService' or `notReady', depending on whether it has sufficient information to (attempt to) make the conceptual row available for use by the managed device. If there is sufficient information available, then the status column is set to `notInService'; otherwise, if there is insufficient information, then the status column is set to `notReady'. Regardless, we proceed to interaction 3.
Interaction 3: Initializing non-defaulted Objects
The management station must now determine the column requirements. It issues a management protocol get operation to examine all columns in the created conceptual row. In the response, for each column, there are three possible outcomes:
- a value is returned, indicating that the agent implements the object-type associated with this column and had sufficient information to provide a value. For those columns to which the agent provides read-create access (and for which the agent allows their values to be changed after their creation), a value return tells the management station that it may issue additional management protocol set operations, if it desires, in order to change the value associated with this column.
- the exception `noSuchInstance' is returned, indicating that the agent implements the object-type associated with this column, and that this column in at least one conceptual row would be accessible in the MIB view used by the retrieval were it to exist. However, the agent does not have sufficient information to provide a value, and until a value is provided, the conceptual row may not be made available for use by the managed device. For those columns to which the agent provides read-create access, the `noSuchInstance' exception tells the management station that it must issue additional management protocol set operations, in order to provide a value associated with this column.
- the exception `noSuchObject' is returned, indicating that the agent does not implement the object-type associated with this column or that there is no conceptual row for which this column would be accessible in the MIB view used by the retrieval. As such, the management station can not issue any management protocol set operations to create an instance of this column.
If the value associated with the status column is `notReady', then the management station must first deal with all `noSuchInstance' columns, if any. Having done so, the value of the status column becomes `notInService', and we proceed to interaction 4.
Interaction 4: Making the Conceptual Row Available
Once the management station is satisfied with the values associated with the columns of the conceptual row, it issues a management protocol set operation to set the status column to `active'. If the agent has sufficient information to make the conceptual row available for use by the managed device, the management protocol set operation succeeds (a `noError' response is returned). Otherwise, the management protocol set operation fails with an error of `inconsistentValue'.
NOTE WELL
A conceptual row having a status column with value `notInService' or `notReady' is unavailable to the managed device. As such, it is possible for the managed device to create its own instances during the time between the management protocol set operation which sets the status column to `createAndWait' and the management protocol set operation which sets the status column to `active'. In this case, when the management protocol set operation is issued to set the status column to `active', the values held in the agent supersede those used by the managed device.
If the management station is prevented from setting the status column to `active' (e.g., due to management station or network failure) the conceptual row will be left in the `notInService' or `notReady' state, consuming resources indefinitely. The agent must detect conceptual rows that have been in either state for an abnormally long period of time and remove them. It is the responsibility of the DESCRIPTION clause of the status column to indicate what an abnormally long period of time would be. This period of time should be long enough to allow for human response time (including `think time') between the creation of the conceptual row and the setting of the status to `active'. In the absence of such information in the DESCRIPTION clause, it is suggested that this period be approximately 5 minutes in length. This removal action applies not only to newly-created rows, but also to previously active rows which are set to, and left in, the notInService state for a prolonged period exceeding that which is considered normal for such a conceptual row.
Conceptual Row Suspension
When a conceptual row is `active', the management station may issue a management protocol set operation which sets the instance of the status column to `notInService'. If the agent is unwilling to do so, the set operation fails with an error of `wrongValue' or `inconsistentValue'. Otherwise, the conceptual row is taken out of service, and a `noError' response is returned. It is the responsibility of the DESCRIPTION clause of the status column to indicate under what circumstances the status column should be taken out of service (e.g., in order for the value of some other column of the same conceptual row to be modified).
Conceptual Row Deletion
For deletion of conceptual rows, a management protocol set operation is issued which sets the instance of the status column to `destroy'. This request may be made regardless of the current value of the status column (e.g., it is possible to delete conceptual rows which are either `notReady',
`notInService' or `active'.) If the operation succeeds,
then all instances associated with the conceptual row are immediately removed. · Integer32
This object is used to create a new row or delete an existing row in this table.
To create a row, set this object to 'createAndGo'.
To delete a row, set this object to 'destroy'.
Only these two values 'createAndGo' and 'destroy' will be accepted. The table objects can be modified, when the RowStatus (cgprsCgProfileRowStatus) is active.
cgprsCgProfileDesc
1.3.6.1.4.1.9.9.192.1.1.30.1.3
SnmpAdminStringAn octet string containing administrative information, preferably in human-readable form.
To facilitate internationalization, this information is represented using the ISO/IEC IS 10646-1 character set, encoded as an octet string using the UTF-8 transformation format described in [RFC2279].
Since additional code points are added by amendments to the 10646 standard from time to time, implementations must be prepared to encounter any code point from 0x00000000 to 0x7fffffff. Byte sequences that do not correspond to the valid UTF-8 encoding of a code point or are outside this range are prohibited.
The use of control codes should be avoided.
When it is necessary to represent a newline, the control code sequence CR LF should be used.
The use of leading or trailing white space should be avoided.
For code points not directly supported by user interface hardware or software, an alternative means of entry and display, such as hexadecimal, may be provided.
For information encoded in 7-bit US-ASCII, the UTF-8 encoding is identical to the US-ASCII encoding.
UTF-8 may require multiple bytes to represent a single character / code point; thus the length of this object in octets may be different from the number of characters encoded. Similarly, size constraints refer to the number of encoded octets, not the number of characters represented by an encoding.
Note that when this TC is used for an object that is used or envisioned to be used as an index, then a SIZE restriction MUST be specified so that the number of sub-identifiers for any object instance does not exceed the limit of 128, as defined by [RFC3416].
Note that the size of an SnmpAdminString object is measured in octets, not characters. SIZE (1..99) · OCTET STRING · hint 255t
This object defines the charging profile category.
hotRate(0) - Charging by hot billing.
flat(1) - Flat rate charging.
prepaid(2) - Prepaid charging.
normal(3) - Normal charging.
cgprsCgProfileCdrSuppress
1.3.6.1.4.1.9.9.192.1.1.30.1.5
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object specifies the generation of CDRs. If set to 'true', there won't be any CDRs generated. If set to 'false', the CDRs will be generated.
cgprsCgProfileVolumeLimit
1.3.6.1.4.1.9.9.192.1.1.30.1.6
Unsigned32 (1..4294967295) · bytes
This object specifies the volume limit at which the CDR updation has to take place.
cgprsCgProfileVolumeLimitReset
1.3.6.1.4.1.9.9.192.1.1.30.1.7
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object is used to reset the volume limit timer specified in cgprsCgProfileVolumeLimit when another trigger occurs.
If set to 'true' the volume limit timer will be reset when another trigger such as duration limit occurs.
If set to 'false', the volume timer will continue until it reaches the value set in cgprsCgProfileVolumeLimit.
cgprsCgProfileDurLimit
1.3.6.1.4.1.9.9.192.1.1.30.1.8
Unsigned32 (0 | 5..4294967295) · minutes
This object specifies the time limit in which the CDR updation has to take place.
The value '0' means no duration limit.
cgprsCgProfileDurLimitReset
1.3.6.1.4.1.9.9.192.1.1.30.1.9
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object is used to reset the duration limit timer specified in cgprsCgProfileDurLimit when another trigger occurs.
If set to 'true' the duration limit timer will be reset when another trigger such as volume limit occurs.
If set to 'false', the duration timer will continue until it reaches the value set in cgprsCgProfileDurLimit.
cgprsCgProfileTariffTime
1.3.6.1.4.1.9.9.192.1.1.30.1.10
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object enables the tariff time for this profile.
cgprsCgProfileSgsnChange
1.3.6.1.4.1.9.9.192.1.1.30.1.11
Integer32 (-1..15)
This object denotes the maximum number of SGSN changes that will trigger the closure of G-CDR or partial record. When the maximum number is reached, the record is closed and a new partial record is opened. When the value is zero, then for every SGSN change, the G-CDR or partial record is closed.
The value '-1' indicates no sgsn change limit.
cgprsCgProfileCdrSuppressPrepaid
1.3.6.1.4.1.9.9.192.1.1.30.1.12
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object specifies the suppression of CDRs for prepaid.
This object can be set to 'true' only when the object cgprsCgProfileCdrSuppress is set to 'false'.
If set to 'true', there won't be any CDRs generated for prepaid users.
If set to 'false', the CDRs will be generated for prepaid users.
cgprsCgProfileContentDccaProfile
1.3.6.1.4.1.9.9.192.1.1.30.1.13
SnmpAdminStringAn octet string containing administrative information, preferably in human-readable form.
To facilitate internationalization, this information is represented using the ISO/IEC IS 10646-1 character set, encoded as an octet string using the UTF-8 transformation format described in [RFC2279].
Since additional code points are added by amendments to the 10646 standard from time to time, implementations must be prepared to encounter any code point from 0x00000000 to 0x7fffffff. Byte sequences that do not correspond to the valid UTF-8 encoding of a code point or are outside this range are prohibited.
The use of control codes should be avoided.
When it is necessary to represent a newline, the control code sequence CR LF should be used.
The use of leading or trailing white space should be avoided.
For code points not directly supported by user interface hardware or software, an alternative means of entry and display, such as hexadecimal, may be provided.
For information encoded in 7-bit US-ASCII, the UTF-8 encoding is identical to the US-ASCII encoding.
UTF-8 may require multiple bytes to represent a single character / code point; thus the length of this object in octets may be different from the number of characters encoded. Similarly, size constraints refer to the number of encoded octets, not the number of characters represented by an encoding.
Note that when this TC is used for an object that is used or envisioned to be used as an index, then a SIZE restriction MUST be specified so that the number of sub-identifiers for any object instance does not exceed the limit of 128, as defined by [RFC3416].
Note that the size of an SnmpAdminString object is measured in octets, not characters. SIZE (0..255) · OCTET STRING · hint 255t
This object specifies a DCCA client to use to communicate with a DCCA server in a GGSN charging profile.
The profile name is the DCCA profile name (cGgsnSADccaProfileName) which is present in CISCO-GGSN-SERVICE-AWARE-MIB and it's outside the scope of this MIB.
The presence of the object in this table indicates online billing is required. Therefore, regardless of whether a subscriber is prepaid or postpaid, the GGSN will contact the DCCA server if this object is set.
If the user is to be treated as a postpaid user, the server returns X and the user is treated as a postpaid user. If this object is not set to valid value, then users using the charging profile will be treated as postpaid (offline billing).
cgprsCgProfileContentPostTime
1.3.6.1.4.1.9.9.192.1.1.30.1.14
Unsigned32 (300..4294967295) · seconds
This object specifies a trigger condition for postpaid users in this charging profile, the time duration limit that when exceeded causes the GGSN to collect upstream and downstream traffic byte counts and close and update the G-CDR for a particular PDP context.
cgprsCgProfileContentPostValTime
1.3.6.1.4.1.9.9.192.1.1.30.1.15
Unsigned32 (900..4294967295) · seconds
This object specifies the validity timeout for this postpaid users in this charging profile. By default, the time and volume quota for postpaid has no validity timeout. If it is configured, it applies to both time based or volume based quota. This object is deprecated by cgprsCgProfileContentPostValidityTime
cgprsCgProfileContentPostVolume
1.3.6.1.4.1.9.9.192.1.1.30.1.16
Unsigned32 (1..4294967295) · bytes
This object specifies a trigger condition for postpaid users in this charging profile, the maximum number of bytes that the GGSN maintains across all containers for a particular PDP context before closing and updating the G-CDR.
cgprsCgProfileContentRulebaseId
1.3.6.1.4.1.9.9.192.1.1.30.1.17
SnmpAdminStringAn octet string containing administrative information, preferably in human-readable form.
To facilitate internationalization, this information is represented using the ISO/IEC IS 10646-1 character set, encoded as an octet string using the UTF-8 transformation format described in [RFC2279].
Since additional code points are added by amendments to the 10646 standard from time to time, implementations must be prepared to encounter any code point from 0x00000000 to 0x7fffffff. Byte sequences that do not correspond to the valid UTF-8 encoding of a code point or are outside this range are prohibited.
The use of control codes should be avoided.
When it is necessary to represent a newline, the control code sequence CR LF should be used.
The use of leading or trailing white space should be avoided.
For code points not directly supported by user interface hardware or software, an alternative means of entry and display, such as hexadecimal, may be provided.
For information encoded in 7-bit US-ASCII, the UTF-8 encoding is identical to the US-ASCII encoding.
UTF-8 may require multiple bytes to represent a single character / code point; thus the length of this object in octets may be different from the number of characters encoded. Similarly, size constraints refer to the number of encoded octets, not the number of characters represented by an encoding.
Note that when this TC is used for an object that is used or envisioned to be used as an index, then a SIZE restriction MUST be specified so that the number of sub-identifiers for any object instance does not exceed the limit of 128, as defined by [RFC3416].
Note that the size of an SnmpAdminString object is measured in octets, not characters. SIZE (0..255) · OCTET STRING · hint 255t
This object sets the rulebase ID for this charging profile.
Rulebases contain the rules for defining categories of traffic, categories on which decisions such as whether to allow or disallow traffic, and how to measure the traffic, are based. The GGSN maps Diameter Rulebase IDs to CSG billing plans.
The rulebase value presented in a RADIUS Access Accept message overrides the default rulebase ID configured in the charging profile. A rulebase ID received in a CCA initial message from a DCCA server overrides the Rulebase ID received from the RADIUS server and the default rulebase ID configured in a charging profile.
cgprsCgProfileContentPostQosChange
1.3.6.1.4.1.9.9.192.1.1.30.1.18
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object when set to 'true' enables the trigger for QoS change for postpaid users using this charging profile.
The change in QoS causes GGSN to close the G-CDR for a particular PDP context and generate the service record for each service.
cgprsCgProfileContentPostSgsnChange
1.3.6.1.4.1.9.9.192.1.1.30.1.19
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object when set to 'true' enables the trigger for SGSN change for postpaid users using this charging profile. The SGSN address is added to the SGSN list in the context G-CDR.
When the SGSN limit is reached, the G-CDR is closed. Current SGSN address is written into the CDR, when the cgprsCgRelease value is 'release4' or above, and service record is generated.
cgprsCgProfileContentPostRatChange
1.3.6.1.4.1.9.9.192.1.1.30.1.20
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object when set to 'true' enables the trigger for RAT change for postpaid users using this charging profile.
This object can be set to 'true' only when the object cgprsCgServiceRecordIncludeRat is 'true'.
When a RAT change is received, the G-CDR is closed. The new RAT value is written into the new G-CDR and service record is is generated with the new RAT value.
cgprsCgProfileContentPostPlmnChange
1.3.6.1.4.1.9.9.192.1.1.30.1.21
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object when set to 'true' enables the trigger for PLMN change for postpaid users using this charging profile. When enabled, the current PLMN-ID is always written into the service-record. If none is received in the PDP create/update request, a value of zero is written into the service-record.
This object can be set to 'true' only when the object cgprsCgServiceRecordIncludePlmn is 'true'.
When a PLMN-ID change is received, the G-CDR is closed. A new service-record is generated and the new PLMN-ID is written into the new service-record.
cgprsCgProfileStorageType
1.3.6.1.4.1.9.9.192.1.1.30.1.22
StorageType1 = other2 = volatile3 = nonVolatile4 = permanent5 = readOnlyDescribes the memory realization of a conceptual row. A row which is volatile(2) is lost upon reboot. A row which is either nonVolatile(3), permanent(4) or readOnly(5), is backed up by stable storage. A row which is permanent(4) can be changed but not deleted. A row which is readOnly(5) cannot be changed nor deleted.
If the value of an object with this syntax is either permanent(4) or readOnly(5), it cannot be written. Conversely, if the value is either other(1), volatile(2) or nonVolatile(3), it cannot be modified to be permanent(4) or readOnly(5). (All illegal modifications result in a 'wrongValue' error.)
Every usage of this textual convention is required to specify the columnar objects which a permanent(4) row must at a minimum allow to be writable. · Integer32
The storage type for this conceptual row. Conceptual rows having the value 'permanent' need not allow write-access to any columnar objects in the row.
cgprsCgProfileContentPostValidityTime
1.3.6.1.4.1.9.9.192.1.1.30.1.23
Unsigned32 (0 | 900..4294967295) · seconds
This object specifies the validity timeout for this postpaid users in this charging profile. By default, the time and volume quota for postpaid has no validity timeout. If it is configured, it applies to both time based or volume based quota. The valid range of this object is from 900 to 4294967295, and the value 0 indicates that the validity timeout is not configured.
cgprsCgProfileContentPostUserLocChange
1.3.6.1.4.1.9.9.192.1.1.30.1.24
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object when set to 'true' enables the trigger for user location change for postpaid users using this charging profile. When the trigger is enabled and a user location change is received, the G-CDR is closed. A new service-record is generated and the new user location information is written into the new service-record.
This object can be set to 'true' only when the object cgprsCgServiceRecordIncludeUserLocInfo is 'true'.
cgprsCgProfileScdrEnable
1.3.6.1.4.1.9.9.192.1.1.30.1.25
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object specifies whether the SGW CDR generation is enabled or disabled, for the sessions in SPGW mode. When set to 'true' SGW mode CDR generation is enabled. when set to 'false' SGW mode CDR generation is Disabled. By default the value of this object is 'false'.
cgprsCgProfileMapTable
1.3.6.1.4.1.9.9.192.1.1.31
Index: cgprsCgProfileMapCategory
This table maintains the default charging profile mappings. The profile set in cgprsCgProfileTable will be mapped to the default profile table. Only one mapping to the type of MS can be present.
This is a static table which contains only four entries, each for a category.
This object defines the category in which the MS falls into.
cgprsCgProfileMapNum
1.3.6.1.4.1.9.9.192.1.1.31.1.2
Integer32 (0..65535)
This object represents the profile number which is created using cgprsCgProfileTable. This object holds the valid value represented by cgprsCgProfileNum. The profile number 0 cannot be created or deleted using cgprsCgProfileTable. It's created using the other configuration objects cgprsCgContainerVolThresh, cgprsCgCdrSgsnChangeLimit, cgprsCgContainerTimeLimit. This object is deprecated by cgprsCgProfileMapNumber.
cgprsCgProfileMapOverride
1.3.6.1.4.1.9.9.192.1.1.31.1.3
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object defines whether the profile set in cgprsCgProfileMapNum should override the value received from SGSN.
cgprsCgProfileMapTrusted
1.3.6.1.4.1.9.9.192.1.1.31.1.4
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object defines whether the profile for 'roaming', 'visitor' is a trusted. This object has no meaning when the value of the cgprsCgProfileMapCategory is 'all' or 'home'.
If this object is set to 'true' and cgprsCgProfileMapCategory is 'roaming', then this profile will be the default profile for trusted roamer. If set to 'false', then it's just a roamer.
If this object is set to 'true' and cgprsCgProfileMapCategory is 'visitor', then this profile will be the default profile for trusted visitor. If set to 'false', then it's just a roamer.
cgprsCgProfileMapNumber
1.3.6.1.4.1.9.9.192.1.1.31.1.5
Integer32 (-1..65535)
This object represents the profile number which is created using cgprsCgProfileTable. This object holds the valid value represented by cgprsCgProfileNum. The profile number 0 cannot be created or deleted using cgprsCgProfileTable. It's created using the other configuration objects cgprsCgContainerVolThresh, cgprsCgCdrSgsnChangeLimit, cgprsCgContainerTimeLimit. The value -1 for this object indicates that the default profile for the category is not configured.
cgprsCgGroupTable
1.3.6.1.4.1.9.9.192.1.1.60
Index: cgprsCgGroupIndex
Charging gateway group table. The table contains a list of charging groups. In each charging group, a unique primary, secondary, and tertiary charging gateway, and iSCSI target can be defined and associated with an APN. Charging group enables sending charging records belonging to different APNs to different destinations.
cgprsCgGroupIndex
1.3.6.1.4.1.9.9.192.1.1.60.1.1
Integer32 (0..29)
A locally unique identifier for the charging groups on GGSN. Note: There is support for only 30 charging groups (0-29). Where charging group 0 is also referred as default charging gateway group.
cgprsCgGroupIscsi
1.3.6.1.4.1.9.9.192.1.1.60.1.2
SnmpAdminStringAn octet string containing administrative information, preferably in human-readable form.
To facilitate internationalization, this information is represented using the ISO/IEC IS 10646-1 character set, encoded as an octet string using the UTF-8 transformation format described in [RFC2279].
Since additional code points are added by amendments to the 10646 standard from time to time, implementations must be prepared to encounter any code point from 0x00000000 to 0x7fffffff. Byte sequences that do not correspond to the valid UTF-8 encoding of a code point or are outside this range are prohibited.
The use of control codes should be avoided.
When it is necessary to represent a newline, the control code sequence CR LF should be used.
The use of leading or trailing white space should be avoided.
For code points not directly supported by user interface hardware or software, an alternative means of entry and display, such as hexadecimal, may be provided.
For information encoded in 7-bit US-ASCII, the UTF-8 encoding is identical to the US-ASCII encoding.
UTF-8 may require multiple bytes to represent a single character / code point; thus the length of this object in octets may be different from the number of characters encoded. Similarly, size constraints refer to the number of encoded octets, not the number of characters represented by an encoding.
Note that when this TC is used for an object that is used or envisioned to be used as an index, then a SIZE restriction MUST be specified so that the number of sub-identifiers for any object instance does not exceed the limit of 128, as defined by [RFC3416].
Note that the size of an SnmpAdminString object is measured in octets, not characters. SIZE (0..255) · OCTET STRING · hint 255t
This object specifies the iSCSI gateway name for the charging group.
cgprsCgGroupServiceMode
1.3.6.1.4.1.9.9.192.1.1.60.1.3
INTEGER1 = operational2 = maintenance · Integer32
This object specifies the charging service-mode for a charging group. The charging functions in the GGSN involve mainly collection/accumulation of CDRs and transmitting CDRs to the Charging Gateways. The charging service-mode function has no impact to the collection/accumulation of CDRs. The charging service mode function only involves the transmission of CDRs to the charging gateways. The charging service-mode has the following two states: 'operational' : In this state, the charging group will observe normal charging operations. That is, accumulation and transmission of CDRs to the charging gateway will continue as is done normally. 'maintenance' : In this state, transmission of CDRs to the charging gateways will not be performed; However, collection and accumulation of CDRs will continue as is done normally.
When the GGSN is in 'maintenance' mode, all the charging configurations will be allowed. In the system-init phase, the charging service mode CLI configs will not be handled.
The handling of 'Redirecting Request', 'Node Alive' and charging gateway switchover mechanisms will not be performed while the charging is in maintenance mode. After the mode is changed to operational mode, the messages in the pending queue will be sent towards the newly configured active charging gateway and the normal functions will continue from thereon. When switching between modes, traps will be generated using cgprsCgGatewayGroupInServiceModeNotif and cgprsCgGatewayGroupMaintenanceModeNotif.
cgprsCgGroupSwitchOverPriority
1.3.6.1.4.1.9.9.192.1.1.60.1.4
TruthValue1 = true2 = falseRepresents a boolean value. · Integer32
This object specifies the switch over priority mechanism.
'true' - If a higher priority CG comes up, it becomes the
active CG.
'false' - If a higher priority CG comes up, the existing active CG continues to be active.
cgprsCgGroupRowStatus
1.3.6.1.4.1.9.9.192.1.1.60.1.5
RowStatus1 = active2 = notInService3 = notReady4 = createAndGo5 = createAndWait6 = destroyThe RowStatus textual convention is used to manage the creation and deletion of conceptual rows, and is used as the value of the SYNTAX clause for the status column of a conceptual row (as described in Section 7.7.1 of [2].)
The status column has six defined values:
- `active', which indicates that the conceptual row is available for use by the managed device;
- `notInService', which indicates that the conceptual row exists in the agent, but is unavailable for use by the managed device (see NOTE below); 'notInService' has no implication regarding the internal consistency of the row, availability of resources, or consistency with the current state of the managed device;
- `notReady', which indicates that the conceptual row exists in the agent, but is missing information necessary in order to be available for use by the managed device (i.e., one or more required columns in the conceptual row have not been instanciated);
- `createAndGo', which is supplied by a management station wishing to create a new instance of a conceptual row and to have its status automatically set to active, making it available for use by the managed device;
- `createAndWait', which is supplied by a management station wishing to create a new instance of a conceptual row (but not make it available for use by the managed device); and, - `destroy', which is supplied by a management station wishing to delete all of the instances associated with an existing conceptual row.
Whereas five of the six values (all except `notReady') may be specified in a management protocol set operation, only three values will be returned in response to a management
protocol retrieval operation: `notReady', `notInService' or
`active'. That is, when queried, an existing conceptual row
has only three states: it is either available for use by
the managed device (the status column has value `active'); it is not available for use by the managed device, though the agent has sufficient information to attempt to make it so (the status column has value `notInService'); or, it is not available for use by the managed device, and an attempt to make it so would fail because the agent has insufficient information (the state column has value `notReady').
NOTE WELL
This textual convention may be used for a MIB table, irrespective of whether the values of that table's conceptual rows are able to be modified while it is active, or whether its conceptual rows must be taken out of service in order to be modified. That is, it is the responsibility of the DESCRIPTION clause of the status column to specify whether the status column must not be `active' in order for the value of some other column of the same conceptual row to be modified. If such a specification is made, affected columns may be changed by an SNMP set PDU if the RowStatus would not be equal to `active' either immediately before or after processing the PDU. In other words, if the PDU also contained a varbind that would change the RowStatus value, the column in question may be changed if the RowStatus was not equal to `active' as the PDU was received, or if the varbind sets the status to a value other than 'active'.
Also note that whenever any elements of a row exist, the RowStatus column must also exist.
To summarize the effect of having a conceptual row with a status column having a SYNTAX clause value of RowStatus, consider the following state diagram:
STATE +--------------+-----------+-------------+-------------
| A | B | C | D
| |status col.|status column|
|status column | is | is |status column
ACTION |does not exist| notReady | notInService| is active
--------------+--------------+-----------+-------------+-------------
set status |noError ->D|inconsist- |inconsistent-|inconsistent-
column to | or | entValue| Value| Value
createAndGo |inconsistent- | | |
| Value| | |
--------------+--------------+-----------+-------------+-------------
set status |noError see 1|inconsist- |inconsistent-|inconsistent-
column to | or | entValue| Value| Value
createAndWait |wrongValue | | |
--------------+--------------+-----------+-------------+-------------
set status |inconsistent- |inconsist- |noError |noError
column to | Value| entValue| |
active | | | |
| | or | |
| | | |
| |see 2 ->D|see 8 ->D| ->D
--------------+--------------+-----------+-------------+-------------
set status |inconsistent- |inconsist- |noError |noError ->C
column to | Value| entValue| |
notInService | | | |
| | or | | or
| | | |
| |see 3 ->C| ->C|see 6
--------------+--------------+-----------+-------------+-------------
set status |noError |noError |noError |noError ->A
column to | | | | or
destroy | ->A| ->A| ->A|see 7
--------------+--------------+-----------+-------------+-------------
set any other |see 4 |noError |noError |see 5
column to some| | | |
value | | see 1| ->C| ->D
--------------+--------------+-----------+-------------+-------------
(1) goto B or C, depending on information available to the agent.
(2) if other variable bindings included in the same PDU, provide values for all columns which are missing but required, and all columns have acceptable values, then return noError and goto D.
(3) if other variable bindings included in the same PDU, provide legal values for all columns which are missing but required, then return noError and goto C.
(4) at the discretion of the agent, the return value may be either:
inconsistentName: because the agent does not choose to
create such an instance when the corresponding RowStatus instance does not exist, or
inconsistentValue: if the supplied value is
inconsistent with the state of some other MIB object's value, or
noError: because the agent chooses to create the instance.
If noError is returned, then the instance of the status column must also be created, and the new state is B or C, depending on the information available to the agent. If inconsistentName or inconsistentValue is returned, the row remains in state A.
(5) depending on the MIB definition for the column/table, either noError or inconsistentValue may be returned.
(6) the return value can indicate one of the following errors:
wrongValue: because the agent does not support notInService (e.g., an agent which does not support createAndWait), or
inconsistentValue: because the agent is unable to take the row out of service at this time, perhaps because it is in use and cannot be de-activated.
(7) the return value can indicate the following error:
inconsistentValue: because the agent is unable to remove the row at this time, perhaps because it is in use and cannot be de-activated.
(8) the transition to D can fail, e.g., if the values of the conceptual row are inconsistent, then the error code would be inconsistentValue.
NOTE: Other processing of (this and other varbinds of) the set request may result in a response other than noError being returned, e.g., wrongValue, noCreation, etc.
Conceptual Row Creation
There are four potential interactions when creating a
conceptual row: selecting an instance-identifier which is
not in use; creating the conceptual row; initializing any objects for which the agent does not supply a default; and, making the conceptual row available for use by the managed device.
Interaction 1: Selecting an Instance-Identifier
The algorithm used to select an instance-identifier varies for each conceptual row. In some cases, the instance- identifier is semantically significant, e.g., the destination address of a route, and a management station selects the instance-identifier according to the semantics.
In other cases, the instance-identifier is used solely to distinguish conceptual rows, and a management station without specific knowledge of the conceptual row might examine the instances present in order to determine an unused instance-identifier. (This approach may be used, but it is often highly sub-optimal; however, it is also a questionable practice for a naive management station to attempt conceptual row creation.)
Alternately, the MIB module which defines the conceptual row might provide one or more objects which provide assistance in determining an unused instance-identifier. For example, if the conceptual row is indexed by an integer-value, then an object having an integer-valued SYNTAX clause might be defined for such a purpose, allowing a management station to issue a management protocol retrieval operation. In order to avoid unnecessary collisions between competing management stations, `adjacent' retrievals of this object should be different.
Finally, the management station could select a pseudo-random number to use as the index. In the event that this index
was already in use and an inconsistentValue was returned in response to the management protocol set operation, the management station should simply select a new pseudo-random number and retry the operation.
A MIB designer should choose between the two latter algorithms based on the size of the table (and therefore the efficiency of each algorithm). For tables in which a large number of entries are expected, it is recommended that a MIB object be defined that returns an acceptable index for creation. For tables with small numbers of entries, it is recommended that the latter pseudo-random index mechanism be used.
Interaction 2: Creating the Conceptual Row
Once an unused instance-identifier has been selected, the management station determines if it wishes to create and activate the conceptual row in one transaction or in a negotiated set of interactions.
Interaction 2a: Creating and Activating the Conceptual Row
The management station must first determine the column requirements, i.e., it must determine those columns for which it must or must not provide values. Depending on the complexity of the table and the management station's knowledge of the agent's capabilities, this determination can be made locally by the management station. Alternately, the management station issues a management protocol get operation to examine all columns in the conceptual row that it wishes to create. In response, for each column, there are three possible outcomes:
- a value is returned, indicating that some other management station has already created this conceptual row. We return to interaction 1.
- the exception `noSuchInstance' is returned, indicating that the agent implements the object-type associated with this column, and that this column in at least one conceptual row would be accessible in the MIB view used by the retrieval were it to exist. For those columns to which the agent provides read-create access, the `noSuchInstance' exception tells the management station that it should supply a value for this column when the conceptual row is to be created.
- the exception `noSuchObject' is returned, indicating that the agent does not implement the object-type associated with this column or that there is no conceptual row for which this column would be accessible in the MIB view used by the retrieval. As such, the management station can not issue any management protocol set operations to create an instance of this column.
Once the column requirements have been determined, a management protocol set operation is accordingly issued. This operation also sets the new instance of the status column to `createAndGo'.
When the agent processes the set operation, it verifies that it has sufficient information to make the conceptual row available for use by the managed device. The information
available to the agent is provided by two sources: the
management protocol set operation which creates the conceptual row, and, implementation-specific defaults supplied by the agent (note that an agent must provide implementation-specific defaults for at least those objects which it implements as read-only). If there is sufficient information available, then the conceptual row is created, a `noError' response is returned, the status column is set to `active', and no further interactions are necessary (i.e., interactions 3 and 4 are skipped). If there is insufficient information, then the conceptual row is not created, and the set operation fails with an error of `inconsistentValue'. On this error, the management station can issue a management protocol retrieval operation to determine if this was because it failed to specify a value for a required column, or, because the selected instance of the status column already existed. In the latter case, we return to interaction 1. In the former case, the management station can re-issue the set operation with the additional information, or begin interaction 2 again using `createAndWait' in order to negotiate creation of the conceptual row.
NOTE WELL
Regardless of the method used to determine the column requirements, it is possible that the management station might deem a column necessary when, in fact, the agent will not allow that particular columnar instance to be created or written. In this case, the management protocol set operation will fail with an error such as `noCreation' or `notWritable'. In this case, the management station decides whether it needs to be able to set a value for that particular columnar instance. If not, the management station re-issues the management protocol set operation, but without setting a value for that particular columnar instance; otherwise, the management station aborts the row creation algorithm.
Interaction 2b: Negotiating the Creation of the Conceptual Row
The management station issues a management protocol set operation which sets the desired instance of the status column to `createAndWait'. If the agent is unwilling to process a request of this sort, the set operation fails with an error of `wrongValue'. (As a consequence, such an agent must be prepared to accept a single management protocol set operation, i.e., interaction 2a above, containing all of the
columns indicated by its column requirements.) Otherwise,
the conceptual row is created, a `noError' response is returned, and the status column is immediately set to either `notInService' or `notReady', depending on whether it has sufficient information to (attempt to) make the conceptual row available for use by the managed device. If there is sufficient information available, then the status column is set to `notInService'; otherwise, if there is insufficient information, then the status column is set to `notReady'. Regardless, we proceed to interaction 3.
Interaction 3: Initializing non-defaulted Objects
The management station must now determine the column requirements. It issues a management protocol get operation to examine all columns in the created conceptual row. In the response, for each column, there are three possible outcomes:
- a value is returned, indicating that the agent implements the object-type associated with this column and had sufficient information to provide a value. For those columns to which the agent provides read-create access (and for which the agent allows their values to be changed after their creation), a value return tells the management station that it may issue additional management protocol set operations, if it desires, in order to change the value associated with this column.
- the exception `noSuchInstance' is returned, indicating that the agent implements the object-type associated with this column, and that this column in at least one conceptual row would be accessible in the MIB view used by the retrieval were it to exist. However, the agent does not have sufficient information to provide a value, and until a value is provided, the conceptual row may not be made available for use by the managed device. For those columns to which the agent provides read-create access, the `noSuchInstance' exception tells the management station that it must issue additional management protocol set operations, in order to provide a value associated with this column.
- the exception `noSuchObject' is returned, indicating that the agent does not implement the object-type associated with this column or that there is no conceptual row for which this column would be accessible in the MIB view used by the retrieval. As such, the management station can not issue any management protocol set operations to create an instance of this column.
If the value associated with the status column is `notReady', then the management station must first deal with all `noSuchInstance' columns, if any. Having done so, the value of the status column becomes `notInService', and we proceed to interaction 4.
Interaction 4: Making the Conceptual Row Available
Once the management station is satisfied with the values associated with the columns of the conceptual row, it issues a management protocol set operation to set the status column to `active'. If the agent has sufficient information to make the conceptual row available for use by the managed device, the management protocol set operation succeeds (a `noError' response is returned). Otherwise, the management protocol set operation fails with an error of `inconsistentValue'.
NOTE WELL
A conceptual row having a status column with value `notInService' or `notReady' is unavailable to the managed device. As such, it is possible for the managed device to create its own instances during the time between the management protocol set operation which sets the status column to `createAndWait' and the management protocol set operation which sets the status column to `active'. In this case, when the management protocol set operation is issued to set the status column to `active', the values held in the agent supersede those used by the managed device.
If the management station is prevented from setting the status column to `active' (e.g., due to management station or network failure) the conceptual row will be left in the `notInService' or `notReady' state, consuming resources indefinitely. The agent must detect conceptual rows that have been in either state for an abnormally long period of time and remove them. It is the responsibility of the DESCRIPTION clause of the status column to indicate what an abnormally long period of time would be. This period of time should be long enough to allow for human response time (including `think time') between the creation of the conceptual row and the setting of the status to `active'. In the absence of such information in the DESCRIPTION clause, it is suggested that this period be approximately 5 minutes in length. This removal action applies not only to newly-created rows, but also to previously active rows which are set to, and left in, the notInService state for a prolonged period exceeding that which is considered normal for such a conceptual row.
Conceptual Row Suspension
When a conceptual row is `active', the management station may issue a management protocol set operation which sets the instance of the status column to `notInService'. If the agent is unwilling to do so, the set operation fails with an error of `wrongValue' or `inconsistentValue'. Otherwise, the conceptual row is taken out of service, and a `noError' response is returned. It is the responsibility of the DESCRIPTION clause of the status column to indicate under what circumstances the status column should be taken out of service (e.g., in order for the value of some other column of the same conceptual row to be modified).
Conceptual Row Deletion
For deletion of conceptual rows, a management protocol set operation is issued which sets the instance of the status column to `destroy'. This request may be made regardless of the current value of the status column (e.g., it is possible to delete conceptual rows which are either `notReady',
`notInService' or `active'.) If the operation succeeds,
then all instances associated with the conceptual row are immediately removed. · Integer32
This object is used to create a new row or delete an existing row in this table.
cgprsCgGatewayIpTable
1.3.6.1.4.1.9.9.192.1.1.61
Index: cgprsCgGroupIndex · cgprsCgGatewayIpIndex
Charging gateway table. The table contains a list of charging gateways. A charging gateway contains databases to store the collected G-CDRs for billing purposes.
cgprsCgGatewayIpIndex
1.3.6.1.4.1.9.9.192.1.1.61.1.1
Unsigned32 (1..4294967295)
An unique identifier for the CG.
cgprsCgGatewayIpAddrType
1.3.6.1.4.1.9.9.192.1.1.61.1.2
InetAddressType0 = unknown1 = ipv42 = ipv63 = ipv4z4 = ipv6z16 = dnsA value that represents a type of Internet address.
unknown(0) An unknown address type. This value MUST
be used if the value of the corresponding InetAddress object is a zero-length string. It may also be used to indicate an IP address that is not in one of the formats defined below.
ipv4(1) An IPv4 address as defined by the
InetAddressIPv4 textual convention.
ipv6(2) An IPv6 address as defined by the
InetAddressIPv6 textual convention.
ipv4z(3) A non-global IPv4 address including a zone
index as defined by the InetAddressIPv4z textual convention.
ipv6z(4) A non-global IPv6 address including a zone
index as defined by the InetAddressIPv6z textual convention.
dns(16) A DNS domain name as defined by the
InetAddressDNS textual convention.
Each definition of a concrete InetAddressType value must be accompanied by a definition of a textual convention for use with that InetAddressType.
To support future extensions, the InetAddressType textual convention SHOULD NOT be sub-typed in object type definitions. It MAY be sub-typed in compliance statements in order to require only a subset of these address types for a compliant implementation.
Implementations must ensure that InetAddressType objects and any dependent objects (e.g., InetAddress objects) are consistent. An inconsistentValue error must be generated if an attempt to change an InetAddressType object would, for example, lead to an undefined InetAddress value. In particular, InetAddressType/InetAddress pairs must be changed together if the address type changes (e.g., from ipv6(2) to ipv4(1)). · Integer32
This object specifies the type of Internet address given in cgprsCgGatewayIpAddr.
cgprsCgGatewayIpAddr
1.3.6.1.4.1.9.9.192.1.1.61.1.3
InetAddressDenotes a generic Internet address.
An InetAddress value is always interpreted within the context of an InetAddressType value. Every usage of the InetAddress textual convention is required to specify the InetAddressType object that provides the context. It is suggested that the InetAddressType object be logically registered before the object(s) that use the InetAddress textual convention, if they appear in the same logical row.
The value of an InetAddress object must always be consistent with the value of the associated InetAddressType object. Attempts to set an InetAddress object to a value inconsistent with the associated InetAddressType must fail with an inconsistentValue error.
When this textual convention is used as the syntax of an index object, there may be issues with the limit of 128 sub-identifiers specified in SMIv2, STD 58. In this case, the object definition MUST include a 'SIZE' clause to limit the number of potential instance sub-identifiers; otherwise the applicable constraints MUST be stated in the appropriate conceptual row DESCRIPTION clauses, or in the surrounding documentation if there is no single DESCRIPTION clause that is appropriate. SIZE (0..255) · OCTET STRING
This object specifies the IP address that is used to uniquely identify the CG.
This object is used to indicate what is the operation status of the configured charging gateway.
undefined(1) The operation status of the CG is neither
active nor standby.
active(2) The operation status of the CG is active
standby(3) The operation status of the CG is standby
cgprsCgGatewayLinkState
1.3.6.1.4.1.9.9.192.1.1.61.1.5
INTEGER1 = on2 = off3 = pending · Integer32
This object is used to indicate the reachability of the CG.
on(1) The CG is reachable
off(2) The CG is not reachable
pending(3) The CG is not reachable but the GGSN is trying to
establish a connection
cgprsCgGateway
1.3.6.1.4.1.9.9.192.1.1.61.1.6
CgprsCgGatewayType1 = cgprsCgGatewayPrimary2 = cgprsCgGatewaySecondary3 = cgprsCgGatewayTertiaryIdentifies the possible types of GPRS charging gateway.
cgprsCgGatewayPrimary - Indicates it is a primary charging gateway. cgprsCgGatewaySecondary - Indicates it is a secondary charging gateway. cgprsCgGatewayTertiary - Indicates it is a tertiary charging gateway. · Integer32
This object indicates the type of GPRS charging gateway.
cgprsCgGatewayIpRowStatus
1.3.6.1.4.1.9.9.192.1.1.61.1.7
RowStatus1 = active2 = notInService3 = notReady4 = createAndGo5 = createAndWait6 = destroyThe RowStatus textual convention is used to manage the creation and deletion of conceptual rows, and is used as the value of the SYNTAX clause for the status column of a conceptual row (as described in Section 7.7.1 of [2].)
The status column has six defined values:
- `active', which indicates that the conceptual row is available for use by the managed device;
- `notInService', which indicates that the conceptual row exists in the agent, but is unavailable for use by the managed device (see NOTE below); 'notInService' has no implication regarding the internal consistency of the row, availability of resources, or consistency with the current state of the managed device;
- `notReady', which indicates that the conceptual row exists in the agent, but is missing information necessary in order to be available for use by the managed device (i.e., one or more required columns in the conceptual row have not been instanciated);
- `createAndGo', which is supplied by a management station wishing to create a new instance of a conceptual row and to have its status automatically set to active, making it available for use by the managed device;
- `createAndWait', which is supplied by a management station wishing to create a new instance of a conceptual row (but not make it available for use by the managed device); and, - `destroy', which is supplied by a management station wishing to delete all of the instances associated with an existing conceptual row.
Whereas five of the six values (all except `notReady') may be specified in a management protocol set operation, only three values will be returned in response to a management
protocol retrieval operation: `notReady', `notInService' or
`active'. That is, when queried, an existing conceptual row
has only three states: it is either available for use by
the managed device (the status column has value `active'); it is not available for use by the managed device, though the agent has sufficient information to attempt to make it so (the status column has value `notInService'); or, it is not available for use by the managed device, and an attempt to make it so would fail because the agent has insufficient information (the state column has value `notReady').
NOTE WELL
This textual convention may be used for a MIB table, irrespective of whether the values of that table's conceptual rows are able to be modified while it is active, or whether its conceptual rows must be taken out of service in order to be modified. That is, it is the responsibility of the DESCRIPTION clause of the status column to specify whether the status column must not be `active' in order for the value of some other column of the same conceptual row to be modified. If such a specification is made, affected columns may be changed by an SNMP set PDU if the RowStatus would not be equal to `active' either immediately before or after processing the PDU. In other words, if the PDU also contained a varbind that would change the RowStatus value, the column in question may be changed if the RowStatus was not equal to `active' as the PDU was received, or if the varbind sets the status to a value other than 'active'.
Also note that whenever any elements of a row exist, the RowStatus column must also exist.
To summarize the effect of having a conceptual row with a status column having a SYNTAX clause value of RowStatus, consider the following state diagram:
STATE +--------------+-----------+-------------+-------------
| A | B | C | D
| |status col.|status column|
|status column | is | is |status column
ACTION |does not exist| notReady | notInService| is active
--------------+--------------+-----------+-------------+-------------
set status |noError ->D|inconsist- |inconsistent-|inconsistent-
column to | or | entValue| Value| Value
createAndGo |inconsistent- | | |
| Value| | |
--------------+--------------+-----------+-------------+-------------
set status |noError see 1|inconsist- |inconsistent-|inconsistent-
column to | or | entValue| Value| Value
createAndWait |wrongValue | | |
--------------+--------------+-----------+-------------+-------------
set status |inconsistent- |inconsist- |noError |noError
column to | Value| entValue| |
active | | | |
| | or | |
| | | |
| |see 2 ->D|see 8 ->D| ->D
--------------+--------------+-----------+-------------+-------------
set status |inconsistent- |inconsist- |noError |noError ->C
column to | Value| entValue| |
notInService | | | |
| | or | | or
| | | |
| |see 3 ->C| ->C|see 6
--------------+--------------+-----------+-------------+-------------
set status |noError |noError |noError |noError ->A
column to | | | | or
destroy | ->A| ->A| ->A|see 7
--------------+--------------+-----------+-------------+-------------
set any other |see 4 |noError |noError |see 5
column to some| | | |
value | | see 1| ->C| ->D
--------------+--------------+-----------+-------------+-------------
(1) goto B or C, depending on information available to the agent.
(2) if other variable bindings included in the same PDU, provide values for all columns which are missing but required, and all columns have acceptable values, then return noError and goto D.
(3) if other variable bindings included in the same PDU, provide legal values for all columns which are missing but required, then return noError and goto C.
(4) at the discretion of the agent, the return value may be either:
inconsistentName: because the agent does not choose to
create such an instance when the corresponding RowStatus instance does not exist, or
inconsistentValue: if the supplied value is
inconsistent with the state of some other MIB object's value, or
noError: because the agent chooses to create the instance.
If noError is returned, then the instance of the status column must also be created, and the new state is B or C, depending on the information available to the agent. If inconsistentName or inconsistentValue is returned, the row remains in state A.
(5) depending on the MIB definition for the column/table, either noError or inconsistentValue may be returned.
(6) the return value can indicate one of the following errors:
wrongValue: because the agent does not support notInService (e.g., an agent which does not support createAndWait), or
inconsistentValue: because the agent is unable to take the row out of service at this time, perhaps because it is in use and cannot be de-activated.
(7) the return value can indicate the following error:
inconsistentValue: because the agent is unable to remove the row at this time, perhaps because it is in use and cannot be de-activated.
(8) the transition to D can fail, e.g., if the values of the conceptual row are inconsistent, then the error code would be inconsistentValue.
NOTE: Other processing of (this and other varbinds of) the set request may result in a response other than noError being returned, e.g., wrongValue, noCreation, etc.
Conceptual Row Creation
There are four potential interactions when creating a
conceptual row: selecting an instance-identifier which is
not in use; creating the conceptual row; initializing any objects for which the agent does not supply a default; and, making the conceptual row available for use by the managed device.
Interaction 1: Selecting an Instance-Identifier
The algorithm used to select an instance-identifier varies for each conceptual row. In some cases, the instance- identifier is semantically significant, e.g., the destination address of a route, and a management station selects the instance-identifier according to the semantics.
In other cases, the instance-identifier is used solely to distinguish conceptual rows, and a management station without specific knowledge of the conceptual row might examine the instances present in order to determine an unused instance-identifier. (This approach may be used, but it is often highly sub-optimal; however, it is also a questionable practice for a naive management station to attempt conceptual row creation.)
Alternately, the MIB module which defines the conceptual row might provide one or more objects which provide assistance in determining an unused instance-identifier. For example, if the conceptual row is indexed by an integer-value, then an object having an integer-valued SYNTAX clause might be defined for such a purpose, allowing a management station to issue a management protocol retrieval operation. In order to avoid unnecessary collisions between competing management stations, `adjacent' retrievals of this object should be different.
Finally, the management station could select a pseudo-random number to use as the index. In the event that this index
was already in use and an inconsistentValue was returned in response to the management protocol set operation, the management station should simply select a new pseudo-random number and retry the operation.
A MIB designer should choose between the two latter algorithms based on the size of the table (and therefore the efficiency of each algorithm). For tables in which a large number of entries are expected, it is recommended that a MIB object be defined that returns an acceptable index for creation. For tables with small numbers of entries, it is recommended that the latter pseudo-random index mechanism be used.
Interaction 2: Creating the Conceptual Row
Once an unused instance-identifier has been selected, the management station determines if it wishes to create and activate the conceptual row in one transaction or in a negotiated set of interactions.
Interaction 2a: Creating and Activating the Conceptual Row
The management station must first determine the column requirements, i.e., it must determine those columns for which it must or must not provide values. Depending on the complexity of the table and the management station's knowledge of the agent's capabilities, this determination can be made locally by the management station. Alternately, the management station issues a management protocol get operation to examine all columns in the conceptual row that it wishes to create. In response, for each column, there are three possible outcomes:
- a value is returned, indicating that some other management station has already created this conceptual row. We return to interaction 1.
- the exception `noSuchInstance' is returned, indicating that the agent implements the object-type associated with this column, and that this column in at least one conceptual row would be accessible in the MIB view used by the retrieval were it to exist. For those columns to which the agent provides read-create access, the `noSuchInstance' exception tells the management station that it should supply a value for this column when the conceptual row is to be created.
- the exception `noSuchObject' is returned, indicating that the agent does not implement the object-type associated with this column or that there is no conceptual row for which this column would be accessible in the MIB view used by the retrieval. As such, the management station can not issue any management protocol set operations to create an instance of this column.
Once the column requirements have been determined, a management protocol set operation is accordingly issued. This operation also sets the new instance of the status column to `createAndGo'.
When the agent processes the set operation, it verifies that it has sufficient information to make the conceptual row available for use by the managed device. The information
available to the agent is provided by two sources: the
management protocol set operation which creates the conceptual row, and, implementation-specific defaults supplied by the agent (note that an agent must provide implementation-specific defaults for at least those objects which it implements as read-only). If there is sufficient information available, then the conceptual row is created, a `noError' response is returned, the status column is set to `active', and no further interactions are necessary (i.e., interactions 3 and 4 are skipped). If there is insufficient information, then the conceptual row is not created, and the set operation fails with an error of `inconsistentValue'. On this error, the management station can issue a management protocol retrieval operation to determine if this was because it failed to specify a value for a required column, or, because the selected instance of the status column already existed. In the latter case, we return to interaction 1. In the former case, the management station can re-issue the set operation with the additional information, or begin interaction 2 again using `createAndWait' in order to negotiate creation of the conceptual row.
NOTE WELL
Regardless of the method used to determine the column requirements, it is possible that the management station might deem a column necessary when, in fact, the agent will not allow that particular columnar instance to be created or written. In this case, the management protocol set operation will fail with an error such as `noCreation' or `notWritable'. In this case, the management station decides whether it needs to be able to set a value for that particular columnar instance. If not, the management station re-issues the management protocol set operation, but without setting a value for that particular columnar instance; otherwise, the management station aborts the row creation algorithm.
Interaction 2b: Negotiating the Creation of the Conceptual Row
The management station issues a management protocol set operation which sets the desired instance of the status column to `createAndWait'. If the agent is unwilling to process a request of this sort, the set operation fails with an error of `wrongValue'. (As a consequence, such an agent must be prepared to accept a single management protocol set operation, i.e., interaction 2a above, containing all of the
columns indicated by its column requirements.) Otherwise,
the conceptual row is created, a `noError' response is returned, and the status column is immediately set to either `notInService' or `notReady', depending on whether it has sufficient information to (attempt to) make the conceptual row available for use by the managed device. If there is sufficient information available, then the status column is set to `notInService'; otherwise, if there is insufficient information, then the status column is set to `notReady'. Regardless, we proceed to interaction 3.
Interaction 3: Initializing non-defaulted Objects
The management station must now determine the column requirements. It issues a management protocol get operation to examine all columns in the created conceptual row. In the response, for each column, there are three possible outcomes:
- a value is returned, indicating that the agent implements the object-type associated with this column and had sufficient information to provide a value. For those columns to which the agent provides read-create access (and for which the agent allows their values to be changed after their creation), a value return tells the management station that it may issue additional management protocol set operations, if it desires, in order to change the value associated with this column.
- the exception `noSuchInstance' is returned, indicating that the agent implements the object-type associated with this column, and that this column in at least one conceptual row would be accessible in the MIB view used by the retrieval were it to exist. However, the agent does not have sufficient information to provide a value, and until a value is provided, the conceptual row may not be made available for use by the managed device. For those columns to which the agent provides read-create access, the `noSuchInstance' exception tells the management station that it must issue additional management protocol set operations, in order to provide a value associated with this column.
- the exception `noSuchObject' is returned, indicating that the agent does not implement the object-type associated with this column or that there is no conceptual row for which this column would be accessible in the MIB view used by the retrieval. As such, the management station can not issue any management protocol set operations to create an instance of this column.
If the value associated with the status column is `notReady', then the management station must first deal with all `noSuchInstance' columns, if any. Having done so, the value of the status column becomes `notInService', and we proceed to interaction 4.
Interaction 4: Making the Conceptual Row Available
Once the management station is satisfied with the values associated with the columns of the conceptual row, it issues a management protocol set operation to set the status column to `active'. If the agent has sufficient information to make the conceptual row available for use by the managed device, the management protocol set operation succeeds (a `noError' response is returned). Otherwise, the management protocol set operation fails with an error of `inconsistentValue'.
NOTE WELL
A conceptual row having a status column with value `notInService' or `notReady' is unavailable to the managed device. As such, it is possible for the managed device to create its own instances during the time between the management protocol set operation which sets the status column to `createAndWait' and the management protocol set operation which sets the status column to `active'. In this case, when the management protocol set operation is issued to set the status column to `active', the values held in the agent supersede those used by the managed device.
If the management station is prevented from setting the status column to `active' (e.g., due to management station or network failure) the conceptual row will be left in the `notInService' or `notReady' state, consuming resources indefinitely. The agent must detect conceptual rows that have been in either state for an abnormally long period of time and remove them. It is the responsibility of the DESCRIPTION clause of the status column to indicate what an abnormally long period of time would be. This period of time should be long enough to allow for human response time (including `think time') between the creation of the conceptual row and the setting of the status to `active'. In the absence of such information in the DESCRIPTION clause, it is suggested that this period be approximately 5 minutes in length. This removal action applies not only to newly-created rows, but also to previously active rows which are set to, and left in, the notInService state for a prolonged period exceeding that which is considered normal for such a conceptual row.
Conceptual Row Suspension
When a conceptual row is `active', the management station may issue a management protocol set operation which sets the instance of the status column to `notInService'. If the agent is unwilling to do so, the set operation fails with an error of `wrongValue' or `inconsistentValue'. Otherwise, the conceptual row is taken out of service, and a `noError' response is returned. It is the responsibility of the DESCRIPTION clause of the status column to indicate under what circumstances the status column should be taken out of service (e.g., in order for the value of some other column of the same conceptual row to be modified).
Conceptual Row Deletion
For deletion of conceptual rows, a management protocol set operation is issued which sets the instance of the status column to `destroy'. This request may be made regardless of the current value of the status column (e.g., it is possible to delete conceptual rows which are either `notReady',
`notInService' or `active'.) If the operation succeeds,
then all instances associated with the conceptual row are immediately removed. · Integer32
This object is used to create a new row or delete an existing row in this table.
This table contains the list of DCCA Profiles configured as part of the charging profile.
cgprsCgProfileContentDccaProfileName
1.3.6.1.4.1.9.9.192.1.1.62.1.1
SnmpAdminStringAn octet string containing administrative information, preferably in human-readable form.
To facilitate internationalization, this information is represented using the ISO/IEC IS 10646-1 character set, encoded as an octet string using the UTF-8 transformation format described in [RFC2279].
Since additional code points are added by amendments to the 10646 standard from time to time, implementations must be prepared to encounter any code point from 0x00000000 to 0x7fffffff. Byte sequences that do not correspond to the valid UTF-8 encoding of a code point or are outside this range are prohibited.
The use of control codes should be avoided.
When it is necessary to represent a newline, the control code sequence CR LF should be used.
The use of leading or trailing white space should be avoided.
For code points not directly supported by user interface hardware or software, an alternative means of entry and display, such as hexadecimal, may be provided.
For information encoded in 7-bit US-ASCII, the UTF-8 encoding is identical to the US-ASCII encoding.
UTF-8 may require multiple bytes to represent a single character / code point; thus the length of this object in octets may be different from the number of characters encoded. Similarly, size constraints refer to the number of encoded octets, not the number of characters represented by an encoding.
Note that when this TC is used for an object that is used or envisioned to be used as an index, then a SIZE restriction MUST be specified so that the number of sub-identifiers for any object instance does not exceed the limit of 128, as defined by [RFC3416].
Note that the size of an SnmpAdminString object is measured in octets, not characters. SIZE (1..40) · OCTET STRING · hint 255t
Reference: cGgsnSADccaProfileName is defined in CISCO-GGSN-SERVICE-AWARE-MIB.
This object specifies a DCCA client to use to communicate with a DCCA server in a GGSN charging profile.
The value must be same as an entry in cGgsnSADccaProfileTable identified by cGgsnSADccaProfileName.
cgprsCgProfileContentDccaProfileRowStatus
1.3.6.1.4.1.9.9.192.1.1.62.1.2
RowStatus1 = active2 = notInService3 = notReady4 = createAndGo5 = createAndWait6 = destroyThe RowStatus textual convention is used to manage the creation and deletion of conceptual rows, and is used as the value of the SYNTAX clause for the status column of a conceptual row (as described in Section 7.7.1 of [2].)
The status column has six defined values:
- `active', which indicates that the conceptual row is available for use by the managed device;
- `notInService', which indicates that the conceptual row exists in the agent, but is unavailable for use by the managed device (see NOTE below); 'notInService' has no implication regarding the internal consistency of the row, availability of resources, or consistency with the current state of the managed device;
- `notReady', which indicates that the conceptual row exists in the agent, but is missing information necessary in order to be available for use by the managed device (i.e., one or more required columns in the conceptual row have not been instanciated);
- `createAndGo', which is supplied by a management station wishing to create a new instance of a conceptual row and to have its status automatically set to active, making it available for use by the managed device;
- `createAndWait', which is supplied by a management station wishing to create a new instance of a conceptual row (but not make it available for use by the managed device); and, - `destroy', which is supplied by a management station wishing to delete all of the instances associated with an existing conceptual row.
Whereas five of the six values (all except `notReady') may be specified in a management protocol set operation, only three values will be returned in response to a management
protocol retrieval operation: `notReady', `notInService' or
`active'. That is, when queried, an existing conceptual row
has only three states: it is either available for use by
the managed device (the status column has value `active'); it is not available for use by the managed device, though the agent has sufficient information to attempt to make it so (the status column has value `notInService'); or, it is not available for use by the managed device, and an attempt to make it so would fail because the agent has insufficient information (the state column has value `notReady').
NOTE WELL
This textual convention may be used for a MIB table, irrespective of whether the values of that table's conceptual rows are able to be modified while it is active, or whether its conceptual rows must be taken out of service in order to be modified. That is, it is the responsibility of the DESCRIPTION clause of the status column to specify whether the status column must not be `active' in order for the value of some other column of the same conceptual row to be modified. If such a specification is made, affected columns may be changed by an SNMP set PDU if the RowStatus would not be equal to `active' either immediately before or after processing the PDU. In other words, if the PDU also contained a varbind that would change the RowStatus value, the column in question may be changed if the RowStatus was not equal to `active' as the PDU was received, or if the varbind sets the status to a value other than 'active'.
Also note that whenever any elements of a row exist, the RowStatus column must also exist.
To summarize the effect of having a conceptual row with a status column having a SYNTAX clause value of RowStatus, consider the following state diagram:
STATE +--------------+-----------+-------------+-------------
| A | B | C | D
| |status col.|status column|
|status column | is | is |status column
ACTION |does not exist| notReady | notInService| is active
--------------+--------------+-----------+-------------+-------------
set status |noError ->D|inconsist- |inconsistent-|inconsistent-
column to | or | entValue| Value| Value
createAndGo |inconsistent- | | |
| Value| | |
--------------+--------------+-----------+-------------+-------------
set status |noError see 1|inconsist- |inconsistent-|inconsistent-
column to | or | entValue| Value| Value
createAndWait |wrongValue | | |
--------------+--------------+-----------+-------------+-------------
set status |inconsistent- |inconsist- |noError |noError
column to | Value| entValue| |
active | | | |
| | or | |
| | | |
| |see 2 ->D|see 8 ->D| ->D
--------------+--------------+-----------+-------------+-------------
set status |inconsistent- |inconsist- |noError |noError ->C
column to | Value| entValue| |
notInService | | | |
| | or | | or
| | | |
| |see 3 ->C| ->C|see 6
--------------+--------------+-----------+-------------+-------------
set status |noError |noError |noError |noError ->A
column to | | | | or
destroy | ->A| ->A| ->A|see 7
--------------+--------------+-----------+-------------+-------------
set any other |see 4 |noError |noError |see 5
column to some| | | |
value | | see 1| ->C| ->D
--------------+--------------+-----------+-------------+-------------
(1) goto B or C, depending on information available to the agent.
(2) if other variable bindings included in the same PDU, provide values for all columns which are missing but required, and all columns have acceptable values, then return noError and goto D.
(3) if other variable bindings included in the same PDU, provide legal values for all columns which are missing but required, then return noError and goto C.
(4) at the discretion of the agent, the return value may be either:
inconsistentName: because the agent does not choose to
create such an instance when the corresponding RowStatus instance does not exist, or
inconsistentValue: if the supplied value is
inconsistent with the state of some other MIB object's value, or
noError: because the agent chooses to create the instance.
If noError is returned, then the instance of the status column must also be created, and the new state is B or C, depending on the information available to the agent. If inconsistentName or inconsistentValue is returned, the row remains in state A.
(5) depending on the MIB definition for the column/table, either noError or inconsistentValue may be returned.
(6) the return value can indicate one of the following errors:
wrongValue: because the agent does not support notInService (e.g., an agent which does not support createAndWait), or
inconsistentValue: because the agent is unable to take the row out of service at this time, perhaps because it is in use and cannot be de-activated.
(7) the return value can indicate the following error:
inconsistentValue: because the agent is unable to remove the row at this time, perhaps because it is in use and cannot be de-activated.
(8) the transition to D can fail, e.g., if the values of the conceptual row are inconsistent, then the error code would be inconsistentValue.
NOTE: Other processing of (this and other varbinds of) the set request may result in a response other than noError being returned, e.g., wrongValue, noCreation, etc.
Conceptual Row Creation
There are four potential interactions when creating a
conceptual row: selecting an instance-identifier which is
not in use; creating the conceptual row; initializing any objects for which the agent does not supply a default; and, making the conceptual row available for use by the managed device.
Interaction 1: Selecting an Instance-Identifier
The algorithm used to select an instance-identifier varies for each conceptual row. In some cases, the instance- identifier is semantically significant, e.g., the destination address of a route, and a management station selects the instance-identifier according to the semantics.
In other cases, the instance-identifier is used solely to distinguish conceptual rows, and a management station without specific knowledge of the conceptual row might examine the instances present in order to determine an unused instance-identifier. (This approach may be used, but it is often highly sub-optimal; however, it is also a questionable practice for a naive management station to attempt conceptual row creation.)
Alternately, the MIB module which defines the conceptual row might provide one or more objects which provide assistance in determining an unused instance-identifier. For example, if the conceptual row is indexed by an integer-value, then an object having an integer-valued SYNTAX clause might be defined for such a purpose, allowing a management station to issue a management protocol retrieval operation. In order to avoid unnecessary collisions between competing management stations, `adjacent' retrievals of this object should be different.
Finally, the management station could select a pseudo-random number to use as the index. In the event that this index
was already in use and an inconsistentValue was returned in response to the management protocol set operation, the management station should simply select a new pseudo-random number and retry the operation.
A MIB designer should choose between the two latter algorithms based on the size of the table (and therefore the efficiency of each algorithm). For tables in which a large number of entries are expected, it is recommended that a MIB object be defined that returns an acceptable index for creation. For tables with small numbers of entries, it is recommended that the latter pseudo-random index mechanism be used.
Interaction 2: Creating the Conceptual Row
Once an unused instance-identifier has been selected, the management station determines if it wishes to create and activate the conceptual row in one transaction or in a negotiated set of interactions.
Interaction 2a: Creating and Activating the Conceptual Row
The management station must first determine the column requirements, i.e., it must determine those columns for which it must or must not provide values. Depending on the complexity of the table and the management station's knowledge of the agent's capabilities, this determination can be made locally by the management station. Alternately, the management station issues a management protocol get operation to examine all columns in the conceptual row that it wishes to create. In response, for each column, there are three possible outcomes:
- a value is returned, indicating that some other management station has already created this conceptual row. We return to interaction 1.
- the exception `noSuchInstance' is returned, indicating that the agent implements the object-type associated with this column, and that this column in at least one conceptual row would be accessible in the MIB view used by the retrieval were it to exist. For those columns to which the agent provides read-create access, the `noSuchInstance' exception tells the management station that it should supply a value for this column when the conceptual row is to be created.
- the exception `noSuchObject' is returned, indicating that the agent does not implement the object-type associated with this column or that there is no conceptual row for which this column would be accessible in the MIB view used by the retrieval. As such, the management station can not issue any management protocol set operations to create an instance of this column.
Once the column requirements have been determined, a management protocol set operation is accordingly issued. This operation also sets the new instance of the status column to `createAndGo'.
When the agent processes the set operation, it verifies that it has sufficient information to make the conceptual row available for use by the managed device. The information
available to the agent is provided by two sources: the
management protocol set operation which creates the conceptual row, and, implementation-specific defaults supplied by the agent (note that an agent must provide implementation-specific defaults for at least those objects which it implements as read-only). If there is sufficient information available, then the conceptual row is created, a `noError' response is returned, the status column is set to `active', and no further interactions are necessary (i.e., interactions 3 and 4 are skipped). If there is insufficient information, then the conceptual row is not created, and the set operation fails with an error of `inconsistentValue'. On this error, the management station can issue a management protocol retrieval operation to determine if this was because it failed to specify a value for a required column, or, because the selected instance of the status column already existed. In the latter case, we return to interaction 1. In the former case, the management station can re-issue the set operation with the additional information, or begin interaction 2 again using `createAndWait' in order to negotiate creation of the conceptual row.
NOTE WELL
Regardless of the method used to determine the column requirements, it is possible that the management station might deem a column necessary when, in fact, the agent will not allow that particular columnar instance to be created or written. In this case, the management protocol set operation will fail with an error such as `noCreation' or `notWritable'. In this case, the management station decides whether it needs to be able to set a value for that particular columnar instance. If not, the management station re-issues the management protocol set operation, but without setting a value for that particular columnar instance; otherwise, the management station aborts the row creation algorithm.
Interaction 2b: Negotiating the Creation of the Conceptual Row
The management station issues a management protocol set operation which sets the desired instance of the status column to `createAndWait'. If the agent is unwilling to process a request of this sort, the set operation fails with an error of `wrongValue'. (As a consequence, such an agent must be prepared to accept a single management protocol set operation, i.e., interaction 2a above, containing all of the
columns indicated by its column requirements.) Otherwise,
the conceptual row is created, a `noError' response is returned, and the status column is immediately set to either `notInService' or `notReady', depending on whether it has sufficient information to (attempt to) make the conceptual row available for use by the managed device. If there is sufficient information available, then the status column is set to `notInService'; otherwise, if there is insufficient information, then the status column is set to `notReady'. Regardless, we proceed to interaction 3.
Interaction 3: Initializing non-defaulted Objects
The management station must now determine the column requirements. It issues a management protocol get operation to examine all columns in the created conceptual row. In the response, for each column, there are three possible outcomes:
- a value is returned, indicating that the agent implements the object-type associated with this column and had sufficient information to provide a value. For those columns to which the agent provides read-create access (and for which the agent allows their values to be changed after their creation), a value return tells the management station that it may issue additional management protocol set operations, if it desires, in order to change the value associated with this column.
- the exception `noSuchInstance' is returned, indicating that the agent implements the object-type associated with this column, and that this column in at least one conceptual row would be accessible in the MIB view used by the retrieval were it to exist. However, the agent does not have sufficient information to provide a value, and until a value is provided, the conceptual row may not be made available for use by the managed device. For those columns to which the agent provides read-create access, the `noSuchInstance' exception tells the management station that it must issue additional management protocol set operations, in order to provide a value associated with this column.
- the exception `noSuchObject' is returned, indicating that the agent does not implement the object-type associated with this column or that there is no conceptual row for which this column would be accessible in the MIB view used by the retrieval. As such, the management station can not issue any management protocol set operations to create an instance of this column.
If the value associated with the status column is `notReady', then the management station must first deal with all `noSuchInstance' columns, if any. Having done so, the value of the status column becomes `notInService', and we proceed to interaction 4.
Interaction 4: Making the Conceptual Row Available
Once the management station is satisfied with the values associated with the columns of the conceptual row, it issues a management protocol set operation to set the status column to `active'. If the agent has sufficient information to make the conceptual row available for use by the managed device, the management protocol set operation succeeds (a `noError' response is returned). Otherwise, the management protocol set operation fails with an error of `inconsistentValue'.
NOTE WELL
A conceptual row having a status column with value `notInService' or `notReady' is unavailable to the managed device. As such, it is possible for the managed device to create its own instances during the time between the management protocol set operation which sets the status column to `createAndWait' and the management protocol set operation which sets the status column to `active'. In this case, when the management protocol set operation is issued to set the status column to `active', the values held in the agent supersede those used by the managed device.
If the management station is prevented from setting the status column to `active' (e.g., due to management station or network failure) the conceptual row will be left in the `notInService' or `notReady' state, consuming resources indefinitely. The agent must detect conceptual rows that have been in either state for an abnormally long period of time and remove them. It is the responsibility of the DESCRIPTION clause of the status column to indicate what an abnormally long period of time would be. This period of time should be long enough to allow for human response time (including `think time') between the creation of the conceptual row and the setting of the status to `active'. In the absence of such information in the DESCRIPTION clause, it is suggested that this period be approximately 5 minutes in length. This removal action applies not only to newly-created rows, but also to previously active rows which are set to, and left in, the notInService state for a prolonged period exceeding that which is considered normal for such a conceptual row.
Conceptual Row Suspension
When a conceptual row is `active', the management station may issue a management protocol set operation which sets the instance of the status column to `notInService'. If the agent is unwilling to do so, the set operation fails with an error of `wrongValue' or `inconsistentValue'. Otherwise, the conceptual row is taken out of service, and a `noError' response is returned. It is the responsibility of the DESCRIPTION clause of the status column to indicate under what circumstances the status column should be taken out of service (e.g., in order for the value of some other column of the same conceptual row to be modified).
Conceptual Row Deletion
For deletion of conceptual rows, a management protocol set operation is issued which sets the instance of the status column to `destroy'. This request may be made regardless of the current value of the status column (e.g., it is possible to delete conceptual rows which are either `notReady',
`notInService' or `active'.) If the operation succeeds,
then all instances associated with the conceptual row are immediately removed. · Integer32
This object is used to create a new row or delete an existing row in this table. This object must be set to 'creatAndGo' to create an entry and set to 'destroy' to delete an entry.
The value in any column may be modified any time even the value of this entry rowStatus object is 'active'.
cgprsCgProfileContentDccaProfileWeight
1.3.6.1.4.1.9.9.192.1.1.62.1.3
Unsigned32 (1..255)
This object specifies the DCCA profile Round Robin weight
This table contains the charging statistics of all the charging groups on this GGSN.
cgprsCgGatewayGroupCgDownTimes
1.3.6.1.4.1.9.9.192.1.3.11.1.1
Counter32 · transitions
This object indicates the number of occurrences of cgprsCgAlarmEchoFailure traps state transitions since system startup.
Trigger Condition: This counter is incremented when the GGSN detects a CG has gone down. Condition includes, a) Link state down. b) Redirection request.
cgprsCgGatewayGroupAccPtNum
1.3.6.1.4.1.9.9.192.1.3.11.1.2
Counter32 · access-points
This object indicates the number of access points configured with a charging group for which charging data is being collected.
Trigger Condition: This counter is triggered when a CDR is opened for a PDP and that PDP belongs to a new APN.
cgprsCgGatewayGroupCdrOpenedNum
1.3.6.1.4.1.9.9.192.1.3.11.1.3
Unsigned32 · CDRs
This object indicates the number of currently opened G-CDRs on GGSN for a charging group. A G-CDR shall be opened for each activated PDP context.
Trigger Condition: This counter is triggered when a new CDR is opened. This new CDR might be opened initially and also due to the closure of the existing opened CDR.
cgprsCgGatewayGroupCdrClosedNum
1.3.6.1.4.1.9.9.192.1.3.11.1.4
Unsigned32 · CDRs
This object indicates the number of currently closed G-CDRs on GGSN for a charging group, which have not been sent to the CG. The G-CDR shall be closed on encountering some trigger conditions. In the event that the G-CDR is closed and the PDP remains active, a new G-CDR will be opened for the PDP.
Trigger Condition: This counter is triggered when the CDR is closed. The closure might be due to different trigger conditions. a) Clearing of the CDR using CLI. b) Tigger conditions like vloume limit, time limit, sgsn change limit, container change limit set with configuration objects. c) CDR size reaches maximum.
cgprsCgGatewayGroupContainerNum
1.3.6.1.4.1.9.9.192.1.3.11.1.5
Unsigned32 · containers
This object indicates the number of currently open or closed charging containers for a charging group.
Trigger Condition: This counter is triggered when the CDR is closed or the CDR is updated.
cgprsCgGatewayGroupServiceRecordsNum
1.3.6.1.4.1.9.9.192.1.3.11.1.6
Unsigned32 · records
This object indcates the number of currently created service records on GGSN for a charging group.
Trigger Condition: This counter is triggered when the service record is closed.
cgprsCgGatewayGroupPendingMsgNum
1.3.6.1.4.1.9.9.192.1.3.11.1.7
Unsigned32 · messages
This object indicates the number of currently pending G-CDR output messages for a charging group.
Trigger Condition: This counter is triggered when the CDR is sent to the CG or iSCSI and the response from the CG or iSCSI target failed.
cgprsCgGatewayGroupCdrPendingMsgIscsiNum
1.3.6.1.4.1.9.9.192.1.3.11.1.8
Unsigned32 · messages
This object indicates the number of currently pending G-CDR output messages for a charging group in the iSCSI path.
Trigger Condition: This counter is triggered when the CDR is sent to the iSCSI and response from the iSCSI target failed.
cgprsCgGatewayGroupCdrPendingMsgCgPathNum
1.3.6.1.4.1.9.9.192.1.3.11.1.9
Unsigned32 · messages
The number of currently pending G-CDR output messages for a charging group in the CG path.
Trigger Condition: This counter is triggered when the CDR is sent to the CG and response from the CG target failed.
cgprsCgGatewayGroupCdrPendingMsgMaintNum
1.3.6.1.4.1.9.9.192.1.3.11.1.10
Unsigned32 · messages
This object indicates the number of currently pending G-CDR output messages for a charging group, when the charging group service mode is maintenance.
Trigger Condition: This counter is triggered when there are pending G-CDR output messages and the charging group is moved to maintenance mode.
cgprsCgGatewayGroupTotalCdrOpened
1.3.6.1.4.1.9.9.192.1.3.11.1.11
Counter32 · CDRs
This object indicates the total number of CDRs opened on the GGSN for a charging group, either since system startup or since the last time the charging statistics was cleared.
Trigger Condition: This counter is incremented when a new CDR is opened. This new CDR might be opened initially and also due to the closure of the existing opened CDR.
cgprsCgGatewayGroupTotalContainerCreated
1.3.6.1.4.1.9.9.192.1.3.11.1.12
Counter32 · containers
This object indicates the total number of containers created on the GGSN for a charging group, either since system startup or since the last time the charging statistics was cleared.
Trigger Condition: This counter is incremented when the CDR is closed or the CDR is updated.
cgprsCgGatewayGroupTotalServiceRecords
1.3.6.1.4.1.9.9.192.1.3.11.1.13
Counter32 · records
This object indicates the total number of service records created on GGSN for a charging group, either since the system startup or since the time the service aware feature is enabled.
Trigger Condition: This counter is incremented when the service record is closed.
cgprsCgGatewayGroupTotalSentMsg
1.3.6.1.4.1.9.9.192.1.3.11.1.14
Counter32 · messages
This object indicates the total number of G-CDR output messages sent from a charging group on the GGSN since the charging service is enabled.
Trigger Condition: This counter is incremented when a CDR is sent either to a CG or an iSCSI target and got a positive response.
cgprsCgGatewayGroupTotalSentMsgToIscsi
1.3.6.1.4.1.9.9.192.1.3.11.1.15
Counter32 · messages
This object indicates the total number of G-CDR output messages sent from a charging group on the GGSN to an iSCSI target since the charging service is enabled.
Trigger Condition: This counter is incremented when a CDR is sent to the iSCSI target and got a positive response.
cgprsCgGatewayGroupTotalSentMsgToCg
1.3.6.1.4.1.9.9.192.1.3.11.1.16
Counter32 · messages
This object indicates the total number of G-CDR output messages sent from a charging group on the GGSN to a CG since the charging service is enabled.
Trigger Condition: This counter is incremented when a CDR is sent to a CG and got a positive response.
cgprsCgAlarmHistTable
1.3.6.1.4.1.9.9.192.1.4.3
Index: cgprsCgAlarmHistIndex
This table contains a history of all charging gateway and charging related alarms that were generated.This table is deprecated by cgprsCgGatewayGroupAlarmHistTable
cgprsCgAlarmHistIndex
1.3.6.1.4.1.9.9.192.1.4.3.1.1
Unsigned32 (1..4294967295)
A monotonically increasing integer for the sole purpose of indexing the charging gateway and charging related alarms. When the index reaches the maximum value it will wrap around to one.
cgprsCgAlarmHistType
1.3.6.1.4.1.9.9.192.1.4.3.1.2
CgprsCgAlarmType1 = cgprsCgAlarmCgDown2 = cgprsCgAlarmCgUp3 = cgprsCgAlarmTransFailure4 = cgprsCgAlarmTransSuccess5 = cgprsCgAlarmCapacityFull6 = cgprsCgAlarmCapacityFree7 = cgprsCgAlarmEchoFailure8 = cgprsCgAlarmEchoRestored9 = cgprsCgAlarmCdrDiscard10 = cgprsCgAlarmCdrBuffered11 = cgprsCgAlarmChargingDisabled12 = cgprsCgAlarmChargingEnabledIdentifies the possible types of GPRS charging gateway and charging related alarm.
cgprsCgAlarmCgDown - CG is down. cgprsCgAlarmCgUp - CG is up. cgprsCgAlarmTransFailure - The GGSN has repeatedly failed to receive responses for Data Record Transfer Request Messages from CG. cgprsCgAlarmTransSuccess - The GGSN has successfully sent Data Record Transfer Request Message to CG after the failure. cgprsCgAlarmCapacityFull - The GGSN is out of memory and has failed to buffer a G-CDR internally. cgprsCgAlarmCapacityFree - The GGSN is able to buffer G-CDR after the failure to buffer G-CDRs. cgprsCgAlarmEchoFailure - The GGSN has repeatedly failed to receive the Echo Response Messages from the CG for the Echo Request message. cgprsCgAlarmEchoRestored - The GGSN has got the Echo Response from the CG after the cgprsCgAlarmEchoFailure has been detected. cgprsCgAlarmCdrDiscard - The G-CDRs are discarded. cgprsCgAlarmCdrDiscardRestored - This is to indicate that GGSN has started buffering G-CDRs after cgprsCgAlarmCdrDiscard has occured. cgprsCgAlarmChargingDisabled - Indicates that charging transactions on the GGSN are disabled. cgprsCgAlarmChargingEnabled - Indicates that charging transactions on the GGSN are enabled. · Integer32
Type of the GPRS charging gateway or charging related alarm.
cgprsCgAlarmHistAddrType
1.3.6.1.4.1.9.9.192.1.4.3.1.3
InetAddressType0 = unknown1 = ipv42 = ipv63 = ipv4z4 = ipv6z16 = dnsA value that represents a type of Internet address.
unknown(0) An unknown address type. This value MUST
be used if the value of the corresponding InetAddress object is a zero-length string. It may also be used to indicate an IP address that is not in one of the formats defined below.
ipv4(1) An IPv4 address as defined by the
InetAddressIPv4 textual convention.
ipv6(2) An IPv6 address as defined by the
InetAddressIPv6 textual convention.
ipv4z(3) A non-global IPv4 address including a zone
index as defined by the InetAddressIPv4z textual convention.
ipv6z(4) A non-global IPv6 address including a zone
index as defined by the InetAddressIPv6z textual convention.
dns(16) A DNS domain name as defined by the
InetAddressDNS textual convention.
Each definition of a concrete InetAddressType value must be accompanied by a definition of a textual convention for use with that InetAddressType.
To support future extensions, the InetAddressType textual convention SHOULD NOT be sub-typed in object type definitions. It MAY be sub-typed in compliance statements in order to require only a subset of these address types for a compliant implementation.
Implementations must ensure that InetAddressType objects and any dependent objects (e.g., InetAddress objects) are consistent. An inconsistentValue error must be generated if an attempt to change an InetAddressType object would, for example, lead to an undefined InetAddress value. In particular, InetAddressType/InetAddress pairs must be changed together if the address type changes (e.g., from ipv6(2) to ipv4(1)). · Integer32
This object indicates the type of Internet address given in cgprsCgAlarmHistAddress.
cgprsCgAlarmHistAddress
1.3.6.1.4.1.9.9.192.1.4.3.1.4
InetAddressDenotes a generic Internet address.
An InetAddress value is always interpreted within the context of an InetAddressType value. Every usage of the InetAddress textual convention is required to specify the InetAddressType object that provides the context. It is suggested that the InetAddressType object be logically registered before the object(s) that use the InetAddress textual convention, if they appear in the same logical row.
The value of an InetAddress object must always be consistent with the value of the associated InetAddressType object. Attempts to set an InetAddress object to a value inconsistent with the associated InetAddressType must fail with an inconsistentValue error.
When this textual convention is used as the syntax of an index object, there may be issues with the limit of 128 sub-identifiers specified in SMIv2, STD 58. In this case, the object definition MUST include a 'SIZE' clause to limit the number of potential instance sub-identifiers; otherwise the applicable constraints MUST be stated in the appropriate conceptual row DESCRIPTION clauses, or in the surrounding documentation if there is no single DESCRIPTION clause that is appropriate. SIZE (0..255) · OCTET STRING
The IP address that is used to uniquely identify the CG.
cgprsCgAlarmHistSeverity
1.3.6.1.4.1.9.9.192.1.4.3.1.5
CiscoAlarmSeverity1 = cleared2 = indeterminate3 = critical4 = major5 = minor6 = warning7 = infoRepresents the perceived alarm severity associated with a service or safety affecting condition and/or event. These are based on ITU severities, except that info(7) is added.
cleared(1) - Indicates a previous alarm condition has been cleared. It is not required (unless specifically stated elsewhere on a case by case basis) that an alarm condition that has been cleared will produce a notification or other event containing an alarm severity with this value.
indeterminate(2) - Indicates that the severity level cannot be determined.
critical(3) - Indicates that a service or safety affecting condition has occurred and an immediate corrective action is required.
major(4) - Indicates that a service affecting condition has occurred and an urgent corrective action is required.
minor(5) - Indicates the existence of a non-service affecting condition and that corrective action should be taken in order to prevent a more serious (for example, service or safety affecting) condition.
warning(6) - Indicates the detection of a potential or impending service or safety affecting condition, before any significant effects have been felt.
info(7) - Indicates an alarm condition that does not meet any other severity definition. This can include important, but non-urgent, notices or informational events.Reference: ITU-X.733 · Integer32
This object indicates the severity of the alarm.
cgprsCgAlarmHistInfo
1.3.6.1.4.1.9.9.192.1.4.3.1.6
SnmpAdminStringAn octet string containing administrative information, preferably in human-readable form.
To facilitate internationalization, this information is represented using the ISO/IEC IS 10646-1 character set, encoded as an octet string using the UTF-8 transformation format described in [RFC2279].
Since additional code points are added by amendments to the 10646 standard from time to time, implementations must be prepared to encounter any code point from 0x00000000 to 0x7fffffff. Byte sequences that do not correspond to the valid UTF-8 encoding of a code point or are outside this range are prohibited.
The use of control codes should be avoided.
When it is necessary to represent a newline, the control code sequence CR LF should be used.
The use of leading or trailing white space should be avoided.
For code points not directly supported by user interface hardware or software, an alternative means of entry and display, such as hexadecimal, may be provided.
For information encoded in 7-bit US-ASCII, the UTF-8 encoding is identical to the US-ASCII encoding.
UTF-8 may require multiple bytes to represent a single character / code point; thus the length of this object in octets may be different from the number of characters encoded. Similarly, size constraints refer to the number of encoded octets, not the number of characters represented by an encoding.
Note that when this TC is used for an object that is used or envisioned to be used as an index, then a SIZE restriction MUST be specified so that the number of sub-identifiers for any object instance does not exceed the limit of 128, as defined by [RFC3416].
Note that the size of an SnmpAdminString object is measured in octets, not characters. SIZE (0..255) · OCTET STRING · hint 255t
This object provide detailed information when a GPRS charging gateway or charging related alarm is generated.
This table contains a history of all charging groups and charging related alarms that were generated for the charging gateways per charging group.
cgprsCgGatewayGroupAlarmHistIndex
1.3.6.1.4.1.9.9.192.1.4.5.1.1
Unsigned32 (1..4294967295)
This object indicates a monotonically increasing integer for the sole purpose of indexing the charging gateway and charging related alarms in a charging group. When the index reaches the maximum value it will wrap around to one.
cgprsCgGatewayGroupAlarmHistType
1.3.6.1.4.1.9.9.192.1.4.5.1.2
CgprsCgAlarmType1 = cgprsCgAlarmCgDown2 = cgprsCgAlarmCgUp3 = cgprsCgAlarmTransFailure4 = cgprsCgAlarmTransSuccess5 = cgprsCgAlarmCapacityFull6 = cgprsCgAlarmCapacityFree7 = cgprsCgAlarmEchoFailure8 = cgprsCgAlarmEchoRestored9 = cgprsCgAlarmCdrDiscard10 = cgprsCgAlarmCdrBuffered11 = cgprsCgAlarmChargingDisabled12 = cgprsCgAlarmChargingEnabledIdentifies the possible types of GPRS charging gateway and charging related alarm.
cgprsCgAlarmCgDown - CG is down. cgprsCgAlarmCgUp - CG is up. cgprsCgAlarmTransFailure - The GGSN has repeatedly failed to receive responses for Data Record Transfer Request Messages from CG. cgprsCgAlarmTransSuccess - The GGSN has successfully sent Data Record Transfer Request Message to CG after the failure. cgprsCgAlarmCapacityFull - The GGSN is out of memory and has failed to buffer a G-CDR internally. cgprsCgAlarmCapacityFree - The GGSN is able to buffer G-CDR after the failure to buffer G-CDRs. cgprsCgAlarmEchoFailure - The GGSN has repeatedly failed to receive the Echo Response Messages from the CG for the Echo Request message. cgprsCgAlarmEchoRestored - The GGSN has got the Echo Response from the CG after the cgprsCgAlarmEchoFailure has been detected. cgprsCgAlarmCdrDiscard - The G-CDRs are discarded. cgprsCgAlarmCdrDiscardRestored - This is to indicate that GGSN has started buffering G-CDRs after cgprsCgAlarmCdrDiscard has occured. cgprsCgAlarmChargingDisabled - Indicates that charging transactions on the GGSN are disabled. cgprsCgAlarmChargingEnabled - Indicates that charging transactions on the GGSN are enabled. · Integer32
This object indicates the type of GPRS, charging gateway or charging related alarm.
cgprsCgGatewayGroupAlarmHistAddrType
1.3.6.1.4.1.9.9.192.1.4.5.1.3
InetAddressType0 = unknown1 = ipv42 = ipv63 = ipv4z4 = ipv6z16 = dnsA value that represents a type of Internet address.
unknown(0) An unknown address type. This value MUST
be used if the value of the corresponding InetAddress object is a zero-length string. It may also be used to indicate an IP address that is not in one of the formats defined below.
ipv4(1) An IPv4 address as defined by the
InetAddressIPv4 textual convention.
ipv6(2) An IPv6 address as defined by the
InetAddressIPv6 textual convention.
ipv4z(3) A non-global IPv4 address including a zone
index as defined by the InetAddressIPv4z textual convention.
ipv6z(4) A non-global IPv6 address including a zone
index as defined by the InetAddressIPv6z textual convention.
dns(16) A DNS domain name as defined by the
InetAddressDNS textual convention.
Each definition of a concrete InetAddressType value must be accompanied by a definition of a textual convention for use with that InetAddressType.
To support future extensions, the InetAddressType textual convention SHOULD NOT be sub-typed in object type definitions. It MAY be sub-typed in compliance statements in order to require only a subset of these address types for a compliant implementation.
Implementations must ensure that InetAddressType objects and any dependent objects (e.g., InetAddress objects) are consistent. An inconsistentValue error must be generated if an attempt to change an InetAddressType object would, for example, lead to an undefined InetAddress value. In particular, InetAddressType/InetAddress pairs must be changed together if the address type changes (e.g., from ipv6(2) to ipv4(1)). · Integer32
This object indicates the type of Internet address given in cgprsCgGatewayGroupAlarmHistAddress.
cgprsCgGatewayGroupAlarmHistAddress
1.3.6.1.4.1.9.9.192.1.4.5.1.4
InetAddressDenotes a generic Internet address.
An InetAddress value is always interpreted within the context of an InetAddressType value. Every usage of the InetAddress textual convention is required to specify the InetAddressType object that provides the context. It is suggested that the InetAddressType object be logically registered before the object(s) that use the InetAddress textual convention, if they appear in the same logical row.
The value of an InetAddress object must always be consistent with the value of the associated InetAddressType object. Attempts to set an InetAddress object to a value inconsistent with the associated InetAddressType must fail with an inconsistentValue error.
When this textual convention is used as the syntax of an index object, there may be issues with the limit of 128 sub-identifiers specified in SMIv2, STD 58. In this case, the object definition MUST include a 'SIZE' clause to limit the number of potential instance sub-identifiers; otherwise the applicable constraints MUST be stated in the appropriate conceptual row DESCRIPTION clauses, or in the surrounding documentation if there is no single DESCRIPTION clause that is appropriate. SIZE (0..255) · OCTET STRING
This object indicates the IP address that is used to uniquely identify the CG.
cgprsCgGatewayGroupAlarmHistSeverity
1.3.6.1.4.1.9.9.192.1.4.5.1.5
CiscoAlarmSeverity1 = cleared2 = indeterminate3 = critical4 = major5 = minor6 = warning7 = infoRepresents the perceived alarm severity associated with a service or safety affecting condition and/or event. These are based on ITU severities, except that info(7) is added.
cleared(1) - Indicates a previous alarm condition has been cleared. It is not required (unless specifically stated elsewhere on a case by case basis) that an alarm condition that has been cleared will produce a notification or other event containing an alarm severity with this value.
indeterminate(2) - Indicates that the severity level cannot be determined.
critical(3) - Indicates that a service or safety affecting condition has occurred and an immediate corrective action is required.
major(4) - Indicates that a service affecting condition has occurred and an urgent corrective action is required.
minor(5) - Indicates the existence of a non-service affecting condition and that corrective action should be taken in order to prevent a more serious (for example, service or safety affecting) condition.
warning(6) - Indicates the detection of a potential or impending service or safety affecting condition, before any significant effects have been felt.
info(7) - Indicates an alarm condition that does not meet any other severity definition. This can include important, but non-urgent, notices or informational events.Reference: ITU-X.733 · Integer32
This object indicates the severity of the alarm.
cgprsCgGatewayGroupAlarmHistInfo
1.3.6.1.4.1.9.9.192.1.4.5.1.6
SnmpAdminStringAn octet string containing administrative information, preferably in human-readable form.
To facilitate internationalization, this information is represented using the ISO/IEC IS 10646-1 character set, encoded as an octet string using the UTF-8 transformation format described in [RFC2279].
Since additional code points are added by amendments to the 10646 standard from time to time, implementations must be prepared to encounter any code point from 0x00000000 to 0x7fffffff. Byte sequences that do not correspond to the valid UTF-8 encoding of a code point or are outside this range are prohibited.
The use of control codes should be avoided.
When it is necessary to represent a newline, the control code sequence CR LF should be used.
The use of leading or trailing white space should be avoided.
For code points not directly supported by user interface hardware or software, an alternative means of entry and display, such as hexadecimal, may be provided.
For information encoded in 7-bit US-ASCII, the UTF-8 encoding is identical to the US-ASCII encoding.
UTF-8 may require multiple bytes to represent a single character / code point; thus the length of this object in octets may be different from the number of characters encoded. Similarly, size constraints refer to the number of encoded octets, not the number of characters represented by an encoding.
Note that when this TC is used for an object that is used or envisioned to be used as an index, then a SIZE restriction MUST be specified so that the number of sub-identifiers for any object instance does not exceed the limit of 128, as defined by [RFC3416].
Note that the size of an SnmpAdminString object is measured in octets, not characters. SIZE (0..255) · OCTET STRING · hint 255t
This object provides detailed information when a GPRS charging gateway or charging related alarm is generated.
cgprsCgGatewayGroupStatusTable
1.3.6.1.4.1.9.9.192.1.5.4
Index: cgprsCgGroupIndex
Charging gateway table. The table contains a list of currently active and previous active charging gateways.
cgprsCgGatewayGroupStatusAddrType
1.3.6.1.4.1.9.9.192.1.5.4.1.1
InetAddressType0 = unknown1 = ipv42 = ipv63 = ipv4z4 = ipv6z16 = dnsA value that represents a type of Internet address.
unknown(0) An unknown address type. This value MUST
be used if the value of the corresponding InetAddress object is a zero-length string. It may also be used to indicate an IP address that is not in one of the formats defined below.
ipv4(1) An IPv4 address as defined by the
InetAddressIPv4 textual convention.
ipv6(2) An IPv6 address as defined by the
InetAddressIPv6 textual convention.
ipv4z(3) A non-global IPv4 address including a zone
index as defined by the InetAddressIPv4z textual convention.
ipv6z(4) A non-global IPv6 address including a zone
index as defined by the InetAddressIPv6z textual convention.
dns(16) A DNS domain name as defined by the
InetAddressDNS textual convention.
Each definition of a concrete InetAddressType value must be accompanied by a definition of a textual convention for use with that InetAddressType.
To support future extensions, the InetAddressType textual convention SHOULD NOT be sub-typed in object type definitions. It MAY be sub-typed in compliance statements in order to require only a subset of these address types for a compliant implementation.
Implementations must ensure that InetAddressType objects and any dependent objects (e.g., InetAddress objects) are consistent. An inconsistentValue error must be generated if an attempt to change an InetAddressType object would, for example, lead to an undefined InetAddress value. In particular, InetAddressType/InetAddress pairs must be changed together if the address type changes (e.g., from ipv6(2) to ipv4(1)). · Integer32
This object indicates the address type of the active charging gateway.
cgprsCgGatewayGroupStatusActiveCgAddr
1.3.6.1.4.1.9.9.192.1.5.4.1.2
InetAddressDenotes a generic Internet address.
An InetAddress value is always interpreted within the context of an InetAddressType value. Every usage of the InetAddress textual convention is required to specify the InetAddressType object that provides the context. It is suggested that the InetAddressType object be logically registered before the object(s) that use the InetAddress textual convention, if they appear in the same logical row.
The value of an InetAddress object must always be consistent with the value of the associated InetAddressType object. Attempts to set an InetAddress object to a value inconsistent with the associated InetAddressType must fail with an inconsistentValue error.
When this textual convention is used as the syntax of an index object, there may be issues with the limit of 128 sub-identifiers specified in SMIv2, STD 58. In this case, the object definition MUST include a 'SIZE' clause to limit the number of potential instance sub-identifiers; otherwise the applicable constraints MUST be stated in the appropriate conceptual row DESCRIPTION clauses, or in the surrounding documentation if there is no single DESCRIPTION clause that is appropriate. SIZE (0..255) · OCTET STRING
This object indicates the address of the active charging gateway. The type of address will be represented by cgprsCgGatewayGroupStatusAddrType
cgprsCgGatewayGroupStatusOldCgAddr
1.3.6.1.4.1.9.9.192.1.5.4.1.3
InetAddressDenotes a generic Internet address.
An InetAddress value is always interpreted within the context of an InetAddressType value. Every usage of the InetAddress textual convention is required to specify the InetAddressType object that provides the context. It is suggested that the InetAddressType object be logically registered before the object(s) that use the InetAddress textual convention, if they appear in the same logical row.
The value of an InetAddress object must always be consistent with the value of the associated InetAddressType object. Attempts to set an InetAddress object to a value inconsistent with the associated InetAddressType must fail with an inconsistentValue error.
When this textual convention is used as the syntax of an index object, there may be issues with the limit of 128 sub-identifiers specified in SMIv2, STD 58. In this case, the object definition MUST include a 'SIZE' clause to limit the number of potential instance sub-identifiers; otherwise the applicable constraints MUST be stated in the appropriate conceptual row DESCRIPTION clauses, or in the surrounding documentation if there is no single DESCRIPTION clause that is appropriate. SIZE (0..255) · OCTET STRING
This object indicates the address of the previous active charging gateway. The type of address will same as the one present in cgprsCgGatewayGroupStatusAddrType.
Trap details
cgprsCgAlarmNotif
1.3.6.1.4.1.9.9.192.2.0.1
A cgprsCgAlarmNotif signifies that a GPRS related alarm is detected in the managed system. This alarm is sent after an entry has been added to cgprsCgAlarmHistTable or cgprsCgGatewayGroupAlarmHistTable. This notification is deprecated by cgprsCgGatewayGroupAlarmNotif
cgprsCgAlarmHistType
1.3.6.1.4.1.9.9.192.1.4.3.1.2
CgprsCgAlarmType1 = cgprsCgAlarmCgDown2 = cgprsCgAlarmCgUp3 = cgprsCgAlarmTransFailure4 = cgprsCgAlarmTransSuccess5 = cgprsCgAlarmCapacityFull6 = cgprsCgAlarmCapacityFree7 = cgprsCgAlarmEchoFailure8 = cgprsCgAlarmEchoRestored9 = cgprsCgAlarmCdrDiscard10 = cgprsCgAlarmCdrBuffered11 = cgprsCgAlarmChargingDisabled12 = cgprsCgAlarmChargingEnabledIdentifies the possible types of GPRS charging gateway and charging related alarm.
cgprsCgAlarmCgDown - CG is down. cgprsCgAlarmCgUp - CG is up. cgprsCgAlarmTransFailure - The GGSN has repeatedly failed to receive responses for Data Record Transfer Request Messages from CG. cgprsCgAlarmTransSuccess - The GGSN has successfully sent Data Record Transfer Request Message to CG after the failure. cgprsCgAlarmCapacityFull - The GGSN is out of memory and has failed to buffer a G-CDR internally. cgprsCgAlarmCapacityFree - The GGSN is able to buffer G-CDR after the failure to buffer G-CDRs. cgprsCgAlarmEchoFailure - The GGSN has repeatedly failed to receive the Echo Response Messages from the CG for the Echo Request message. cgprsCgAlarmEchoRestored - The GGSN has got the Echo Response from the CG after the cgprsCgAlarmEchoFailure has been detected. cgprsCgAlarmCdrDiscard - The G-CDRs are discarded. cgprsCgAlarmCdrDiscardRestored - This is to indicate that GGSN has started buffering G-CDRs after cgprsCgAlarmCdrDiscard has occured. cgprsCgAlarmChargingDisabled - Indicates that charging transactions on the GGSN are disabled. cgprsCgAlarmChargingEnabled - Indicates that charging transactions on the GGSN are enabled. · Integer32
Type of the GPRS charging gateway or charging related alarm.
cgprsCgAlarmHistAddrType
1.3.6.1.4.1.9.9.192.1.4.3.1.3
InetAddressType0 = unknown1 = ipv42 = ipv63 = ipv4z4 = ipv6z16 = dnsA value that represents a type of Internet address.
unknown(0) An unknown address type. This value MUST
be used if the value of the corresponding InetAddress object is a zero-length string. It may also be used to indicate an IP address that is not in one of the formats defined below.
ipv4(1) An IPv4 address as defined by the
InetAddressIPv4 textual convention.
ipv6(2) An IPv6 address as defined by the
InetAddressIPv6 textual convention.
ipv4z(3) A non-global IPv4 address including a zone
index as defined by the InetAddressIPv4z textual convention.
ipv6z(4) A non-global IPv6 address including a zone
index as defined by the InetAddressIPv6z textual convention.
dns(16) A DNS domain name as defined by the
InetAddressDNS textual convention.
Each definition of a concrete InetAddressType value must be accompanied by a definition of a textual convention for use with that InetAddressType.
To support future extensions, the InetAddressType textual convention SHOULD NOT be sub-typed in object type definitions. It MAY be sub-typed in compliance statements in order to require only a subset of these address types for a compliant implementation.
Implementations must ensure that InetAddressType objects and any dependent objects (e.g., InetAddress objects) are consistent. An inconsistentValue error must be generated if an attempt to change an InetAddressType object would, for example, lead to an undefined InetAddress value. In particular, InetAddressType/InetAddress pairs must be changed together if the address type changes (e.g., from ipv6(2) to ipv4(1)). · Integer32
This object indicates the type of Internet address given in cgprsCgAlarmHistAddress.
cgprsCgAlarmHistAddress
1.3.6.1.4.1.9.9.192.1.4.3.1.4
InetAddressDenotes a generic Internet address.
An InetAddress value is always interpreted within the context of an InetAddressType value. Every usage of the InetAddress textual convention is required to specify the InetAddressType object that provides the context. It is suggested that the InetAddressType object be logically registered before the object(s) that use the InetAddress textual convention, if they appear in the same logical row.
The value of an InetAddress object must always be consistent with the value of the associated InetAddressType object. Attempts to set an InetAddress object to a value inconsistent with the associated InetAddressType must fail with an inconsistentValue error.
When this textual convention is used as the syntax of an index object, there may be issues with the limit of 128 sub-identifiers specified in SMIv2, STD 58. In this case, the object definition MUST include a 'SIZE' clause to limit the number of potential instance sub-identifiers; otherwise the applicable constraints MUST be stated in the appropriate conceptual row DESCRIPTION clauses, or in the surrounding documentation if there is no single DESCRIPTION clause that is appropriate. SIZE (0..255) · OCTET STRING
The IP address that is used to uniquely identify the CG.
cgprsCgAlarmHistSeverity
1.3.6.1.4.1.9.9.192.1.4.3.1.5
CiscoAlarmSeverity1 = cleared2 = indeterminate3 = critical4 = major5 = minor6 = warning7 = infoRepresents the perceived alarm severity associated with a service or safety affecting condition and/or event. These are based on ITU severities, except that info(7) is added.
cleared(1) - Indicates a previous alarm condition has been cleared. It is not required (unless specifically stated elsewhere on a case by case basis) that an alarm condition that has been cleared will produce a notification or other event containing an alarm severity with this value.
indeterminate(2) - Indicates that the severity level cannot be determined.
critical(3) - Indicates that a service or safety affecting condition has occurred and an immediate corrective action is required.
major(4) - Indicates that a service affecting condition has occurred and an urgent corrective action is required.
minor(5) - Indicates the existence of a non-service affecting condition and that corrective action should be taken in order to prevent a more serious (for example, service or safety affecting) condition.
warning(6) - Indicates the detection of a potential or impending service or safety affecting condition, before any significant effects have been felt.
info(7) - Indicates an alarm condition that does not meet any other severity definition. This can include important, but non-urgent, notices or informational events.Reference: ITU-X.733 · Integer32
This object indicates the severity of the alarm.
cgprsCgAlarmHistInfo
1.3.6.1.4.1.9.9.192.1.4.3.1.6
SnmpAdminStringAn octet string containing administrative information, preferably in human-readable form.
To facilitate internationalization, this information is represented using the ISO/IEC IS 10646-1 character set, encoded as an octet string using the UTF-8 transformation format described in [RFC2279].
Since additional code points are added by amendments to the 10646 standard from time to time, implementations must be prepared to encounter any code point from 0x00000000 to 0x7fffffff. Byte sequences that do not correspond to the valid UTF-8 encoding of a code point or are outside this range are prohibited.
The use of control codes should be avoided.
When it is necessary to represent a newline, the control code sequence CR LF should be used.
The use of leading or trailing white space should be avoided.
For code points not directly supported by user interface hardware or software, an alternative means of entry and display, such as hexadecimal, may be provided.
For information encoded in 7-bit US-ASCII, the UTF-8 encoding is identical to the US-ASCII encoding.
UTF-8 may require multiple bytes to represent a single character / code point; thus the length of this object in octets may be different from the number of characters encoded. Similarly, size constraints refer to the number of encoded octets, not the number of characters represented by an encoding.
Note that when this TC is used for an object that is used or envisioned to be used as an index, then a SIZE restriction MUST be specified so that the number of sub-identifiers for any object instance does not exceed the limit of 128, as defined by [RFC3416].
Note that the size of an SnmpAdminString object is measured in octets, not characters. SIZE (0..255) · OCTET STRING · hint 255t
This object provide detailed information when a GPRS charging gateway or charging related alarm is generated.
cgprsCgGatewaySwitchoverNotif
1.3.6.1.4.1.9.9.192.2.0.2
A notification of this type is generated when the charging gateway is switched, the new charging gateway is identified by cgprsCgActiveChgGatewayAddress and the old charging gateway is identified by cgprsCgOldChgGatewayAddress.
The switchover will happen according to the value set in cgprsCgGroupSwitchOverTime and the selection of the new CG will be according to the value set in cgprsCgSwitchOverPriority. Note: Selection of new CG based on the value set in cgprsCgSwitchOverPriority is only true for default charging gateway group, for other charging gateway groups including defualt charging gateway group it can be determined by the value set in cgprsCgGroupSwitchOverPriority. This notification is deprecated by cgprsCgGatewayGroupSwitchoverNotif
cgprsCgActiveChgGatewayAddrType
1.3.6.1.4.1.9.9.192.1.5.1
InetAddressType0 = unknown1 = ipv42 = ipv63 = ipv4z4 = ipv6z16 = dnsA value that represents a type of Internet address.
unknown(0) An unknown address type. This value MUST
be used if the value of the corresponding InetAddress object is a zero-length string. It may also be used to indicate an IP address that is not in one of the formats defined below.
ipv4(1) An IPv4 address as defined by the
InetAddressIPv4 textual convention.
ipv6(2) An IPv6 address as defined by the
InetAddressIPv6 textual convention.
ipv4z(3) A non-global IPv4 address including a zone
index as defined by the InetAddressIPv4z textual convention.
ipv6z(4) A non-global IPv6 address including a zone
index as defined by the InetAddressIPv6z textual convention.
dns(16) A DNS domain name as defined by the
InetAddressDNS textual convention.
Each definition of a concrete InetAddressType value must be accompanied by a definition of a textual convention for use with that InetAddressType.
To support future extensions, the InetAddressType textual convention SHOULD NOT be sub-typed in object type definitions. It MAY be sub-typed in compliance statements in order to require only a subset of these address types for a compliant implementation.
Implementations must ensure that InetAddressType objects and any dependent objects (e.g., InetAddress objects) are consistent. An inconsistentValue error must be generated if an attempt to change an InetAddressType object would, for example, lead to an undefined InetAddress value. In particular, InetAddressType/InetAddress pairs must be changed together if the address type changes (e.g., from ipv6(2) to ipv4(1)). · Integer32
This object specifies the address type of the active charging gateway. This object is deprecated by cgprsCgGatewayGroupStatusAddrType.
cgprsCgActiveChgGatewayAddress
1.3.6.1.4.1.9.9.192.1.5.2
InetAddressDenotes a generic Internet address.
An InetAddress value is always interpreted within the context of an InetAddressType value. Every usage of the InetAddress textual convention is required to specify the InetAddressType object that provides the context. It is suggested that the InetAddressType object be logically registered before the object(s) that use the InetAddress textual convention, if they appear in the same logical row.
The value of an InetAddress object must always be consistent with the value of the associated InetAddressType object. Attempts to set an InetAddress object to a value inconsistent with the associated InetAddressType must fail with an inconsistentValue error.
When this textual convention is used as the syntax of an index object, there may be issues with the limit of 128 sub-identifiers specified in SMIv2, STD 58. In this case, the object definition MUST include a 'SIZE' clause to limit the number of potential instance sub-identifiers; otherwise the applicable constraints MUST be stated in the appropriate conceptual row DESCRIPTION clauses, or in the surrounding documentation if there is no single DESCRIPTION clause that is appropriate. SIZE (0..255) · OCTET STRING
This object specifies the address of the active charging gateway.
The type of address will be represented by cgprsCgActiveChgGatewayAddrType. This object is deprecated by cgprsCgGatewayGroupStatusActiveCgAddr.
cgprsCgOldChgGatewayAddress
1.3.6.1.4.1.9.9.192.1.5.3
InetAddressDenotes a generic Internet address.
An InetAddress value is always interpreted within the context of an InetAddressType value. Every usage of the InetAddress textual convention is required to specify the InetAddressType object that provides the context. It is suggested that the InetAddressType object be logically registered before the object(s) that use the InetAddress textual convention, if they appear in the same logical row.
The value of an InetAddress object must always be consistent with the value of the associated InetAddressType object. Attempts to set an InetAddress object to a value inconsistent with the associated InetAddressType must fail with an inconsistentValue error.
When this textual convention is used as the syntax of an index object, there may be issues with the limit of 128 sub-identifiers specified in SMIv2, STD 58. In this case, the object definition MUST include a 'SIZE' clause to limit the number of potential instance sub-identifiers; otherwise the applicable constraints MUST be stated in the appropriate conceptual row DESCRIPTION clauses, or in the surrounding documentation if there is no single DESCRIPTION clause that is appropriate. SIZE (0..255) · OCTET STRING
This object specifies the address of the previous active charging gateway. The type of address will same as the one present in cgprsCgActiveChgGatewayAddrType. This object is deprecated by cgprsCgGatewayGroupStatusOldCgAddr.
cgprsCgInServiceModeNotif
1.3.6.1.4.1.9.9.192.2.0.3
A notification of this type is generated when the GGSN charging function is in normal mode. This can be identified by cgprsCgServiceMode object for default charging gateway group whereas for other charging groups, including default charging gateway group it can be identfied by cgprsCgGroupServiceMode. This notification is deprecated by cgprsCgGatewayGroupInServiceModeNotif
cgprsCgMaintenanceModeNotif
1.3.6.1.4.1.9.9.192.2.0.4
A notification of this type is generated when the GGSN charging function is in maintenance mode. This can be identified by cgprsCgServiceMode object for default charging gateway group whereas for other charging groups, including default charging gateway group it can be identfied by cgprsCgGroupServiceMode. This notification is deprecated by cgprsCgGatewayGroupMaintenanceModeNotif
cgprsCgGatewayGroupAlarmNotif
1.3.6.1.4.1.9.9.192.2.0.5
A cgprsCgGroupAlarmNotif signifies that a GPRS related alarm is detected in the managed system. This alarm is sent after an entry has been added to cgprsCgGatewayGroupAlarmHistTable.
cgprsCgGatewayGroupAlarmHistType
1.3.6.1.4.1.9.9.192.1.4.5.1.2
CgprsCgAlarmType1 = cgprsCgAlarmCgDown2 = cgprsCgAlarmCgUp3 = cgprsCgAlarmTransFailure4 = cgprsCgAlarmTransSuccess5 = cgprsCgAlarmCapacityFull6 = cgprsCgAlarmCapacityFree7 = cgprsCgAlarmEchoFailure8 = cgprsCgAlarmEchoRestored9 = cgprsCgAlarmCdrDiscard10 = cgprsCgAlarmCdrBuffered11 = cgprsCgAlarmChargingDisabled12 = cgprsCgAlarmChargingEnabledIdentifies the possible types of GPRS charging gateway and charging related alarm.
cgprsCgAlarmCgDown - CG is down. cgprsCgAlarmCgUp - CG is up. cgprsCgAlarmTransFailure - The GGSN has repeatedly failed to receive responses for Data Record Transfer Request Messages from CG. cgprsCgAlarmTransSuccess - The GGSN has successfully sent Data Record Transfer Request Message to CG after the failure. cgprsCgAlarmCapacityFull - The GGSN is out of memory and has failed to buffer a G-CDR internally. cgprsCgAlarmCapacityFree - The GGSN is able to buffer G-CDR after the failure to buffer G-CDRs. cgprsCgAlarmEchoFailure - The GGSN has repeatedly failed to receive the Echo Response Messages from the CG for the Echo Request message. cgprsCgAlarmEchoRestored - The GGSN has got the Echo Response from the CG after the cgprsCgAlarmEchoFailure has been detected. cgprsCgAlarmCdrDiscard - The G-CDRs are discarded. cgprsCgAlarmCdrDiscardRestored - This is to indicate that GGSN has started buffering G-CDRs after cgprsCgAlarmCdrDiscard has occured. cgprsCgAlarmChargingDisabled - Indicates that charging transactions on the GGSN are disabled. cgprsCgAlarmChargingEnabled - Indicates that charging transactions on the GGSN are enabled. · Integer32
This object indicates the type of GPRS, charging gateway or charging related alarm.
cgprsCgGatewayGroupAlarmHistAddrType
1.3.6.1.4.1.9.9.192.1.4.5.1.3
InetAddressType0 = unknown1 = ipv42 = ipv63 = ipv4z4 = ipv6z16 = dnsA value that represents a type of Internet address.
unknown(0) An unknown address type. This value MUST
be used if the value of the corresponding InetAddress object is a zero-length string. It may also be used to indicate an IP address that is not in one of the formats defined below.
ipv4(1) An IPv4 address as defined by the
InetAddressIPv4 textual convention.
ipv6(2) An IPv6 address as defined by the
InetAddressIPv6 textual convention.
ipv4z(3) A non-global IPv4 address including a zone
index as defined by the InetAddressIPv4z textual convention.
ipv6z(4) A non-global IPv6 address including a zone
index as defined by the InetAddressIPv6z textual convention.
dns(16) A DNS domain name as defined by the
InetAddressDNS textual convention.
Each definition of a concrete InetAddressType value must be accompanied by a definition of a textual convention for use with that InetAddressType.
To support future extensions, the InetAddressType textual convention SHOULD NOT be sub-typed in object type definitions. It MAY be sub-typed in compliance statements in order to require only a subset of these address types for a compliant implementation.
Implementations must ensure that InetAddressType objects and any dependent objects (e.g., InetAddress objects) are consistent. An inconsistentValue error must be generated if an attempt to change an InetAddressType object would, for example, lead to an undefined InetAddress value. In particular, InetAddressType/InetAddress pairs must be changed together if the address type changes (e.g., from ipv6(2) to ipv4(1)). · Integer32
This object indicates the type of Internet address given in cgprsCgGatewayGroupAlarmHistAddress.
cgprsCgGatewayGroupAlarmHistAddress
1.3.6.1.4.1.9.9.192.1.4.5.1.4
InetAddressDenotes a generic Internet address.
An InetAddress value is always interpreted within the context of an InetAddressType value. Every usage of the InetAddress textual convention is required to specify the InetAddressType object that provides the context. It is suggested that the InetAddressType object be logically registered before the object(s) that use the InetAddress textual convention, if they appear in the same logical row.
The value of an InetAddress object must always be consistent with the value of the associated InetAddressType object. Attempts to set an InetAddress object to a value inconsistent with the associated InetAddressType must fail with an inconsistentValue error.
When this textual convention is used as the syntax of an index object, there may be issues with the limit of 128 sub-identifiers specified in SMIv2, STD 58. In this case, the object definition MUST include a 'SIZE' clause to limit the number of potential instance sub-identifiers; otherwise the applicable constraints MUST be stated in the appropriate conceptual row DESCRIPTION clauses, or in the surrounding documentation if there is no single DESCRIPTION clause that is appropriate. SIZE (0..255) · OCTET STRING
This object indicates the IP address that is used to uniquely identify the CG.
cgprsCgGatewayGroupAlarmHistSeverity
1.3.6.1.4.1.9.9.192.1.4.5.1.5
CiscoAlarmSeverity1 = cleared2 = indeterminate3 = critical4 = major5 = minor6 = warning7 = infoRepresents the perceived alarm severity associated with a service or safety affecting condition and/or event. These are based on ITU severities, except that info(7) is added.
cleared(1) - Indicates a previous alarm condition has been cleared. It is not required (unless specifically stated elsewhere on a case by case basis) that an alarm condition that has been cleared will produce a notification or other event containing an alarm severity with this value.
indeterminate(2) - Indicates that the severity level cannot be determined.
critical(3) - Indicates that a service or safety affecting condition has occurred and an immediate corrective action is required.
major(4) - Indicates that a service affecting condition has occurred and an urgent corrective action is required.
minor(5) - Indicates the existence of a non-service affecting condition and that corrective action should be taken in order to prevent a more serious (for example, service or safety affecting) condition.
warning(6) - Indicates the detection of a potential or impending service or safety affecting condition, before any significant effects have been felt.
info(7) - Indicates an alarm condition that does not meet any other severity definition. This can include important, but non-urgent, notices or informational events.Reference: ITU-X.733 · Integer32
This object indicates the severity of the alarm.
cgprsCgGatewayGroupAlarmHistInfo
1.3.6.1.4.1.9.9.192.1.4.5.1.6
SnmpAdminStringAn octet string containing administrative information, preferably in human-readable form.
To facilitate internationalization, this information is represented using the ISO/IEC IS 10646-1 character set, encoded as an octet string using the UTF-8 transformation format described in [RFC2279].
Since additional code points are added by amendments to the 10646 standard from time to time, implementations must be prepared to encounter any code point from 0x00000000 to 0x7fffffff. Byte sequences that do not correspond to the valid UTF-8 encoding of a code point or are outside this range are prohibited.
The use of control codes should be avoided.
When it is necessary to represent a newline, the control code sequence CR LF should be used.
The use of leading or trailing white space should be avoided.
For code points not directly supported by user interface hardware or software, an alternative means of entry and display, such as hexadecimal, may be provided.
For information encoded in 7-bit US-ASCII, the UTF-8 encoding is identical to the US-ASCII encoding.
UTF-8 may require multiple bytes to represent a single character / code point; thus the length of this object in octets may be different from the number of characters encoded. Similarly, size constraints refer to the number of encoded octets, not the number of characters represented by an encoding.
Note that when this TC is used for an object that is used or envisioned to be used as an index, then a SIZE restriction MUST be specified so that the number of sub-identifiers for any object instance does not exceed the limit of 128, as defined by [RFC3416].
Note that the size of an SnmpAdminString object is measured in octets, not characters. SIZE (0..255) · OCTET STRING · hint 255t
This object provides detailed information when a GPRS charging gateway or charging related alarm is generated.
cgprsCgGatewayGroupSwitchoverNotif
1.3.6.1.4.1.9.9.192.2.0.6
A notification of this type is generated when the charging gateway is switched, the new charging gateway is identified by cgprsCgGatewayGroupStatusActiveCgAddr and the old charging gateway is identified by cgprsCgGatewayGroupStatusOldCgAddr.
cgprsCgGatewayGroupStatusAddrType
1.3.6.1.4.1.9.9.192.1.5.4.1.1
InetAddressType0 = unknown1 = ipv42 = ipv63 = ipv4z4 = ipv6z16 = dnsA value that represents a type of Internet address.
unknown(0) An unknown address type. This value MUST
be used if the value of the corresponding InetAddress object is a zero-length string. It may also be used to indicate an IP address that is not in one of the formats defined below.
ipv4(1) An IPv4 address as defined by the
InetAddressIPv4 textual convention.
ipv6(2) An IPv6 address as defined by the
InetAddressIPv6 textual convention.
ipv4z(3) A non-global IPv4 address including a zone
index as defined by the InetAddressIPv4z textual convention.
ipv6z(4) A non-global IPv6 address including a zone
index as defined by the InetAddressIPv6z textual convention.
dns(16) A DNS domain name as defined by the
InetAddressDNS textual convention.
Each definition of a concrete InetAddressType value must be accompanied by a definition of a textual convention for use with that InetAddressType.
To support future extensions, the InetAddressType textual convention SHOULD NOT be sub-typed in object type definitions. It MAY be sub-typed in compliance statements in order to require only a subset of these address types for a compliant implementation.
Implementations must ensure that InetAddressType objects and any dependent objects (e.g., InetAddress objects) are consistent. An inconsistentValue error must be generated if an attempt to change an InetAddressType object would, for example, lead to an undefined InetAddress value. In particular, InetAddressType/InetAddress pairs must be changed together if the address type changes (e.g., from ipv6(2) to ipv4(1)). · Integer32
This object indicates the address type of the active charging gateway.
cgprsCgGatewayGroupStatusActiveCgAddr
1.3.6.1.4.1.9.9.192.1.5.4.1.2
InetAddressDenotes a generic Internet address.
An InetAddress value is always interpreted within the context of an InetAddressType value. Every usage of the InetAddress textual convention is required to specify the InetAddressType object that provides the context. It is suggested that the InetAddressType object be logically registered before the object(s) that use the InetAddress textual convention, if they appear in the same logical row.
The value of an InetAddress object must always be consistent with the value of the associated InetAddressType object. Attempts to set an InetAddress object to a value inconsistent with the associated InetAddressType must fail with an inconsistentValue error.
When this textual convention is used as the syntax of an index object, there may be issues with the limit of 128 sub-identifiers specified in SMIv2, STD 58. In this case, the object definition MUST include a 'SIZE' clause to limit the number of potential instance sub-identifiers; otherwise the applicable constraints MUST be stated in the appropriate conceptual row DESCRIPTION clauses, or in the surrounding documentation if there is no single DESCRIPTION clause that is appropriate. SIZE (0..255) · OCTET STRING
This object indicates the address of the active charging gateway. The type of address will be represented by cgprsCgGatewayGroupStatusAddrType
cgprsCgGatewayGroupStatusOldCgAddr
1.3.6.1.4.1.9.9.192.1.5.4.1.3
InetAddressDenotes a generic Internet address.
An InetAddress value is always interpreted within the context of an InetAddressType value. Every usage of the InetAddress textual convention is required to specify the InetAddressType object that provides the context. It is suggested that the InetAddressType object be logically registered before the object(s) that use the InetAddress textual convention, if they appear in the same logical row.
The value of an InetAddress object must always be consistent with the value of the associated InetAddressType object. Attempts to set an InetAddress object to a value inconsistent with the associated InetAddressType must fail with an inconsistentValue error.
When this textual convention is used as the syntax of an index object, there may be issues with the limit of 128 sub-identifiers specified in SMIv2, STD 58. In this case, the object definition MUST include a 'SIZE' clause to limit the number of potential instance sub-identifiers; otherwise the applicable constraints MUST be stated in the appropriate conceptual row DESCRIPTION clauses, or in the surrounding documentation if there is no single DESCRIPTION clause that is appropriate. SIZE (0..255) · OCTET STRING
This object indicates the address of the previous active charging gateway. The type of address will same as the one present in cgprsCgGatewayGroupStatusAddrType.
cgprsCgGatewayGroupInServiceModeNotif
1.3.6.1.4.1.9.9.192.2.0.7
The cgprsCgGatewayGroupInServiceModeNotif notification is generated when the charging group state transitions to in-service mode, identified by the object cgprsCgGroupServiceMode
cgprsCgGroupServiceMode
1.3.6.1.4.1.9.9.192.1.1.60.1.3
INTEGER1 = operational2 = maintenance · Integer32
This object specifies the charging service-mode for a charging group. The charging functions in the GGSN involve mainly collection/accumulation of CDRs and transmitting CDRs to the Charging Gateways. The charging service-mode function has no impact to the collection/accumulation of CDRs. The charging service mode function only involves the transmission of CDRs to the charging gateways. The charging service-mode has the following two states: 'operational' : In this state, the charging group will observe normal charging operations. That is, accumulation and transmission of CDRs to the charging gateway will continue as is done normally. 'maintenance' : In this state, transmission of CDRs to the charging gateways will not be performed; However, collection and accumulation of CDRs will continue as is done normally.
When the GGSN is in 'maintenance' mode, all the charging configurations will be allowed. In the system-init phase, the charging service mode CLI configs will not be handled.
The handling of 'Redirecting Request', 'Node Alive' and charging gateway switchover mechanisms will not be performed while the charging is in maintenance mode. After the mode is changed to operational mode, the messages in the pending queue will be sent towards the newly configured active charging gateway and the normal functions will continue from thereon. When switching between modes, traps will be generated using cgprsCgGatewayGroupInServiceModeNotif and cgprsCgGatewayGroupMaintenanceModeNotif.
cgprsCgGatewayGroupMaintenanceModeNotif
1.3.6.1.4.1.9.9.192.2.0.8
The cgprsCgGatewayGroupMaintenanceModeNotif notification is generated when the charging group state transitions to maintenance mode, identified by the object cgprsCgGroupServiceMode
cgprsCgGroupServiceMode
1.3.6.1.4.1.9.9.192.1.1.60.1.3
INTEGER1 = operational2 = maintenance · Integer32
This object specifies the charging service-mode for a charging group. The charging functions in the GGSN involve mainly collection/accumulation of CDRs and transmitting CDRs to the Charging Gateways. The charging service-mode function has no impact to the collection/accumulation of CDRs. The charging service mode function only involves the transmission of CDRs to the charging gateways. The charging service-mode has the following two states: 'operational' : In this state, the charging group will observe normal charging operations. That is, accumulation and transmission of CDRs to the charging gateway will continue as is done normally. 'maintenance' : In this state, transmission of CDRs to the charging gateways will not be performed; However, collection and accumulation of CDRs will continue as is done normally.
When the GGSN is in 'maintenance' mode, all the charging configurations will be allowed. In the system-init phase, the charging service mode CLI configs will not be handled.
The handling of 'Redirecting Request', 'Node Alive' and charging gateway switchover mechanisms will not be performed while the charging is in maintenance mode. After the mode is changed to operational mode, the messages in the pending queue will be sent towards the newly configured active charging gateway and the normal functions will continue from thereon. When switching between modes, traps will be generated using cgprsCgGatewayGroupInServiceModeNotif and cgprsCgGatewayGroupMaintenanceModeNotif.