This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.¶
Internet-Drafts are working documents of the Internet Engineering Task
Force (IETF). Note that other groups may also distribute working
documents as Internet-Drafts. The list of current Internet-Drafts is
at https://datatracker.ietf.org/drafts/current/.¶
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."¶
This Internet-Draft will expire on 21 March 2023.¶
Copyright (c) 2022 IETF Trust and the persons identified as the
document authors. All rights reserved.¶
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(https://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with
respect to this document. Code Components extracted from this
document must include Revised BSD License text as described in
Section 4.e of the Trust Legal Provisions and are provided without
warranty as described in the Revised BSD License.¶
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.¶
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.¶
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.¶
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).¶
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.¶
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.¶
The RSerPool reference implementation RSPLIB can be found at
[14]. It supports the functionalities
defined by
[2],
[3],
[4],
[5] and
[7] as well as the options
[9],
[11] and
[10].
The MIB module is defined in [8].
An introduction to this implementation is provided in
[12].¶
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 [13], some further information can be found on the project website [15].¶
Tuexen, M., Xie, Q., Stewart, R., Shore, M., Ong, L., Loughney, J., and M. Stillman, "Requirements for Reliable Server Pooling", RFC 3237, DOI 10.17487/RFC3237, , <https://www.rfc-editor.org/info/rfc3237>.
[2]
Lei, P., Ong, L., Tuexen, M., and T. Dreibholz, "An Overview of Reliable Server Pooling Protocols", RFC 5351, DOI 10.17487/RFC5351, , <https://www.rfc-editor.org/info/rfc5351>.
[3]
Stewart, R., Xie, Q., Stillman, M., and M. Tuexen, "Aggregate Server Access Protocol (ASAP)", RFC 5352, DOI 10.17487/RFC5352, , <https://www.rfc-editor.org/info/rfc5352>.
[4]
Xie, Q., Stewart, R., Stillman, M., Tuexen, M., and A. Silverton, "Endpoint Handlespace Redundancy Protocol (ENRP)", RFC 5353, DOI 10.17487/RFC5353, , <https://www.rfc-editor.org/info/rfc5353>.
[5]
Stewart, R., Xie, Q., Stillman, M., and M. Tuexen, "Aggregate Server Access Protocol (ASAP) and Endpoint Handlespace Redundancy Protocol (ENRP) Parameters", RFC 5354, DOI 10.17487/RFC5354, , <https://www.rfc-editor.org/info/rfc5354>.
[6]
Stillman, M., Ed., Gopal, R., Guttman, E., Sengodan, S., and M. Holdrege, "Threats Introduced by Reliable Server Pooling (RSerPool) and Requirements for Security in Response to Threats", RFC 5355, DOI 10.17487/RFC5355, , <https://www.rfc-editor.org/info/rfc5355>.
Dreibholz, T. and X. Zhou, "Definition of a Delay Measurement Infrastructure and Delay-Sensitive Least-Used Policy for Reliable Server Pooling", Work in Progress, Internet-Draft, draft-dreibholz-rserpool-delay-28, , <https://www.ietf.org/archive/id/draft-dreibholz-rserpool-delay-28.txt>.
Dreibholz, T. and E. G. Gran, "Design and Implementation of the NorNet Core Research Testbed for Multi-Homed Systems", Proceedings of the 3nd International Workshop on Protocols and Applications with Multi-Homing Support (PAMS) Pages 1094-1100, ISBN 978-0-7695-4952-1, DOI 10.1109/WAINA.2013.71, , <https://www.simula.no/file/threfereedinproceedingsreference2012-12-207643198512pdf/download>.