draft-ietf-rserpool-policies-08.txt   draft-ietf-rserpool-policies-09.txt 
Network Working Group M. Tuexen Network Working Group M. Tuexen
Internet-Draft Muenster Univ. of Applied Sciences Internet-Draft Muenster Univ. of Applied Sciences
Intended status: Experimental T. Dreibholz Intended status: Experimental T. Dreibholz
Expires: September 11, 2008 University of Duisburg-Essen Expires: November 30, 2008 University of Duisburg-Essen
March 10, 2008 May 29, 2008
Reliable Server Pooling Policies Reliable Server Pooling Policies
draft-ietf-rserpool-policies-08.txt draft-ietf-rserpool-policies-09.txt
Status of this Memo Status of this Memo
By submitting this Internet-Draft, each author represents that any By submitting this Internet-Draft, each author represents that any
applicable patent or other IPR claims of which he or she is aware applicable patent or other IPR claims of which he or she is aware
have been or will be disclosed, and any of which he or she becomes have been or will be disclosed, and any of which he or she becomes
aware will be disclosed, in accordance with Section 6 of BCP 79. aware will be disclosed, in accordance with Section 6 of BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that Task Force (IETF), its areas, and its working groups. Note that
skipping to change at page 1, line 35 skipping to change at page 1, line 35
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt. http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html. http://www.ietf.org/shadow.html.
This Internet-Draft will expire on September 11, 2008. This Internet-Draft will expire on November 30, 2008.
Abstract Abstract
This document describes server pool policies for Reliable Server This document describes server pool policies for Reliable Server
Pooling including considerations for implementing them at ENRP Pooling including considerations for implementing them at ENRP
servers and pool users. servers and pool users.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4
skipping to change at page 2, line 23 skipping to change at page 2, line 23
4.1. Round Robin Policy . . . . . . . . . . . . . . . . . . . . 5 4.1. Round Robin Policy . . . . . . . . . . . . . . . . . . . . 5
4.1.1. Description . . . . . . . . . . . . . . . . . . . . . 5 4.1.1. Description . . . . . . . . . . . . . . . . . . . . . 5
4.1.2. ENRP Server Considerations . . . . . . . . . . . . . . 5 4.1.2. ENRP Server Considerations . . . . . . . . . . . . . . 5
4.1.3. Pool User Considerations . . . . . . . . . . . . . . . 5 4.1.3. Pool User Considerations . . . . . . . . . . . . . . . 5
4.1.4. Pool Member Selection Policy Parameter . . . . . . . . 5 4.1.4. Pool Member Selection Policy Parameter . . . . . . . . 5
4.2. Weighted Round Robin Policy . . . . . . . . . . . . . . . 6 4.2. Weighted Round Robin Policy . . . . . . . . . . . . . . . 6
4.2.1. Description . . . . . . . . . . . . . . . . . . . . . 6 4.2.1. Description . . . . . . . . . . . . . . . . . . . . . 6
4.2.2. ENRP Server Considerations . . . . . . . . . . . . . . 6 4.2.2. ENRP Server Considerations . . . . . . . . . . . . . . 6
4.2.3. Pool User Considerations . . . . . . . . . . . . . . . 6 4.2.3. Pool User Considerations . . . . . . . . . . . . . . . 6
4.2.4. Pool Member Selection Policy Parameter . . . . . . . . 6 4.2.4. Pool Member Selection Policy Parameter . . . . . . . . 6
4.3. Random Policy . . . . . . . . . . . . . . . . . . . . . . 7 4.3. Random Policy . . . . . . . . . . . . . . . . . . . . . . 6
4.3.1. Description . . . . . . . . . . . . . . . . . . . . . 7 4.3.1. Description . . . . . . . . . . . . . . . . . . . . . 6
4.3.2. ENRP Server Considerations . . . . . . . . . . . . . . 7 4.3.2. ENRP Server Considerations . . . . . . . . . . . . . . 6
4.3.3. Pool User Considerations . . . . . . . . . . . . . . . 7 4.3.3. Pool User Considerations . . . . . . . . . . . . . . . 7
4.3.4. Pool Member Selection Policy Parameter . . . . . . . . 7 4.3.4. Pool Member Selection Policy Parameter . . . . . . . . 7
4.4. Weighted Random Policy . . . . . . . . . . . . . . . . . . 7 4.4. Weighted Random Policy . . . . . . . . . . . . . . . . . . 7
4.4.1. Description . . . . . . . . . . . . . . . . . . . . . 7 4.4.1. Description . . . . . . . . . . . . . . . . . . . . . 7
4.4.2. ENRP Server Considerations . . . . . . . . . . . . . . 7 4.4.2. ENRP Server Considerations . . . . . . . . . . . . . . 7
4.4.3. Pool User Considerations . . . . . . . . . . . . . . . 8 4.4.3. Pool User Considerations . . . . . . . . . . . . . . . 7
4.4.4. Pool Member Selection Policy Parameter . . . . . . . . 8 4.4.4. Pool Member Selection Policy Parameter . . . . . . . . 7
4.5. Priority Policy . . . . . . . . . . . . . . . . . . . . . 8 4.5. Priority Policy . . . . . . . . . . . . . . . . . . . . . 8
4.5.1. Description . . . . . . . . . . . . . . . . . . . . . 8 4.5.1. Description . . . . . . . . . . . . . . . . . . . . . 8
4.5.2. ENRP Server Considerations . . . . . . . . . . . . . . 8 4.5.2. ENRP Server Considerations . . . . . . . . . . . . . . 8
4.5.3. Pool Element Considerations . . . . . . . . . . . . . 8 4.5.3. Pool Element Considerations . . . . . . . . . . . . . 8
4.5.4. Pool Member Selection Policy Parameter . . . . . . . . 8 4.5.4. Pool Member Selection Policy Parameter . . . . . . . . 8
5. Adaptive Policies . . . . . . . . . . . . . . . . . . . . . . 9 5. Adaptive Policies . . . . . . . . . . . . . . . . . . . . . . 9
5.1. Least Used Policy . . . . . . . . . . . . . . . . . . . . 9 5.1. Least Used Policy . . . . . . . . . . . . . . . . . . . . 9
5.1.1. Description . . . . . . . . . . . . . . . . . . . . . 9 5.1.1. Description . . . . . . . . . . . . . . . . . . . . . 9
5.1.2. ENRP Server Considerations . . . . . . . . . . . . . . 9 5.1.2. ENRP Server Considerations . . . . . . . . . . . . . . 9
5.1.3. Pool User Considerations . . . . . . . . . . . . . . . 9 5.1.3. Pool User Considerations . . . . . . . . . . . . . . . 9
5.1.4. Pool Member Selection Policy Parameter . . . . . . . . 9 5.1.4. Pool Member Selection Policy Parameter . . . . . . . . 9
5.2. Least Used with Degradation Policy . . . . . . . . . . . . 10 5.2. Least Used with Degradation Policy . . . . . . . . . . . . 9
5.2.1. Description . . . . . . . . . . . . . . . . . . . . . 10 5.2.1. Description . . . . . . . . . . . . . . . . . . . . . 10
5.2.2. ENRP Server Considerations . . . . . . . . . . . . . . 10 5.2.2. ENRP Server Considerations . . . . . . . . . . . . . . 10
5.2.3. Pool User Considerations . . . . . . . . . . . . . . . 10 5.2.3. Pool User Considerations . . . . . . . . . . . . . . . 10
5.2.4. Pool Member Selection Policy Parameter . . . . . . . . 10 5.2.4. Pool Member Selection Policy Parameter . . . . . . . . 10
5.3. Priority Least Used Policy . . . . . . . . . . . . . . . . 11 5.3. Priority Least Used Policy . . . . . . . . . . . . . . . . 10
5.3.1. Description . . . . . . . . . . . . . . . . . . . . . 11 5.3.1. Description . . . . . . . . . . . . . . . . . . . . . 10
5.3.2. ENRP Server Considerations . . . . . . . . . . . . . . 11 5.3.2. ENRP Server Considerations . . . . . . . . . . . . . . 11
5.3.3. Pool User Considerations . . . . . . . . . . . . . . . 11 5.3.3. Pool User Considerations . . . . . . . . . . . . . . . 11
5.3.4. Pool Member Selection Policy Parameter . . . . . . . . 11 5.3.4. Pool Member Selection Policy Parameter . . . . . . . . 11
5.4. Randomized Least Used Policy . . . . . . . . . . . . . . . 12 5.4. Randomized Least Used Policy . . . . . . . . . . . . . . . 12
5.4.1. Description . . . . . . . . . . . . . . . . . . . . . 12 5.4.1. Description . . . . . . . . . . . . . . . . . . . . . 12
5.4.2. ENRP Server Considerations . . . . . . . . . . . . . . 12 5.4.2. ENRP Server Considerations . . . . . . . . . . . . . . 12
5.4.3. Pool User Considerations . . . . . . . . . . . . . . . 12 5.4.3. Pool User Considerations . . . . . . . . . . . . . . . 12
5.4.4. Pool Member Selection Policy Parameter . . . . . . . . 12 5.4.4. Pool Member Selection Policy Parameter . . . . . . . . 12
6. Security Considerations . . . . . . . . . . . . . . . . . . . 13 6. Security Considerations . . . . . . . . . . . . . . . . . . . 12
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 13 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 12
7.1. A New Table for RSerPool Policy Types . . . . . . . . . . 13 7.1. A New Table for RSerPool Policy Types . . . . . . . . . . 13
8. Reference Implementation . . . . . . . . . . . . . . . . . . . 14 8. Reference Implementation . . . . . . . . . . . . . . . . . . . 14
9. References . . . . . . . . . . . . . . . . . . . . . . . . . . 14 9. References . . . . . . . . . . . . . . . . . . . . . . . . . . 14
9.1. Normative References . . . . . . . . . . . . . . . . . . . 14 9.1. Normative References . . . . . . . . . . . . . . . . . . . 14
9.2. Informative References . . . . . . . . . . . . . . . . . . 15 9.2. Informative References . . . . . . . . . . . . . . . . . . 15
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 16 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 16
Intellectual Property and Copyright Statements . . . . . . . . . . 17 Intellectual Property and Copyright Statements . . . . . . . . . . 17
1. Introduction 1. Introduction
The protocols defined in ENRP [I-D.ietf-rserpool-enrp], ASAP The protocols defined in [I-D.ietf-rserpool-enrp],
[I-D.ietf-rserpool-asap] and Parameters [I-D.ietf-rserpool-asap] and [I-D.ietf-rserpool-common-param] support
[I-D.ietf-rserpool-common-param] support a variety of server a variety of server policies. Some of the policies use dynamic load
policies. Some of the policies use dynamic load information of the information of the pool elements and others do not. Therefore, we
pool elements and others do not. Therefore, we classify them as classify them as adaptive and non-adaptive. The selection of the
adaptive and non-adaptive. The selection of the pool user is pool element is performed by two different entities, the ENRP server
performed by two different entities. Some of the consequences for and the pool user. Some of the consequences for policies which are
policies which are not stateless are described in Performance not stateless are described in [ICN2005] and [LCN2005].
[ICN2005].
Therefore this document describes not only packet formats but also Therefore this document describes not only packet formats but also
gives a detailed description of the procedures to be followed at the gives a detailed description of the procedures to be followed at the
ENRP servers and the pool users to implement each server policy. ENRP servers and the pool users to implement each server policy.
2. Conventions 2. Conventions
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC2119 [RFC2119]. document are to be interpreted as described in [RFC2119].
3. Terminology and Definitions 3. Terminology and Definitions
3.1. Load 3.1. Load
The term load is a value specifying how much a pool element's The term load is a value specifying how much a pool element's
resources are currently utilized. 0x00000000 states, that the pool resources are currently utilized. 0x00000000 states, that the pool
element is not utilized (0%), 0xffffffff states that it is fully element is not utilized (0%), 0xffffffff states that it is fully
utilized (100%). Defining what utilization means is application- utilized (100%). Defining what utilization means is application-
dependent and out of the scope of RSerPool. However, it is required dependent and out of the scope of RSerPool. However, it is required
skipping to change at page 5, line 7 skipping to change at page 5, line 6
Weight defines a pool element's service capacity relatively to other Weight defines a pool element's service capacity relatively to other
pool elements of the same pool. Theoretically, there is no upper pool elements of the same pool. Theoretically, there is no upper
limit for weight values (although limited by datatype size). limit for weight values (although limited by datatype size).
Defining what value weights compare is application-dependent and out Defining what value weights compare is application-dependent and out
of the scope of RSerPool. However, it is required that all pool of the scope of RSerPool. However, it is required that all pool
elements of the same pool using weight information have the same elements of the same pool using weight information have the same
definition of weight. definition of weight.
A weight of 0 denotes that the pool element is not capable of A weight of 0 denotes that the pool element is not capable of
providing any service, a weight of 2*n denotes that the pool element providing any service, a higher weight of denotes that the pool
is capable of providing a two times better service than a pool element is capable of providing better service than a pool element
element having weight n. having a lower weight.
For example, weight may define a compute service's computation For example, weight may define a compute service's computation
capacity. That is, a pool element of weight 100 will complete a work capacity. That is, a pool element of weight 100 will complete a work
package in half of the time compared to a pool element of weight 50. package in half of the time compared to a pool element of weight 50.
4. Non-Adaptive Policies 4. Non-Adaptive Policies
4.1. Round Robin Policy 4.1. Round Robin Policy
4.1.1. Description 4.1.1. Description
skipping to change at page 6, line 46 skipping to change at page 6, line 39
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Param Type = 0x8 | Length = 0xc | | Param Type = 0x8 | Length = 0xc |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Policy Type = 0x00000002 | | Policy Type = 0x00000002 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Weight | | Weight |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
o Weight: Weight constant for the WRR process. o Weight (32 bits, unsigned integer): Weight constant for the WRR
process.
4.3. Random Policy 4.3. Random Policy
4.3.1. Description 4.3.1. Description
The Random (RAND) policy is a very simple stateless policy. The Random (RAND) policy is a very simple stateless policy.
4.3.2. ENRP Server Considerations 4.3.2. ENRP Server Considerations
The ENRP server selects at most the requested number of pool elements The ENRP server selects at most the requested number of pool elements
skipping to change at page 8, line 23 skipping to change at page 8, line 14
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Param Type = 0x8 | Length = 0xc | | Param Type = 0x8 | Length = 0xc |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Policy Type = 0x00000004 | | Policy Type = 0x00000004 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Weight | | Weight |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
o Weight: Weight constant for the WRAND process. o Weight (32 bits, unsigned integer): Weight constant for the WRAND
process.
4.5. Priority Policy 4.5. Priority Policy
4.5.1. Description 4.5.1. Description
The Priority (PRIO) policy can be used to select always a pool The Priority (PRIO) policy can be used to select always a pool
element with the highest priority. element with the highest priority.
4.5.2. ENRP Server Considerations 4.5.2. ENRP Server Considerations
skipping to change at page 9, line 14 skipping to change at page 8, line 48
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Param Type = 0x8 | Length = 0xc | | Param Type = 0x8 | Length = 0xc |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Policy Type = 0x00000005 | | Policy Type = 0x00000005 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Priority | | Priority |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
o Priority: 32 bits, unsigned int. Larger numbers mean higher o Priority (32 bits, unsigned integer): Larger numbers mean higher
priorities. priorities.
5. Adaptive Policies 5. Adaptive Policies
5.1. Least Used Policy 5.1. Least Used Policy
5.1.1. Description 5.1.1. Description
The Least Used (LU) policy uses load information provided by the pool The Least Used (LU) policy uses load information provided by the pool
elements to select the lowest-loaded pool elements within the pool. elements to select the lowest-loaded pool elements within the pool.
skipping to change at page 10, line 14 skipping to change at page 9, line 44
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Param Type = 0x8 | Length = 0xc | | Param Type = 0x8 | Length = 0xc |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Policy Type = 0x40000001 | | Policy Type = 0x40000001 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Load | | Load |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
o Load: Current load of the pool element. o Load (32 bits, unsigned integer): Current load of the pool
element.
5.2. Least Used with Degradation Policy 5.2. Least Used with Degradation Policy
5.2.1. Description 5.2.1. Description
The Least Used with Degradation (LUD) policy extends the LU policy by The Least Used with Degradation (LUD) policy extends the LU policy by
a load degradation value describing the pool element's load increment a load degradation value describing the pool element's load increment
when a new service association is accepted. when a new service association is accepted.
5.2.2. ENRP Server Considerations 5.2.2. ENRP Server Considerations
skipping to change at page 11, line 6 skipping to change at page 10, line 40
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Param Type = 0x8 | Length = 0x10 | | Param Type = 0x8 | Length = 0x10 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Policy Type = 0x40000002 | | Policy Type = 0x40000002 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Load | | Load |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Load Degradation | | Load Degradation |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
o Load: Current load of the pool element. o Load (32 bits, unsigned integer): Current load of the pool
o Load Degradation: Load Degradation constant of the pool element. element.
o Load Degradation (32 bits, unsigned integer): Load Degradation
constant of the pool element.
5.3. Priority Least Used Policy 5.3. Priority Least Used Policy
5.3.1. Description 5.3.1. Description
The Priority Least Used (PLU) policy uses load information provided The Priority Least Used (PLU) policy uses load information provided
by the pool elements to select the lowest-loaded pool elements within by the pool elements to select the lowest-loaded pool elements within
the pool under the assumption that a new application request is the pool under the assumption that a new application request is
accepted by the pool elements. Therefore, the pool elements also accepted by the pool elements. Therefore, the pool elements also
have to specify load degradation information. have to specify load degradation information.
skipping to change at page 12, line 16 skipping to change at page 11, line 46
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Param Type = 0x8 | Length = 0x10 | | Param Type = 0x8 | Length = 0x10 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Policy Type = 0x40000003 | | Policy Type = 0x40000003 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Load | | Load |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Load Degradation | | Load Degradation |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
o Load: Current load of the pool element. o Load (32 bits, unsigned integer): Current load of the pool
o Load Degradation: Load Degradation constant of the pool element. element.
o Load Degradation (32 bits, unsigned integer): Load Degradation
constant of the pool element.
5.4. Randomized Least Used Policy 5.4. Randomized Least Used Policy
5.4.1. Description 5.4.1. Description
The Randomized Least Used (RLU) policy combines LU and WRAND. That The Randomized Least Used (RLU) policy combines LU and WRAND. That
is, the pool element entries are selected randomly. The probability is, the pool element entries are selected randomly. The probability
for a pool element entry A, utilized with load_A, to be selected is for a pool element entry A, utilized with load_A, to be selected is
(0xFFFFFFFF - load_A) / (sum(0xFFFFFFFF-load_x)), i.e. this PE's (0xFFFFFFFF - load_A) / (sum(0xFFFFFFFF-load_x)), i.e. this PE's
unload part related to the whole pool unload rate. unload part related to the whole pool unload rate.
skipping to change at page 13, line 4 skipping to change at page 12, line 35
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Param Type = 0x8 | Length = 0xc | | Param Type = 0x8 | Length = 0xc |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Policy Type = 0x40000004 | | Policy Type = 0x40000004 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Load | | Load |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
o Load: Current load of the pool element.
o Load (32 bits, unsigned integer): Current load of the pool
element.
6. Security Considerations 6. Security Considerations
The security threats regarding RSerPool have been analyzed in The security threats regarding RSerPool have been analyzed in
RSerPool threats [I-D.ietf-rserpool-threats]. The server policy RSerPool threats [I-D.ietf-rserpool-threats]. The server policy
descriptions in this document do not add any other threats. descriptions in this document do not add any other threats.
7. IANA Considerations 7. IANA Considerations
[NOTE to RFC-Editor: [NOTE to RFC-Editor:
skipping to change at page 14, line 7 skipping to change at page 14, line 7
All standards policies reserved by the IETF use X=0. All standards policies reserved by the IETF use X=0.
o A: If set to 1, the policy is adaptive. Otherwise, it is non- o A: If set to 1, the policy is adaptive. Otherwise, it is non-
adaptive. adaptive.
o Policy Number: The actual number of the policy. o Policy Number: The actual number of the policy.
Nine initial Policy Types should be assigned and maintained in a new Nine initial Policy Types should be assigned and maintained in a new
table "RSerPool Policy Types": table "RSerPool Policy Types":
Value Policy Reference Value Policy Reference
----- --------- --------- ----- --------- ---------
0x00000000 (reserved by IETF) RFCXXXX 0x00000000 (reserved, invalid value) RFCXXXX
0x00000001 Round Robin RFCXXXX 0x00000001 Round Robin RFCXXXX
0x00000002 Weighted Round Robin RFCXXXX 0x00000002 Weighted Round Robin RFCXXXX
0x00000003 Random RFCXXXX 0x00000003 Random RFCXXXX
0x00000004 Weighted Random RFCXXXX 0x00000004 Weighted Random RFCXXXX
0x00000005 Priority RFCXXXX 0x00000005 Priority RFCXXXX
0x00000006 (reserved by IETF) RFCXXXX 0x00000006 (reserved by IETF) RFCXXXX
... ...
0x3fffffff (reserved by IETF) RFCXXXX 0x3fffffff (reserved by IETF) RFCXXXX
0x40000000 (reserved by IETF) RFCXXXX 0x40000000 (reserved, invalid value) RFCXXXX
0x40000001 Least Used RFCXXXX 0x40000001 Least Used RFCXXXX
0x40000002 Least Used with Degradation RFCXXXX 0x40000002 Least Used with Degradation RFCXXXX
0x40000003 Priority Least Used RFCXXXX 0x40000003 Priority Least Used RFCXXXX
0x40000004 Randomized Least Used RFCXXXX 0x40000004 Randomized Least Used RFCXXXX
0x40000005 (reserved by IETF) RFCXXXX 0x40000005 (reserved by IETF) RFCXXXX
... ...
0x7fffffff (reserved by IETF) RFCXXXX 0x7fffffff (reserved by IETF) RFCXXXX
0x80000000 (private use, non-standard policy) RFCXXXX 0x80000000 (private use, non-standard policy) RFCXXXX
... ...
0xffffffff (private use, non-standard policy) RFCXXXX 0xffffffff (private use, non-standard policy) RFCXXXX
For registering at IANA an RSerPool Policy Type in this table a For registering at IANA an RSerPool Policy Type in this table a
request has to be made to assign such a number. This number must be request has to be made to assign such a number. This number must be
unique and use the appropiate upper bits. The "Specification unique and use the appropiate upper bits. The "Specification
Required" policy of RFC2434 [RFC2434] MUST be applied. Required" policy of [RFC5226] MUST be applied.
The Policy Type space from 0x80000000 to 0xffffffff is designated for The Policy Type space from 0x80000000 to 0xffffffff is designated for
private use. private use.
8. Reference Implementation 8. Reference Implementation
The reference implementation of RSerPool and the policies described The reference implementation of RSerPool and the policies described
in this document is available at [RSerPoolPage]. in this document is available at [RSerPoolPage] and described in
[Dre2006].
9. References 9. References
9.1. Normative References 9.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997. Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC2434] Narten, T. and H. Alvestrand, "Guidelines for Writing an [RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an
IANA Considerations Section in RFCs", BCP 26, RFC 2434, IANA Considerations Section in RFCs", BCP 26, RFC 5226,
October 1998. May 2008.
[I-D.ietf-rserpool-common-param] [I-D.ietf-rserpool-common-param]
Stewart, R., Xie, Q., Stillman, M., and M. Tuexen, Stewart, R., Xie, Q., Stillman, M., and M. Tuexen,
"Aggregate Server Access Protocol (ASAP) and Endpoint "Aggregate Server Access Protocol (ASAP) and Endpoint
Handlespace Redundancy Protocol (ENRP) Parameters", Handlespace Redundancy Protocol (ENRP) Parameters",
draft-ietf-rserpool-common-param-15 (work in progress), draft-ietf-rserpool-common-param-16 (work in progress),
December 2007. March 2008.
[I-D.ietf-rserpool-asap] [I-D.ietf-rserpool-asap]
Stewart, R., Xie, Q., Stillman, M., and M. Tuexen, Stewart, R., Xie, Q., Stillman, M., and M. Tuexen,
"Aggregate Server Access Protocol (ASAP)", "Aggregate Server Access Protocol (ASAP)",
draft-ietf-rserpool-asap-18 (work in progress), draft-ietf-rserpool-asap-19 (work in progress),
November 2007. March 2008.
[I-D.ietf-rserpool-enrp] [I-D.ietf-rserpool-enrp]
Xie, Q., Stewart, R., Stillman, M., Tuexen, M., and A. Kim, D., Stewart, R., Stillman, M., Tuexen, M., and A.
Silverton, "Endpoint Handlespace Redundancy Protocol Silverton, "Endpoint Handlespace Redundancy Protocol
(ENRP)", draft-ietf-rserpool-enrp-18 (work in progress), (ENRP)", draft-ietf-rserpool-enrp-19 (work in progress),
November 2007. March 2008.
[I-D.ietf-rserpool-threats] [I-D.ietf-rserpool-threats]
Stillman, M., Gopal, R., Guttman, E., Holdrege, M., and S. Stillman, M., Gopal, R., Guttman, E., Holdrege, M., and S.
Sengodan, "Threats Introduced by RSerPool and Requirements Sengodan, "Threats Introduced by RSerPool and Requirements
for Security in Response to Threats", for Security in Response to Threats",
draft-ietf-rserpool-threats-09 (work in progress), draft-ietf-rserpool-threats-12 (work in progress),
October 2007. May 2008.
9.2. Informative References 9.2. Informative References
[RSerPoolPage] [RSerPoolPage]
Dreibholz, T., "Thomas Dreibholz's RSerPool Page", URL: Dreibholz, T., "Thomas Dreibholz's RSerPool Page",
http://tdrwww.exp-math.uni-essen.de/dreibholz/rserpool/. URL: http://tdrwww.iem.uni-due.de/dreibholz/rserpool/.
[Dre2006] Dreibholz, T., "Reliable Server Pooling -- Evaluation, [Dre2006] Dreibholz, T., "Reliable Server Pooling -- Evaluation,
Optimization and Extension of a Novel IETF Architecture", Optimization and Extension of a Novel IETF Architecture",
Ph.D. Thesis University of Duisburg-Essen, Faculty of Ph.D. Thesis University of Duisburg-Essen, Faculty of
Economics, Institute for Computer Science and Business Economics, Institute for Computer Science and Business
Information Systems, URL: http:// Information Systems, URL: http://
duepublico.uni-duisburg-essen.de/servlets/DerivateServlet/ duepublico.uni-duisburg-essen.de/servlets/DerivateServlet/
Derivate-16326/Dre2006-final.pdf, March 2007. Derivate-16326/Dre2006-final.pdf, March 2007.
[LCN2005] Dreibholz, T. and E. Rathgeb, "On the Performance of [LCN2005] Dreibholz, T. and E. Rathgeb, "On the Performance of
skipping to change at page 16, line 26 skipping to change at page 16, line 28
Email: tuexen@fh-muenster.de Email: tuexen@fh-muenster.de
Thomas Dreibholz Thomas Dreibholz
University of Duisburg-Essen, Institute for Experimental Mathematics University of Duisburg-Essen, Institute for Experimental Mathematics
Ellernstrasse 29 Ellernstrasse 29
45326 Essen, Nordrhein-Westfalen 45326 Essen, Nordrhein-Westfalen
Germany Germany
Phone: +49 201 183-7637 Phone: +49 201 183-7637
Fax: +49 201 183-7673 Fax: +49 201 183-7673
Email: dreibh@exp-math.uni-essen.de Email: dreibh@iem.uni-due.de
URI: http://www.exp-math.uni-essen.de/~dreibh/ URI: http://www.iem.uni-due.de/~dreibh/
Full Copyright Statement Full Copyright Statement
Copyright (C) The IETF Trust (2008). Copyright (C) The IETF Trust (2008).
This document is subject to the rights, licenses and restrictions This document is subject to the rights, licenses and restrictions
contained in BCP 78, and except as set forth therein, the authors contained in BCP 78, and except as set forth therein, the authors
retain all their rights. retain all their rights.
This document and the information contained herein are provided on an This document and the information contained herein are provided on an
 End of changes. 30 change blocks. 
56 lines changed or deleted 65 lines changed or added

This html diff was produced by rfcdiff 1.35. The latest version is available from http://tools.ietf.org/tools/rfcdiff/