RFC 5356
Reliable Server Pooling Policies
RFC 5356: Reliable Server Pooling Policies โจ
Okay bestie, let's start with the title block ๐ This one is from the Network Working Group, written by T. Dreibholz (University of Duisburg-Essen) and M. Tuexen (Muenster Univ. of Applied Sciences), dated September 2008. It's filed as an Experimental category document ๐งช and the header doesn't list any RFCs it obsoletes or updates, so nothing gets replaced or changed here ๐ฆ
Status of This Memo ๐
So the vibe is that this memo defines an Experimental Protocol for the Internet community ๐ฌ It is not an Internet standard of any kind, so don't treat it like one. The authors are literally asking for discussion and suggestions for improvement ๐ซถ And distribution of this memo is unlimited, so share it with everyone ๐
Abstract ๐ธ
This document is all about server pool policies for Reliable Server Pooling (RSerPool) ๐โโ๏ธ It covers how to implement these policies at Endpoint Handlespace Redundancy Protocol (ENRP) servers and at pool users, which is the part where it gets really juicy โจ
Table of Contents ๐๏ธ
1. Introduction ....................................................3
2. Conventions .....................................................3
3. Terminology and Definitions .....................................3
3.1. Load .......................................................3
3.2. Weight .....................................................3
4. Non-Adaptive Policies ...........................................4
4.1. Round Robin Policy .........................................4
4.1.1. Description .........................................4
4.1.2. ENRP Server Considerations ..........................4
4.1.3. Pool User Considerations ............................4
4.1.4. Pool Member Selection Policy Parameter ..............4
4.2. Weighted Round Robin Policy ................................5
4.2.1. Description .........................................5
4.2.2. ENRP Server Considerations ..........................5
4.2.3. Pool User Considerations ............................5
4.2.4. Pool Member Selection Policy Parameter ..............5
4.3. Random Policy ..............................................5
4.3.1. Description .........................................5
4.3.2. ENRP Server Considerations ..........................6
4.3.3. Pool User Considerations ............................6
4.3.4. Pool Member Selection Policy Parameter ..............6
4.4. Weighted Random Policy .....................................6
4.4.1. Description .........................................6
4.4.2. ENRP Server Considerations ..........................6
4.4.3. Pool User Considerations ............................6
4.4.4. Pool Member Selection Policy Parameter ..............7
4.5. Priority Policy ............................................7
4.5.1. Description .........................................7
4.5.2. ENRP Server Considerations ..........................7
4.5.3. Pool Element Considerations .........................7
4.5.4. Pool Member Selection Policy Parameter ..............7
5. Adaptive Policies ...............................................8
5.1. Least Used Policy ..........................................8
5.1.1. Description .........................................8
5.1.2. ENRP Server Considerations ..........................8
5.1.3. Pool User Considerations ............................8
5.1.4. Pool Member Selection Policy Parameter ..............8
5.2. Least Used with Degradation Policy .........................9
5.2.1. Description .........................................9
5.2.2. ENRP Server Considerations ..........................9
5.2.3. Pool User Considerations ............................9
5.2.4. Pool Member Selection Policy Parameter ..............9
5.3. Priority Least Used Policy ................................10
5.3.1. Description ........................................10
5.3.2. ENRP Server Considerations .........................10
5.3.3. Pool User Considerations ...........................10
5.3.4. Pool Member Selection Policy Parameter .............10
5.4. Randomized Least Used Policy ..............................11
5.4.1. Description ........................................11
5.4.2. ENRP Server Considerations .........................11
5.4.3. Pool User Considerations ...........................11
5.4.4. Pool Member Selection Policy Parameter .............11
6. Security Considerations ........................................11
7. IANA Considerations ............................................12
7.1. A New Table for RSerPool Policy Types .....................12
8. Reference Implementation .......................................13
9. References .....................................................13
9.1. Normative References ......................................13
9.2. Informative References ....................................14
1. Introduction ๐
Okay so the protocols in [RFC5353], [RFC5352], and [RFC5354] support a whole bunch of server policies ๐ง Some policies use dynamic load information about the pool elements and some don't, so we sort them into adaptive and non-adaptive buckets ๐ Picking a pool element is handled by two different entities: the ENRP server and the pool user. Some of the consequences for policies that are not stateless are described in [ICN2005] and [LCN2005] ๐
So this document doesn't just give you packet formats. It also goes into detail on the procedures that the ENRP servers and the pool users have to follow to implement each server policy ๐ฅ
2. Conventions ๐
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC2119]. Iykyk ๐
3. Terminology and Definitions ๐
3.1. Load ๐
Load is a value that says how much a pool element's resources are currently being used ๐ 0x00000000 means the pool element is not utilized at all (0%), and 0xffffffff means it's fully utilized (100%) ๐ What utilization actually means depends on the application, and that's out of scope for RSerPool. Still, it is required that all pool elements of the same pool using load information have the same definition of load โจ
For example, load could be how many users an FTP server has out of a maximum, the CPU usage of a database server, or the memory utilization of a compute service ๐
3.2. Weight โ๏ธ
Weight is how much service capacity a pool element has compared to the other pool elements in the same pool ๐ช In theory there's no upper limit on weight values (it's only limited by the datatype size). What values weights get compared as is application-dependent and out of scope for RSerPool. Still, it is required that all pool elements of the same pool using weight information have the same definition of weight ๐ซถ
A weight of 0 means the pool element can't provide any service at all ๐ญ A higher weight means the pool element can provide better service than one with a lower weight ๐
For example, weight could describe a compute service's computation capacity. So a pool element of weight 100 will finish a work package in half the time it takes a pool element of weight 50 ๐ง
4. Non-Adaptive Policies ๐
4.1. Round Robin Policy ๐
4.1.1. Description ๐
The Round Robin (RR) policy is super simple and efficient, but it does require state ๐ง This policy is the default policy, and it MUST be supported by all RSerPool components. No exceptions, periodt ๐
4.1.2. ENRP Server Considerations ๐ฅ๏ธ
The ENRP server SHOULD hold the pool elements of each server pool in a circular list. It SHOULD also store a pointer to one of the elements, called the head ๐ฏ When a handle resolution request comes in, the ENRP server SHOULD return the pool elements from the circular list, starting with the head. Then the head SHOULD be advanced by one element โจ
Using this algorithm makes sure that not all lists given to the pool users start with the same element ๐ฆ
4.1.3. Pool User Considerations ๐โโ๏ธ
A pool user SHOULD use the list of pool elements returned by the ENRP server in a round robin fashion, starting with the first one. If all elements of the list have been used, it should start from the beginning again until the information is out of date ๐
4.1.4. Pool Member Selection Policy Parameter ๐งฉ
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Param Type = 0x8 | Length = 0x8 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Policy Type = 0x00000001 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
4.2. Weighted Round Robin Policy ๐๏ธโโ๏ธ
4.2.1. Description ๐
The Weighted Round Robin (WRR) policy is a generalization of the RR policy ๐ If all weights are 1, then WRR is just RR. Literally the same thing, just dressed up ๐
4.2.2. ENRP Server Considerations ๐ฅ๏ธ
The ENRP server SHOULD follow the same rules as RR, but it initializes and modifies the circular list differently ๐ The ENRP server puts each pool element into the list possibly multiple times, such that:
- The ratio of the number of occurrences of a pool element to the list length is the same as the ratio of the weight of that pool element to the sum of weights.
- The multiple entries of each pool element should be as evenly distributed as possible in the circular list.
4.2.3. Pool User Considerations ๐โโ๏ธ
The pool user SHOULD follow the same rules as RR. Easy peasy ๐
4.2.4. Pool Member Selection Policy Parameter ๐งฉ
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Param Type = 0x8 | Length = 0xc |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Policy Type = 0x00000002 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Weight |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- Weight (32 bits, unsigned integer): Weight constant for the WRR process.
4.3. Random Policy ๐ฒ
4.3.1. Description ๐ธ
The Random (RAND) policy is a very simple stateless policy ๐ซง
4.3.2. ENRP Server Considerations ๐ฅ๏ธ
The ENRP server selects, at most, the requested number of pool elements from the list of pool elements. Each element MUST NOT be reported more than once to the pool user. Not twice, not ever, bestie ๐ โโ๏ธ
4.3.3. Pool User Considerations ๐โโ๏ธ
Each time the pool user must select one pool element, it does this by randomly selecting one element from the list of pool elements received from the ENRP server ๐ฐ
4.3.4. Pool Member Selection Policy Parameter ๐
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Param Type = 0x8 | Length = 0x8 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Policy Type = 0x00000003 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
4.4. Weighted Random Policy ๐ฒ
4.4.1. Description
Okay so the Weighted Random (WRAND) policy is basically RAND's glow-up ๐ . It adds a weight to every pool element entry. And RAND? That's just WRAND with every weight set to 1, which is so iconic ๐ธ.
4.4.2. ENRP Server Considerations
The ENRP server SHOULD pick, at most, the number of pool elements that was requested, and it should choose them randomly from the list of pool elements ๐ฆ. Each element MUST NOT be reported more than once to the pool user, so no repeats, bestie ๐ . The probability of picking a pool element should be the ratio of that element's weight to the sum of all the weights ๐.
4.4.3. Pool User Considerations
Every time the pool user needs to pick one pool element, it does that by randomly choosing one element from the list of pool elements the ENRP server handed back ๐ง.
4.4.4. Pool Member Selection Policy Parameter
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Param Type = 0x8 | Length = 0xc |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Policy Type = 0x00000004 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Weight |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- Weight (32 bits, unsigned integer): the weight constant used for the WRAND process ๐
4.5. Priority Policy ๐
4.5.1. Description
The Priority (PRIO) policy can be used to always select a pool element with the highest priority. It's giving VIP section ๐.
4.5.2. ENRP Server Considerations
The ENRP server MUST pick the pool elements with the highest priorities ๐ฅ. They MUST be reported in decreasing order, so highest first. If several pool elements share the same priority, they may be listed in any order, lowkey whatever ๐คท.
4.5.3. Pool Element Considerations
The pool user MUST select the active pool element with the highest priority โจ.
4.5.4. Pool Member Selection Policy Parameter
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Param Type = 0x8 | Length = 0xc |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Policy Type = 0x00000005 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Priority |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- Priority (32 bits, unsigned integer): larger numbers mean higher priorities ๐
5. Adaptive Policies โจ
5.1. Least Used Policy ๐ชซ
5.1.1. Description
The Least Used (LU) policy looks at the load info the pool elements send in, then picks the lowest-loaded pool elements inside the pool ๐ง.
5.1.2. ENRP Server Considerations
The ENRP server SHOULD pick, at most, the number of pool elements that was requested. Their load values SHOULD be the lowest possible ones within the pool. Each element MUST NOT be reported more than once to the pool user ๐ . If there's a tie between equal-loaded pool elements, round robin selection SHOULD be made among those elements ๐. The returned list of pool elements MUST be sorted in ascending order by load value ๐.
5.1.3. Pool User Considerations
The pool user should try to use the pool elements in the order the ENRP server returned them. A later call for handle resolution may give back the same list, so it is RECOMMENDED that a pool user request multiple entries to have a good stash of feasible backups ๐.
5.1.4. Pool Member Selection Policy Parameter
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Param Type = 0x8 | Length = 0xc |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Policy Type = 0x40000001 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Load |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- Load (32 bits, unsigned integer): the current load of the pool element ๐ก๏ธ
5.2. Least Used with Degradation Policy ๐
5.2.1. Description
The Least Used with Degradation (LUD) policy builds on LU by adding a load degradation value, which describes how much a pool element's load goes up when a new service association gets accepted ๐ซ.
5.2.2. ENRP Server Considerations
For every pool element entry, a degradation counter MUST be stored ๐๏ธ. When a pool element entry is added or updated by registration or re-registration, this counter MUST be set to 0. When an entry is selected to be returned to a pool user, the internal degradation counter MUST be incremented by 1. Selection works like it does for LU, except the selected pool element entries SHOULD have the lowest possible sum of load value + degradation counter * load degradation value ๐งฎ.
5.2.3. Pool User Considerations
See LU policy ๐ .
5.2.4. Pool Member Selection Policy Parameter
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Param Type = 0x8 | Length = 0x10 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Policy Type = 0x40000002 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Load |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Load Degradation |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- Load (32 bits, unsigned integer): the current load of the pool element ๐ก๏ธ
- Load Degradation (32 bits, unsigned integer): the Load Degradation constant of the pool element ๐ข
5.3. Priority Least Used Policy ๐ฅ
5.3.1. Description
The Priority Least Used (PLU) policy uses load info from the pool elements to pick the lowest-loaded pool elements inside the pool, under the assumption that a new application request gets accepted by those pool elements. So pool elements also have to specify load degradation info too ๐ง .
Example: Pool elements A and B are both loaded by 50%, but A's load will only go up by 10% from a new application request, while B will be fully loaded ๐ญ. PLU lets you specify this load degradation in the policy information, and the selection is made on the lowest sum of load and degradation value. So A gets picked (50+10=60) over B (50+50=100) ๐.
5.3.2. ENRP Server Considerations
The ENRP server SHOULD pick, at most, the number of pool elements that was requested. Their sums of load + degradation SHOULD be the lowest possible ones within the pool. Each element MUST NOT be reported more than once to the pool user ๐ . If there's a tie between equal-valued pool element entries, round robin SHOULD be made among these elements ๐. The returned list of pool elements MUST be sorted ascending by the sum of load and degradation value ๐.
5.3.3. Pool User Considerations
The pool user should try to use the pool elements in the order the ENRP server returned them. A later call for handle resolution may give back the same list, so it is RECOMMENDED that a pool user request multiple entries to have a good stash of feasible backups ๐.
5.3.4. Pool Member Selection Policy Parameter
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Param Type = 0x8 | Length = 0x10 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Policy Type = 0x40000003 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Load |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Load Degradation |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- Load (32 bits, unsigned integer): the current load of the pool element ๐ก๏ธ
- Load Degradation (32 bits, unsigned integer): the Load Degradation constant of the pool element ๐ข
5.4. Randomized Least Used Policy ๐ฐ
5.4.1. Description
The Randomized Least Used (RLU) policy mixes LU and WRAND together. So the pool element entries get selected randomly ๐ฒ. The probability for a pool element entry A, using load_A, to get selected is (0xFFFFFFFF - load_A) / (sum(0xFFFFFFFF-load_x)). In other words, it's this PE's unload part compared to the whole pool's unload rate ๐ง.
5.4.2. ENRP Server Considerations
The ENRP server SHOULD behave like WRAND, with every PE's weight set to 0xffffffff -- load value provided by the pool element โ๏ธ.
5.4.3. Pool User Considerations
See WRAND policy ๐.
5.4.4. Pool Member Selection Policy Parameter
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Param Type = 0x8 | Length = 0xc |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Policy Type = 0x40000004 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Load |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- Load (32 bits, unsigned integer): the current load of the pool element ๐ก๏ธ
6. Security Considerations ๐
Real talk, bestie ๐ซถ: the security threats for RSerPool have already been analyzed in RSerPool threats [RFC5355]. The server policy descriptions in this document do not add any other threats, so this part is covered.
7. IANA Considerations ๐งพ
This document (RFC 5356) is the reference for all registrations described in this section. All registrations have been listed on the RSerPool Parameters page ๐.
7.1. A New Table for RSerPool Policy Types โจ
okay so bestie, RSerPool policy types that are 4-byte values are maintained by IANA ๐ Here's how the policy type value is laid out, and it's giving very bit-level organization ๐
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|X|A| Policy Number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- X is the flag that says whether the policy is user defined. If it's set to 1, the policy is user defined and not standardized. All standards policies reserved by the IETF use X=0 ๐ธ
- A tells you if the policy is adaptive. If it's set to 1, the policy is adaptive. Otherwise, it's non-adaptive ๐ฆ
- Policy Number is the actual number of the policy ๐ง
Nine initial policy types have been assigned, and they live in a brand new table called "RSerPool Policy Types" ๐
Value Policy Reference
----- --------- ---------
0x00000000 (reserved, invalid value) RFC 5356
0x00000001 Round Robin RFC 5356
0x00000002 Weighted Round Robin RFC 5356
0x00000003 Random RFC 5356
0x00000004 Weighted Random RFC 5356
0x00000005 Priority RFC 5356
0x00000006 (reserved by IETF) RFC 5356
...
0x3fffffff (reserved by IETF) RFC 5356
0x40000000 (reserved, invalid value) RFC 5356
0x40000001 Least Used RFC 5356
0x40000002 Least Used with Degradation RFC 5356
0x40000003 Priority Least Used RFC 5356
0x40000004 Randomized Least Used RFC 5356
0x40000005 (reserved by IETF) RFC 5356
...
0x7fffffff (reserved by IETF) RFC 5356
0x80000000 (private use, non-standard policy) RFC 5356
...
0xffffffff (private use, non-standard policy) RFC 5356
Requests to register an RSerPool policy type in this table should be sent to IANA. The number must be unique and use the appropriate upper bits. The "Specification Required" policy of [RFC5226] MUST be applied ๐ฅ
The policy type space from 0x80000000 to 0xffffffff is designated for private use, so that's your sandbox, bestie ๐
8. Reference Implementation โจ
A reference implementation of RSerPool and the policies described in this document is available at [RSerPoolPage] and described in [Dre2006]. Go check it out ๐
9. References ๐
9.1. Normative References
- [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.
- [RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an IANA Considerations Section in RFCs", BCP 26, RFC 5226, May 2008.
- [RFC5354] Stewart, R., Xie, Q., Stillman, M., and M. Tuexen, "Aggregate Server Access Protocol (ASAP) and Endpoint Handlespace Redundancy Protocol (ENRP) Parameters", RFC 5354, September 2008.
- [RFC5352] Stewart, R., Xie, Q., Stillman, M., and M. Tuexen, "Aggregate Server Access Protocol (ASAP)", RFC 5352, September 2008.
- [RFC5353] Xie, Q., Stewart, R., Stillman, M., Tuexen, M., and A. Silverton, "Endpoint Handlespace Redundancy Protocol (ENRP)", RFC 5353, September 2008.
- [RFC5355] Stillman, M., Ed., Gopal, R., Guttman, E., Holdrege, M., and S. Sengodan, "Threats Introduced by Reliable Server Pooling (RSerPool) and Requirements for Security in Response to Threats", RFC 5355, September 2008.
9.2. Informative References
- [RSerPoolPage] Dreibholz, T., "Thomas Dreibholz's RSerPool Page",
http://tdrwww.iem.uni-due.de/dreibholz/rserpool/. - [Dre2006] Dreibholz, T., "Reliable Server Pooling -- Evaluation, Optimization and Extension of a Novel IETF Architecture", Ph.D. Thesis University of Duisburg-Essen, Faculty of Economics, Institute for Computer Science and Business Information Systems, March 2007,
http://duepublico.uni-duisburg-essen.de/servlets/DerivateServlet/Derivate-16326/Dre2006-final.pdf. - [LCN2005] Dreibholz, T. and E. Rathgeb, "On the Performance of Reliable Server Pooling Systems", Proceedings of the 30th IEEE Local Computer Networks Conference, November 2005.
- [ICN2005] Dreibholz, T., Rathgeb, E., and M. Tuexen, "Load Distribution Performance of the Reliable Server Pooling Framework", Proceedings of the 4th IEEE International Conference on Networking, April 2005.
Authors' Addresses ๐
Thomas Dreibholz
University of Duisburg-Essen, Institute for Experimental Mathematics
Ellernstrasse 29
45326 Essen, Nordrhein-Westfalen
Germany
Phone: +49-201-1837637
Fax: +49-201-1837673
EMail: dreibh@iem.uni-due.de
URI: http://www.iem.uni-due.de/~dreibh/
Michael Tuexen
Muenster University of Applied Sciences
Stegerwaldstrasse 39
48565 Steinfurt
Germany
Phone: +49-2551-962550
Fax: +49-2551-962563
EMail: tuexen@fh-muenster.de
Full Copyright Statement ๐ธ
Copyright (C) The IETF Trust (2008).
This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights.
This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
Intellectual Property ๐ฆ
The IETF takes no position regarding the validity or scope of any Intellectual Property Rights or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; nor does it represent that it has made any independent effort to identify any such rights. Information on the procedures with respect to rights in RFC documents can be found in BCP 78 and BCP 79.
Copies of IPR disclosures made to the IETF Secretariat and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification can be obtained from the IETF on-line IPR repository at http://www.ietf.org/ipr.
The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology that may be required to implement this standard. Please address the information to the IETF at ietf-ipr@ietf.org. ๐
๐ฆ where this page comes from
- ietf: rfc5356 2008-09
- ๐ girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms