Fast path message transfer agent
First Claim
1. A method, implemented in hardware and software, comprising:
- receiving a network connection from a first email server at a second email server, the connection being configured for delivering an email message from the first email server to one or more intended recipients of the email message via the second email server;
receiving, at the second email server via the network connection with the first email server, email addresses of the one or more intended recipients of the email message; and
determining whether connections can be formed from the second email server to the one or more intended recipients of the email message,wherein if the connections can be formed then;
receiving bytes of the email message over the connection from the first email server;
storing the bytes of the message in transient memory while tracking whether the bytes of the email message in transient memory exceed a predetermined threshold;
if the bytes of the email message in transient memory exceed the predetermined threshold, storing all bytes of the email message in a non-volatile storage device and erasing any bytes of the email message stored in transient memory; and
sending the bytes of the email message to the one or more recipients of the email message over the connections from the second email server to the one or more intended recipients of the email message.
11 Assignments
0 Petitions
Accused Products
Abstract
A method of providing a fast path message transfer agent is provided. The method includes receiving bytes of a message over a network connection and determining whether the number of bytes exceeds a predetermined threshold. If the number of bytes is less than a predetermined threshold, then the message is written only to memory. However, if the number of bytes exceeds the predetermined threshold, then some of the bytes (e.g. up to the predetermined threshold) are written to memory, wherein the remainder of the bytes are stored onto the non-volatile storage. If the message was received successfully by each destination, then the message is removed from the memory/non-volatile storage. If not, all failed destinations are identified and the message (with associated failed destinations) is stored on the non-volatile storage for later sending.
-
Citations
9 Claims
-
1. A method, implemented in hardware and software, comprising:
-
receiving a network connection from a first email server at a second email server, the connection being configured for delivering an email message from the first email server to one or more intended recipients of the email message via the second email server; receiving, at the second email server via the network connection with the first email server, email addresses of the one or more intended recipients of the email message; and determining whether connections can be formed from the second email server to the one or more intended recipients of the email message, wherein if the connections can be formed then; receiving bytes of the email message over the connection from the first email server; storing the bytes of the message in transient memory while tracking whether the bytes of the email message in transient memory exceed a predetermined threshold; if the bytes of the email message in transient memory exceed the predetermined threshold, storing all bytes of the email message in a non-volatile storage device and erasing any bytes of the email message stored in transient memory; and sending the bytes of the email message to the one or more recipients of the email message over the connections from the second email server to the one or more intended recipients of the email message. - View Dependent Claims (2, 3, 4)
-
-
5. A non-transitory computer readable medium storing a software program, the software program being executable to provide operations comprising:
-
receiving a network connection from a first email server to a second email server, the connection being configured for delivering an email message from the first email server to one or more intended recipients of the email message via the second email server; receiving, at the second email server via the network connection with the first email server, addresses of the one or more intended recipients of the email message; and determining whether connections can be formed from the second email server to the one or more intended recipients of the email message, wherein if so, then receiving bytes of the email message over the connection from the first email server, storing the bytes of the message in transient memory while tracking whether the bytes of the email message in transient memory exceed a predetermined threshold, if the bytes of the email message in transient memory exceed the predetermined threshold, storing all bytes of the email message in a non-volatile storage device and erasing any bytes of the email message stored in transient memory, and sending the bytes to the one or more recipients of the email message over the connections from the second email server to the one or more intended recipients of the email message. - View Dependent Claims (6, 7, 8, 9)
-
Specification