ACC SHELL
Path : /usr/share/pibs/ |
|
Current File : //usr/share/pibs/LOAD-BALANCING-PIB-orig |
LOAD-BALANCING-PIB PIB-DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY, OBJECT-TYPE,
TEXTUAL-CONVENTION, MODULE-COMPLIANCE,
OBJECT-IDENTITY, OBJECT-GROUP
FROM COPS-PR-SPPI
TruthValue
FROM SNMPv2-TC
InstanceId, ReferenceId,
TagId, TagReference
FROM COPS-PR-SPPI-TC
SnmpAdminString
FROM SNMP-FRAMEWORK-MIB
InetAddress, InetAddressType
FROM INET-ADDRESS-MIB
lbPolicyPib MODULE-IDENTITY
SUBJECT-CATEGORIES SUBJECT-CATEGORY { tbd û Load Balancing Client
Type }
LAST-UPDATED "200102231000Z"
ORGANIZATION " WG"
CONTACT-INFO ö
Harsha Hegde
Intel Corporation
MS JF3-206
2111 NE 25th Ave.
Hillsboro, OR 97124
Phone: +1 503 264 1439
Fax: +1 503 264 3483
E-Mail: shriharsha.hegde@intel.com
Brad Stone
Resonate, Inc.
385 Moffett Park Drive
Sunnyvale, CA 94089
Phone: +1 408 548 5929
Fax: +1 408 nnn nnnn
Email: bstone@resonate.com
ô
DESCRIPTION
"This PIB module contains a set of provisioning classes
that describe load balancing policies."
::= { tbd }
--
-- Classifier Classes
--
lbClassifierClasses OBJECT IDENTIFIER ::= { lbPolicyPib 1 }
--
-- Filter Table
--
lbFilterTable OBJECT-TYPE
SYNTAX SEQUENCE OF LbFilterEntry
PIB-ACCESS install
STATUS current
DESCRIPTION
"This table consists of additional filters. The filters in
this table extend the filters in frwkBaseFilterTable. A
packet must match all the fields in a filter. Wildcards may
be specified for those fields that are not relevant."
::= { lbClassifierClasses 1 }
lbFilterEntry OBJECT-TYPE
SYNTAX LbFilterEntry
STATUS current
DESCRIPTION
"An instance of this class describes a filter. "
EXTENDS { frwkIpFilterEntry }
::= { lbFilterTable 1 }
LbFilterEntry ::= SEQUENCE {
lbFilterUrlPrefix OCTET_STRING,
lbFilterUrlDomain OCTET_STRING,
lbFilterUrlSuffix OCTET_STRING }
lbFilterUrlPrefix OBJECT-TYPE
SYNTAX OCTET STRING
STATUS current
DESCRIPTION
"The portion of an URL that identifies the protocol. for
example, http,ftp. A æ*Æ character is used to match any
string."
::= { lbFilterEntry 1 }
lbFilterUrDomain OBJECT-TYPE
SYNTAX OCTET STRING
STATUS current
DESCRIPTION
"The portion of an URL that identifies the domain. for
example, www.company.com. A æ*Æ character is used to match
any string."
::= { lbFilterEntry 2 }
lbFilterUrlSuffix OBJECT-TYPE
SYNTAX OCTET STRING
STATUS current
DESCRIPTION
"The portion of an URL that identifies the file name. for
example, index.html, mypic.jpg. A æ*.*Æ string matches any
file, a æ*.jpgÆ string matches all files with jpg extension,
and a æindex.*Æ matches all æindexÆ files with any
extension."
::= { lbFilterEntry 3 }
--
-- Filter Group Table
--
lbFilterGroupTable OBJECT-TYPE
SYNTAX SEQUENCE OF LbFilterGroupEntry
PIB-ACCESS install
STATUS current
DESCRIPTION
"A class that defines Filter Groups. Each Group being an
ordered list of filters. Each instance of this class
identifies one filter of a group and the precedence order of
that filter with respect to other filters in the same
group."
::= { lbClassifierClasses 2 }
lbFilterGroupEntry OBJECT-TYPE
SYNTAX LbFilterGroupEntry
STATUS current
DESCRIPTION
"An instance of filter group."
PIB-INDEX { lbFilterGroupPrid }
::= { lbFilterGroupTable 1 }
LbFilterGroupEntry ::= SEQUENCE {
lbFilterGroupPrid InstanceId,
lbFilterGroupId TagId,
lbFilterGroupFilterId ReferenceId,
lbFilterGroupPriority Unsigned32 }
lbFilterGroupPrid OBJECT-TYPE
SYNTAX InstanceId
STATUS current
DESCRIPTION
"An integer index that uniquely identifies an instance of
the lbFilterGroupEntry class."
::= { lbFilterGroupEntry 1 }
lbFilterGroupId OBJECT-TYPE
SYNTAX TagId
STATUS current
DESCRIPTION
"An arbitrary integer that identifies the group of filters.
The same lbFilterGroupId is used in all lbFilterGroupEntry
instances that belong to a group."
::= { lbFilterGroupEntry 2 }
lbFilterGroupFilterId OBJECT-TYPE
SYNTAX ReferenceId
PIB-REFERENCES { lbFilterEntry }
STATUS current
DESCRIPTION
"Pointer to an instance of filter. The filter with the same
Id must be present."
::= { lbFilterGroupEntry 3 }
lbFilterGroupPriority OBJECT-TYPE
SYNTAX Unsigned32
STATUS current
DESCRIPTION
"An arbitrary integer index that specifies the position of
this filter in the filter group. A filter with a given
priority order is positioned in the filter group before one
with a higher-value priority. Priority values within a group
must be unique."
::= { lbFilterGroupEntry 4 }
--
-- Capabilities Classes
--
lbCapabilitiesClasses OBJECT IDENTIFIER ::= { lbPolicyPib 2 }
--
-- Capabilities Table
--
lbCapabilitiesTable OBJECT-TYPE
SYNTAX SEQUENCE OF LbCapabilitiesEntry
PIB-ACCESS install-notify
STATUS current
DESCRIPTION
"This table consists of load balancer capabilities.
Instances of this class are used by the PEP to notify PEP
capabilities and by the PDP to install policies. The PDP
must not install a capability not reported by the PEP "
::= { lbCapabilitiesClasses 1 }
lbCapabilitiesEntry OBJECT-TYPE
SYNTAX LbCapabilitiesEntry
STATUS current
DESCRIPTION
"An instance of this class describes a set of capabilities
of the load balancer or the capabilities applied to a
service policy."
::= { lbCapabilitiesTable 1 }
LbCapabilitiesEntry ::= SEQUENCE {
lbCapPrid InstanceId,
lbCapStickyMode BITS,
lbCapHttpReturnCodes BITS,
lbCapBalanceAlgorithm BITS,
lbCapAlgorithmParams Prid,
lbCapPreserveSrcAddr TruthValue,
lbCapDirectReturn TruthValue }
lbCapPrid OBJECT-TYPE
SYNTAX InstanceId
STATUS current
DESCRIPTION
"An integer index that uniquely identifies an instance of
the lbCapabilitiesEntry class."
::= { lbCapabilitiesEntry 1 }
lbCapStickyMode OBJECT-TYPE
SYNTAX BITS {
cookieBased (1),
sourceAddressBased (2) }
STATUS current
DESCRIPTION
"Set of values indicating the type of Sticky Mode in this
capabilities set. When PEP notifies PDP, the bits indicate
the support of these mechanisms. When PDP installs policies,
the bits indicate what mechanism must be used."
::= { lbCapabilitiesEntry 2 }
lbCapReturnCodes OBJECT-TYPE
SYNTAX BITS {
http404(1),
http505(2) }
STATUS current
DESCRIPTION
"Set of values indicating the type of HTTP return codes that
the load balancer can interpret and redirect the request to
another server. When PEP notifies PDP, the bits indicate
the ability to interpret the HTTP return codes. When PDP
installs policies, the bits indicate enabling redirection on
any of those HTTP return codes."
::= { lbCapabilitiesEntry 3 }
lbCapBalanceAlgorithm OBJECT-TYPE
SYNTAX BITS {
roundRobin(1),
weightedRoundRobin(2),
leastConnections(3),
weightedLeastConnections(4),
fastestServerResponse(5),
serverCpuUtilizaiton(6),
priorityToUser(7) }
STATUS current
DESCRIPTION
"Set of values indicating the type of server balance
algorithm. When PEP notifies PDP, the bits indicate all the
algorithms supported. When PDP installs policies the bits
indicate only one algorithm that must be used. Additional
parameters needed for the algorithm may be specified in
another PRC instance identified by the lbCapAlgorithmParams
attribute."
::= { lbCapabilitiesEntry 4 }
lbCapAlgorithmParams OBJECT-TYPE
SYNTAX Prid
STATUS current
DESCRIPTION
"This points to PRI that contains parameters needed for a
specific algorithm. The PRI pointed to must exist prior to
the installation of this class.
TBD: define parameters classes for all existing algorithms.ö
::= { lbCapabilitiesEntry 5 }
lbCapPreserveSrcAddr OBJECT-TYPE
SYNTAX TruthValue
STATUS current
DESCRIPTION
"Indicates whether Source Address must be preserved when
forwarding a request to server.ö
::= { lbCapabilitiesEntry 6 }
lbCapDirectReturn OBJECT-TYPE
SYNTAX TruthValue
STATUS current
DESCRIPTION
"Indicates whether a response from data center server could
go directly to client bypassing the load balancer.ö
::= { lbCapabilitiesEntry 7 }
--
-- Server Classes
--
lbServerClasses OBJECT IDENTIFIER ::= { lbPolicyPib 3 }
--
-- Server Table
--
lbServerTable OBJECT-TYPE
SYNTAX SEQUENCE OF LbServerEntry
PIB-ACCESS install
STATUS current
DESCRIPTION
"This table consists of data center servers."
::= { lbCapabilitiesClasses 1 }
lbServerEntry OBJECT-TYPE
SYNTAX LbServerEntry
STATUS current
DESCRIPTION
"An instance of this class describes a data center server."
PIB-INDEX { lbServerPrid }
::= { lbServerTable 1 }
LbServerEntry ::= SEQUENCE {
lbServerPrid InstanceId,
lbServerName SnmpAdminString,
lbServerAddressType InetAddressType,
lbServerAddress InetAddress,
lbServerMode INTEGER }
lbServerPrid OBJECT-TYPE
SYNTAX InstanceId
STATUS current
DESCRIPTION
"An integer index that uniquely identifies an instance of
the lbServerEntry class."
::= { lbServerEntry 1 }
lbServerName OBJECT-TYPE
SYNTAX SnmpAdminString
STATUS current
DESCRIPTION
"A name for server."
::= { lbServerEntry 2 }
lbServerAddressType OBJECT-TYPE
SYNTAX InetAddressType
STATUS current
DESCRIPTION
"Type of address for server."
::= { lbServerEntry 3 }
lbServerAddress OBJECT-TYPE
SYNTAX InetAddress
STATUS current
DESCRIPTION
"Address (IP address or DNS Name) for server."
::= { lbServerEntry 4 }
lbServerMode OBJECT-TYPE
SYNTAX INTEGER {
Disabled(0),
Primary(1),
Backup(2) }
STATUS current
DESCRIPTION
"Indicates the mode of the server. Enumeration values are
primary server (1)
backup server (2)
disabled (0)."
::= { lbServerEntry 5 }
--
-- Server Group Table
--
lbServerGroupTable OBJECT-TYPE
SYNTAX SEQUENCE OF LbServerGroupEntry
PIB-ACCESS install
STATUS current
DESCRIPTION
"A class that defines Server Groups. Each Group being an
ordered list of data center servers. Each instance of this
class identifies one server of a group and the precedence
order of that server with respect to other servers in the
same group."
::= { lbServerClasses 2 }
lbServerGroupEntry OBJECT-TYPE
SYNTAX LbServerGroupEntry
STATUS current
DESCRIPTION
"An instance of server group."
PIB-INDEX { lbServerGroupPrid }
::= { lbServerGroupTable 1 }
LbServerGroupEntry ::= SEQUENCE {
lbServerGroupPrid InstanceId,
lbServerGroupId TagId,
lbServerGroupServerId ReferenceId,
lbServerGroupPriority Unsigned32 }
lbServerGroupPrid OBJECT-TYPE
SYNTAX InstanceId
STATUS current
DESCRIPTION
"An integer index that uniquely identifies an instance of
the lbServerGroupEntry class."
::= { lbServerGroupEntry 1 }
lbServerGroupId OBJECT-TYPE
SYNTAX TagId
STATUS current
DESCRIPTION
"An arbitrary integer that identifies the group of servers.
The same lbServerGroupId is used in all lbServerGroupEntry
instances that belong to a group."
::= { lbServerGroupEntry 2 }
lbServerGroupServerId OBJECT-TYPE
SYNTAX ReferenceId
PIB-REFERENCES { lbServerEntry }
STATUS current
DESCRIPTION
"Pointer to an instance of server. The server with the same
Id must be present."
::= { lbServerGroupEntry 3 }
lbServerGroupPriority OBJECT-TYPE
SYNTAX Unsigned32
STATUS current
DESCRIPTION
"An arbitrary integer index that specifies the position of
this server in the server group. A server with a given
priority order is positioned in the server group before one
with a higher-value priority. Priority values within a group
must be unique."
::= { lbServerGroupEntry 4 }
--
-- Service Classes
--
lbServiceClasses OBJECT IDENTIFIER ::= { lbPolicyPib 4 }
--
-- Service Table
--
lbServiceTable OBJECT-TYPE
SYNTAX SEQUENCE OF LbServiceEntry
PIB-ACCESS install
STATUS current
DESCRIPTION
"This table consists of entries that combine filter groups,
capabilities and server groups to form services."
::= { lbServiceClasses 1 }
lbServiceEntry OBJECT-TYPE
SYNTAX LbServiceEntry
STATUS current
DESCRIPTION
"An instance of this class describes a service."
PIB-INDEX { lbServicePrid }
::= { lbServiceTable 1 }
LbServiceEntry ::= SEQUENCE {
lbServicePrid InstanceId,
lbServiceName SnmpAdminString,
lbServiceFilterGroupId TagReference,
lbServiceServerGroupId TagReference,
lbServiceCapabilitiesId ReferenceId }
lbServicePrid OBJECT-TYPE
SYNTAX InstanceId
STATUS current
DESCRIPTION
"An integer index that uniquely identifies an instance of
the lbServiceEntry class."
::= { lbServiceEntry 1 }
lbServiceName OBJECT-TYPE
SYNTAX SnmpAdminString
STATUS current
DESCRIPTION
"Name to identify a service."
::= { lbServiceEntry 2 }
lbServiceFilterGroupId OBJECT-TYPE
SYNTAX TagReference
PIB-TAG { lbFilterGroupId }
STATUS current
DESCRIPTION
"Pointer to a group of Filters. An instance of
lbFilterGroupEntry with the same tag id must be present."
::= { lbServiceEntry 3 }
lbServiceServerGroupId OBJECT-TYPE
SYNTAX TagReference
PIB-TAG { lbServerGroupId }
STATUS current
DESCRIPTION
"Pointer to a group of Servers. An instance of
lbServerGroupEntry with the same tag id must be present."
::= { lbServiceEntry 4 }
lbServiceCapabilitiesId OBJECT-TYPE
SYNTAX ReferenceId
PIB-REFERENCES { lbCapabilitiesEntry }
STATUS current
DESCRIPTION
"Pointer to an instance of capabilities class. An instance
of lbCapabilitiesEntry with the same tag id must be
present."
::= { lbServiceEntry 5 }
-- Compliance section
-- TBD
END
ACC SHELL 2018