Provided by Colasoft Co., Ltd.

IMAP3 ( Internet Message Access Protocol 3 )

Home > Protocols > IMAP3 Update: 2005-11-10 16:00:20    I have words to say about this protocol
On this page
SUMMARY
Protocol : Internet Message Access Protocol 3
Protocol suite : TCP/IP
Layer : Application Layer
Type : Application layer email protocol
Ports : 143 (TCP) IMAP2, IMAP4, IMAP 4rev1
220 (TCP) IMAP3
Related protocols : SMTP,
POP,
POP3,
TCP,
MIME
URI : imap
Working groups : Imap, Internet Message Access Protocol.
Imapext, Internet Message Access Protocol Extension.
DESCRIPTION
The intent of the Interactive Mail Access Protocol, Version 3 (IMAP3) is to allow a (possibly unreliable) workstation or similar machine to access electronic mail from a reliable mailbox server in an efficient manner.

Although different in many ways from POP2, IMAP3 may be thought of as a functional superset of POP2, and the POP2 RFC was used as a model for IMAP3. Like POP2, IMAP3 specifies a means of accessing stored mail and not of posting mail; this function is handled by a mail transfer protocol such as SMTP. A comparison with the DMSP protocol of PCMAIL can be found at the end of "System Model and Philosophy" section.

This protocol assumes a reliable data stream such as provided by TCP or any similar protocol. When TCP is used, the IMAP server listens on port 220. When CHAOS is used the IMAP server listens for the logical contact name "IMAP3".

Communication in IMAP is defined to be using the ASCII character interpretation of data. Communication using other conventions may be possible by the selection of features on some servers.


The IMAP3 protocol consists of a sequence of client commands and server responses to those commands, with extra information from the server data being sent asynchronously to and independent to the responses to client commands. Unlike most Internet protocols, commands and responses are tagged. That is, a command begins with a unique identifier (typically a short alphanumeric sequence such as a Lisp "gensym" function would generate e.g., A0001, A0002, etc.), called a tag. The response to this command is given the same tag from the server.

SOLICITED is the data sent by the server as the result of a client request. UNSOLICITED is the data sent by the server not as the result of a client request. The server may send unsolicited data at any time that would not fragment another piece of data on the same stream rendering it unintelligible. The server is contractually required, however, to return all data that is solicited by the client before the return of the completion signal for that command, i.e., all solicited data must be returned within the temporal extent of the request/completion acknowledgement wrapper. This does not, however, preclude the simultaneous processing of multiple requests by the client, it simply requires that the client be confident that it has all the requested data when a request finishes. This allows the implementation of both synchronous and asynchronous clients.

Solicited data is identified by the tag of the initial request by the client. Unsolicited data is identified by the special reserved tag of "*". There is another special reserved tag, "+", discussed below.

Note: the tagging of SOLICITED data is only permitted for a selected server version other than 2.0.

No assumptions concerning serial or monolithic processing by the server can be made by a correct client. The server is at liberty to process multiple requests by the same client in any order. This allows servers to process costly searches over mailboxes on slow backing storage media in the background, while still preserving interactive performance. Clients can, however, assume the serialization of the request/data/completion behavior mentioned above.

Operation principle
When a connection is opened the server sends an unsolicited OK response as a greeting message and then waits for commands. When commands are received the server acts on them and responds with responses, often interspersed with data.

The client opens a connection, waits for the greeting, then sends a LOGIN command with user name and password arguments to establish authorization. Following an OK response from the server, the client then sends a SELECT command to access the desired mailbox. The user's default mailbox has a special reserved name of "INBOX" which is independent of the operating system that the server is implemented on. The server will generally send a list of valid flags, number of messages, and number of messages arrived since last access for this mailbox as solicited data, followed by an OK response. The client may terminate access to this mailbox and access a different one with another SELECT command.

Because the SELECT command affects the state of the server in a fundamental way, the server is required to process all outstanding commands for any given mailbox before sending the OK tag for the SELECT command. Thus, the client will always know that all responses before an OK SELECT response will refer to the old mailbox and all responses following it will apply to the new mailbox.

Because, in the real world, local needs or experimental work will dictate that servers will support both supersets of the defined behavior and incompatible changes, servers will support a SELECT.VERSION command and a SELECT.FEATURES command, the purpose of which is to allow clients to select the overall behavior and specific features that they want from a server. The default behavior of any server is to process commands and to have interaction syntax the same as is specified by IMAP2. A server may not behave in any other manner unless the SELECT.VERSION or SELECT.FEATURES commands are used to select different behavior.

Over time, when groups of generally useful changes to the current, default behavior of the server are found, these will be collected together and incorporated in such a way that all of the features can be selected simply by selecting a particular major version number of the protocol. It should be noted that the version numbers (both major and minor) selected by the SELECT.VERSION command denote versions of the IMAP protocol, not versions of the server per se. Thus, although in general changes to the protocol specification will be made in such a way that they are upwards compatible, this cannot be guaranteed. No client should rely on tests of the form "if major_version > 2 then..." being valid for all protocol versions, since incompatible changes might be made in the future.

The client reads mailbox information by means of FETCH commands. The actual data is transmitted via the solicited data mechanism (that is, FETCH should be viewed as poking the server to include the desired data along with any other data it wishes to transmit to the client).

There are three major categories of data which may be fetched.
  • The first category is that data which is associated with a message as an entity in the mailbox. There are presently three such items of data: All of the first category data can be fetched by using the macro-fetch word "FAST"; that is, "FAST" expands to "(FLAGS INTERNALDATE RFC 822.SIZE)".
    • internal date
      The internal date is the date and time that the message was placed in the mailbox.


    • RFC 822 size
      The RFC 822 size is subject to deletion in the future; it is the size in bytes of the message, expressed as an RFC 822 text string. Current clients only use it as part of a status display line.


    • Flags
      The flags are a list of status flags associated with the message.


  • The second category is that data which describes the composition and delivery information of a message; that is, information such as the message sender, recipient lists, message-ID, subject, etc. This is the information which is stored in the message header in RFC 822 format message and is traditionally called the "envelope". IMAP3 defines a structured and unambiguous representation for the envelope which is particularly nice for Lisp-based parsers.


  • The third category is that data which is intended for direct human viewing. The present RFC 822 based IMAP3 defines three such items: RFC 822.HEADER, RFC 822.TEXT, and RFC 822 (the latter being the two former appended together in a single text string). Fetching "RFC 822" is equivalent to typing the RFC 822 representation of the message as stored on the mailbox without any filtering or processing.


Typically, a client will "FETCH ALL" for some or all of the messages in the mailbox for use as a presentation menu, and when the user wishes to read a particular message will "FETCH RFC 822.TEXT" to get the message body. A more primitive client could, of course, simply "FETCH RFC 822" a la POP2-type functionality.

The client can alter certain data by means of a STORE command. As an example, a message is deleted from a mailbox by a STORE command which includes the DELETED flag as one of the flags being set.

Other client operations include copying a message to another mailbox (COPY command), permanently removing deleted messages (EXPUNGE command), checking for new messages (CHECK command), and searching for messages which match certain criteria (SEARCH command).

The client terminates the session with the LOGOUT command. The server returns a "BYE" followed by an "OK".


Commands and Responses

CommandsDescription
tag NOOPReturns an OK to the client.
tag LOGIN user passwordIdentifies the user to the server and carries the password authenticating this user.
tag LOGOUTIndicates the client is done with the session.
tag SELECT mailboxSelects a particular mailbox.
tag CHECKForces a check for new messages and a rescan of the mailbox for internal change for those implementations which allow multiple simultaneous read/write access to the same mailbox
tag EXPUNGERemoves permanently all messages with the DELETED flag set in its flags from the mailbox.
tag COPY sequence mailboxCopies the specified message(s) to the specified destination mailbox.
tag FETCH sequence dataRetrieves data associated with a message in the mailbox.
tag STORE sequence data valueAlters the values associated with particular keys for a message in the mailbox.
tag SEARCH criteriaSearches the mailbox for messages which match the given set of criteria.
tag BBOARD bboardThe BBOARD command is equivalent to SELECT, except that its argument is a bulletin board (BBoard) name.
tag FIND (BBOARDS / MAILBOXES) patternAccepts as arguments the keywords BBOARDS or MAILBOXES and a pattern which specifies some set of BBoard/mailbox names which are usable by the BBOARD/SELECT command.
tag READONLYIndicates that the client wishes to make the mailbox read-only.
tag READWRITEIndicates that the client wishes to make the mailbox read-write.
tag SELECT.VERSION (major_version minor_version)Indicates that the client wishes to select certain behavior on the part of the server.
tag SELECT.FEATURES featuresIndicates that the client wishes to select certain specific features on the part of the server.
tag SUPPORTED.VERSIONSSolicits from the server a SUPPORTED.VERSIONS message, which encapsulates information about which versions and features the server supports.
tag FLAGSSolicits a FLAGS response from the server.
tag SET.FLAGSDefines the user specifiable flags for this mailbox.
Responses (can be either solicited or unsolicited)
*/tag FLAGS flag_listThe list of flags which are applicable for this mailbox.
*/tag SEARCH (numbers) (criteria)The number(s) refer to those messages which match the search criteria.
*/tag EXISTSThe number of messages exists in the mailbox.
*/tag RECENTThe number of messages have arrived since the last time this mailbox was selected with the SELECT command or equivalent.
*/tag EXPUNGEThe message number has been permanently removed from the mailbox.
*/tag STORE dataFunctionally equivalent to FETCH, only it is sent by the server when the state of a mailbox changes.
*/tag FETCH dataThe principle means by which data about a message is sent to the client.
*/tag BBOARD bboard_nameA name that can be supplied to the BBOARD command so as to select the appropriate bboard.
*/tag MAILBOX non_inbox_mailbox_nameA name that can be supplied to the SELECT command so as to select the appropriate mailbox.
*/tag SUPPORTED.VERSIONS version_dataA response to the SUPPORTED.VERSIONS or, in its unsolicited form, to indicate the dynamic addition or removal of support for features or protocol versions.
*/tag READONLYIndicates that the mailbox is read-only.
*/tag READWRITEIndicates that the mailbox is read-write.
*/tag OK textIdentifies successful completion of the command with the indicated tag in solicited form or the server is alive in unsolicited form.
*/tag NO textIdentifies successful completion of the command with the indicated tag in solicited form or some operational error at the server which cannot be traced to any protocol command in unsolicited form.
*/tag BAD textIndicates faulty protocol received from the client and indicates a bug in solicited form or some protocol error at the server which cannot be traced to any protocol command in unsolicited form.
*/tag BYE textIndicates that the server is about to close the connection.
Responses (can only be solicited)
tag COPY message_number
Responses (can only be unsolicited)
+ textIndicates that the server is ready to accept the text of a literal from the client.



IMAP3 Features
  • Required Features
    • AUTO.SET.SEEN
      This feature is provided for the use of clients that are unable to pipeline their commands effectively and communicate over high latency connections.


    • TAGGED.SOLICITED
      This feature is provided so as to smooth the transition from IMAP2 to IMAP3.


  • Recommended Features
    • EIGHT.BIT.TRANSPARENT
      This feature is provided for the purpose of supporting national character sets within messages, encoded languages such as Japanese Kanji characters and also of binary data, such as programs, graphics and sound.


    • NEW.MAIL.NOTIFY
      This feature is provided to allow clients to switch off any periodic polling strategy that they may use to look for new mail.


    • SEND
      The SEND command instructs the server to send a message, rather than requiring the client to use its own, local message sending capability.


    • ADD.MESSAGE
      This feature is provided so that clients can easily add mail to specific mailboxes.


    • RENUMBER
      The RENUMBER command will reorder the assignment of message numbers to the messages in the mailbox.


    • ENCODING
      This feature is supplied so as to allow support for emergent multi-part and multi-media mail standards.


    • INDEXABLE.FIELDS
      This feature is provided so as to allow resource-limited clients to read very large messages and also to allow clients to improve interactive response for the reading of large messages by fetching the first "screen full" of data to display immediately and fetching the rest of the message in the background.


    • SET.EOL
      This feature is provided because frequently clients and servers might have end-of-line conventions other than the CRLF.


Top of Page

EXAMPLES
IMAP3 session


The following is a transcript of an actual IMAP3 session. Server output is identified
by "S:" and client output by "U:". In cases where lines were too long to fit within
the boundaries of this document, the line was continued on the next line preceded
by a tab.

S: * OK SUMEX-AIM.Stanford.EDU Interactive Mail Access Protocol
III Service 6.1(349) at Mon, 14 May 90 14:58:30 PDT
U: a001 SUPPORTED.VERSIONS
S: * SUPPORTED.VERSIONS ((2 0 ) (3 0 EIGHT.BIT.TRANSPARENT
AUTO.SET.SEEN TAGGED.SOLICITED))

S: A001 Supported Versions returned.
U: a002 SELECT.VERSION (3 0)
S: a002 OK Version 3.0 Selected.
U: a003 SELECT.FEATURES TAGGED.SOLICITED
S: a003 OK Features selected.
U: a004 login crispin secret
S: a004 OK User CRISPIN logged in at Thu, 9 Jun 90 14:58:42 PDT,
job 76
U: a005 select inbox
S: a005 FLAGS (Bugs SF Party Skating Meeting Flames Request AI
Question Note XXXX YYYY Answered Flagged Deleted
Seen)
S: a005 16 EXISTS
S: a005 0 RECENT
S: a006 OK Select complete
U: a006 fetch 16 all
S: a006 16 Fetch (Flags (Seen) InternalDate " 9-Jun-88 12:55:
RFC822.Size 637 Envelope ("Sat, 4 Jun 88 13:27:11 PDT"
"INFO-MAC Mail Message" (("Larry Fagan" NIL "FAGAN"
"SUMEX-AIM.Stanford.EDU" NIL)) (("Larry Fagan" NIL "FAGAN"
"SUMEX-AIM.Stanford.EDU" NIL)) (("Larry Fagan" NIL "FAGAN"
"SUMEX-AIM.Stanford.EDU" NIL)) ((NIL NIL "rindflEISCH"
"SUMEX-AIM.Stanford.EDU" NIL)) NIL NIL NIL
"<12403828905.13.FAGAN@SUMEX-AIM.Stanford.EDU>"))
S: a006 OK Fetch completed
U: a007 fetch 16 rfc822
S: a007 16 Fetch (RFC822 {637}
S: Mail-From: RINDFLEISCH created at 9-Jun-88 12:55:43
S: Mail-From: FAGAN created at 4-Jun-88 13:27:12
S: Date: Sat, 4 Jun 88 13:27:11 PDT
S: From: Larry Fagan
S: To: rindflEISCH@SUMEX-AIM.Stanford.EDU
S: Subject: INFO-MAC Mail Message
S: Message-ID: <12403828905.13.FAGAN@SUMEX-AIM.Stanford.EDU>
S: ReSent-Date: Thu, 9 Jun 88 12:55:43 PDT
S: ReSent-From: TC Rindfleisch
S: ReSent-To: Yeager@SUMEX-AIM.Stanford.EDU,
Crispin@SUMEX-AIM.Stanford.EDU
S: ReSent-Message-ID:
<12405133897.80.RINDFLEISCH@SUMEX-AIM.Stanford.EDU>
S:
S: The file is usenetv4-55.arc ...
S: Larry
S: -------
S: )
S: a007 OK Fetch completed
U: a008 logout
S: a008 BYE UNIX IMAP III server terminating connection

S: a008 OK SUMEX-AIM.Stanford.EDU Interim Mail Access Protocol
Service logout


Top of Page


PROTOCOL RELATIONS
Parent layer
Child layer
TCP
IMAP3
Top of Page

GLOSSARY
Access
(v.)
*To use. For example, programs can access memory , which means they read data from or write data to main memory. A user can access files, directories, computers, or peripheral devices.
*More specifically, access often means to read data from or write data to a mass storage device. The time it takes to locate a single byte of information on a mass-storage device is called the access time.
*To visit a Web site.

(n.)
*The act of reading data from or writing data to a storage device.
*A privilege to use computer information in some manner. For example, a user might be granted read access to a file, meaning that the user can read the file but cannot modify or delete it. Most operating systems have several different types of access privileges that can be granted or denied to specific users or groups of users.
*When capitalized as Access, short for Microsoft Access.

Authorization
The process of identifying an individual, usually based on a username and password. In security systems, authentication is distinct from authorization , which is the process of giving individuals access to system objects based on their identity. Authentication merely ensures that the individual is who he or she claims to be, but says nothing about the access rights of the individual.

Client
Clinet is a program which requests services of another program. It is a client part of a client-server architecture. Typically, a client is an application that runs on a personal computer or workstation and relies on a server to perform some operations. For example, an e-mail client is an application that enables you to send and receive e-mail.

Command
Command is an instruction to a computer or device to perform a specific task. Commands come in different forms. They can be: special words (keywords) that a program understands, function keys
choices in a menu and buttons or other graphical objects on your screen

Every program that interacts with people responds to a specific set of commands. The set of commands and the syntax for entering them is called the user interface and varies from one program to another.

Data
* Distinct pieces of information, usually formatted in a special way. All software is divided into two general categories: data and programs. Programs are collections of instructions for manipulating data. Data can exist in a variety of forms -- as numbers or text on pieces of paper, as bits and bytes stored in electronic memory, or as facts stored in a person's mind. Strictly speaking, data is the plural of datum, a single piece of information. In practice, however, people use data as both the singular and plural form of the word.

* The term data is often used to distinguish binary machine-readable information from textual human-readable information. For example, some applications make a distinction between data files (files that contain binary data) and text files (files that contain ASCII data).

* In database management systems, data files are the files that store the database information, whereas other files, such as index files and data dictionaries, store administrative information, known as metadata.

IMAP
IMAP 9Internet Message Access Protocol) is a protocol for retrieving e-mail messages. The latest version, IMAP4, is similar to POP3 but supports some additional features. For example, with IMAP4, you can search through your e-mail messages for keywords while the messages are still on mail server. You can then choose which messages to download to your machine.

Internet
A global network connecting millions of computers. More than 100 countries are linked into exchanges of data, news and opinions.

Unlike online services, which are centrally controlled, the Internet is decentralized by design. Each Internet computer, called a host, is independent. Its operators can choose which Internet services to use and which local services to make available to the global Internet community. Remarkably, this anarchy by design works exceedingly well.

There are a variety of ways to access the Internet. Most online services, such as America Online, offer access to some Internet services. It is also possible to gain access through a commercial Internet Service Provider (ISP).

Login
Alternative spellings for login are log in and log on.

Mailbox
Mailbox is an area in memory or on a storage device where e-mail is placed. In e-mail systems, each user has a private mailbox. When the user receives e-mail, the mail system automatically puts it in the mailbox.

The mail system allows you to scan mail that is in your mailbox, copy it to a file, delete it, print it, or forward it to another user. If you want to save mail, it is a good idea to copy it to a file, because files tend to be more stable than mailboxes.

OS
The most important program that runs on a computer. Every general-purpose computer must have an operating system to run other programs. Operating systems perform basic tasks, such as recognizing input from the keyboard, sending output to the display screen, keeping track of files and directories on the disk, and controlling peripheral devices such as disk drives and printers.

POP
POP (Post Office Protocol) is a protocol used to retrieve e-mail from a mail server. Most e-mail applications (sometimes called an e-mail client) use the POP protocol, although some can use the newer IMAP (Internet Message Access Protocol). There are two versions of POP. The first, called POP2, became a standard in the mid-80's and requires SMTP to send messages. The newer version, POP3, can be used with or without SMTP.

Password
A secret series of characters that enables a user to access a file, computer, or program. On multi-user systems, each user must enter his or her password before the computer will respond to commands. The password helps ensure that unauthorized users do not access the computer. In addition, data files and programs may require a password.

RFC
RFC (Requests for Comments) document series is a set of technical and organizational notes about the Internet (originally the ARPANET), beginning in 1969(when the Internet was the ARPANET). An Internet Document can be submitted to the IETF by anyone, but the IETF decides if the document becomes an RFC. Eventually, if it gains enough interest, it may evolve into an Internet standard.

Each RFC is designated by an RFC number. Once published, an RFC never changes. Modifications to an original RFC are assigned a new RFC number.

Server
A computer or device on a network that manages network resources. For example, a file server is a computer and storage device dedicated to storing files. Any user on the network can store files on the server. A database server is a computer system that processes database queries. Servers are often dedicated, meaning that they perform no other tasks besides their server tasks. On multiprocessing operating systems, however, a single computer can execute several programs at once. A server in this case could refer to the program that is managing resources rather than the entire computer.

TCP
TCP (Transmission Control Protocol) is one of the main protocols in TCP/IP networks. TCP is one of the main protocols in TCP/IP networks. Whereas the IP protocol deals only with packets, TCP enables two hosts to establish a connection and exchange streams of data. TCP guarantees delivery of data and also guarantees that packets will be delivered in the same order in which they were sent.

Tag
(n) A command inserted in a document that specifies how the document, or a portion of the document, should be formatted. Tags are used by all format specifications that store documents as text files. This includes SGML and HTML.

(v) To mark a section of a document with a formatting command.

Workstation
*A type of computer used for engineering applications (CAD/CAM), desktop publishing, software development, and other types of applications that require a moderate amount of computing power and relatively high quality graphics capabilities.

* In networking, workstation refers to any computer connected to a local-area network. It could be a workstation or a personal computer.

Top of Page

REFERENCES
Related links
                IMAP4 capabilities
RFCs:
[RFC 1176] INTERACTIVE MAIL ACCESS PROTOCOL - VERSION 2.
                Obsoletes: RFC 1064.
[RFC 1203] INTERACTIVE MAIL ACCESS PROTOCOL - VERSION 3.
                Obsoletes: RFC 1064.
[RFC 1731] IMAP4 Authentication Mechanisms.
[RFC 1732] IMAP4 COMPATIBILITY WITH IMAP2 AND IMAP2BIS.
[RFC 1733] DISTRIBUTED ELECTRONIC MAIL MODELS IN IMAP4.
[RFC 2061] IMAP4 COMPATIBILITY WITH IMAP2BIS.
[RFC 2062] Internet Message Access Protocol - Obsolete Syntax.
[RFC 2086] IMAP4 ACL extension.
[RFC 2087] IMAP4 QUOTA extension.
[RFC 2088] IMAP4 non-synchronizing literals.
[RFC 2177] IMAP4 IDLE command.
                Defines the IMAP IDLE capability.
[RFC 2180] IMAP4 Multi-Accessed Mailbox Practice.
[RFC 2192] IMAP URL Scheme.
                Defines URI scheme imap.
[RFC 2193] IMAP4 Mailbox Referrals.
[RFC 2195] IMAP/POP AUTHorize Extension for Simple Challenge/Response.
                Obsoletes: RFC 2095.
[RFC 2221] IMAP4 Login Referrals.
[RFC 2342] IMAP4 Namespace.
[RFC 2359] IMAP4 UIDPLUS extension.
[RFC 2595] Using TLS with IMAP, POP3 and ACAP.
[RFC 2683] IMAP4 Implementation Recommendations.
[RFC 2971] IMAP4 ID extension.
[RFC 3348] The Internet Message Action Protocol (IMAP4) Child Mailbox Extension.
[RFC 3501] INTERNET MESSAGE ACCESS PROTOCOL - VERSION 4rev1.
                Defines IMAP4rev1.
                Obsoletes: RFC 2060.
[RFC 3502] Internet Message Access Protocol (IMAP) - MULTIAPPEND Extension.
                Defines the IMAP MULTIAPPEND capability.
[RFC 3503] Message Disposition Notification (MDN) profile for Internet Message Access Protocol (IMAP).
[RFC 3516] IMAP4 Binary Content Extension.
[RFC 3691] Internet Message Access Protocol (IMAP) UNSELECT command.
                Defines the IMAP UNSELECT capability and UNSELECT command.
                
Obsolete RFCs:
[RFC 1064] INTERACTIVE MAIL ACCESS PROTOCOL - VERSION 2.
                Obsoleted by: RFC 1176, RFC 1203.
                Defines IMAP2.
[RFC 1730] INTERNET MESSAGE ACCESS PROTOCOL - VERSION 4.
                Obsoleted by: RFC 2060, RFC 2061.
                Defines IMAP4.
[RFC 2060] INTERNET MESSAGE ACCESS PROTOCOL - VERSION 4rev1.
                Obsoleted by: RFC 3501.
                Defines IMAP4rev1.
                Obsoletes: RFC 1730.
[RFC 2095] IMAP/POP AUTHorize Extension for Simple Challenge/Response.
                Obsoleted by: RFC 2195.
                


Top of Page

OTHER PROTOCOLS OF TCP/IP SUITE
AARP   RRP   RTP Video   RTP Audio   RTP   COPS   Gopher   HSRP   ICP   MPLS   IEEE 802.2   CIP   FTP - Data   FTP - Ctrl   IMAPS   IP Fragment   LDAPS   PUP   MSSQL   RSH   SQL   POP3s   RTELNET   RSVP   STP   VLAN   MSN   H.323   MSRDP   HTTPS   WINS   LPD   GTP   ICMPv6   POP   TELNET   H.225   VRRP   PIM   RARP   SAP   OSPF   RLOGIN   SCTP   SIP   RTCP   PPPoE   Mobile IP   IMAP3   WhoIs   SLP   NCP   PPTP   MGCP   LDAP   L2TP   Kerberos   IPv6   GRE   Ethernet SNAP   AFP   CIFS   IEEE 802.3   Finger   NBDGM   NetBEUI   NBSSN   ESP   EIGRP   EGP   DHCP   CGMP   CDP   BOOTP   AH   NBNS   EthernetII   ICQ   PPP   ARP   RIP   IPX   IGRP   IGMP   SSH   RPC   NetBIOS   TFTP   SNMP   SNA   SMB   RADIUS   NTP   NNTP   UDP   TCP   BGP   DNS   SOCKS   IMAP   RTSP   NFS   ICMP   IP   FTP   Telnet   POP3   SMTP   HTTP  
Search RFCs:

Advanced Search
Search Glossary:
Exact search
Fuzzy search


All Protocols
Submit a Request

Recommend an Article

 Layer 7 Application Layer
  AFP
  BOOTP
  CIFS
  CIP
  COPS
  DHCP
  DNS
  Finger
  FTP
  FTP - Ctrl
  FTP - Data
  Gopher
  HSRP
  HTTP
  HTTPS
  ICP
  ICQ
  IMAP
  IMAP3
  IMAPS
  Kerberos
  LPD
  MGCP
  MSN
  MSRDP
  MSSQL
  NCP
  NFS
  NNTP
  NTP
  POP
  POP3
  POP3s
  RADIUS
  RLOGIN
  RRP
  RSH
  RTCP
  RTELNET
  RTP
  RTP Audio
  RTP Video
  RTSP
  SAP
  SIP
  SLP
  SMB
  SMTP
  SNA
  SNMP
  SOCKS
  SSH
  Telnet
  TELNET
  TFTP
  WhoIs
  WINS
 Layer 6 Presentation Layer
  NBNS
  NBSSN
  NCP
  NetBIOS
 Layer 5 Session Layer
  LDAP
  LDAPS
  NCP
  NetBEUI
  RPC
 Layer 4 Transport Layer
  H.225
  H.323
  NBDGM
  NetBEUI
  PUP
  SCTP
  TCP
  UDP
 Layer 3 Network Layer
  AARP
  AH
  BGP
  EGP
  EIGRP
  ESP
  GRE
  GTP
  ICMP
  ICMPv6
  IGMP
  IGRP
  IP
  IP Fragment
  IPv6
  IPX
  Mobile IP
  MPLS
  OSPF
  PIM
  PPPoE
  RIP
  RSVP
  STP
  VRRP
 Layer 2 Data Link Layer
  ARP
  CDP
  CGMP
  Ethernet SNAP
  EthernetII
  IEEE 802.2
  IEEE 802.3
  L2TP
  PPP
  PPTP
  RARP
  SQL
  VLAN
 Layer 1 Physical Layer
© 2006 - 2007 Colasoft Co., Ltd. All rights reserved.