Browse Prior Art Database

Internet Message Access Protocol (IMAP) - MULTIAPPEND Extension (RFC3502)

IP.com Disclosure Number: IPCOM000011811D
Original Publication Date: 2003-Mar-01
Included in the Prior Art Database: 2003-Mar-18
Document File: 8 page(s) / 13K

Publishing Venue

Internet Society Requests For Comment (RFCs)

Related People

M. Crispin: AUTHOR

Abstract

This document describes the multiappending extension to the Internet Message Access Protocol (IMAP) (RFC 3501). This extension provides substantial performance improvements for IMAP clients which upload multiple messages at a time to a mailbox on the server.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 20% of the total text.

Network Working Group                                         M. Crispin

Request for Comments: 3502                      University of Washington

Category: Standards Track                                     March 2003

    Internet Message Access Protocol (IMAP) - MULTIAPPEND Extension

Status of this Memo

   This document specifies an Internet standards track protocol for the

   Internet community, and requests discussion and suggestions for

   improvements.  Please refer to the current edition of the "Internet

   Official Protocol Standards" (STD 1) for the standardization state

   and status of this protocol.  Distribution of this memo is unlimited.

Copyright Notice

   Copyright (C) The Internet Society (2003).  All Rights Reserved.

Abstract

   This document describes the multiappending extension to the Internet

   Message Access Protocol (IMAP) (RFC 3501).  This extension provides

   substantial performance improvements for IMAP clients which upload

   multiple messages at a time to a mailbox on the server.

   A server which supports this extension indicates this with a

   capability name of "MULTIAPPEND".

Terminology

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",

   "SHOULD", "SHOULD NOT", "MAY", and "OPTIONAL" in this document are to

   be interpreted as described in [KEYWORDS].

Introduction

   The MULTIAPPEND extension permits uploading of multiple messages with

   a single command.  When used in conjunction with the [LITERAL+]

   extension, the entire upload is accomplished in a single

   command/response round trip.

   A MULTIAPPEND APPEND operation is atomic; either all messages are

   successfully appended, or no messages are appended.

   In the base IMAP specification, each message must be appended in a

   separate command, and there is no mechanism to "unappend" messages if

   an error occurs while appending.  Also, some mail stores may require

Crispin                     Standards Track                     [Page 1]

RFC 3502                    IMAP MULTIAPPEND                  March 2003

   an expensive "open/lock + sync/unlock/close" operation as part of

   appending; this can be quite expensive if it must be done on a

   per-message basis.

   If the server supports both LITERAL+ and pipelining but not

   MULTIAPPEND, it may be possible to get some of the performance

   advantages of MULTIAPPEND by doing a pipelined "batch" append.

   However, it will not work as well as MULTIAPPEND for the following

   reasons:

        1) Multiple APPEND commands, even as part of a pipelined batch,

        are non-atomic by definition.  There is no way to revert the

        mailbox to the state before the batch append in the event of an

        error.

        2) It may not be feasible for the ser...