In computing, the Internet Message Access Protocol ( IMAP ) is an Internet standard protocol used by email clients to retrieve email messages from a mail server over a TCP/IP connection. IMAP is defined by RFC 9051 .
66-408: IMAP was designed with the goal of permitting complete management of an email box by multiple email clients, therefore clients generally leave messages on the server until the user explicitly deletes them. An IMAP server typically listens on port number 143. IMAP over SSL/TLS ( IMAPS ) is assigned the port number 993. Virtually all modern e-mail clients and servers support IMAP, which along with
132-666: A Xerox Lisp Machine client and a TOPS-20 server. No copies of the original interim protocol specification or its software exist. Although some of its commands and responses were similar to IMAP2, the interim protocol lacked command/response tagging and thus its syntax was incompatible with all other versions of IMAP. The interim protocol was quickly replaced by the Interactive Mail Access Protocol (IMAP2), defined in RFC 1064 (in 1988) and later updated by RFC 1176 (in 1990). IMAP2 introduced
198-450: A serial number . Once assigned a number and published, an RFC is never rescinded or modified; if the document requires amendments, the authors publish a revised document. Therefore, some RFCs supersede others; the superseded RFCs are said to be deprecated , obsolete , or obsoleted by the superseding RFC. Together, the serialized RFCs compose a continuous historical record of the evolution of Internet standards and practices. The RFC process
264-459: A tree structure where the leaf nodes are any of a variety of single part content types and the non-leaf nodes are any of a variety of multipart types. The IMAP4 protocol allows clients to retrieve any of the individual MIME parts separately and also to retrieve portions of either individual parts or the entire message. These mechanisms allow clients to retrieve the text portion of a message without retrieving attached files or to stream content as it
330-450: A Historic protocol in 1993. The IMAP Working Group used RFC 1176 (IMAP2) rather than RFC 1203 (IMAP3) as its starting point. With the advent of MIME , IMAP2 was extended to support MIME body structures and add mailbox management functionality (create, delete, rename, message upload) that was absent from IMAP2. This experimental revision was called IMAP2bis; its specification was never published in non-draft form. An internet draft of IMAP2bis
396-455: A character string that identifies a user to whom mail will be sent or a location into which mail will be deposited. The term mailbox refers to that depository. In that sense, the terms mailbox and address can be used interchangeably. RFC 5322 defines a mailbox as follows: A mailbox receives mail. It is a 'conceptual entity' that does not necessarily pertain to file storage. It further exemplifies that some sites may choose to print mail on
462-526: A common set of terms such as "MUST" and "NOT RECOMMENDED" (as defined by RFC 2119 and 8174 ), augmented Backus–Naur form (ABNF) ( RFC 5234 ) as a meta-language, and simple text-based formatting, in order to keep the RFCs consistent and easy to understand. The RFC series contains three sub-series for IETF RFCs: BCP, FYI, and STD. Best Current Practice (BCP) is a sub-series of mandatory IETF RFCs not on standards track. For Your Information (FYI)
528-484: A mailbox are written by a mail delivery agent into the server's local mailbox, which, for remote users, is a remote mailbox that they own on that server. IMAP clients can copy, move, and delete messages in remote mailboxes. Mailboxes have a size limit, either determined implicitly by available memory, or after quota definitions for that mailbox or folders thereof. Besides administrative trivia, quota limits help mitigate email bomb attacks. An IMAP extension for quota
594-546: A mechanism for a client to ask the server to search for messages meeting a variety of criteria. This mechanism avoids requiring clients to download every message in the mailbox in order to perform these searches. Reflecting the experience of earlier Internet protocols, IMAP4 defines an explicit mechanism by which it may be extended. Many IMAP4 extensions to the base protocol have been proposed and are in common use. IMAP2bis did not have an extension mechanism, and POP now has one defined by RFC 2449 . IMAP IDLE provides
660-573: A new submission which will receive a new serial number. Standards track documents are further divided into Proposed Standard and Internet Standard documents. Only the IETF, represented by the Internet Engineering Steering Group (IESG), can approve standards-track RFCs. If an RFC becomes an Internet Standard (STD), it is assigned an STD number but retains its RFC number. The definitive list of Internet Standards
726-408: A printer and deliver the output to the addressee's desk, much like a traditional fax transmission. Access to a mailbox is controlled by a mailbox provider . Usually, anyone can send messages to a mailbox while only authenticated users can read or delete from their own mailboxes. An email client retrieves messages from one or more mailboxes. The database (file, directory, storage system) in which
SECTION 10
#1732798807396792-604: A set of extensions defined by the IETF Lemonade Profile for mobile devices: URLAUTH ( RFC 4467 ) and CATENATE ( RFC 4469 ) in IMAP, and BURL ( RFC 4468 ) in SMTP-SUBMISSION. In addition to this, Courier Mail Server offers a non-standard method of sending using IMAP by copying an outgoing message to a dedicated outbox folder. To cryptographically protect IMAP connections between
858-587: A similar fashion; BCP n refers to a certain RFC or set of RFCs, but which RFC or RFCs may change over time). An informational RFC can be nearly anything from April 1 jokes to widely recognized essential RFCs like Domain Name System Structure and Delegation ( RFC 1591 ). Some informational RFCs formed the FYI sub-series. An experimental RFC can be an IETF document or an individual submission to
924-471: A way for the mail server to notify connected clients that there were changes to a mailbox, for example because a new mail has arrived. POP provides no comparable feature, and email clients need to periodically connect to the POP server to check for new mail. While IMAP remedies many of the shortcomings of POP, this inherently introduces additional complexity. Much of this complexity (e.g., multiple clients accessing
990-591: Is a sub-series of informational RFCs promoted by the IETF as specified in RFC ; 1150 (FYI 1). In 2011, RFC 6360 obsoleted FYI 1 and concluded this sub-series. Standard (STD) used to be the third and highest maturity level of the IETF standards track specified in RFC 2026 (BCP 9). In 2011 RFC 6410 (a new part of BCP 9) reduced the standards track to two maturity levels. There are five streams of RFCs: IETF , IRTF , IAB , independent submission , and Editorial . Only
1056-407: Is all maintained on the user's local device. Thus, IMAP requires far more server side resources, incurring a significantly higher cost per mailbox. Unless the mail storage, indexing and searching algorithms on the server are carefully implemented, a client can potentially consume large amounts of server resources when searching massive mailboxes. IMAP4 clients need to maintain a TCP/IP connection to
1122-473: Is also possible to use non-ASCII characters. Some common sense is needed when creating new mailbox names, in order to avoid common pitfalls. In the words of RFC 5321, very wary of imposing restrictions: While the above definition for Local-part is relatively permissive, for maximum interoperability, a host that expects to receive mail SHOULD avoid defining mailboxes where the Local-part requires (or uses)
1188-408: Is another of the four first of what were ARPANET nodes and the source of early RFCs. The ARC became the first network information center ( InterNIC ), which was managed by Elizabeth J. Feinler to distribute the RFCs along with other network information. From 1969 until 1998, Jon Postel served as the RFC editor . On his death in 1998, his obituary was published as RFC 2468 . Following
1254-473: Is being fetched. Through the use of flags defined in the IMAP4 protocol, clients can keep track of message state: for example, whether or not the message has been read, replied to, or deleted. These flags are stored on the server, so different clients accessing the same mailbox at different times can detect state changes made by other clients. POP provides no mechanism for clients to store such state information on
1320-637: Is defined by RFC 9051 . An IMAP server typically listens on well-known port 143, while IMAP over SSL/TLS (IMAPS) uses 993. Incoming email messages are sent to an email server that stores messages in the recipient's email box. The user retrieves the messages with an email client that uses one of a number of email retrieval protocols. While some clients and servers preferentially use vendor-specific, proprietary protocols , almost all support POP and IMAP for retrieving email – allowing many free choice between many e-mail clients such as Pegasus Mail or Mozilla Thunderbird to access these servers, and allows
1386-413: Is documented in RFC 2026 ( The Internet Standards Process, Revision 3 ). The RFC production process differs from the standardization process of formal standards organizations such as International Organization for Standardization (ISO). Internet technology experts may submit an Internet Draft without support from an external institution. Standards-track RFCs are published with approval from
SECTION 20
#17327988073961452-414: Is formally specified by RFC 5322 and RFC 5321. It is often the username of the recipient on the mail server or in the destination domain. The local-part may be up to 64 characters long and, in theory, is case-sensitive. It can consist of either a sequence of valid characters (described below) or a quoted string, which can also contain spaces and special characters. Using SMTPUTF8 extension of SMTP it
1518-602: Is now typical of Internet Draft documents, the precursor step before being approved as an RFC. In December 1969, researchers began distributing new RFCs via the newly operational ARPANET. RFC 1 , titled "Host Software", was written by Steve Crocker of the University of California, Los Angeles (UCLA), and published on April 7, 1969. Although written by Steve Crocker, the RFC had emerged from an early working group discussion between Steve Crocker, Steve Carr, and Jeff Rulifson . In RFC 3 , which first defined
1584-502: Is obsoleted by various newer RFCs, but SMTP itself is still "current technology", so it is not in "Historic" status. However, since BGP version 4 has entirely superseded earlier BGP versions, the RFCs describing those earlier versions, such as RFC 1267 , have been designated historic. Status unknown is used for some very old RFCs, where it is unclear which status the document would get if it were published today. Some of these RFCs would not be published at all today; an early RFC
1650-562: Is submitted as plain ASCII text and is published in that form, but may also be available in other formats . For easy access to the metadata of an RFC, including abstract, keywords, author(s), publication date, errata, status, and especially later updates, the RFC Editor site offers a search form with many features. A redirection sets some efficient parameters, example: rfc:5000. The official International Standard Serial Number (ISSN) of
1716-492: Is the Official Internet Protocol Standards. Previously STD 1 used to maintain a snapshot of the list. When an Internet Standard is updated, its STD number stays the same, now referring to a new RFC or set of RFCs. A given Internet Standard, STD n , may be RFCs x and y at a given time, but later the same standard may be updated to be RFC z instead. For example, in 2007 RFC 3700
1782-558: Is the destination to which electronic mail messages are delivered. It is the equivalent of a letter box in the postal system. A mailbox is identified by an email address . However, not all email addresses correspond to a storage facility. The term pseudo-mailbox is sometimes used to refer to an address that does not correspond to a definitive mail store. Email forwarding may be applied to reach end recipients from such addresses. Electronic mailing lists and email aliases are typical examples. RFC 5321, defines an email address as
1848-575: Is up to the client. IMAP keywords should not be confused with proprietary labels of web-based e-mail services which are sometimes translated into IMAP folders by the corresponding proprietary servers. IMAP4 clients can create, rename, and delete mailboxes (usually presented to the user as folders) on the server, and copy messages between mailboxes. Multiple mailbox support also allows servers to provide access to shared and public folders. The IMAP4 Access Control List (ACL) Extension ( RFC 4314 ) may be used to regulate access rights. IMAP4 provides
1914-641: The IETF in the early 1990s took over responsibility for the IMAP2bis design. The IMAP WG decided to rename IMAP2bis to IMAP4 to avoid confusion. When using POP, clients typically connect to the e-mail server briefly, only as long as it takes to download new messages. When using IMAP4, clients often stay connected as long as the user interface is active and download message content on demand. For users with many or large messages, this IMAP4 usage pattern can result in faster response times. After successful authentication,
1980-692: The Internet Research Task Force (IRTF), and an independent stream from other outside sources. A new model was proposed in 2008, refined, and published in August 2009, splitting the task into several roles, including the RFC Series Advisory Group (RSAG). The model was updated in 2012. The streams were also refined in December 2009, with standards defined for their style. In January 2010, the RFC Editor function
2046-627: The IETF creates BCPs and RFCs on the standards track. The IAB publishes informational documents relating to policy or architecture. The IRTF publishes the results of research, either as informational documents or as experiments. Independent submissions are published at the discretion of the Independent Submissions Editor. Non-IETF documents are reviewed by the IESG for conflicts with IETF work. IRTF and independent RFCs generally contain relevant information or experiments for
Internet Message Access Protocol - Misplaced Pages Continue
2112-568: The IETF, and are usually produced by experts participating in IETF Working Groups , which first publish an Internet Draft. This approach facilitates initial rounds of peer review before documents mature into RFCs. The RFC tradition of pragmatic, experience-driven, after-the-fact standards authorship accomplished by individuals or small working groups can have important advantages over the more formal, committee-driven process typical of ISO and national standards bodies. Most RFCs use
2178-444: The IMAP server in order to be notified of the arrival of new mail. Notification of mail arrival is done through in-band signaling , which contributes to the complexity of client-side IMAP protocol handling somewhat. A private proposal, push IMAP , would extend IMAP to implement push e-mail by sending the entire message instead of just a notification. However, push IMAP has not been generally accepted and current IETF work has addressed
2244-633: The Internet at large not in conflict with IETF work. compare RFC 4846 , 5742 and 5744 . The Editorial Stream is used to effect editorial policy changes across the RFC series (see RFC 9280 ). The official source for RFCs on the World Wide Web is the RFC Datatracker. Almost any published RFC can be retrieved via a URL of the form https://datatracker.ietf.org/doc/html/rfc5000, shown for RFC 5000 . Every RFC
2310-755: The Internet community, other documents also called requests for comments have been published, as in U.S. Federal government work, such as the National Highway Traffic Safety Administration . The inception of the RFC format occurred in 1969 as part of the seminal ARPANET project. Today, it is the official publication channel for the Internet Engineering Task Force (IETF), the Internet Architecture Board (IAB), and – to some extent –
2376-421: The POP protocol provides a completely static view of the current state of the mailbox, and does not provide a mechanism to show any external changes in state during the session (the POP client must reconnect and re-authenticate to get an updated view). In contrast, the IMAP protocol provides a dynamic view, and requires that external changes in state, including newly arrived messages, as well as changes made to
2442-496: The Quoted-string form or where the Local-part is case-sensitive. The following characters may appear in a local-part without quoting: The names "postmaster", "abuse", and others correspond to well-known roles and functions, and are required to be valid. Some names are known to cause troubles, possibly because they conflict with names used internally by (some parts of) the mail software, including mail filters , or because
2508-436: The RFC Editor. A draft is designated experimental if it is unclear the proposal will work as intended or unclear if the proposal will be widely adopted. An experimental RFC may be promoted to standards track if it becomes popular and works well. The Best Current Practice subseries collects administrative documents and other texts which are considered as official rules and not only informational , but which do not affect over
2574-826: The RFC Series Approval Board (RSAB). It also established a new Editorial Stream for the RFC Series and concluded the RSOC. The role of the RSE was changed to the RFC Series Consulting Editor (RSCE). In September 2022, Alexis Rossi was appointed to that position. Requests for Comments were originally produced in non- reflowable text format. In August 2019, the format was changed so that new documents can be viewed optimally in devices with varying display sizes. The RFC Editor assigns each RFC
2640-451: The RFC series is 2070-1721. Not all RFCs are standards. Each RFC is assigned a designation with regard to status within the Internet standardization process. This status is one of the following: Informational , Experimental , Best Current Practice , Standards Track , or Historic . Once submitted, accepted, and published, an RFC cannot be changed. Errata may be submitted, which are published separately. More significant changes require
2706-696: The RFC series, Crocker started attributing the RFC series to the Network Working Group. Rather than being a formal committee, it was a loose association of researchers interested in the ARPANET project. In effect, it included anyone who wanted to join the meetings and discussions about the project. Many of the subsequent RFCs of the 1970s also came from UCLA, because UCLA is one of the first of what were Interface Message Processors (IMPs) on ARPANET. The Augmentation Research Center (ARC) at Stanford Research Institute , directed by Douglas Engelbart ,
Internet Message Access Protocol - Misplaced Pages Continue
2772-457: The client and server, IMAPS on TCP port 993 can be used, which utilizes SSL/TLS. As of January 2018, TLS is the recommended mechanism. Alternatively, STARTTLS can be used to encrypt the connection when connecting to port 143 after initially communicating over plaintext . This is an example IMAP connection as taken from RFC 3501 section 8 : Email box A mailbox (also electronic mailbox , email box , email mailbox , e-mailbox )
2838-437: The client stores the messages is called the local mailbox . Popular client–server protocols to retrieve messages are: IMAP and webmail can go along with each other more or less seamlessly. POP, if configured to leave messages on server, can be compatible with them. Internet message format, currently defined by RFC 5322, dates back to 1982 (RFC 822). That is what POP and IMAP clients expect to retrieve. Messages sent to
2904-422: The clients to be used with other servers . Email clients using IMAP generally leave messages on the server until the user explicitly deletes them. This and other characteristics of IMAP operation allow multiple clients to manage the same mailbox. Most email clients support IMAP in addition to Post Office Protocol (POP) to retrieve messages. IMAP offers access to the mail storage. Clients may store local copies of
2970-420: The command/response tagging and was the first publicly distributed version. IMAP3 is an extremely rare variant of IMAP. It was published as RFC 1203 in 1991. It was written specifically as a counter proposal to RFC 1176 , which itself proposed modifications to IMAP2. IMAP3 was never accepted by the marketplace. The IESG reclassified RFC1203 "Interactive Mail Access Protocol – Version 3" as
3036-399: The earlier POP3 (Post Office Protocol) are the two most prevalent standard protocols for email retrieval. Many webmail service providers such as Gmail and Outlook.com also provide support for both IMAP and POP3. The Internet Message Access Protocol is an application layer Internet protocol that allows an e-mail client to access email on a remote mail server . The current version
3102-648: The expiration of the original ARPANET contract with the U.S. federal government, the Internet Society, acting on behalf of the IETF, contracted with the Networking Division of the University of Southern California (USC) Information Sciences Institute (ISI) to assume the editorship and publishing responsibilities under the direction of the IAB. Sandy Ginoza joined USC/ISI in 1999 to work on RFC editing, and Alice Hagens in 2005. Bob Braden took over
3168-460: The form of a memorandum describing methods, behaviors, research, or innovations applicable to the working of the Internet and Internet-connected systems. It is submitted either for peer review or to convey new concepts, information, or, occasionally, engineering humor. The IETF adopts some of the proposals published as RFCs as Internet Standards . However, many RFCs are informational or experimental in nature and are not standards. The RFC system
3234-490: The global community of computer network researchers in general. The authors of the first RFCs typewrote their work and circulated hard copies among the ARPA researchers. Unlike the modern RFCs, many of the early RFCs were actual Requests for Comments and were titled as such to avoid sounding too declarative and to encourage discussion. The RFC leaves questions open and is written in a less formal style. This less formal style
3300-460: The mailbox by other concurrently connected clients, are detected and appropriate responses are sent between commands as well as during an IDLE command, as described in RFC 2177 . See also RFC 3501 section 5.2 which specifically cites "simultaneous access to the same mailbox by multiple agents". Usually all Internet e-mail is transmitted in MIME format, allowing messages to have
3366-409: The messages, but these are considered to be a temporary cache. IMAP was designed by Mark Crispin in 1986 as a remote access mailbox protocol, in contrast to the widely used POP, a protocol for simply retrieving the contents of a mailbox. It went through a number of iterations before the current VERSION 4rev2 (IMAP4), as detailed below: The original Interim Mail Access Protocol was implemented as
SECTION 50
#17327988073963432-470: The problem in other ways (see the Lemonade Profile for more information). Unlike some proprietary protocols which combine sending and retrieval operations, sending a message and saving a copy in a server-side folder with a base-level IMAP client requires transmitting the message content twice, once to SMTP for delivery and a second time to IMAP to store in a sent mail folder. This is addressed by
3498-689: The program were included the RFC Editor Model (Version 3) as defined in RFC 9280 , published in June 2022. Generally, the new model is intended to clarify responsibilities and processes for defining and implementing policies related to the RFC series and the RFC Editor function. Changes in the new model included establishing the position of the RFC Consulting Editor, the RFC Series Working Group (RSWG), and
3564-427: The recommendation to use source filtering to make DoS attacks more difficult ( RFC 2827 : " Network Ingress Filtering: Defeating Denial of Service Attacks which employ IP Source Address Spoofing ") is BCP 38 . A historic RFC is one that the technology defined by the RFC is no longer recommended for use, which differs from "Obsoletes" header in a replacement RFC. For example, RFC 821 ( SMTP ) itself
3630-429: The role of RFC project lead, while Joyce K. Reynolds continued to be part of the team until October 13, 2006. In July 2007, streams of RFCs were defined, so that the editing duties could be divided. IETF documents came from IETF working groups or submissions sponsored by an IETF area director from the Internet Engineering Steering Group . The IAB can publish its own documents. A research stream of documents comes from
3696-451: The same mailbox at the same time) is compensated for by server-side workarounds such as Maildir or database backends. The IMAP specification has been criticised for being insufficiently strict and allowing behaviours that effectively negate its usefulness. For instance, the specification states that each message stored on the server has a "unique id" to allow the clients to identify messages they have already seen between sessions. However,
3762-490: The server so if a single user accesses a mailbox with two different POP clients (at different times), state information—such as whether a message has been accessed—cannot be synchronized between the clients. The IMAP4 protocol supports both predefined system flags and client-defined keywords. System flags indicate state information such as whether a message has been read. Keywords, which are not supported by all IMAP servers, allow messages to be given one or more tags whose meaning
3828-432: The specification also allows these UIDs to be invalidated with almost no restrictions, practically defeating their purpose. From an administrative and resource point of view, the IMAP protocol can be viewed as an early implementation of cloud computing , as the intent and purpose of IMAP is to maintain your mailbox structure (content, folder structure, individual message state, etc) on the mail server, whereas with POP, this
3894-489: The underlying storage system chokes on them. A number of lists exist, for example on GitHub . RFC (identifier) A Request for Comments ( RFC ) is a publication in a series from the principal technical development and standards-setting bodies for the Internet , most prominently the Internet Engineering Task Force (IETF). An RFC is authored by individuals or groups of engineers and computer scientists in
3960-572: The wire data . The border between standards track and BCP is often unclear. If a document only affects the Internet Standards Process, like BCP 9, or IETF administration, it is clearly a BCP. If it only defines rules and regulations for Internet Assigned Numbers Authority (IANA) registries it is less clear; most of these documents are BCPs, but some are on the standards track. The BCP series also covers technical recommendations for how to practice Internet standards; for instance,
4026-449: Was an Internet Standard—STD 1—and in May 2008 it was replaced with RFC 5000 , so RFC 3700 changed to Historic , RFC 5000 became an Internet Standard, and as of May 2008 STD 1 is RFC 5000 . as of December 2013 RFC 5000 is replaced by RFC 7100 , updating RFC 2026 to no longer use STD 1. (Best Current Practices work in
SECTION 60
#17327988073964092-416: Was invented by Steve Crocker in 1969 to help record unofficial notes on the development of ARPANET . RFCs have since become official documents of Internet specifications , communications protocols , procedures, and events. According to Crocker, the documents "shape the Internet's inner workings and have played a significant role in its success," but are not widely known outside the community. Outside of
4158-493: Was moved to a contractor, Association Management Solutions, with Glenn Kowack serving as interim series editor. In late 2011, Heather Flanagan was hired as the permanent RFC Series Editor (RSE). Also at that time, an RFC Series Oversight Committee (RSOC) was created. In 2020, the IAB convened the RFC Editor Future Development program to discuss potential changes to the RFC Editor model. The results of
4224-458: Was often just that: a simple Request for Comments, not intended to specify a protocol, administrative procedure, or anything else for which the RFC series is used today. The general rule is that original authors (or their employers, if their employment conditions so stipulate) retain copyright unless they make an explicit transfer of their rights. An independent body, the IETF Trust, holds
4290-586: Was published by the IETF IMAP Working Group in October 1993. This draft was based upon the following earlier specifications: unpublished IMAP2bis.TXT document, RFC 1176 , and RFC 1064 (IMAP2). The IMAP2bis.TXT draft documented the state of extensions to IMAP2 as of December 1992. Early versions of Pine were widely distributed with IMAP2bis support (Pine 4.00 and later supports IMAP4rev1). An IMAP Working Group formed in
4356-413: Was standardized in 1997. Any kind of database can be used to store email messages. However, some standardization has resulted in several well-known file formats to allow access to a given mailbox by different computer programs . There are two kinds of widely used formats: A mailbox name is the first part of an email address, also known as local-part ; that is, the part before the @ symbol. Its format
#395604