POP3 LIST and RETR


This message flow simulates a POP3 session that retrieves one 100-byte message from a server, and is intended to generate simple POP3 traffic between the MN and the Network Host node.

When control plane protocols are used, the TCP connection is established after Data Start Delay timer expires. The MN initiates the TCP connection, using the Client Port and Server Port defined in the message flow.

  1. The server begins the message sequence by sending the server greeting, indicating that it is ready to receive requests.

  2. The client begins the login by supplying a user name.

  3. The client completes the login with a password.

  4. The client issues a LIST, and the server begins the response with the number of messages available (1).

  5. The server continues the response with the message number (1) and the message size in octets (100).

  6. The server terminates the response with a period.

  7. The client issues a RETR request for message number 1, and the server begins the response with the message size (100 octets).

  8. The server continues the response with the message itself. The message consists of 100 Zs and the terminating sequence of CR.CRLF (CR period CR-LF) for a total length of 104 bytes.

  9. The server completes the response with a single period.

  10. The client issues a QUIT, and the server terminates the session.

In the default configuration, the message flow will repeat once per second while the MN session is active. This assumes that the entire flow can be completed in one second. The flow must complete before the next iteration can begin, even if this results in a slower transaction rate.

Modifying the Message Flow

Since POP3 is a text-based protocol, you can easily modify the simulated email message, or import a file to use as the message. If you do modify the message, keep the following rules in mind:

 A LIST command should always be issued before a RETR or TOP, and the LIST response should include a command (see step 5) defining any message that is subsequently requested by the client.

Pipelining can be achieved with POP3 by creating a transaction loop of RETR or TOP commands with the Wait for Response checkbox cleared. The requests will be successively sent without waiting for server responses.

You can specify that random port numbers, in the IANA specified dynamic range of 49152 — 65535, be used by the client by entering a 0 for the Client Port.