idnits 2.17.1 draft-dreibholz-rserpool-applic-distcomp-08.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** You're using the IETF Trust Provisions' Section 6.b License Notice from 12 Sep 2009 rather than the newer Notice from 28 Dec 2009. (See https://trustee.ietf.org/license-info/) Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. 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 (January 5, 2010) is 5223 days in the past. Is this intentional? Checking references for intended status: Informational ---------------------------------------------------------------------------- ** Obsolete normative reference: RFC 4960 (Obsoleted by RFC 9260) == Outdated reference: A later version (-34) exists of draft-dreibholz-rserpool-asap-hropt-04 == Outdated reference: A later version (-31) exists of draft-dreibholz-rserpool-enrp-takeover-01 == Outdated reference: A later version (-33) exists of draft-dreibholz-rserpool-delay-03 Summary: 2 errors (**), 0 flaws (~~), 4 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 University of Duisburg-Essen 4 Intended status: Informational January 5, 2010 5 Expires: July 9, 2010 7 Applicability of Reliable Server Pooling for Real-Time Distributed 8 Computing 9 draft-dreibholz-rserpool-applic-distcomp-08.txt 11 Abstract 13 This document describes the applicability of the Reliable Server 14 Pooling architecture to manage real-time distributed computing pools 15 and access the resources of such pools. 17 Status of this Memo 19 This Internet-Draft is submitted to IETF in full conformance with the 20 provisions of BCP 78 and BCP 79. 22 Internet-Drafts are working documents of the Internet Engineering 23 Task Force (IETF), its areas, and its working groups. Note that 24 other groups may also distribute working documents as Internet- 25 Drafts. 27 Internet-Drafts are draft documents valid for a maximum of six months 28 and may be updated, replaced, or obsoleted by other documents at any 29 time. It is inappropriate to use Internet-Drafts as reference 30 material or to cite them other than as "work in progress." 32 The list of current Internet-Drafts can be accessed at 33 http://www.ietf.org/ietf/1id-abstracts.txt. 35 The list of Internet-Draft Shadow Directories can be accessed at 36 http://www.ietf.org/shadow.html. 38 This Internet-Draft will expire on July 9, 2010. 40 Copyright Notice 42 Copyright (c) 2010 IETF Trust and the persons identified as the 43 document authors. All rights reserved. 45 This document is subject to BCP 78 and the IETF Trust's Legal 46 Provisions Relating to IETF Documents 47 (http://trustee.ietf.org/license-info) in effect on the date of 48 publication of this document. Please review these documents 49 carefully, as they describe your rights and restrictions with respect 50 to this document. Code Components extracted from this document must 51 include Simplified BSD License text as described in Section 4.e of 52 the Trust Legal Provisions and are provided without warranty as 53 described in the BSD License. 55 Table of Contents 57 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 58 1.1. Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 59 1.2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . 3 60 2. Distributed Computing using RSerPool . . . . . . . . . . . . . 3 61 2.1. Requirements . . . . . . . . . . . . . . . . . . . . . . . 3 62 2.2. Architecture . . . . . . . . . . . . . . . . . . . . . . . 4 63 2.3. Limitations . . . . . . . . . . . . . . . . . . . . . . . . 5 64 3. Reference Implementation . . . . . . . . . . . . . . . . . . . 5 65 4. Security Considerations . . . . . . . . . . . . . . . . . . . . 5 66 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 6 67 6. References . . . . . . . . . . . . . . . . . . . . . . . . . . 6 68 6.1. Normative References . . . . . . . . . . . . . . . . . . . 6 69 6.2. Informative References . . . . . . . . . . . . . . . . . . 7 70 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 8 72 1. Introduction 74 Reliable Server Pooling defines protocols for providing highly 75 available services. The services are located in a pool of redundant 76 servers and if a server fails, another server will take over. The 77 only requirement put on these servers belonging to the pool is that 78 if state is maintained by the server, this state must be transferred 79 to the other server taking over. 81 The goal is to provide server-based redundancy. Transport and 82 network level redundancy are handled by the transport and network 83 layer protocols. 85 The application may choose to distribute its traffic over the servers 86 of the pool conforming to a certain policy. 88 1.1. Scope 90 The scope of this document is to explain the way of using Reliable 91 Server Pooling mechanisms to manage and access pools of Distributed 92 Computing resources. 94 1.2. Terminology 96 The terms are commonly identified in related work and can be found in 97 the Aggregate Server Access Protocol and Endpoint Handlespace 98 Redundancy Protocol Common Parameters document [RFC5354]. 100 2. Distributed Computing using RSerPool 102 2.1. Requirements 104 The application scenario for Distributed Computing is defined as 105 follows: 107 o Clients generate large computation jobs. Jobs have to be 108 processed by servers as soon as possible (real-time), i.e. unlike 109 concepts like SETI@home [SETIatHome], it is not possible to let 110 clients fetch a job, process it later and may be some day upload 111 the result. 113 o Jobs may be partitionable, i.e. they can be split up to smaller 114 pieces which can be processed independently and the processing 115 results can be concatenated to the processing result of the 116 complete job. Jobs have to be processed by servers. 118 o Servers may be unreliable; i.e. user computers may be temporarily 119 added to the pool of computing resources and may be revoked when 120 they are used again by their owners. Furthermore, they may simply 121 disappear because of broken network connections (modems, etc.) or 122 power turned off. 124 o The processing power of servers in a pool of computing resources 125 may be very heterogeneous, i.e. a few supercomputers and many low- 126 end user PCs. 128 Maintaining a Distributed Computing pool for the scenario described 129 above arises the following requirements to the pool management: 131 o It must be possible to manage large server pools, e.g. up to some 132 hundreds or even thousands of servers. 134 o Due to heterogeneous processing resources within a pool, it must 135 be possible to use appropriate server selection procedures to 136 meaningfully utilize the available resources. 138 o It must be possible to dynamically add and remove servers. 140 o Servers may be unreliable, especially when the servers are 141 represented by user PCs. Failover mechanisms are required to 142 continue an interrupted computation session. 144 2.2. Architecture 146 All requirements for pool and session management of the Distributed 147 Computing scenario defined in the previous section can be fulfilled 148 by the Reliable Server Pooling architecture: 150 o An efficient implementation of the handlespace management 151 structures allows pools to contain thousands of elements. 152 Handlespace management structures have been proposed, implemented 153 and analyzed in [IJHIT2008], [Contel2005], [Dre2006]. 155 o RSerPool allows to specify server selection rules by pool member 156 selection policies [RFC5356]. A set of adaptive and non-adaptive 157 policies is already defined. To fulfill the requirements of new 158 applications, it is also possible to define new policies. 159 Research has already been made on the subject of load distribution 160 efficiency of pool policies in Distributed Computing scenarios: 161 see [LCN2005], [Dre2006], [Tencon2005], [Euromicro2007], [ICN2005] 162 for details. 164 o Dynamic addition and removal of PEs is a feature of RSerPool 165 [RFC5352]. 167 o The control/data channel concept [RFC5351] of RSerPool realizes a 168 session layer. That is, RSerPool already handles the main task of 169 maintaining and monitoring connections between PUs and PEs; the 170 only task of the application layer to provide full failover 171 functionality is to realize an application-dependent failover 172 procedure. By the usage of client-based state synchronization 173 [LCN2002], [Euromicro2005] in the form of ASAP Cookies, a failover 174 may be fully transparent to the PU while only a state restoration 175 is necessary on the PE side. A demo application [RSerPoolPage] 176 using the RSerPool session layer in a Distributed Computing 177 application is described in [Infocom2005]. 179 2.3. Limitations 181 Applying RSerPool for distributed computing applications, the duties 182 of the RSerPool architecture are still limited to the management of 183 pools and independent sessions only. It is in particular a non-goal 184 to provide functionalities like data synchronization among sessions, 185 user authentication, accounting or the support for more than one 186 administrative domain. Such functionalities are considered to be 187 application-specific and are therefore out of the scope of RSerPool. 189 3. Reference Implementation 191 The RSerPool reference implementation RSPLIB, including example 192 Distributed Computing applications, can be found at [RSerPoolPage]. 193 It supports the functionalities defined by [RFC5351], [RFC5352], 194 [RFC5353], [RFC5354] and [RFC5355] as well as the options 195 [I-D.dreibholz-rserpool-asap-hropt], 196 [I-D.dreibholz-rserpool-enrp-takeover] and 197 [I-D.dreibholz-rserpool-delay]. An introduction to this 198 implementation is provided in [Dre2006]. 200 4. Security Considerations 202 The protocols used in the Reliable Server Pooling architecture only 203 try to increase the availability of the servers in the network. 204 RSerPool protocols do not contain any protocol mechanisms which are 205 directly related to user message authentication, integrity and 206 confidentiality functions. For such features, it depends on the 207 IPSEC protocols or on Transport Layer Security (TLS) protocols for 208 its own security and on the architecture and/or security features of 209 its user protocols. 211 The RSerPool architecture allows the use of different transport 212 protocols for its application and control data exchange. These 213 transport protocols may have mechanisms for reducing the risk of 214 blind denial-of-service attacks and/or masquerade attacks. If such 215 measures are required by the applications, then it is advised to 216 check the SCTP (see [RFC4960]) applicability statement [RFC3257] for 217 guidance on this issue. 219 5. IANA Considerations 221 This document introduces no additional considerations for IANA. 223 6. References 225 6.1. Normative References 227 [RFC5351] Lei, P., Ong, L., Tuexen, M., and T. Dreibholz, "An 228 Overview of Reliable Server Pooling Protocols", RFC 5351, 229 September 2008. 231 [RFC5352] Stewart, R., Xie, Q., Stillman, M., and M. Tuexen, 232 "Aggregate Server Access Protocol (ASAP)", RFC 5352, 233 September 2008. 235 [RFC5353] Xie, Q., Stewart, R., Stillman, M., Tuexen, M., and A. 236 Silverton, "Endpoint Handlespace Redundancy Protocol 237 (ENRP)", RFC 5353, September 2008. 239 [RFC5354] Stewart, R., Xie, Q., Stillman, M., and M. Tuexen, 240 "Aggregate Server Access Protocol (ASAP) and Endpoint 241 Handlespace Redundancy Protocol (ENRP) Parameters", 242 RFC 5354, September 2008. 244 [RFC5355] Stillman, M., Gopal, R., Guttman, E., Sengodan, S., and M. 245 Holdrege, "Threats Introduced by Reliable Server Pooling 246 (RSerPool) and Requirements for Security in Response to 247 Threats", RFC 5355, September 2008. 249 [RFC5356] Dreibholz, T. and M. Tuexen, "Reliable Server Pooling 250 Policies", RFC 5356, September 2008. 252 [RFC3257] Coene, L., "Stream Control Transmission Protocol 253 Applicability Statement", RFC 3257, April 2002. 255 [RFC4960] Stewart, R., "Stream Control Transmission Protocol", 256 RFC 4960, September 2007. 258 6.2. Informative References 260 [RSerPoolPage] 261 Dreibholz, T., "Thomas Dreibholz's RSerPool Page", 262 URL: http://tdrwww.iem.uni-due.de.de/dreibholz/rserpool/. 264 [Dre2006] Dreibholz, T., "Reliable Server Pooling -- Evaluation, 265 Optimization and Extension of a Novel IETF Architecture", 266 Ph.D. Thesis University of Duisburg-Essen, Faculty of 267 Economics, Institute for Computer Science and Business 268 Information Systems, URL: http:// 269 duepublico.uni-duisburg-essen.de/servlets/DerivateServlet/ 270 Derivate-16326/Dre2006-final.pdf, March 2007. 272 [LCN2005] Dreibholz, T. and E. Rathgeb, "On the Performance of 273 Reliable Server Pooling Systems", Proceedings of the 30th 274 IEEE Local Computer Networks Conference, November 2005. 276 [Tencon2005] 277 Dreibholz, T. and E. Rathgeb, "The Performance of Reliable 278 Server Pooling Systems in Different Server Capacity 279 Scenarios", Proceedings of the IEEE TENCON, November 2005. 281 [LCN2002] Dreibholz, T., "An efficient approach for state sharing in 282 server pools", Proceedings of the 27th IEEE Local Computer 283 Networks Conference, October 2002. 285 [Euromicro2005] 286 Dreibholz, T. and E. Rathgeb, "RSerPool -- Providing 287 Highly Available Services using Unreliable Servers", 288 Proceedings Proceedings of the 31st IEEE EuroMirco 289 Conference on Software Engineering and Advanced 290 Applications, August 2005. 292 [Euromicro2007] 293 Dreibholz, T., Zhou, X., and E. Rathgeb, "A Performance 294 Evaluation of RSerPool Server Selection Policies in 295 Varying Heterogeneous Capacity Scenarios", Proceedings of 296 the 33rd IEEE EuroMirco Conference on Software Engineering 297 and Advanced Applications, August 2007. 299 [ICN2005] Dreibholz, T., Rathgeb, E., and M. Tuexen, "Load 300 Distribution Performance of the Reliable Server Pooling 301 Framework", Proceedings of the 4th IEEE International 302 Conference on Networking, April 2005. 304 [Infocom2005] 305 Dreibholz, T. and E. Rathgeb, "An Application 306 Demonstration of the Reliable Server Pooling Framework", 307 Proceedings of the 24th IEEE Infocom, March 2005. 309 [Contel2005] 310 Dreibholz, T. and E. Rathgeb, "Implementing the Reliable 311 Server Pooling Framework", Proceedings of the 8th IEEE 312 International Conference on Telecommunications, June 2005. 314 [IJHIT2008] 315 Dreibholz, T. and E. Rathgeb, "An Evalulation of the Pool 316 Maintenance Overhead in Reliable Server Pooling Systems", 317 International Journal of Hybrid Information Technology 318 (IJHIT) Volume 1, Number 2, April 2008. 320 [SETIatHome] 321 "SETI@home: Search for Extraterrestrial Intelligence at 322 home", URL: http://setiathome.ssl.berkeley.edu. 324 [I-D.dreibholz-rserpool-asap-hropt] 325 Dreibholz, T., "Handle Resolution Option for ASAP", 326 draft-dreibholz-rserpool-asap-hropt-04 (work in progress), 327 January 2009. 329 [I-D.dreibholz-rserpool-enrp-takeover] 330 Dreibholz, T. and X. Zhou, "Takeover Suggestion Flag for 331 the ENRP Handle Update Message", 332 draft-dreibholz-rserpool-enrp-takeover-01 (work in 333 progress), January 2009. 335 [I-D.dreibholz-rserpool-delay] 336 Dreibholz, T. and X. Zhou, "Definition of a Delay 337 Measurement Infrastructure and Delay-Sensitive Least-Used 338 Policy for Reliable Server Pooling", 339 draft-dreibholz-rserpool-delay-03 (work in progress), 340 January 2009. 342 Author's Address 344 Thomas Dreibholz 345 University of Duisburg-Essen, Institute for Experimental Mathematics 346 Ellernstrasse 29 347 45326 Essen, Nordrhein-Westfalen 348 Germany 350 Phone: +49-201-1837637 351 Fax: +49-201-1837673 352 Email: dreibh@iem.uni-due.de 353 URI: http://www.iem.uni-due.de/~dreibh/