1 2 3 4 5 6 7INTERNET-DRAFT Howard Y. Chu 8Intended Category: Standard Track Symas Corporation 9Expires in six months 1 December 2004 10 11 12 Change Sequence Numbers for LDAP 13 <draft-chu-ldap-csn-00.txt> 14 15 16Status of this Memo 17 18 This document is an Internet-Draft and is in full conformance with all 19 provisions of Section 10 of RFC2026. 20 21 This document is intended to be, after appropriate review and 22 revision, submitted to the RFC Editor as an Standard Track document. 23 Distribution of this memo is unlimited. Technical discussion of this 24 document will take place on the IETF LDAP Extensions mailing list 25 <ldapext@ietf.org>. Please send editorial comments directly to the 26 author <Kurt@OpenLDAP.org>. 27 28 Internet-Drafts are working documents of the Internet Engineering Task 29 Force (IETF), its areas, and its working groups. Note that other 30 groups may also distribute working documents as Internet-Drafts. 31 Internet-Drafts are draft documents valid for a maximum of six months 32 and may be updated, replaced, or obsoleted by other documents at any 33 time. It is inappropriate to use Internet-Drafts as reference 34 material or to cite them other than as ``work in progress.'' 35 36 The list of current Internet-Drafts can be accessed at 37 <http://www.ietf.org/ietf/1id-abstracts.txt>. The list of 38 Internet-Draft Shadow Directories can be accessed at 39 <http://www.ietf.org/shadow.html>. 40 41 Copyright (C) The Internet Society (2004). All Rights Reserved. 42 43 Please see the Full Copyright section near the end of this document 44 for more information. 45 46 47Abstract 48 49 This document describes the LDAP/X.500 Change Sequence Number 'CSN' 50 syntax and matching rules and associated attributes. CSNs are used 51 to impose a total ordering upon the sequence of updates applied 52 to a directory. 53 54 55 56 57Chu draft-chu-ldap-csn-00 [Page 1] 58 59INTERNET-DRAFT LDAP CSN 1 December 2004 60 61 621. Background and Intended Use 63 64 In X.500 Directory Services [X.501], updates to a directory may need 65 to be distributed to multiple servers. The 'modifyTimeStamp' is already 66 defined for recording the time of an update, but it may be inadequate in 67 an environment where multiple servers with loosely synchronized clocks 68 are interoperating. 69 70 This document describes the 'CSN' syntax which augments a timestamp with 71 additional information to assist in coordinating updates among multiple 72 directory servers. This document describes the 'entryCSN' operational 73 attribute which carries the CSN of the last update applied to an entry 74 and also the 'contextCSN' operational attribute which carries the 75 greatest CSN of all updates applied to a directory context. Directory 76 clients and servers may use these attributes to assist in synchronizing 77 shadowed copies of directory information. 78 79 This document describes the 'csnMatch' and 'csnOrderingMatch' matching 80 rules corresponding to the 'CSN' syntax. 81 82 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 83 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 84 document are to be interpreted as described in BCP 14 [RFC2119]. 85 86 Schema definitions are provided using LDAP description formats 87 [RFC2252]. Definitions provided here are formatted (line wrapped) for 88 readability. 89 90 912. CSN Schema Elements 92 932.1 CSN Syntax 94 95 Values in this syntax are encoded according to the following BNF: 96 97 CSN = timestamp '#' operation-counter '#' replica-id 98 99 timestamp = <generalizedTimeString as specified in 6.14 of [RFC2252]> 100 101 operation-counter = 6hex-digit 102 103 replica-id = 2hex-digit 104 105 The timestamp SHALL use GMT and SHALL NOT include fractional seconds. 106 107 The operation-counter is set to zero at the start of each second, and 108 incremented by one for each update operation that occurs within that 109 second. 110 111 The replica-id is an identifier that represents a specific Replica in 112 a collection of cooperating servers. 113 114 The following is a LDAP syntax description [RFC2252] suitable for 115 publication in the subschema. 116 117 ( IANA-ASSIGNED-OID.1 DESC 'CSN' ) 118 119 120 121 122 123Chu draft-chu-ldap-csn-00 [Page 2] 124 125INTERNET-DRAFT LDAP CSN 1 December 2004 126 127 1282.2 'csnMatch' Matching Rule 129 130 The 'csnMatch' matching rule compares an asserted CSN with a stored 131 CSN for equality. Its semantics are same as the octetStringMatch 132 [X.520][RFC2252] matching rule. 133 134 The following is a LDAP matching rule description [RFC2252] suitable 135 for publication in the subschema. 136 137 ( IANA-ASSIGNED-OID.2 NAME 'csnMatch' 138 SYNTAX IANA-ASSIGNED-OID.1 ) 139 140 1412.3 'csnOrderingMatch' Matching Rule 142 143 The 'csnOrderingMatch' matching rule compares an asserted CSN 144 with a stored CSN for ordering. Its semantics are the same as the 145 octetStringOrderingMatch [X.520][RFC2252] matching rule. 146 147 The following is a LDAP matching rule description [RFC2252] suitable 148 for publication in the subschema. 149 150 ( IANA-ASSIGNED-OID.3 NAME 'csnOrderingMatch' 151 SYNTAX IANA-ASSIGNED-OID.1 ) 152 153 1542.4. 'entryCSN' attribute 155 156 The 'entryCSN' operational attribute provides the CSN of the last 157 update applied to the entry. 158 159 The following is a LDAP attribute type description [RFC2252] suitable 160 for publication in the subschema. 161 162 ( IANA-ASSIGNED-OID.4 NAME 'entryCSN' 163 DESC 'CSN of the entry content' 164 EQUALITY csnMatch 165 ORDERING csnOrderingMatch 166 167 168 169Chu draft-chu-ldap-csn-00 [Page 3] 170 171INTERNET-DRAFT LDAP CSN 1 December 2004 172 173 174 SYNTAX IANA-ASSIGNED-OID.1 175 SINGLE-VALUE 176 NO-USER-MODIFICATION 177 USAGE directoryOperation ) 178 179 Servers SHALL assign a CSN to each entry upon its addition to the 180 directory and provide the entry's CSN as the value of the 181 'entryCSN' operational attribute. The entryCSN attribute SHOULD be 182 updated upon every update of the entry. 183 1842.5. 'contextCSN' attribute 185 186 The 'contextCSN' operational attribute provides the greatest CSN of 187 all the updates applied to a context. 188 189 The following is a LDAP attribute type description [RFC2252] suitable 190 for publication in the subschema. 191 192 ( IANA-ASSIGNED-OID.5 NAME 'contextCSN' 193 DESC 'the largest committed CSN of a context' 194 EQUALITY csnMatch 195 ORDERING csnOrderingMatch 196 SYNTAX IANA-ASSIGNED-OID.1 197 SINGLE-VALUE 198 NO-USER-MODIFICATION 199 USAGE directoryOperation ) 200 201 Servers SHALL record the greatest CSN of all updates applied to a 202 context in the root entry of the context. 203 204 2053. Security Considerations 206 207 208 General LDAP security considerations [RFC3377] apply. 209 210 2114. IANA Considerations 212 2134.1. Object Identifier Registration 214 215 It is requested that IANA register upon Standards Action an LDAP 216 Object Identifier for use in this technical specification. 217 218 Subject: Request for LDAP OID Registration 219 Person & email address to contact for further information: 220 Howard Chu <hyc@symas.com> 221 Specification: RFC XXXX 222 Author/Change Controller: IESG 223 Comments: 224 Identifies the CSN schema elements 225 226 2274.2. Registration of the csnMatch descriptor 228 229 It is requested that IANA register upon Standards Action the LDAP 230 'csnMatch' descriptor. 231 232 Subject: Request for LDAP Descriptor Registration 233 Descriptor (short name): csnMatch 234 Object Identifier: IANA-ASSIGNED-OID.2 235 Person & email address to contact for further information: 236 Howard Chu <hyc@symas.com> 237 Usage: Matching Rule 238 Specification: RFC XXXX 239 Author/Change Controller: IESG 240 241 242 243 244Chu draft-chu-ldap-csn-00 [Page 4] 245 246INTERNET-DRAFT LDAP CSN 1 December 2004 247 248 2494.3. Registration of the csnOrderingMatch descriptor 250 251 It is requested that IANA register upon Standards Action the LDAP 252 'csnOrderingMatch' descriptor. 253 254 Subject: Request for LDAP Descriptor Registration 255 Descriptor (short name): csnOrderingMatch 256 Object Identifier: IANA-ASSIGNED-OID.3 257 Person & email address to contact for further information: 258 Howard Chu <hyc@symas.com> 259 Usage: Matching Rule 260 Specification: RFC XXXX 261 Author/Change Controller: IESG 262 263 2644.4. Registration of the entryCSN descriptor 265 266 It is requested that IANA register upon Standards Action the LDAP 267 'entryCSN' descriptor. 268 269 Subject: Request for LDAP Descriptor Registration 270 Descriptor (short name): entryCSN 271 Object Identifier: IANA-ASSIGNED-OID.4 272 Person & email address to contact for further information: 273 Howard Chu <hyc@symas.com> 274 Usage: Attribute Type 275 Specification: RFC XXXX 276 Author/Change Controller: IESG 277 278 2794.5. Registration of the contextCSN descriptor 280 281 It is requested that IANA register upon Standards Action the LDAP 282 'contextCSN' descriptor. 283 284 Subject: Request for LDAP Descriptor Registration 285 Descriptor (short name): contextCSN 286 Object Identifier: IANA-ASSIGNED-OID.5 287 Person & email address to contact for further information: 288 Howard Chu <hyc@symas.com> 289 Usage: Attribute Type 290 Specification: RFC XXXX 291 Author/Change Controller: IESG 292 293 2945. Acknowledgments 295 296 This document is based on prior work from the IETF LDUP working 297 group including the LDAP Replication Architecture [LDUPMODEL] 298 and the LDAP Content Synchronization Operation [LDUPSYNC]. 299 300 3016. Author's Addresses 302 303 Howard Y. Chu 304 Symas Corporation 305 <hyc@symas.com> 306 307 Kurt D. Zeilenga 308 OpenLDAP Foundation 309 <Kurt@OpenLDAP.org> 310 311 3127. Normative References 313 314 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 315 Requirement Levels", BCP 14 (also RFC 2119), March 1997. 316 317 318 319Chu draft-chu-ldap-csn-00 [Page 5] 320 321INTERNET-DRAFT LDAP CSN 1 December 2004 322 323 324 [RFC2252] Wahl, M., A. Coulbeck, T. Howes, and S. Kille, 325 "Lightweight Directory Access Protocol (v3): Attribute 326 Syntax Definitions", RFC 2252, December 1997. 327 328 [RFC3377] Hodges, J. and R. Morgan, "Lightweight Directory Access 329 Protocol (v3): Technical Specification", RFC 3377, 330 September 2002. 331 332 [X.501] International Telecommunication Union - 333 Telecommunication Standardization Sector, "The Directory 334 -- Models," X.501(1993) (also ISO/IEC 9594-2:1994). 335 336 [X.520] International Telecommunication Union - 337 Telecommunication Standardization Sector, "The 338 Directory: Selected Attribute Types", X.520(1993) (also 339 ISO/IEC 9594-6:1994). 340 341 [X.680] International Telecommunication Union - 342 Telecommunication Standardization Sector, "Abstract 343 Syntax Notation One (ASN.1) - Specification of Basic 344 Notation", X.680(1997) (also ISO/IEC 8824-1:1998). 345 346 [LDUPSYNC] Zeilenga, K. and Choi, J-H "LDAP Content Synchronization 347 Operation", draft-zeilenga-ldup-sync-05.txt, a work in 348 progress. 349 350 3518. Informative References 352 353 [RFC3383] Zeilenga, K., "IANA Considerations for LDAP", BCP 64 354 (also RFC 3383), September 2002. 355 356 [LDUPMODEL] Merrellls, J., Srinivasan, U., and Reed, E., "LDAP 357 Replication Architecture", draft-ietf-ldup-model-09.txt. 358 359 360 361Intellectual Property Rights 362 363 The IETF takes no position regarding the validity or scope of any 364 365 366 367Chu draft-chu-ldap-csn-00 [Page 6] 368 369INTERNET-DRAFT LDAP CSN 1 December 2004 370 371 372 intellectual property or other rights that might be claimed to pertain 373 to the implementation or use of the technology described in this 374 document or the extent to which any license under such rights might or 375 might not be available; neither does it represent that it has made any 376 effort to identify any such rights. Information on the IETF's 377 procedures with respect to rights in standards-track and 378 standards-related documentation can be found in BCP-11. Copies of 379 claims of rights made available for publication and any assurances of 380 licenses to be made available, or the result of an attempt made to 381 obtain a general license or permission for the use of such proprietary 382 rights by implementors or users of this specification can be obtained 383 from the IETF Secretariat. 384 385 The IETF invites any interested party to bring to its attention any 386 copyrights, patents or patent applications, or other proprietary 387 rights which may cover technology that may be required to practice 388 this standard. Please address the information to the IETF Executive 389 Director. 390 391 392 393Full Copyright 394 395 Copyright (C) The Internet Society (2004). All Rights Reserved. 396 397 This document and translations of it may be copied and furnished to 398 others, and derivative works that comment on or otherwise explain it 399 or assist in its implmentation may be prepared, copied, published and 400 distributed, in whole or in part, without restriction of any kind, 401 provided that the above copyright notice and this paragraph are 402 included on all such copies and derivative works. However, this 403 document itself may not be modified in any way, such as by removing 404 the copyright notice or references to the Internet Society or other 405 Internet organizations, except as needed for the purpose of 406 developing Internet standards in which case the procedures for 407 copyrights defined in the Internet Standards process must be followed, 408 or as required to translate it into languages other than English. 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423Chu draft-chu-ldap-csn-00 [Page 7] 424 425