idnits 2.17.1 draft-dreibholz-rserpool-score-30.txt: -(5): Line appears to be too long, but this could be caused by non-ascii characters in UTF-8 encoding -(410): Line appears to be too long, but this could be caused by non-ascii characters in UTF-8 encoding Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- == There are 5 instances of lines with non-ascii characters in the document. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (21 March 2022) is 767 days in the past. Is this intentional? Checking references for intended status: Informational ---------------------------------------------------------------------------- == Outdated reference: A later version (-34) exists of draft-dreibholz-rserpool-asap-hropt-29 == Outdated reference: A later version (-33) exists of draft-dreibholz-rserpool-delay-28 == Outdated reference: A later version (-31) exists of draft-dreibholz-rserpool-enrp-takeover-26 Summary: 0 errors (**), 0 flaws (~~), 5 warnings (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group T. Dreibholz 3 Internet-Draft SimulaMet 4 Intended status: Informational M. Tuexen 5 Expires: 22 September 2022 Münster Univ. of App. Sciences 6 21 March 2022 8 Reliable Server Pooling (RSerPool) Bakeoff Scoring 9 draft-dreibholz-rserpool-score-30 11 Abstract 13 This memo describes some of the scoring to be used in the testing of 14 Reliable Server Pooling protocols ASAP and ENRP at upcoming bakeoffs. 16 Status of This Memo 18 This Internet-Draft is submitted in full conformance with the 19 provisions of BCP 78 and BCP 79. 21 Internet-Drafts are working documents of the Internet Engineering 22 Task Force (IETF). Note that other groups may also distribute 23 working documents as Internet-Drafts. The list of current Internet- 24 Drafts is at https://datatracker.ietf.org/drafts/current/. 26 Internet-Drafts are draft documents valid for a maximum of six months 27 and may be updated, replaced, or obsoleted by other documents at any 28 time. It is inappropriate to use Internet-Drafts as reference 29 material or to cite them other than as "work in progress." 31 This Internet-Draft will expire on 22 September 2022. 33 Copyright Notice 35 Copyright (c) 2022 IETF Trust and the persons identified as the 36 document authors. All rights reserved. 38 This document is subject to BCP 78 and the IETF Trust's Legal 39 Provisions Relating to IETF Documents (https://trustee.ietf.org/ 40 license-info) in effect on the date of publication of this document. 41 Please review these documents carefully, as they describe your rights 42 and restrictions with respect to this document. Code Components 43 extracted from this document must include Revised BSD License text as 44 described in Section 4.e of the Trust Legal Provisions and are 45 provided without warranty as described in the Revised BSD License. 47 Table of Contents 49 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 50 2. Aggregate Server Access Protocol . . . . . . . . . . . . . . 2 51 2.1. Pool Element Communication . . . . . . . . . . . . . . . 3 52 2.2. Pool User Communication . . . . . . . . . . . . . . . . . 3 53 2.3. ENRP Server Communication . . . . . . . . . . . . . . . . 4 54 3. Endpoint Handlespace Redundancy Protocol . . . . . . . . . . 4 55 3.1. Peer Management . . . . . . . . . . . . . . . . . . . . . 5 56 3.2. Update . . . . . . . . . . . . . . . . . . . . . . . . . 5 57 3.3. Synchronization . . . . . . . . . . . . . . . . . . . . . 6 58 3.4. Takeover . . . . . . . . . . . . . . . . . . . . . . . . 6 59 4. Bonus Points . . . . . . . . . . . . . . . . . . . . . . . . 7 60 5. Reference Implementation . . . . . . . . . . . . . . . . . . 7 61 6. Testbed Platform . . . . . . . . . . . . . . . . . . . . . . 7 62 7. Security Considerations . . . . . . . . . . . . . . . . . . . 7 63 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7 64 9. References . . . . . . . . . . . . . . . . . . . . . . . . . 7 65 9.1. Normative References . . . . . . . . . . . . . . . . . . 7 66 9.2. Informative References . . . . . . . . . . . . . . . . . 9 67 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 9 69 1. Introduction 71 This document will be used as a basis for point scoring at upcoming 72 RSerPool bakeoffs. Its purpose is similar to that described in 73 RFC1025. It is hoped that a clear definition of where and how to 74 score points will further the development of RSerPool. 76 Note that while attending a bakeoff no one else will score your 77 points for you. We trust that all implementations will faithfully 78 record their points that are received honestly. Note also that these 79 scores are NOT to be used for marketing purposes. They are for the 80 use of the implementations to know how well they are doing. The only 81 reporting that will be done is a basic summary to the Reliable Server 82 Pooling Working Group but please note that NO company or 83 implementation names will be attached. 85 2. Aggregate Server Access Protocol 87 The ASAP protocol and useful extensions are described in the follwing 88 documents: 90 * [3] 92 * [5] 94 * [9] 95 * [10] 97 2.1. Pool Element Communication 99 These points will be scored for EACH peer implementation that you 100 successfully communicate with. 102 * 2 Successful ASAP Registration Request of a PE in a pool using 103 Round Robin policy and handling of ASAP Registration Response. 105 * 2 Failing ASAP Registration Request of a PE requesting Least Used 106 policy in a pool using Round Robin policy and appropriate handling 107 of ASAP Registration Response (e.g. printing error message, but 108 not retrying registration). 110 * 2 Successful re-registration of a PE in a pool using Round Robin 111 policy. 113 * 2 Successful ASAP Deregistration Request of the PE from its pool 114 and handling of ASAP Deregistration Response. 116 * 2 Successful handling of ASAP Endpoint Keep-Alive without Home bit 117 set, i.e. answering with ASAP Endpoint Keep-Alive Ack. 119 * 5 Successful handling of ASAP Endpoint Keep-Alive with Home bit 120 set: respond with ASAP Endpoint Keep-Alive Ack and use new ENRP 121 server for re-registration. 123 * 5 Successful connection to and registration at an ENRP server 124 announcing itself via multicast ASAP Announces. 126 * 1 Successful registration into pool using Least Used policy. 128 * 1 Successful registration into pool using Weighted Round Robin 129 policy. 131 * 1 Successful registration into pool using Random policy. 133 * 1 Successful registration into pool using Weighted Random policy. 135 2.2. Pool User Communication 137 These points will be scored for EACH peer implementation that you 138 successfully communicate with. 140 * 5 Successful ASAP Handle Resolution in a pool using Round Robin 141 policy, correct handling of ASAP Handle Resolution Response. 143 * 2 Successful failure reporting using ASAP Endpoint Unreachable. 145 * 5 Successful connection to and handle resolution at ENRP server 146 announcing itself via multicast ASAP Announces. 148 * 1 Successful handle resolution in a pool using Least Used policy. 150 * 1 Successful handle resolution in a pool using Weighted Round 151 Robin policy. 153 * 1 Successful handle resolution in a pool using Random policy. 155 * 1 Successful handle resolution in a pool using Weighted Random 156 policy. 158 2.3. ENRP Server Communication 160 These points will be scored for EACH peer implementation that you 161 successfully communicate with. 163 * 2 Successful handling of an ASAP Registration Request into a pool 164 using Round Robin policy (ENRP server answers with successful ASAP 165 Registration Response). 167 * 2 Rejecting registration of a PE requesting Round Robin policy 168 into a pool using Least Used policy. 170 * 5 Rejecting registration of a PE with all addresses *not* being 171 part of the ASAP association. 173 * 5 Successful registration of a PE with some addresses *not* being 174 part of the ASAP association. The invalid addresses may *not* go 175 into the handlespace. 177 * 5 Successful handling of ASAP Endpoint Unreachable messages. The 178 ENRP server must remove the given PE after MAX-BAD-PE-REPORTS=3 179 unreachability reports. 181 * 2 Sending regular ASAP Endpoint Keep-Alives to its PEs. 183 * 2 Removing PE not answering to ASAP Endpoint Keep-Alive. 185 3. Endpoint Handlespace Redundancy Protocol 187 The ENRP protocol and useful extensions are described in the follwing 188 documents: 190 * [4] 191 * [5] 193 * [11] 195 3.1. Peer Management 197 These points will be scored for EACH peer implementation that you 198 successfully communicate with. 200 * 2 Sending ENRP Presence to a new ENRP server. 202 * 2 Sending ENRP Presences in the interval given by PEER-HEARTBEAT- 203 CYCLE. 205 * 5 Requesting peer list from new ENRP server using ENRP Peer List 206 Request, handling ENRP Peer List Response and adding entries to 207 its own peer list. 209 * 2 Handling ENRP Peer List Request and replying with own peer list 210 in ENRP Peer List Response. 212 * 5 Requesting handlespace from new ENRP server using ENRP Handle 213 Table Request, handling ENRP Handle Table Response (without M-bit 214 set) and inserting entries into its own handlespace copy. 216 * 5 Requesting handlespace from new ENRP server using ENRP Handle 217 Table Request, handling ENRP Handle Table Response with M-bit set, 218 requesting more entries and inserting entries into its own 219 handlespace copy. 221 * 2 Handling ENRP Handle Table Request and replying own handlespace 222 in ENRP Handle Table Response (without M-bit). 224 * 10 Handling ENRP Handle Table Request and replying own handlespace 225 in ENRP Handle Table Response with M-bit set, remembering point to 226 continue from, responding next block of handlespace entries upon 227 following ENRP Handle Table Request, etc. until transfer of 228 handlespace data is complete. 230 * 5 Successful addition of new ENRP server announcing itself via 231 multicast ENRP Presence (including association establishment as 232 well as download of peer list and handlespace). 234 3.2. Update 236 These points will be scored for EACH peer implementation that you 237 successfully communicate with. 239 * 2 Handling an ENRP Handle Update adding a PE. 241 * 2 Handling an ENRP Handle Update updating a PE. The changes must 242 be entered into the local handlespace copy. 244 * 2 Handling an ENRP Handle Update removing a PE. 246 3.3. Synchronization 248 These points will be scored for EACH peer implementation that you 249 successfully communicate with. 251 * 5 Successful detection of different handlespace checksums upon 252 reception of ENRP Presence (due to additional PE), request of 253 Handle Table with W-bit set, integration of missing PE into local 254 handlespace copy and reporting the correct checksum in own ENRP 255 Presence. 257 * 5 Successful detection of different handlespace checksums upon 258 reception of ENRP Presence (due to out-of-date PE), request of 259 Handle Table with W-bit set, removal of PE from local handlespace 260 copy and reporting the correct checksum in own ENRP Presence. 262 * 10 Successful detection of different handlespace checksums upon 263 reception of ENRP Presence (due to multiple new and out-of-date PE 264 identities; size of PE identities is larger than maximum ENRP 265 message size), request of Handle Table with W-bit set, handling of 266 ENRP Handle Table Responses with M-bit set, removal of out-of-date 267 PEs, integration of new PEs into the local handlespace copy and 268 reporting correct checksum in own ENRP Presence. 270 3.4. Takeover 272 These points will be scored for EACH peer implementation that you 273 successfully communicate with. The setup contains your ENRP server 274 plus a set of peers running another implementation. 276 * 5 Successfully detecting the failure of a remote peer and 277 initiating a takeover procedure. 279 * 5 Acknowledging another peer's takeover and aborting own takeover 280 procedure. 282 * 10 Correctly handling a remote peer's Takeover Server message, 283 including ownership change for the remote peer's PEs. 285 * 10 Successfully taking over a dead peer, including ownership 286 change and informing the PEs taken over. 288 4. Bonus Points 290 You can also earn Bonus Points: 292 * 20 points for the ENRP server handling the largest number of PEs. 294 * 20 points for the ENRP server achieving the highest handle 295 resolution throughput for a pool containing 100 (should this be 296 larger?) PEs. 298 Please note that the whole period of the bakeoff is relevant. 300 5. Reference Implementation 302 The RSerPool reference implementation RSPLIB can be found at [14]. 303 It supports the functionalities defined by [2], [3], [4], [5] and [7] 304 as well as the options [9], [11] and [10]. The MIB module is defined 305 in [8]. An introduction to this implementation is provided in [12]. 307 6. Testbed Platform 309 A large-scale and realistic Internet testbed platform with support 310 for the multi-homing feature of the underlying SCTP protocol is 311 NorNet. A description of NorNet is provided in [13], some further 312 information can be found on the project website [15]. 314 7. Security Considerations 316 This document does only describe test scenarios and therefore does 317 not introduce any new security issues. 319 For security considerations of the RSerPool protocols see [1], [2], 320 [3], [4], [5]. [7] and in particular [6]. 322 8. IANA Considerations 324 This document introduces no additional considerations for IANA. 326 9. References 328 9.1. Normative References 330 [1] Tuexen, M., Xie, Q., Stewart, R., Shore, M., Ong, L., 331 Loughney, J., and M. Stillman, "Requirements for Reliable 332 Server Pooling", RFC 3237, DOI 10.17487/RFC3237, January 333 2002, . 335 [2] Lei, P., Ong, L., Tuexen, M., and T. Dreibholz, "An 336 Overview of Reliable Server Pooling Protocols", RFC 5351, 337 DOI 10.17487/RFC5351, September 2008, 338 . 340 [3] Stewart, R., Xie, Q., Stillman, M., and M. Tuexen, 341 "Aggregate Server Access Protocol (ASAP)", RFC 5352, 342 DOI 10.17487/RFC5352, September 2008, 343 . 345 [4] Xie, Q., Stewart, R., Stillman, M., Tuexen, M., and A. 346 Silverton, "Endpoint Handlespace Redundancy Protocol 347 (ENRP)", RFC 5353, DOI 10.17487/RFC5353, September 2008, 348 . 350 [5] Stewart, R., Xie, Q., Stillman, M., and M. Tuexen, 351 "Aggregate Server Access Protocol (ASAP) and Endpoint 352 Handlespace Redundancy Protocol (ENRP) Parameters", 353 RFC 5354, DOI 10.17487/RFC5354, September 2008, 354 . 356 [6] Stillman, M., Ed., Gopal, R., Guttman, E., Sengodan, S., 357 and M. Holdrege, "Threats Introduced by Reliable Server 358 Pooling (RSerPool) and Requirements for Security in 359 Response to Threats", RFC 5355, DOI 10.17487/RFC5355, 360 September 2008, . 362 [7] Dreibholz, T. and M. Tuexen, "Reliable Server Pooling 363 Policies", RFC 5356, DOI 10.17487/RFC5356, September 2008, 364 . 366 [8] Dreibholz, T. and J. Mulik, "Reliable Server Pooling MIB 367 Module Definition", RFC 5525, DOI 10.17487/RFC5525, April 368 2009, . 370 [9] Dreibholz, T., "Handle Resolution Option for ASAP", Work 371 in Progress, Internet-Draft, draft-dreibholz-rserpool- 372 asap-hropt-29, 6 September 2021, 373 . 376 [10] Dreibholz, T. and X. Zhou, "Definition of a Delay 377 Measurement Infrastructure and Delay-Sensitive Least-Used 378 Policy for Reliable Server Pooling", Work in Progress, 379 Internet-Draft, draft-dreibholz-rserpool-delay-28, 6 380 September 2021, . 383 [11] Dreibholz, T. and X. Zhou, "Takeover Suggestion Flag for 384 the ENRP Handle Update Message", Work in Progress, 385 Internet-Draft, draft-dreibholz-rserpool-enrp-takeover-26, 386 6 September 2021, . 389 9.2. Informative References 391 [12] Dreibholz, T., "Reliable Server Pooling – Evaluation, 392 Optimization and Extension of a Novel IETF Architecture", 393 7 March 2007, . 397 [13] Dreibholz, T. and E. G. Gran, "Design and Implementation 398 of the NorNet Core Research Testbed for Multi-Homed 399 Systems", Proceedings of the 3nd International Workshop on 400 Protocols and Applications with Multi-Homing 401 Support (PAMS) Pages 1094-1100, ISBN 978-0-7695-4952-1, 402 DOI 10.1109/WAINA.2013.71, 27 March 2013, 403 . 407 [14] Dreibholz, T., "Thomas Dreibholz's RSerPool Page", 2022, 408 . 410 [15] Dreibholz, T., "NorNet – A Real-World, Large-Scale Multi- 411 Homing Testbed", 2022, . 413 Authors' Addresses 415 Thomas Dreibholz 416 Simula Metropolitan Centre for Digital Engineering 417 Pilestredet 52 418 0167 Oslo 419 Norway 420 Email: dreibh@simula.no 421 URI: https://www.simula.no/people/dreibh 423 Michael Tuexen 424 Münster University of Applied Sciences 425 Stegerwaldstraße 39 426 48565 Steinfurt 427 Germany 428 Email: tuexen@fh-muenster.de