idnits 2.17.1 draft-ietf-radext-extended-attributes-00.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** It looks like you're using RFC 3978 boilerplate. You should update this to the boilerplate described in the IETF Trust License Policy document (see https://trustee.ietf.org/license-info), which is required now. -- Found old boilerplate from RFC 3978, Section 5.1 on line 17. -- Found old boilerplate from RFC 3978, Section 5.5, updated by RFC 4748 on line 503. -- Found old boilerplate from RFC 3979, Section 5, paragraph 1 on line 514. -- Found old boilerplate from RFC 3979, Section 5, paragraph 2 on line 521. -- Found old boilerplate from RFC 3979, Section 5, paragraph 3 on line 527. 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 Copyright Line does not match the current year == Line 347 has weird spacing: '... String b;...' -- 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 (November 10, 2007) is 6011 days in the past. Is this intentional? -- Found something which looks like a code comment -- if you have code sections in the document, please surround them with '' and '' lines. Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) ** Downref: Normative reference to an Informational RFC: RFC 2866 -- Obsolete informational reference (is this intentional?): RFC 4005 (Obsoleted by RFC 7155) Summary: 2 errors (**), 0 flaws (~~), 2 warnings (==), 9 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group Y. Li 3 Internet-Draft A. Lior 4 Intended status: Standards Track BWS 5 Expires: May 13, 2008 G. Zorn 6 NetCube 7 November 10, 2007 9 Extended Remote Authentication Dial In User Service (RADIUS) Attributes 10 draft-ietf-radext-extended-attributes-00.txt 12 Status of this Memo 14 By submitting this Internet-Draft, each author represents that any 15 applicable patent or other IPR claims of which he or she is aware 16 have been or will be disclosed, and any of which he or she becomes 17 aware will be disclosed, in accordance with Section 6 of BCP 79. 19 Internet-Drafts are working documents of the Internet Engineering 20 Task Force (IETF), its areas, and its working groups. Note that 21 other groups may also distribute working documents as Internet- 22 Drafts. 24 Internet-Drafts are draft documents valid for a maximum of six months 25 and may be updated, replaced, or obsoleted by other documents at any 26 time. It is inappropriate to use Internet-Drafts as reference 27 material or to cite them other than as "work in progress." 29 The list of current Internet-Drafts can be accessed at 30 http://www.ietf.org/ietf/1id-abstracts.txt. 32 The list of Internet-Draft Shadow Directories can be accessed at 33 http://www.ietf.org/shadow.html. 35 This Internet-Draft will expire on May 13, 2008. 37 Copyright Notice 39 Copyright (C) The IETF Trust (2007). 41 Abstract 43 In order for the Remote Authentication Dial In User Service (RADIUS) 44 protocol to continue to support new applications the RADIUS attribute 45 type space must be extended beyond the current limit of 255 possible 46 attribute types while maintaining backwards compatibility with 47 existing RADIUS implementations. This document defines a mechanism 48 to accomplish that task, along with standard methods to group related 49 attributes together and to encode values that don't fit into 253 50 octets. 52 Table of Contents 54 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 55 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 56 2.1. Requirements Language . . . . . . . . . . . . . . . . . . 3 57 3. Problem Statement . . . . . . . . . . . . . . . . . . . . . . 4 58 4. RADIUS Type Extension . . . . . . . . . . . . . . . . . . . . 4 59 5. Formal Syntax . . . . . . . . . . . . . . . . . . . . . . . . 5 60 6. Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 61 7. Security Considerations . . . . . . . . . . . . . . . . . . . 11 62 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 11 63 9. Open Issues . . . . . . . . . . . . . . . . . . . . . . . . . 11 64 10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 11 65 10.1. Normative References . . . . . . . . . . . . . . . . . . . 11 66 10.2. Informative References . . . . . . . . . . . . . . . . . . 11 67 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 12 68 Intellectual Property and Copyright Statements . . . . . . . . . . 13 70 1. Introduction 72 The Remote Authentication Dial In User Service (RADIUS) Protocol 73 [RFC2865] defines two classes of attributes: standard and vendor- 74 specific. 76 Vendor-specific Attributes (VSAs) allow vendors (including Standards 77 Development Organizations (SDOs)) to define their own Attributes, 78 which may not be suitable for general usage; on the other hand, the 79 attributes that belong to the standard RADIUS space are controlled by 80 the IETF and are intended to be of general utility. These attributes 81 are defined in RFCs and are assigned type codes by the Internet 82 Assigned Number Authority (IANA)[IANA]. 84 The standard RADIUS attribute type code is 8 bits in length; hence 85 RADIUS is limited to 255 attribute types. Of these 255 attribute 86 types, 101 or so have been assigned. Types 192-223 are reserved for 87 experimental use; types 224-240 are reserved for implementation- 88 specific use; and values 241-255 are reserved and should not be used. 89 Therefore, as of this writing there are approximately 90 type codes 90 that can be allocated to new attributes. 92 RADIUS evolution must not be hindered by the inability to define new 93 standard RADIUS attributes. This document defines a mechanism to 94 extend the standard RADIUS Attribute space by defining a new scheme 95 to allocate attribute type codes. In addition, mechanisms are 96 defined to support both the grouping of related attributes and the 97 encoding of attribute values the length of which exceed the current 98 limit of 253 octets. 100 2. Terminology 102 Extended Attribute 103 The term used for the new RADIUS attributes that are defined in 104 this document 106 Extended Type 107 The type code assigned to an Extended Attribute 109 2.1. Requirements Language 111 In this document, several words are used to signify the requirements 112 of the specification. These words are often capitalized. The key 113 words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", 114 "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document 115 are to be interpreted as described in [RFC2119]. 117 An implementation is not compliant if it fails to satisfy one or more 118 of the must or must not requirements for the protocols it implements. 119 An implementation that satisfies all the MUST, MUST NOT, SHOULD, and 120 SHOULD NOT requirements for its protocols is said to be 121 "unconditionally compliant"; one that satisfies all the MUST and MUST 122 NOT requirements but not all the SHOULD or SHOULD NOT requirements 123 for its protocols is said to be "conditionally compliant". 125 3. Problem Statement 127 A fundamental requirement for extending the RADIUS attribute space is 128 the maintenance of backwards compatibility. This means that RADIUS 129 servers and proxies must be able to continue to decode and encode 130 messages even though they may not need to understand an attribute 131 that has been extended. More specifically, the scheme MUST be 132 compliant with the various RADIUS RFCs such as [RFC2865] and RADIUS 133 Accounting [RFC2866], etc. 135 The scheme SHOULD ensure that the size of the standard type space 136 extension is large enough that it will not be quickly exhausted or is 137 extensible in the event that it is. 139 Furthermore, the scheme SHOULD align with the Diameter NASReq 140 Application [RFC4005], thereby allowing the two AAA standards to 141 interoperate. 143 A need to group related RADIUS attributes together has become 144 prevalent in current work. Therefore, the proposed scheme SHOULD 145 provide a mechanism to group related attributes together. 147 In recent years, attribute sizes have been threatening the limit of 148 253 octets. Fragmentation of RADIUS attributes has always been 149 possible by extending the value into another attribute of the same 150 type; however, this approach does not always work (for example, if 151 more than one instance of an attribute occurs in the same RADIUS 152 packet). The proposed scheme SHOULD enable the transmission of 153 attributes longer than 253 octets. 155 4. RADIUS Type Extension 157 The solution described in this document takes the recommended VSA 158 format [RFC2865] as a model for the RADIUS Extended Attributes. 160 We allocate RADIUS the Vendor-Id of zero (0). In essence we are 161 assigning the IETF a Vendor-Id which is what other SDOs have done in 162 registering their own Vendor-Id. 164 Extended Attributes consist of an attribute header similar to that 165 recommended by RFC 2865 [RFC2865] for Vendor Specific Attributes 166 followed by a non-empty sequence of Type-Length-Value (TLV) triples 167 (see below). If an Extended Attribute contains more than one TLV 168 then all of the encapsulated TLVs MUST fit completely within the 169 Extended Attribute. 171 The Extended Attribute header is 7 octets in length and is encoded as 172 follows: 174 o The first octet contains the Type which is always Vendor-Specific 175 (26) 177 o The second octet contains the length (in octets) of the entire 178 Extended Attribute, including the Extended Attribute header and 179 all encapsulated TLVs 181 o The next 4 octets contain the Vendor-Id (0) 183 o The final octet of the header contains the More flag and Tag 184 field. If the one bit More flag is set (1) this indicates that 185 the encapsulated TLV is continued in the following Extended 186 Attribute; if the More flag is clear (0) then all of the 187 encapsulated TLVs fit into the current Extended Attribute. The 188 More flag MUST NOT be set if the Extended Attribute contains more 189 than one TLV. The Tag field is used to combine sets of related 190 Extended Attributes into simple groups. 192 TLVs are encoded as follows: 194 o The first octet is the Ext-Type field 196 o The second octet is the Ext-Length field, representing of the 197 entire TLV, including the length of the Ext-Type field (1 octet), 198 the length of the Ext-Length field itself (1 octet) and the length 199 of the Value field (1 or more octets) 201 5. Formal Syntax 203 This section describes the encoding scheme used for RADIUS Extended 204 Attributes. The basis of this encoding is the format recommended for 205 Vendor Specific Attributes in RFC 2865 [RFC2865]. 207 1 2 3 208 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 209 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 210 | Type (26) | Length | Vendor-Id (0) | 211 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 212 | Vendor-Id (0) |M| Tag | Ext-Type | 213 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 214 | Ext-Length | Value... 215 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 217 Type 219 26 for Vendor-Specific 221 Length 223 >=10 225 Vendor ID 227 The high-order octet is zero (0) and the low-order 3 octets are 228 zeros (0)s representing an extended IETF RADIUS attribute 230 M (More) 232 The More Flag is one (1) bit in length. When a value to be 233 transmitted exceeds 246 octets in length it is fragmented over two 234 or more Extended Attributes. If the More Flag is set (1), this 235 indicates that the Value field of the Extended Attribute contains 236 a fragment of a larger value, which is continued in the next 237 Extended Attribute of the same Ext-Type. When the More Flag is 238 clear (0), the final (or only) fragment of the value is contained 239 in the Extended Attribute. 241 Tag 243 The Tag field is 7 bits long and MUST be present. It is used to 244 group Extended Attributes. Extended Attributes with the same non- 245 zero value in the Tag field belong to the same group. A Tag value 246 of zero (0) indicates that the attribute is not grouped. A Tag 247 value of all ones (0x7F) is reserved. 249 Ext-Type 251 One (1) octet. Up-to-date values of the Ext-Type field are 252 specified in the most recent "Assigned Numbers" [IANA]. Values 253 XXXX-YYYY are reserved. 255 Ext-Length 257 >= 4. The length of the Extended Attribute, including the Ext- 258 Type, Ext-Length and Value fields. 260 Value 262 One or more octets. 264 6. Examples 266 Consider an attribute called Foo of type String. Foo is allocated an 267 Extended-Type by IANA of 10. The following figure shows the encoding 268 of Foo(0,4) = "Hello": 270 1 2 3 271 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 272 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 273 | Type (26) | Length | Vendor-Id | 274 | | (7 + 7 = 14) | (0) | 275 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 276 | Vendor-Id |M| Tag | Ext-Type | 277 | (0) |0| (0) | (10) | 278 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 279 | Ext-Length | Value | | | 280 | (2 + 5 = 7) | (H) | (e) | (l) | 281 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 282 | | | 283 | (l) | (o) | 284 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 286 Figure 1 288 Now consider another instantiation of the Foo Extended Attribute, 289 this one with a length of 251 octets. In this case the value is 290 fragmented over two Extended Attributes. The first 246 octets are 291 included in the first fragment which has the More bit set and the 292 remaining 5 octets appear in the second attribute. Figure 2 below 293 illustrates the encoding of the first 7 octets of the first Extended 294 Attribute (Foo(0,6) = "Hello W"), while Figure 3 shows how the second 295 attribute (Foo(246,250) = " end.") is encoded. 297 1 2 3 298 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 299 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 300 | Type (26) | Length | Vendor-Id | 301 | |(7 + 248 = 255)| (0) | 302 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 303 | Vendor-Id |M| Tag | Ext-Type | 304 | (0) |1| (0) | (10) | 305 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 306 | Ext-Length | Value | | | 307 |(2 + 246 = 248)| (H) | (e) | (l) | 308 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 309 | | | | | 310 | (l) | (o) | ( ) | (W) | 311 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 312 ... 314 Figure 2 316 1 2 3 317 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 318 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 319 | Type (26) | Length | Vendor-Id | 320 | | (7 + 7 = 14) | (0) | 321 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 322 | Vendor-Id |M| Tag | Ext-Type | 323 | (0) |0| (0) | (10) | 324 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 325 | Ext-Length | Value | | | 326 | (2 + 5 = 7) | ( ) | (e) | (n) | 327 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 328 | | | 329 | (d) | (.) | 330 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 332 Figure 3 334 The next example illustrates several of the features of Extended 335 Attributes: 337 o encapsulation of values greater than 253 octets in length 339 o grouping of related Extended Attributes using tags 341 o encapsulation of more than one TLV in a single Extended Attribute 343 Consider the following structure: 345 struct 346 Integer a; 347 String b; 348 Integer c; 349 endStruct 351 Element a is assigned an Extended Type of 20. Element b is assigned 352 an Extended Type of 25 and element c is assigned an Extended Type of 353 27. The following figure illustrates the coding where a(0,20) = 354 0xDEADDEAD, b(0,1) = "He", b(243,250) = "The end." and is of length 355 251 octets; and c(0,27) = 0x12345678. The attributes are grouped 356 together with TAG=42. For the sake of brevity, the value of b(3,241) 357 is omitted. 359 1 2 3 360 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 361 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 362 | Type (26) | Length | Vendor-Id | 363 | | (7 + 6 = 13) | (0) | 364 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 365 | Vendor-Id |M| Tag | Ext-Type | 366 | (0) |0| (42) | (20) | 367 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 368 | Ext-Length | Value | | | 369 | (2 + 4 = 6) | (0xDE) | (0xAD) | (0xDE) | 370 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 371 | | 372 | (0xAD) | 373 +-+-+-+-+-+-+-+-+ 375 1 2 3 376 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 377 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 378 | Type (26) | Length | Vendor-Id | 379 | |(7 + 248 = 255)| (0) | 380 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 381 | Vendor-Id |M| Tag | Ext-Type | 382 | (0) |1| (42) | (25) | 383 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 384 | Ext-Length | Value | | 385 |(2 + 246 = 248)| (H) | (e) | 386 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 387 ... 388 1 2 3 389 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 390 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 391 | Type (26) | Length | Vendor-Id | 392 | | (7+7+6=20) | (0) | 393 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 394 | Vendor-Id |M| Tag | Ext-Type | 395 | (0) |0| (42) | (25) | 396 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 397 | Ext-Length | Value | | | 398 | (2 + 5 = 7) | ( ) | (e) | (n) | 399 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 400 | | | Ext-Type | Ext-Length | 401 | (d) | (.) | (27) | (2 + 4 = 6) | 402 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 403 | Value | | | | 404 | (0x12) | (0x34) | (0x56) | (0x78) | 405 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 406 Figure 4 408 7. Security Considerations 410 TBD 412 8. IANA Considerations 414 This solution requires that the IETF be allocated Vendor-Type of zero 415 to the IETF. 417 It also requires that IANA set up a new registry for the RADIUS 418 Extended Attribute Types. 420 9. Open Issues 422 What is the numbering scheme for attributes that will be used by RFC 423 writers going forward? For example today we write user-name(1). 424 Going forward, will we write foo-bar(0,1)? 426 What is the numbering plan for these attributes? What range should 427 be reserved? 429 We have allocated 1 octet for Extended Type. Is that too little? 430 Note, if we run out the IETF can request another enterprise number. 432 10. References 434 10.1. Normative References 436 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 437 Requirement Levels", BCP 14, RFC 2119, March 1997. 439 [RFC2865] Rigney, C., Willens, S., Rubens, A., and W. Simpson, 440 "Remote Authentication Dial In User Service (RADIUS)", 441 RFC 2865, June 2000. 443 [RFC2866] Rigney, C., "RADIUS Accounting", RFC 2866, June 2000. 445 10.2. Informative References 447 [IANA] Internet Assigned Number Authority, "RADIUS TYPES", 448 August 2007, 449 . 451 [RFC4005] Calhoun, P., Zorn, G., Spence, D., and D. Mitton, 452 "Diameter Network Access Server Application", RFC 4005, 453 August 2005. 455 Authors' Addresses 457 Yong Li 458 Bridgewater Systems Corporation 459 303 Terry Fox Drive 460 Suite 100 461 Ottawa, Ontario K2K 3J1 462 Canada 464 Phone: +1 (613) 591-6655 465 Email: yongli@bridgewatersystems.com 466 URI: http://www.bridgewatersystems.com/ 468 Avi Lior 469 Bridgewater Systems Corporation 470 303 Terry Fox Drive 471 Suite 100 472 Ottawa, Ontario K2K 3J1 473 Canada 475 Phone: +1 (613) 591-6655 476 Email: avi@bridgewatersystems.com 477 URI: http://www.bridgewatersystems.com/ 479 Glen Zorn 480 NetCube 481 1310 East Thomas Street 482 #306 483 Seattle, WA 98102 484 United States of America 486 Phone: +1 (206) 377-9035 487 Email: glenzorn@comcast.net 489 Full Copyright Statement 491 Copyright (C) The IETF Trust (2007). 493 This document is subject to the rights, licenses and restrictions 494 contained in BCP 78, and except as set forth therein, the authors 495 retain all their rights. 497 This document and the information contained herein are provided on an 498 "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS 499 OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND 500 THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS 501 OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF 502 THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED 503 WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 505 Intellectual Property 507 The IETF takes no position regarding the validity or scope of any 508 Intellectual Property Rights or other rights that might be claimed to 509 pertain to the implementation or use of the technology described in 510 this document or the extent to which any license under such rights 511 might or might not be available; nor does it represent that it has 512 made any independent effort to identify any such rights. Information 513 on the procedures with respect to rights in RFC documents can be 514 found in BCP 78 and BCP 79. 516 Copies of IPR disclosures made to the IETF Secretariat and any 517 assurances of licenses to be made available, or the result of an 518 attempt made to obtain a general license or permission for the use of 519 such proprietary rights by implementers or users of this 520 specification can be obtained from the IETF on-line IPR repository at 521 http://www.ietf.org/ipr. 523 The IETF invites any interested party to bring to its attention any 524 copyrights, patents or patent applications, or other proprietary 525 rights that may cover technology that may be required to implement 526 this standard. Please address the information to the IETF at 527 ietf-ipr@ietf.org. 529 Acknowledgment 531 Funding for the RFC Editor function is provided by the IETF 532 Administrative Support Activity (IASA).