Reliable Server Pooling (RSerPool) Bakeoff Scoring
Internet-Draft draft-dreibholz-rserpool-score-30
Thomas Dreibholz
Simula Metropolitan Centre for Digital Engineering
Pilestredet 52
0167 Oslo
Norway
dreibh@simula.no
https://www.simula.no/people/dreibh
Michael Tuexen
Münster University of Applied Sciences
Stegerwaldstraße 39
48565 Steinfurt
Germany
tuexen@fh-muenster.de
30 March 2024
Internet-Draft
This memo describes some of the scoring to be used in the testing of Reliable Server Pooling protocols ASAP and ENRP at upcoming bakeoffs.
Introduction
This document will be used as a basis for point scoring at upcoming RSerPool bakeoffs. Its purpose is similar to that described in RFC1025. It is hoped that a clear definition of where and how to score points will further the development of RSerPool.
Note that while attending a bakeoff no one else will score your points for you. We trust that all implementations will faithfully record their points that are received honestly. Note also that these scores are NOT to be used for marketing purposes. They are for the use of the implementations to know how well they are doing. The only reporting that will be done is a basic summary to the Reliable Server Pooling Working Group but please note that NO company or implementation names will be attached.
Aggregate Server Access Protocol
The ASAP protocol and useful extensions are described in the follwing documents:
- [RFC5352]
- [RFC5354]
- [I-D.dreibholz-rserpool-asap-hropt]
- [I-D.dreibholz-rserpool-delay]
Pool Element Communication
These points will be scored for EACH peer implementation that you successfully communicate with.
- 2 Successful ASAP Registration Request of a PE in a pool using Round Robin policy and handling of ASAP Registration Response.
- 2 Failing ASAP Registration Request of a PE requesting Least Used policy in a pool using Round Robin policy and appropriate handling of ASAP Registration Response (e.g. printing error message, but not retrying registration).
- 2 Successful re-registration of a PE in a pool using Round Robin policy.
- 2 Successful ASAP Deregistration Request of the PE from its pool and handling of ASAP Deregistration Response.
- 2 Successful handling of ASAP Endpoint Keep-Alive without Home bit set, i.e. answering with ASAP Endpoint Keep-Alive Ack.
- 5 Successful handling of ASAP Endpoint Keep-Alive with Home bit set: respond with ASAP Endpoint Keep-Alive Ack and use new ENRP server for re-registration.
- 5 Successful connection to and registration at an ENRP server announcing itself via multicast ASAP Announces.
- 1 Successful registration into pool using Least Used policy.
- 1 Successful registration into pool using Weighted Round Robin policy.
- 1 Successful registration into pool using Random policy.
- 1 Successful registration into pool using Weighted Random policy.
Pool User Communication
These points will be scored for EACH peer implementation that you successfully communicate with.
- 5 Successful ASAP Handle Resolution in a pool using Round Robin policy, correct handling of ASAP Handle Resolution Response.
- 2 Successful failure reporting using ASAP Endpoint Unreachable.
- 5 Successful connection to and handle resolution at ENRP server announcing itself via multicast ASAP Announces.
- 1 Successful handle resolution in a pool using Least Used policy.
- 1 Successful handle resolution in a pool using Weighted Round Robin policy.
- 1 Successful handle resolution in a pool using Random policy.
- 1 Successful handle resolution in a pool using Weighted Random policy.
ENRP Server Communication
These points will be scored for EACH peer implementation that you successfully communicate with.
- 2 Successful handling of an ASAP Registration Request into a pool using Round Robin policy (ENRP server answers with successful ASAP Registration Response).
- 2 Rejecting registration of a PE requesting Round Robin policy into a pool using Least Used policy.
- 5 Rejecting registration of a PE with all addresses *not* being part of the ASAP association.
- 5 Successful registration of a PE with some addresses *not* being part of the ASAP association. The invalid addresses may *not* go into the handlespace.
- 5 Successful handling of ASAP Endpoint Unreachable messages. The ENRP server must remove the given PE after MAX-BAD-PE-REPORTS=3 unreachability reports.
- 2 Sending regular ASAP Endpoint Keep-Alives to its PEs.
- 2 Removing PE not answering to ASAP Endpoint Keep-Alive.
Endpoint Handlespace Redundancy Protocol
The ENRP protocol and useful extensions are described in the follwing documents:
- [RFC5353]
- [RFC5354]
- [I-D.dreibholz-rserpool-enrp-takeover]
Peer Management
These points will be scored for EACH peer implementation that you successfully communicate with.
- 2 Sending ENRP Presence to a new ENRP server.
- 2 Sending ENRP Presences in the interval given by PEER-HEARTBEAT-CYCLE.
- 5 Requesting peer list from new ENRP server using ENRP Peer List Request, handling ENRP Peer List Response and adding entries to its own peer list.
- 2 Handling ENRP Peer List Request and replying with own peer list in ENRP Peer List Response.
- 5 Requesting handlespace from new ENRP server using ENRP Handle Table Request, handling ENRP Handle Table Response (without M-bit set) and inserting entries into its own handlespace copy.
- 5 Requesting handlespace from new ENRP server using ENRP Handle Table Request, handling ENRP Handle Table Response with M-bit set, requesting more entries and inserting entries into its own handlespace copy.
- 2 Handling ENRP Handle Table Request and replying own handlespace in ENRP Handle Table Response (without M-bit).
- 10 Handling ENRP Handle Table Request and replying own handlespace in ENRP Handle Table Response with M-bit set, remembering point to continue from, responding next block of handlespace entries upon following ENRP Handle Table Request, etc. until transfer of handlespace data is complete.
- 5 Successful addition of new ENRP server announcing itself via multicast ENRP Presence (including association establishment as well as download of peer list and handlespace).
Update
These points will be scored for EACH peer implementation that you successfully communicate with.
- 2 Handling an ENRP Handle Update adding a PE.
- 2 Handling an ENRP Handle Update updating a PE. The changes must be entered into the local handlespace copy.
- 2 Handling an ENRP Handle Update removing a PE.
Synchronization
These points will be scored for EACH peer implementation that you successfully communicate with.
- 5 Successful detection of different handlespace checksums upon reception of ENRP Presence (due to additional PE), request of Handle Table with W-bit set, integration of missing PE into local handlespace copy and reporting the correct checksum in own ENRP Presence.
- 5 Successful detection of different handlespace checksums upon reception of ENRP Presence (due to out-of-date PE), request of Handle Table with W-bit set, removal of PE from local handlespace copy and reporting the correct checksum in own ENRP Presence.
- 10 Successful detection of different handlespace checksums upon reception of ENRP Presence (due to multiple new and out-of-date PE identities; size of PE identities is larger than maximum ENRP message size), request of Handle Table with W-bit set, handling of ENRP Handle Table Responses with M-bit set, removal of out-of-date PEs, integration of new PEs into the local handlespace copy and reporting correct checksum in own ENRP Presence.
Takeover
These points will be scored for EACH peer implementation that you successfully communicate with. The setup contains your ENRP server plus a set of peers running another implementation.
- 5 Successfully detecting the failure of a remote peer and initiating a takeover procedure.
- 5 Acknowledging another peer's takeover and aborting own takeover procedure.
- 10 Correctly handling a remote peer's Takeover Server message, including ownership change for the remote peer's PEs.
- 10 Successfully taking over a dead peer, including ownership change and informing the PEs taken over.
Bonus Points
You can also earn Bonus Points:
- 20 points for the ENRP server handling the largest number of PEs.
- 20 points for the ENRP server achieving the highest handle resolution throughput for a pool containing 100 (should this be larger?) PEs.
Please note that the whole period of the bakeoff is relevant.
Reference Implementation
The RSerPool reference implementation RSPLIB can be found at [RSerPool-Website]. It supports the functionalities defined by [RFC5351], [RFC5352], [RFC5353], [RFC5354] and [RFC5356] as well as the options [I-D.dreibholz-rserpool-asap-hropt], [I-D.dreibholz-rserpool-enrp-takeover] and [I-D.dreibholz-rserpool-delay]. The MIB module is defined in [RFC5525]. An introduction to this implementation is provided in [Dre2006].
Testbed Platform
A large-scale and realistic Internet testbed platform with support for the multi-homing feature of the underlying SCTP protocol is NorNet. A description of NorNet is provided in [PAMS2013-NorNet], some further information can be found on the project website [NorNet-Website].
Security Considerations
This document does only describe test scenarios and therefore does not introduce any new security issues.
For security considerations of the RSerPool protocols see [RFC3237], [RFC5351], [RFC5352], [RFC5353], [RFC5354]. [RFC5356] and in particular [RFC5355].
IANA Considerations
This document introduces no additional considerations for IANA.
References
Normative References
[RFC3237]

Requirements for Reliable Server Pooling
M. Tuexen
Q. Xie
R. Stewart
M. Shore
L. Ong
J. Loughney
M. Stillman
January 2002
RFC 3237
DOI 10.17487/RFC3237
[RFC5351]

An Overview of Reliable Server Pooling Protocols
P. Lei
L. Ong
M. Tuexen
T. Dreibholz
September 2008
RFC 5351
DOI 10.17487/RFC5351
[RFC5352]

Aggregate Server Access Protocol (ASAP)
R. Stewart
Q. Xie
M. Stillman
M. Tuexen
September 2008
RFC 5352
DOI 10.17487/RFC5352
[RFC5353]

Endpoint Handlespace Redundancy Protocol (ENRP)
Q. Xie
R. Stewart
M. Stillman
M. Tuexen
A. Silverton
September 2008
RFC 5353
DOI 10.17487/RFC5353
[RFC5354]

Aggregate Server Access Protocol (ASAP) and Endpoint Handlespace Redundancy Protocol (ENRP) Parameters
R. Stewart
Q. Xie
M. Stillman
M. Tuexen
September 2008
RFC 5354
DOI 10.17487/RFC5354
[RFC5355]

Threats Introduced by Reliable Server Pooling (RSerPool) and Requirements for Security in Response to Threats
M. Stillman, Ed.
R. Gopal
E. Guttman
S. Sengodan
M. Holdrege
September 2008
RFC 5355
DOI 10.17487/RFC5355
[RFC5356]

Reliable Server Pooling Policies
T. Dreibholz
M. Tuexen
September 2008
RFC 5356
DOI 10.17487/RFC5356
[RFC5525]

Reliable Server Pooling MIB Module Definition
T. Dreibholz
J. Mulik
April 2009
RFC 5525
DOI 10.17487/RFC5525
[I-D.dreibholz-rserpool-asap-hropt]

Handle Resolution Option for ASAP
Thomas Dreibholz
SimulaMet
6 September 2021
Internet-Draft draft-dreibholz-rserpool-asap-hropt-29
[I-D.dreibholz-rserpool-delay]

Definition of a Delay Measurement Infrastructure and Delay-Sensitive Least-Used Policy for Reliable Server Pooling
Thomas Dreibholz
SimulaMet
Xing Zhou
Hainan University
6 September 2021
Internet-Draft draft-dreibholz-rserpool-delay-28
[I-D.dreibholz-rserpool-enrp-takeover]

Takeover Suggestion Flag for the ENRP Handle Update Message
Thomas Dreibholz
SimulaMet
Xing Zhou
Hainan University
6 September 2021
Internet-Draft draft-dreibholz-rserpool-enrp-takeover-26
Informative References
[Dre2006]

Reliable Server Pooling – Evaluation, Optimization and Extension of a Novel IETF Architecture
ThomasDreibholz
7 March 2007
[PAMS2013-NorNet]

Design and Implementation of the NorNet Core Research Testbed for Multi-Homed Systems
ThomasDreibholz
Ernst GunnarGran
27 March 2013
Proceedings of the 3nd International Workshop on Protocols and Applications with Multi-Homing Support(PAMS) Pages 1094-1100, ISBN978-0-7695-4952-1, DOI10.1109/WAINA.2013.71
[RSerPool-Website]

Thomas Dreibholz's RSerPool Page
ThomasDreibholz
2022
[NorNet-Website]

NorNet – A Real-World, Large-Scale Multi-Homing Testbed
Thomas Dreibholz
2022