idnits 2.17.1 draft-ietf-msgtrk-trkstat-03.txt: ** The Abstract section seems to be numbered Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** Looks like you're using RFC 2026 boilerplate. This must be updated to follow RFC 3978/3979, as updated by RFC 4748. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- ** Missing expiration date. The document expiration date should appear on the first and last page. ** The document seems to lack a 1id_guidelines paragraph about Internet-Drafts being working documents. ** The document seems to lack a 1id_guidelines paragraph about the list of current Internet-Drafts -- however, there's a paragraph with a matching beginning. Boilerplate error? ** The document seems to lack a 1id_guidelines paragraph about the list of Shadow Directories -- however, there's a paragraph with a matching beginning. Boilerplate error? == No 'Intended status' indicated for this document; assuming Proposed Standard == The page length should not exceed 58 lines per page, but there was 9 longer pages, the longest (page 2) being 62 lines Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** The document seems to lack an Introduction section. ** The document seems to lack a Security Considerations section. (A line matching the expected section header was found, but with an unexpected indentation: ' Security considerations: discussed in section 4 of this memo.' ) ** The document seems to lack an IANA Considerations section. (See Section 2.2 of https://www.ietf.org/id-info/checklist for how to handle the case when there are no actions for IANA.) ** There is 1 instance of too long lines in the document, the longest one being 1 character in excess of 72. ** The abstract seems to contain references ([RFC-ESMTP], [RFC-DSN-STAT], [RFC-MIME], [DRAFT-MTRK-SMTPEXT], [RFC-MDN], [DRAFT-MTRK-MTQP], [RFC-DSN-SMTP]), which it shouldn't. Please replace those with straight textual mentions of the documents in question. == The 'Updates: ' line in the draft header should list only the _numbers_ of the RFCs which will be updated by this document (if approved); it should not include the word 'RFC' in the list. Miscellaneous warnings: ---------------------------------------------------------------------------- -- 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 2, 2001) is 8204 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) -- Missing reference section? 'RFC-DSN-SMTP' on line 397 looks like a reference -- Missing reference section? 'RFC-MDN' on line 426 looks like a reference -- Missing reference section? 'RFC-MIME' on line 430 looks like a reference -- Missing reference section? 'RFC-DSN-STAT' on line 401 looks like a reference -- Missing reference section? 'DRAFT-MTRK-MTQP' on line 380 looks like a reference -- Missing reference section? 'RFC-ESMTP' on line 409 looks like a reference -- Missing reference section? 'DRAFT-MTRK-SMTPEXT' on line 384 looks like a reference -- Missing reference section? 'DRAFT-MTRK-MODEL' on line 376 looks like a reference -- Missing reference section? 'RFC-ABNF' on line 388 looks like a reference -- Missing reference section? 'RFC-MSGFMT' on line 435 looks like a reference -- Missing reference section? 'RFC-HOSTREQ' on line 414 looks like a reference -- Missing reference section? 'RFC-KEYWORDS' on line 418 looks like a reference -- Missing reference section? 'RFC-RELATED' on line 439 looks like a reference -- Missing reference section? 'RFC-EMSSC' on line 405 looks like a reference -- Missing reference section? 'RFC-LMTP' on line 422 looks like a reference -- Missing reference section? 'RFC-DSN-REPT' on line 392 looks like a reference Summary: 11 errors (**), 0 flaws (~~), 3 warnings (==), 18 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Internet Draft E. Allman 3 draft-ietf-msgtrk-trkstat-03.txt Sendmail, Inc. 4 Valid for six months November 2, 2001 5 Updates: RFC 1893 7 The Message/Tracking-Status MIME Extension 9 11 Status of This Memo 13 This document is an Internet-Draft and is in full conformance 14 with all provisions of Section 10 of RFC2026. Internet-Drafts are 15 working documents of the Internet Engineering Task Force (IETF), its 16 areas, and its working groups. Note that other groups may also 17 distribute working documents as Internet-Drafts. 19 Internet-Drafts are draft documents valid for a maximum of six 20 months and may be updated, replaced, or obsoleted by other documents 21 at any time. It is inappropriate to use Internet-Drafts as reference 22 material or to cite them other than as "work in progress." 24 The list of current Internet-Drafts can be accessed at: 26 http://www.ietf.org/ietf/1id-abstracts.txt 28 The list of Internet-Draft Shadow Directories can be accessed at: 30 http://www.ietf.org/shadow.html 32 This document is a submission by the MSGTRK Working Group of the 33 Internet Engineering Task Force (IETF). Comments should be submitted 34 to the ietf-msgtrk@imc.org mailing list. An archive of the mailing 35 list may be found at 37 http://www.imc.org/ietf-msgtrk/index.html 39 Distribution of this memo is unlimited. 41 1. Abstract 43 Message Tracking is expected to be used to determine the 44 status of undelivered e-mail upon request. Tracking is used in 45 conjunction with Delivery Status Notifications [RFC-DSN-SMTP] and 46 Message Disposition Notifications [RFC-MDN]; generally, a message 47 tracking request will be issued only when a DSN or MDN has not been 48 received within a reasonable timeout period. 50 This memo defines a MIME [RFC-MIME] content-type for message 51 tracking status in the same spirit as RFC 1894, ``An Extensible 52 Message Format for Delivery Status Notifications'' [RFC-DSN-STAT]. 54 It is to be issued upon a request as described in ``Message 55 Tracking Query Protocol'' [DRAFT-MTRK-MTQP]. This memo defines 56 only the format of the status information. An extension to SMTP 57 [RFC-ESMTP] to label messages for further tracking and request 58 tracking status is defined in a separate memo [DRAFT-MTRK-SMTPEXT]. 60 2. Other Documents and Conformance 62 The model used for Message Tracking is described in [DRAFT- 63 MTRK-MODEL]. 65 Message tracking is intended for use as a "last resort" 66 mechanism. Normally, Delivery Status Notifications (DSNs) [RFC- 67 DSN-SMTP] and Message Disposition Notifications (MDNs) [RFC-MDN] 68 would provide the primary delivery status. Only if no response is 69 received from either of these mechanisms would Message Tracking be 70 used. 72 This document is based on [RFC-DSN-STAT]. Sections 1.3 73 (Terminology), 2.1.1 (General conventions for DSN fields), 2.1.2 74 ("*-type" subfields), and 2.1.3 (Lexical tokens imported from RFC 75 822) of [RFC-DSN-STAT] are included into this document by 76 reference. Other sections are further incorporated as described 77 herein. 79 Syntax notation in this document conforms to [RFC-ABNF]. 81 The following lexical tokens, defined in [RFC-MSGFMT], are 82 used in the ABNF grammar for MTSNs: atom, CHAR, comment, CR, CRLF, 83 DIGIT, LF, linear-white-space, SPACE, text. The date-time lexical 84 token is defined in [RFC-HOSTREQ]. 86 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL 87 NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" 88 in this document are to be interpreted as described in RFC 2119 89 [RFC-KEYWORDS]. 91 3. Format of a Message Tracking Status Notification 93 A Message Tracking Status Notification (MTSN) is intended to 94 be returned as the body of a Message Tracking request [DRAFT-MTRK- 95 MTQP]. The actual body MUST be a multipart/related [RFC-RELATED] 96 with type parameter of "message/tracking-status"; each subpart MUST 97 be of type "message/tracking-status" as described herein. The 98 multipart/related body can include multiple message/tracking-status 99 parts if an MTQP server chains requests to the next server; see 100 [DRAFT-MTRK-MODEL] and [DRAFT-MTRK-MTQP] for more information about 101 chaining. 103 3.1. The message/tracking-status content-type 105 The message/tracking-status content-type is defined as 106 follows: 108 MIME type name: message 109 MIME subtype name: tracking-status 110 Optional parameters: none 111 Encoding considerations: "7bit" encoding is sufficient and 112 MUST be used to maintain readability 113 when viewed by non-MIME mail readers. 114 Security considerations: discussed in section 4 of this memo. 116 The body of a message/tracking-status is modeled after 117 [RFC-DSN-STAT]. That body consists of one or more "fields" 118 formatted to according to the ABNF of RFC 2822 header "fields" 119 (see [RFC-MSGFMT]). The per-message fields appear first, 120 followed by a blank line. Following the per-message fields are 121 one or more groups of per-recipient fields. Each group of per- 122 recipient fields is preceded by a blank line. Note that there 123 will be a blank line between the final per-recipient field and 124 the MIME boundary, since one CRLF is necessary to terminate the 125 field, and a second is necessary to introduce the MIME boundary. 126 Formally, the syntax of the message/tracking-status content is 127 as follows: 129 tracking-status-content = 130 per-message-fields 1*( CRLF per-recipient-fields ) 132 The per-message fields are described in section 3.2. The per- 133 recipient fields are described in section 3.3. 135 3.1.1. General conventions for MTSN fields 137 Section 2.1.1 (General conventions for DSN fields) of 138 [RFC-DSN-STAT] is included herein by reference. Notably, the 139 definition of xtext is identical to that of that document. 141 3.1.2. *-type subfields 143 Section 2.1.2 (*-type subfields) of [RFC-DSN-STAT] is 144 included herein by reference. Notably, the definitions of 145 address-type, diagnostic-type, and MTA-name type are 146 identical to that of RFC 1894. 148 3.2. Per-Message MTSN Fields 150 Some fields of an MTSN apply to all of the addresses in a 151 single envelope. These fields may appear at most once in any 152 MTSN. These fields are used to correlate the MTSN with the 153 original message transaction and to provide additional 154 information which may be useful to gateways. 156 per-message-fields = 157 original-envelope-id-field CRLF 158 reporting-mta-field CRLF 159 arrival-date CRLF 160 *( extension-field CRLF ) 162 3.2.1. The Original-Envelope-Id field 164 The Original-Envelope-Id field is defined as in section 165 2.2.1 of [RFC-DSN-STAT]. This field is REQUIRED. 167 3.2.2. The Reporting-MTA field 169 The Reporting-MTA field is defined as in section 2.2.2 170 of [RFC-DSN-STAT]. This field is REQUIRED. 172 3.2.3. The Arrival-Date field 174 The Arrival-Date field is defined as in section 2.2.5 of 175 [RFC-DSN-STAT]. This field is REQUIRED. 177 3.3. Per-Recipient MTSN fields 179 An MTSN contains information about attempts to deliver a 180 message to one or more recipients. The delivery information for 181 any particular recipient is contained in a group of contiguous 182 per-recipient fields. Each group of per-recipient fields is 183 preceded by a blank line. 185 The syntax for the group of per-recipient fields is as 186 follows: 188 per-recipient-fields = 189 original-recipient-field CRLF 190 final-recipient-field CRLF 191 action-field CRLF 192 status-field CRLF 193 [ remote-mta-field CRLF ] 194 [ last-attempt-date-field CRLF ] 195 [ will-retry-until-field CRLF ] 196 *( extension-field CRLF ) 198 3.3.1. Original-Recipient field 200 The Original-Recipient field is defined as in section 201 2.3.1 of [RFC-DSN-STAT]. This field is REQUIRED. 203 3.3.2. Final-Recipient field 205 The required Final-Recipient field is defined as in 206 section 2.3.2 of [RFC-DSN-STAT]. This field is REQUIRED. 208 3.3.3. Action field 210 The required Action field indicates the action performed 211 by the Reporting-MTA as a result of its attempt to deliver 212 the message to this recipient address. This field MUST be 213 present for each recipient named in the MTSN. The syntax is 214 as defined in section 2.3.3 of RFC 1894. This field is 215 REQUIRED. 217 Valid actions are: 219 failed The message could not be delivered. If DSNs 220 have been enabled, a "failed" DSN should already 221 have been returned. 223 delayed The message is currently waiting in the MTA 224 queue for future delivery. Essentially, this 225 action means "the message is located, and it is 226 here." 228 delivered The message has been successfully delivered to 229 the final recipient. This includes "delivery" 230 to a mailing list exploder. It does not 231 indicate that the message has been read. No 232 further information is available; in particular, 233 the tracking agent SHOULD NOT attempt further 234 "downstream" tracking requests. 236 expanded The message has been successfully delivered to 237 the recipient address as specified by the 238 sender, and forwarded by the Reporting-MTA 239 beyond that destination to multiple additional 240 recipient addresses. However, these additional 241 addresses are not trackable, and the tracking 242 agent SHOULD NOT attempt further "downstream" 243 tracking requests. 245 relayed The message has been delivered into an 246 environment that does not support message 247 tracking. No further information is available; 248 in particular, the tracking agent SHOULD NOT 249 attempt further "downstream" tracking requests. 251 transferred The message has been transferred to another 252 MTRK-compliant MTA. The tracking agent SHOULD 253 attempt further "downstream" tracking requests 254 unless that information is already given in a 255 chaining response. 257 opaque The message may or may not have been seen by 258 this system. No further information is 259 available or forthcoming. 261 There may be some confusion between when to use 262 "expanded" versus "delivered". Whenever possible, "expanded" 263 should be used when the MTA knows that the message will be 264 sent to multiple addresses. However, in some cases the 265 delivery occurs to a program which, unknown to the MTA, 266 causes mailing list expansion; in the extreme case, the 267 delivery may be to a real mailbox that has the side effect of 268 list expansion. If the MTA cannot ensure that this delivery 269 will cause list expansion, it should set the action to 270 "delivered". 272 3.3.4. Status field 274 The Status field is defined as in RFC 1894 section 275 2.3.4. A new code is added to RFC 1893 [RFC-EMSSC], 276 "Enhanced Mail System Status Codes", 278 X.1.9 Message relayed to non-compliant mailer" 280 The mailbox address specified was valid, but the 281 message has been relayed to a system that does not 282 speak this protocol; no further information can be 283 provided. 284 A 2.1.9 Status field MUST be used exclusively with a 285 "relayed" Action field. This field is REQUIRED. 287 3.3.5. Remote-MTA field 289 The Remote-MTA field is defined as in section Reference 290 2.3.5 of [RFC-DSN-STAT]. This field MUST NOT be included if 291 no delivery attempts have been made or if the Action field 292 has value "opaque". If delivery to some agent other than an 293 MTA (for example, a Local Delivery Agent) then this field MAY 294 be included, giving the name of the host on which that agent 295 was contacted. 297 3.3.6. Last-Attempt-Date field 299 The Last-Attempt-Date field is defined as in section 300 Reference 2.3.7 of [RFC-DSN-STAT]. This field is REQUIRED if 301 any delivery attempt has been made and the Action field does 302 not have value "opaque", in which case it will specify when 303 it last attempted to deliver this message to another MTA or 304 other Delivery Agent. This field MUST NOT be included if no 305 delivery attempts have been made. 307 3.3.7. Will-Retry-Until field 309 The Will-Retry-Until field is defined as in section 310 Reference 2.3.8 of [RFC-DSN-STAT]. If the message is not in 311 the local queue or the Action field has the value ``opaque'' 312 the Will-Retry-Until field MUST NOT be included; otherwise, 313 this field SHOULD be included. 315 3.4. Extension fields 317 Future extension fields may be defined as defined in 318 section 2.4 of [RFC-DSN-STAT]. 320 3.5. Interaction Between MTAs and LDAs 322 A message that has been delivered to a Local Delivery Agent 323 (LDA) that understands message tracking (in particular, an LDA 324 speaking LMTP [RFC-LMTP] that supports the MTRK extension) 325 SHOULD pass the tracking request to the LDA. In this case, the 326 Action field for the MTA->LDA exchange will look the same as a 327 transfer to a compliant MTA; that is, a "transferred" tracking 328 status will be issued. 330 4. Security Issues 332 4.1. Forgery 334 Malicious servers may attempt to subvert message tracking 335 and return false information. This could result in misdirection 336 or misinterpretation of results. 338 4.2. Confidentiality 340 Another dimension of security is confidentiality. There 341 may be cases in which a message recipient is autoforwarding 342 messages but does not wish to divulge the address to which the 343 messages are autoforwarded. The desire for such confidentiality 344 will probably be heightened as "wireless mailboxes", such as 345 pagers, become more widely used as autoforward addresses. 347 MTA authors are encouraged to provide a mechanism which 348 enables the end user to preserve the confidentiality of a 349 forwarding address. Depending on the degree of confidentiality 350 required, and the nature of the environment to which a message 351 were being forwarded, this might be accomplished by one or more 352 of: 354 (a) respond with a "relayed" tracking status when a message is 355 forwarded to a confidential forwarding address, and 356 disabling further message tracking requests. 358 (b) declaring the message to be delivered, issuing a 359 "delivered" tracking status, re-sending the message to the 360 confidential forwarding address, and disabling further 361 message tracking requests. 363 The tracking algorithms MUST NOT allow tracking through 364 list expansions. When a message is delivered to a list, a 365 tracking request MUST respond with an "expanded" tracking status 366 and MUST NOT display the contents of the list. 368 5. Acknowledgements 370 Several individuals have commented on and enhanced this draft, 371 including Tony Hansen, Philip Hazel, Alexey Melnikov, Lyndon 372 Nerenberg, Chris Newman, Gregory Neil Shapiro, and Dan Wing. 374 6. References 376 [DRAFT-MTRK-MODEL] 377 T. Hansen, ``Message Tracking Model and Requirements.'' 378 draft-ietf-msgtrk-model-03.txt. November 2000. 380 [DRAFT-MTRK-MTQP] 381 T. Hansen, ``Message Tracking Query Protocol.'' draft-ietf- 382 msgtrk-mtqp-01.txt. November 2000. 384 [DRAFT-MTRK-SMTPEXT] 385 E. Allman, ``SMTP Service Extension for Message Tracking.'' 386 draft-ietf-msgtrk-smtpext-00.txt. December 2000. 388 [RFC-ABNF] 389 Crocker, D., Editor, and P. Overell, ``Augmented BNF for 390 Syntax Specifications: ABNF'', RFC 2234, November 1997. 392 [RFC-DSN-REPT] 393 G. Vaudreuil, ``The Multipart/Report Content Type for the 394 Reporting of Mail System Administrative Messages.'' RFC 1892. 395 January 1996. 397 [RFC-DSN-SMTP] 398 K. Moore, ``SMTP Service Extension for Delivery Status 399 Notifications.'' RFC 1891. January 1996. 401 [RFC-DSN-STAT] 402 K. Moore and G. Vaudreuil, ``An Extensible Message Format for 403 Delivery Status Notifications.'' RFC 1894. January 1996. 405 [RFC-EMSSC] 406 G. Vaudreuil, ``Enhanced Mail System Status Codes.'' RFC 407 1893. January 1996. 409 [RFC-ESMTP] 410 Rose, M., Stefferud, E., Crocker, D., Klensin, J. and N. 411 Freed, ``SMTP Service Extensions.'' STD 10, RFC 1869. 412 November 1995. 414 [RFC-HOSTREQ] 415 R. Braden (ed.), ``Requirements for Internet Hosts -- 416 Application and Support.'' STD 3, RFC 1123. October 1989. 418 [RFC-KEYWORDS] 419 S. Bradner, ``Key words for use in RFCs to Indicate 420 Requirement Levels.'' RFC 2119. March 1997. 422 [RFC-LMTP] 423 J. Myers, ``Local Mail Transfer Protocol.'' RFC 2033. 424 October 1996. 426 [RFC-MDN] 427 R. Fajman, ``An Extensible Message Format for Message 428 Disposition Notifications.'' RFC 2298. March 1998. 430 [RFC-MIME] 431 N. Freed and N. Borenstein, ``Multipurpose Internet Mail 432 Extensions (MIME) Part One: Format of Internet Message 433 Bodies.'' RFC 2045. November 1996. 435 [RFC-MSGFMT] 436 P. Resnick, editor, ``Internet Message Format.'' RFC 2822. 437 April 2001. 439 [RFC-RELATED] 440 E. Levinson, ``The MIME Multipart/Related Content-type.'' RFC 441 2387. August 1998. 443 7. Author's Address 445 Eric Allman 446 Sendmail, Inc. 447 6425 Christie Ave, 4th Floor 448 Emeryville, CA 94608 449 U.S.A. 451 E-Mail: eric@Sendmail.COM 452 Phone: +1 510 594 5501 453 Fax: +1 510 594 5429