Internet Draft T. Anderson D. Putzolu Intel A. Doria Nortel J. Yong Telia J. Sydir B. Srinivasan CPlane July 14, 2000 Multiple Virtual Router Partitioning Policy Information Base draft-anderson-mvr-pib-00.txt Status of this Memo This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC2026. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet-Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as ``work in progress.'' To view the current status of any Internet-Draft, please check the ``1id-abstracts.txt'' listing contained in an Internet-Drafts Shadow Directory, see http://www.ietf.org/shadow.html. 1. Glossary PIB Policy Information Base. The database of policy information. Anderson et al. [Page 1] Internet Draft IP Forwarding PIB July 2000 PDP Policy Decision Point. See [RAP-FRAMEWORK]. PEP Policy Enforcement Point. See [RAP-FRAMEWORK]. VS Virtual switch. 2. Introduction This document defines a Policy Information Base (PIB) for partitioning a single switch into a set of virtual switches. ([SPPI] describes a structure for specifying policy information that can then be transmitted to a network device for the purpose of configuring policy at that device. The model underlying this structure is one of well defined policy rule classes and instances of these classes residing in a virtual information store called the Policy Information Base (PIB).) The partitioning PIB defined here is largely based on the Base Switch Partitioning MIB (MSF 00.069) [MSF-VSMIB]. However, unlike that MIB, this document does not provide a management interface for the switch as a whole but instead only specifies the ports and resources assigned to virtual switches. The management interface(s) to discover switch resources as a whole are outside the scope of this document. 3. Partitioning Function There are four logical interfaces for managing a switch that can be divided up into multiple virtual switches. They are (1) the interface to control the behavior of the switch as a whole, (2) the interface to control the behavior of each virtual switch, (3) the interface to query what resources exist on the switch, and (4) the interface to create and delete virtual switches and to partition the available resources amongst these virtual switches. Interfaces 1 and 2 are likely to be very similar and PIBs currently exist for the purpose of managing these non-virtualized parts of switches. These interfaces are not considered further in this document. While the latter two interfaces are clearly related, they perform different functions - discovery and configuration respectively. The motivation for separating these functions into different PIBs is that in many cases other PIBs already support resource discovery. The missing element is a PIB to support the virtual switch partitioning function. Therefore, in this document, PIBs for discovering switch resources are assumed to exist and we instead focus on the PIB for the virtual switch partitioning function. This partitioning function creates and deletes virtual switches on a switch and assigns resources in the support of those virtual switches. 4. Base Switch Resources Anderson et al. Expires January 2001 [Page 2] Internet Draft IP Forwarding PIB July 2000 The following switch resources may be partitioned amongst virtual switches. 4.1. Bandwidth, Buffer Space, and Queue Schedulers The bandwidth, buffer space, and queue schedulers assigned to a VS can be abstracted using a single parameter: the equivalent bandwidth per port assigned to the VS in both the incoming and outgoing directions. The equivalent bandwidth is associated with a performance target. The performance target is most common in the form of a loss target but also a delay target can be used. 4.2. Label Space Label space resources are allocated independently for the incoming and outgoing directions of switch ports. Label space must be specified as a set of potentially non-contiguous ranges to allow for the flexible allocation of label space in a dynamic environment. Depending on what service a port provides the label space can be of a different form, e.g., the label space is VPI/VCI for an ATM port and DLCI for a frame relay port. 4.3. Routing Table Space The abstraction for routing table space is more complex than that for label space because different switches implement routing tables of different granularities. Some switches implement a routing table at each port, while others implement a common routing table, which is shared by the connections that go through all of the ports. 4.4. Control Link Bandwidth and Processor Cycles When multiple VSs exercise control over separate LSPs, which are hosted on the same physical switch, they potentially share the processor on which the Switch Partitioning Functionality and Switch Control Functionality is executed. Multiple controllers may also share a communication link to the switch. 5. The Partitioning PIB PARTITION-PIB PIB-DEFINITIONS ::= BEGIN IMPORTS Unsigned32, IpAddress, Integer32, MODULE-IDENTITY, OBJECT-TYPE, Anderson et al. Expires January 2001 [Page 3] Internet Draft IP Forwarding PIB July 2000 PolicyInstanceId FROM COPS-PR-SPPI TEXTUAL-CONVENTION FROM SNMPv2-TC; switchPartitionPib MODULE-IDENTITY CLIENT-TYPE { TBD } LAST-UPDATED "TBS" ORGANIZATION "IETF" CONTACT-INFO " Todd A. Anderson Intel 2111 NE 25th Avenue Hillsboro, OR 97124 USA Phone: +1 503 712 1760 Email: todd.a.anderson@intel.com Avri Doria Nortel Networks 600 Technology Park Drive Billerica MA 01821 Phone: +1 401 663 5024 Email: avri@nortelnetworks.com Jiang Yong Telia Research AB 123 86 Farsta Sweden Phone: +46 (0) 8 713 81 25 Email: yong.b.jiang@telia.se Jerry Sydir CPlane Inc. 5150 El Camino Real Suite B-31 Los Altos, CA 94022 Phone: +1(650) 938-8066 x102 sydir@cplane.com Balaji Srinivasan CPlane Inc. 5150 El Camino Real Suite B-31 Los Altos, CA 94022 phone: +1(650) 938-8066 x103 balaji@cplane.com" DESCRIPTION "The PIB module specifies a set of policy rule classes Anderson et al. Expires January 2001 [Page 4] Internet Draft IP Forwarding PIB July 2000 for partitioning a single switch into a set of virtual switches." ::= { tbd } VSConfig OBJECT IDENTIFIER ::= { switchPartitionPib 1 } PortDirection ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "The following type is used to specify the direction of the label ranges and the bandwidth in the physical port of the switch as well as the virtual port of the virtual switch." SYNTAX INTEGER { incoming(1), outgoing(2) } RatioString ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "This data type is used to model a floating number, specifically here the cell loss ratio and a probability number. It is required to be of the form m:n, where m and n are both integers and represent a floating number m divided by n." SYNTAX OCTET STRING (SIZE(3)) VectorString ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "This data type is used to model a 2-dimentional number (x,y). Here it is used to specify the vpi/vci range for an ATM interface. 2 vectors, (minVpi, minVci) and (maxVpi, maxVci), make up a label range. It is required to have the format x:y" SYNTAX OCTET STRING (SIZE(3..8)) PortType := TEXTUAL-CONVENTION STATUS current DESCRIPTION "This data type is used to model the port type of the switch" SYNTAX INTEGER { atm(1), frameRelay(2), ethernetSwitch(3), Anderson et al. Expires January 2001 [Page 5] Internet Draft IP Forwarding PIB July 2000 mpls(4), ipRouting(5) } -- ================================================================== --This table performParamTable is used to represent the --performance targets associated with the equivalent bandwidths --for each port. This table allows the bandwidth, buffer space, --and queue schedulers assigned to a VS to be simply abstracted --using a single parameter: the Equivalent bandwidth per port --assigned to the VS. Each entry in the VS interface bandwidth --table uses its serviceParamIndex to point to a row in this --table. Then the equivalent bandwidth points to a performance --target set by the service descriptor parameters. The performance --target is most common in the form of a loss target but also a --delay target can be used. ================================================================== performParamTable OBJECT-TYPE SYNTAX SEQUENCE OF PerformParamEntry POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Table giving the configured performance targets for this switch" ::= { switchPartitionPib 2 } performParamEntry OBJECT-TYPE SYNTAX PerformParamEntry POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "This table gives each performance target parameters" INDEX { performParamIndex } ::= { performParamTable 1 } PerformParamEntry ::= SEQUENCE { performParamIndex PolicyInstanceId, performPLR RatioString, performMaxDelay INTEGER, performDelayOverProb RatioString } performParamIndex OBJECT-TYPE SYNTAX PolicyInstanceId POLICY-ACCESS INSTALL Anderson et al. Expires January 2001 [Page 6] Internet Draft IP Forwarding PIB July 2000 STATUS mandatory DESCRIPTION "Identifies each performance target" ::= { performParamEntry 1 } performPLR OBJECT-TYPE SYNTAX RatioString POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "This indicates the packet loss ratio " ::= { performParamEntry 2 } performMaxDelay OBJECT-TYPE SYNTAX INTEGER POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION " This indicates the maximum packet delay " ::= { performParamEntry 3 } performDelayOverProb OBJECT-TYPE SYNTAX RatioString POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION " This indicates the possibility that the packet delay is bigger than the maximum delay allowed" ::= { performParamEntry 4 } --=================================== --End of performParamTable --=================================== VSConfigTable OBJECT-TYPE SYNTAX SEQUENCE OF VSConfigEntry POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Each row in this table describes a virtual switch that has been created on this switch" ::= { VSConfig 1 } VSConfigEntry OBJECT-TYPE SYNTAX VSConfigEntry POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Describes a virtual switch" INDEX { VSConfigVSID } ::= { VSConfigTable 1 } Anderson et al. Expires January 2001 [Page 7] Internet Draft IP Forwarding PIB July 2000 VSConfigEntry ::= SEQUENCE { VSConfigVSID PolicyInstanceId, VSAdminStatus INTEGER, VSOperStatus INTEGER, VSNumPorts INTEGER, VSNumRoutingEntries INTEGER } VSConfigVSID OBJECT-TYPE SYNTAX PolicyInstanceId POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Identifies the virtual switch within this switch" ::= { VSConfigEntry 1 } VSAdminStatus OBJECT-TYPE SYNTAX INTEGER { up(1), down(2), testing(3) } POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "The administrative state of the virtual switch. A virtual switch's administrative status can not be "up" until all the necessary parameters for this virtual switch have been specified" ::={ VSConfigEntry 2 } VSOperStatus OBJECT-TYPE SYNTAX INTEGER { up(1), down(2) } POLICY-ACCESS NOTIFY STATUS mandatory DESCRIPTION "The current operational state of the virtual switch" ::={ VSConfigEntry 3 } VSNumPorts OBJECT-TYPE SYNTAX INTEGER POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "The number of virtual ports in this virtual Anderson et al. Expires January 2001 [Page 8] Internet Draft IP Forwarding PIB July 2000 switch" ::= {VSConfigEntry 4 } VSNumRoutingEntries OBJECT-TYPE SYNTAX INTEGER POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "The number of routing table entries allocated to this virtual switch. This value is ignored if the switch has only per port routing tables (i.e., no switch-wide routing table)" ::= {VSConfigEntry 5 } --=============================== -- END OF VSConfigTable --=============================== VSCtrlConfigTable OBJECT-TYPE SYNTAX SEQUENCE OF VSCtrlConfigEntry POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "This table gives the per controller configured for the VS" ::={VSConfig 2} VSCtrlConfigEntry OBJECT-TYPE SYNTAX VSCtrlConfigEntry POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Configuration for each controller for the VS" INDEX { VSConfigVSID } ::= {VSCtrlConfigTable 1} VSCtrlConfigEntry ::= SEQUENCE { VSConfigVSID PolicyInstanceId, VSCtrlID INTEGER, VSSciType INTEGER, VSSciTransportType INTEGER, VSSciTCPPortNumber INTEGER, VSSciPortInterfaceNum INTEGER, VSSciVpiNumber INTEGER, VSSciVciNumber INTEGER } Anderson et al. Expires January 2001 [Page 9] Internet Draft IP Forwarding PIB July 2000 VSConfigVSID OBJECT-TYPE SYNTAX PolicyInstanceId POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Identifies the virtual switch within this switch" ::= { VSCtrlConfigEntry 1 } VSCtrlID OBJECT-TYPE SYNTAX INTEGER POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Identifies the virtual switch controller across the SCI" ::= { VSCtrlConfigEntry 2 } VSSciType OBJECT-TYPE SYNTAX INTEGER { gsmp(1), megacop(2), cops-pr(3) } POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "The switch control protocol used to control this virtual switch" ::= { VSCtrlConfigEntry 3 } VSSciTransportType OBJECT-TYPE SYNTAX INTEGER { ethernet(1), tcp(2), atm(3) } POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Transport protocol used to transport SCI PDUs" ::= { VSCtrlConfigEntry 4 } VSSciTCPPortNumber OBJECT-TYPE SYNTAX INTEGER POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "The local port number used to access the virtual switch. Meaningful only when the transport type is TCP" ::= { VSCtrlConfigEntry 5 } Anderson et al. Expires January 2001 [Page 10] Internet Draft IP Forwarding PIB July 2000 VSSciPortInterfaceNum OBJECT-TYPE SYNTAX INTEGER POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "This is the physical interface over which control messages are exchanged. " ::= { VSCtrlConfigEntry 6 } VSSciVpiNumber OBJECT-TYPE SYNTAX INTEGER POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "The VPI on which the control messages are exchanged. Meaningful only when the SCI transport is ATM" ::= { VSCtrlConfigEntry 7 } VSSciVciNumber OBJECT-TYPE SYNTAX INTEGER POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "The VCI on which the control messages are exchanged. Meaningful only when the SCI transport is ATM" ::= { VSCtrlConfigEntry 8 } --=============================== --END OF VSCtrlConfigTable --=============================== VSPortConfigTable OBJECT-TYPE SYNTAX SEQUENCE OF VSPortConfigEntry POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Resource configuration for the virtual ports" ::= { VSConfig 3 } VSPortConfigEntry OBJECT-TYPE SYNTAX VSPortConfigEntry POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "This table gives the per port resource configured for the virtual switch" INDEX { VSConfigVSID } UNIQUENESS { VSConfigVSID, VSPortConfigPortID } Anderson et al. Expires January 2001 [Page 11] Internet Draft IP Forwarding PIB July 2000 ::= { VSPortConfigTable 1 } VSPortConfigEntry ::= SEQUENCE { VSPortConfigVSID PolicyInstanceId, VSPortConfigPortID INTEGER, VSPhysicalPortNumber INTEGER, VSPortConfigPortNumBWs INTEGER, VSPortConfigNumLabelRanges INTEGER, VSPortNumRoutingEntries INTEGER } VSPortConfigVSID OBJECT-TYPE SYNTAX PolicyInstanceId POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "This is the virtual switch ID of the virtual switch" ::= { VSPortConfigEntry 1 } VSPortConfigPortID OBJECT-TYPE SYNTAX INTEGER POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "This is the virtual port id in the current virtual switch" ::= { VSPortConfigEntry 2 } VSPhysicalPortNumber OBJECT-TYPE SYNTAX INTEGER POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "The physical port number that is mapped to virtual port" ::= { VSPortConfigEntry 3 } VSPortConfigPortNumBWs OBJECT-TYPE SYNTAX INTEGER POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Number of equivalent bandwidth pointing to different performance targets (packet loss ratio and delay) in both incoming and outgoing directions for this port." ::= { VSPortConfigEntry 4 } Anderson et al. Expires January 2001 [Page 12] Internet Draft IP Forwarding PIB July 2000 VSPortConfigNumLabelRanges OBJECT-TYPE SYNTAX INTEGER POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Number of label ranges for this port. The label can be of different types depending on the interface service type." ::= { VSPortConfigEntry 5} VSPortNumRoutingEntries OBJECT-TYPE SYNTAX INTEGER POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "The number of routing table entries allocated to this virtual port from the physical port. This value is used only if the switch has per port routing tables" ::= {VSPortConfigEntry 6 } --================================ -- END OF VSPortConfigTable --================================ -- ================================================================== -- The table VSConfigBWTable gives the equivalent bandwidth --pointing to different service category for input and output at --the virtual ports. The table has 3 indices; virtual switch ID, --port ID and Bandwidth ID ================================================================== VSPortConfigBWTable OBJECT-TYPE SYNTAX SEQUENCE OF VSPortConfigBWEntry POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Table giving the configured bandwidth information for the various virtual ports" ::= { VSConfig 4 } VSPortConfigBWEntry OBJECT-TYPE SYNTAX VSPortConfigBWEntry POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "This table gives the configured bandwidth information for the various virtual ports" Anderson et al. Expires January 2001 [Page 13] Internet Draft IP Forwarding PIB July 2000 INDEX { VSPortConfigVSID } UNIQUENESS { VSPortConfigVSID, VSPortConfigPortID, VSPortConfigBWID } ::= { VSPortConfigBWTable 1 } VSPortConfigBWConfigEntry ::= SEQUENCE { VSPortConfigVSID PolicyInstanceId, VSPortConfigPortID INTEGER, VSPortConfigBWID INTEGER, VSPortConfigEqiBW INTEGER, performParamIndex OBJECT IDENTIFIER, VSPortConfigBWPortDirection PortDirection } VSPortConfigVSID OBJECT-TYPE SYNTAX PolicyInstanceId POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "This is the virtual switch ID of the virtual switch" ::= { VSPortConfigBWEntry 1 } VSPortConfigPortID OBJECT-TYPE SYNTAX INTEGER POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "This is the virtual port id in the current virtual switch" ::= { VSPortConfigBWEntry 2 } VSPortConfigBWID OBJECT-TYPE SYNTAX INTEGER POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "This is the equivalent bandwidth ID in the current virtual switch" ::= { VSPortConfigBWEntry 3 } VSPortConfigEqiBW OBJECT-TYPE SYNTAX INTEGER POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Indicates the equivalent bandwidth assigned to this VS " Anderson et al. Expires January 2001 [Page 14] Internet Draft IP Forwarding PIB July 2000 ::= { VSPortConfigBWEntry 4 } performParamIndex OBJECT-TYPE SYNTAX OBJECT IDENTIFIER POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION " Indicates an entry in the performParamTable which represents the performance target associated to by this equivalent bandwidth " ::= { VSPortConfigBWEntry 5 } VSPortConfigBWPortDirection OBJECT-TYPE SYNTAX PortDirection POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Indicates the direction for which this equivalent bandwidth is valid" ::= { VSPortConfigBWEntry 6 } --================================== -- END OF VSPortConfigBWTable --================================== -- ================================================================== -- The VSLabelRangeConfigTable gives the label ranges for input -- and output at the virtual ports. -- The tables have 3 indices; virtual switch ID, port ID and Range -- ID ================================================================== VSPortConfigLabelRangeTable OBJECT-TYPE SYNTAX SEQUENCE OF VSPortConfigLabelRangeEntry POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Table giving the configured label range information for the various virtual ports" ::= { VSConfig 5 } VSPortConfigLabelRangeEntry OBJECT-TYPE SYNTAX VSPortConfigLabelRangeEntry POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "This table gives the per port label ranges configured for the virtual switch." Anderson et al. Expires January 2001 [Page 15] Internet Draft IP Forwarding PIB July 2000 INDEX { VSPortConfigVSID } UNIQUENESS { VSPortConfigVSID, VSPortConfigPortID, VSPortConfigLabelRangeID } ::= { VSPortConfigLabelRangeTable 1 } VSPortConfigLabelRangeEntry ::= SEQUENCE { VSPortConfigLabelRangeID PolicyInstanceId, VSPortConfigPortDirection PortDirection, VSPortConfigRangeType INTEGER, VSPortConfigRangeIndex INTEGER } VSPortConfigLabelRangeID OBJECT-TYPE SYNTAX PolicyInstanceId POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Identifies the label range" ::= { VSPortConfigLabelRangeEntry 1 } VSPortConfigPortDirection OBJECT-TYPE SYNTAX PortDirection POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Indicates the direction for which this range is valid" ::= { VSPortConfigLabelRangeEntry 2 } VSPortConfigLabelRangeType OBJECT-TYPE SYNTAX INTEGER POLICY-ACCESS INSTALL DESCRIPTION "Indicates the type of protocol for this label range." STATUS mandatory ::= { VSPortConfigLabelRangeEntry 3 } VSPortConfigLabelRangeIndex OBJECT-TYPE SYNTAX INTEGER POLICY-ACCESS INSTALL DESCRIPTION "The index into the protocol-dependent label range table for this virtual switch." STATUS mandatory ::= { VSPortConfigLabelRangeEntry 4 } --==================================== Anderson et al. Expires January 2001 [Page 16] Internet Draft IP Forwarding PIB July 2000 -- END OF VSPortConfigLabelRangeTable --==================================== -- ================================================================== -- The table VSAtmLabelRangeTable is used to give the VPI/VCI -- label ranges at the ATM virtual switch level. ================================================================== VSAtmLabelRangeTable OBJECT-TYPE SYNTAX SEQUENCE OF VSAtmLabelRangeEntry POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Table giving the configured ATM label range information for the various switch ports on this virtual switch." ::= { VSConfig 6 } VSAtmLabelRangeEntry OBJECT-TYPE SYNTAX VSAtmLabelRangeEntry POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "This table gives the per port ATM label ranges and capabilities." INDEX { VSAtmLabelRangeIndex } ::= { VSAtmLabelRangeTable 1 } VSAtmLabelRangeEntry ::= SEQUENCE { VSAtmLabelRangeIndex PolicyInstanceId, VSAtmLabelRangeMinVpiVci VectorString, VSAtmLabelRangeMaxVpiVci VectorString, VSAtmLabelRangeAllowsVP BOOLEAN, VSAtmLabelRangeAllowsP2MP BOOLEAN, VSAtmLabelRangeAllowsMP2P BOOLEAN, VSAtmLabelRangeMaxMulticast INTEGER } VSAtmLabelRangeIndex OBJECT-TYPE SYNTAX PolicyInstanceId POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Index into this table." ::= { VSAtmLabelRangeEntry 1 } Anderson et al. Expires January 2001 [Page 17] Internet Draft IP Forwarding PIB July 2000 VSAtmLabelRangeMinVpiVci OBJECT-TYPE SYNTAX VectorString POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Lower bound of the vpi and vci range." ::= { VSAtmLabelRangeEntry 2 } VSAtmLabelRangeMaxVpiVci OBJECT-TYPE SYNTAX VectorString POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Upper bound of the vpi and vci range." ::= { VSAtmLabelRangeEntry 3 } VSAtmLabelRangeAllowsVP OBJECT-TYPE SYNTAX BOOLEAN POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Indicates whether this label range can be used for VP connections." ::= { VSAtmLabelRangeEntry 4 } VSAtmLabelRangeAllowsP2MP OBJECT-TYPE SYNTAX BOOLEAN POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Indicates whether this label range can be used to create point-to-multipoint connections." ::= { VSAtmLabelRangeEntry 5 } VSAtmLabelRangeAllowsMP2P OBJECT-TYPE SYNTAX BOOLEAN POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Indicates whether this label range can be used to create multipoint-to-point connections." ::= { VSAtmLabelRangeEntry 6 } VSAtmLabelRangeMaxMulticast OBJECT-TYPE SYNTAX INTEGER POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Indicates the maximum number of multicast connections that can be created within this range." ::= { VSAtmLabelRangeEntry 7 } Anderson et al. Expires January 2001 [Page 18] Internet Draft IP Forwarding PIB July 2000 --==================================== -- END OF VSAtmLabelRangeTable --==================================== -- ================================================================== -- The table VSFrLabelRangeTable is used to give the DLCI label -- ranges on a Frame Relay interface for a virtual switch. ================================================================== VSFrLabelRangeTable OBJECT-TYPE SYNTAX SEQUENCE OF VSFrLabelRangeEntry POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Table giving the configured label range information for the various frame relay ports." ::= { VSConfig 7 } VSFrLabelRangeEntry OBJECT-TYPE SYNTAX VSFrLabelRangeEntry POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "This table gives the per port label ranges" INDEX { VSFrLabelRangeIndex } ::= { VSFrLabelRangeTable 1 } VSFrLabelRangeEntry ::= SEQUENCE { VSFrLabelRangeIndex PolicyInstanceId, VSFrLabelRangeMinDLCI INTEGER, VSFrLabelRangeMaxDLCI INTEGER } VSFrLabelRangeIndex OBJECT-TYPE SYNTAX PolicyInstanceId POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Index into this table." ::= { VSFrLabelRangeEntry 1 } VSFrLabelRangeMinDLCI OBJECT-TYPE SYNTAX INTEGER POLICY-ACCESS INSTALL STATUS mandatory Anderson et al. Expires January 2001 [Page 19] Internet Draft IP Forwarding PIB July 2000 DESCRIPTION "Lower bound of the DLCI range for this Frame Relay interface." ::= { VSFrLabelRangeEntry 2 } VSFrLabelRangeMaxDLCI OBJECT-TYPE SYNTAX INTEGER POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Upper bound of the DLCI range for this Frame Relay interface." ::= { VSFrLabelRangeEntry 3 } --==================================== -- END OF VSFrLabelRangeTable --==================================== -- ================================================================== -- The table VSVlanLabelRangeTable is used to give the VLAN ID -- label ranges on a VLAN-aware Ethernet interface for a virtual -- switch. ================================================================== VSVlanLabelRangeTable OBJECT-TYPE SYNTAX SEQUENCE OF VSVlanLabelRangeEntry POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Table giving the configured label range information for the VLAN-aware Ethernet ports." ::= { VSConfig 8 } VSVlanLabelRangeEntry OBJECT-TYPE SYNTAX VSVlanLabelRangeEntry POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "This table gives the per port VLAN ID ranges" INDEX { VSVlanLabelRangeIndex } ::= { VSVlanLabelRangeTable 1 } VSVlanLabelRangeEntry ::= SEQUENCE { VSVlanLabelRangeIndex PolicyInstanceId, VSVlanLabelRangeMinID INTEGER, VSVlanLabelRangeMaxID INTEGER } Anderson et al. Expires January 2001 [Page 20] Internet Draft IP Forwarding PIB July 2000 VSVlanLabelRangeIndex OBJECT-TYPE SYNTAX PolicyInstanceId POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Index into this table." ::= { VSVlanLabelRangeEntry 1 } VSVlanLabelRangeMinID OBJECT-TYPE SYNTAX INTEGER POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Lower bound of the VLAN ID range on this VLAN- aware Ethernet switch interface." ::= { VSVlanLabelRangeEntry 2 } VSVlanLabelRangeMaxID OBJECT-TYPE SYNTAX INTEGER POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Upper bound of the VLAN ID range on this VLAN- aware Ethernet switch interface." ::= { VSVlanLabelRangeEntry 3 } --==================================== -- END OF VSVlanLabelRangeTable --==================================== -- ================================================================== -- The table mplsLabelRangeTable is used to give the label ranges -- on a MPLS interface. ================================================================== VSMplsLabelRangeTable OBJECT-TYPE SYNTAX SEQUENCE OF VSMplsLabelRangeEntry POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Table giving the configured label range information for MPLS ports." ::= { VSConfig 9 } VSMplsLabelRangeEntry OBJECT-TYPE SYNTAX VSMplsLabelRangeEntry POLICY-ACCESS INSTALL STATUS mandatory Anderson et al. Expires January 2001 [Page 21] Internet Draft IP Forwarding PIB July 2000 DESCRIPTION "This table gives the per port MPLS ranges." INDEX { VSMplsLabelRangeIndex } ::= { VSMplsLabelRangeTable 1 } VSMplsLabelRangeEntry ::= SEQUENCE { VSMplsLabelRangeIndex PolicyInstanceId, VSMplsLabelRangeMinID INTEGER, VSMplsLabelRangeMaxID INTEGER } VSMplsLabelRangeIndex OBJECT-TYPE SYNTAX PolicyInstanceId POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Index into this table." ::= { VSMplsLabelRangeEntry 1 } VSMplsLabelRangeMinID OBJECT-TYPE SYNTAX INTEGER POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Lower bound of the MPLS label range." ::= { VSMplsLabelRangeEntry 2 } VSMplsLabelRangeMaxID OBJECT-TYPE SYNTAX INTEGER POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Upper bound of the MPLS label range." ::= { VSMplsLabelRangeEntry 3 } --==================================== -- END OF VSMplsLabelRangeTable --==================================== ================================================================== -- The table VSIpLabelRangeTable is used to give the IP ranges on -- an IP interface for a virtual switch. ================================================================== VSIpLabelRangeTable OBJECT-TYPE SYNTAX SEQUENCE OF VSIpLabelRangeEntry POLICY-ACCESS INSTALL STATUS mandatory Anderson et al. Expires January 2001 [Page 22] Internet Draft IP Forwarding PIB July 2000 DESCRIPTION "Table giving the configured IP ranges for IP ports." ::= { VSConfig 10 } VSIpLabelRangeEntry OBJECT-TYPE SYNTAX VSIpLabelRangeEntry POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "This table gives the per port IP ranges." INDEX { VSIpLabelRangeIndex } ::= { VSIpLabelRangeTable 1 } VSIpLabelRangeEntry ::= SEQUENCE { VSIpLabelRangeIndex PolicyInstanceId, VSIpLabelRangeIP IpAddress, VSIpLabelRangeIPMask IpAddress } VSIpLabelRangeIndex OBJECT-TYPE SYNTAX PolicyInstanceId POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Index into this table." ::= { VSIpLabelRangeEntry 1 } VSIpLabelRangeIP OBJECT-TYPE SYNTAX IpAddress POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Indicates the IP address for a particular network. ::= { VSIpLabelRangeEntry 2 } VSIpLabelRangeIPMask OBJECT-TYPE SYNTAX IpAddress POLICY-ACCESS INSTALL STATUS mandatory DESCRIPTION "Indicates the subnet's mask address." ::= { VSIpLabelRangeEntry 3 } --==================================== -- END OF VSIpLabelRangeTable --==================================== END Anderson et al. Expires January 2001 [Page 23] Internet Draft IP Forwarding PIB July 2000 6. Security Considerations The information contained in a PIB when transported by the COPS protocol [COPS-PR] may be sensitive, and its function of provisioning a PEP requires that only authorized communication take place. The use of IPSEC between PDP and PEP, as described in [COPS], provides the necessary protection against these threats. 7. Intellectual Property Considerations The IETF is being notified of intellectual property rights claimed in regard to some or all of the specification contained in this document. For more information consult the online list of claimed rights. 8. Authors' Addresses Todd A. Anderson Intel 2111 NE 25th Avenue Hillsboro, OR 97124 USA Phone: +1 503 712 1760 Email: todd.a.anderson@intel.com Avri Doria Nortel Networks 600 Technology Park Drive Billerica MA 01821 Phone: +1 401 663 5024 Email: avri@nortelnetworks.com Jiang Yong Telia Research AB 123 86 Farsta Sweden Phone: +46 (0) 8 713 81 25 Email: yong.b.jiang@telia.se Jerry Sydir CPlane Inc. 5150 El Camino Real Suite B-31 Los Altos, CA 94022 Phone: +1(650) 938-8066 x102 Email: sydir@cplane.com Balaji Srinivasan Anderson et al. Expires January 2001 [Page 24] Internet Draft IP Forwarding PIB July 2000 CPlane Inc. 5150 El Camino Real Suite B-31 Los Altos, CA 94022 phone: +1(650) 938-8066 x103 Email: balaji@cplane.com 9. References [MSF-VSMIB] Yong Jiang, Alexander Latour-Henner, Nils Bjorkman, Balaji Srinivasan, Bryan Levin, Jaroslaw Sydir, "Proposal for the Base Switch Partitioning MIB Virtual switch MIB", MSF 00.069. [COPS] Boyle, J., Cohen, R., Durham, D., Herzog, S., Rajan, R., and A. Sastry, "The COPS (Common Open Policy Service) Protocol" RFC 2748, January 2000. [COPS-PR] K. Chan, D. Durham, S. Gai, S. Herzog, K. McCloghrie, F. Reichmeyer, J. Seligson, A. Smith, R. Yavatkar, "COPS Usage for Policy Provisioning," draft-ietf-rap- cops-pr-02.txt, March 2000. [SPPI] K. McCloghrie, et.al., "Structure of Policy Provisioning Information," draft-ietf-rap-sppi-00.txt, march 2000. [FR-PIB] M. Fine, K. McCloghrie, J. Seligson, K. Chan, S. Hahn, A. Smith, F. Reichmeyer "Framework Policy Information Base", Internet Draft , March 2000 [POLICY] M. Stevens, W. Weiss H. Mahon, B. Moore, J. Strassner, G. Waters, A. Westerinen, J. Wheeler, "Policy Framework", draft-ietf-policy-framework-00.txt, September 1999. [RAP-FRAMEWORK] R. Yavatkar, D. Pendarakis, "A Framework for Policy-based Admission Control", draft-ietf-rap- framework-03.txt, April 1999. [SNMP-SMI] K. McCloghrie, D. Perkins, J. Schoenwaelder, J. Case, M. Rose and S. Waldbusser, "Structure of Management Information Version 2 (SMIv2)", STD 58, RFC 2578, April 1999. Table of Contents Anderson et al. Expires January 2001 [Page 25] Internet Draft IP Forwarding PIB July 2000 1. Glossary 1 2. Introduction 2 3. Partitioning Function 2 4. Base Switch Resources 2 4.1. Bandwidth, Buffer Space, and Queue Schedulers 3 4.2. Label Space 3 4.3. Routing Table Space 3 4.4. Control Link Bandwidth and Processor Cycles 3 5. The Partitioning PIB 3 6. Security Considerations 23 7. Intellectual Property Considerations 23 8. Authors' Addresses 23 9. References 24 Anderson et al. Expires January 2001 [Page 26]