IP Library Granted Patent US 8,108,476
Granted Patent B2
US 8,108,476 · App. 12/475,729 · Granted Jan 31, 2012

High performance electronic message delivery engine

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,108,476
App. No.
12/475,729
Filed
Jun 1, 2009
Granted
Jan 31, 2012
Kind
B2
Art Unit
2456
USPC
709/206
Abstract

In a messaging system interfaced through the Internet, a method for processing a message from a sender and intended for delivery to at least one recipient, which sender is interfaced to the Internet through a sender server and which recipient is interfaced to the Internet through a recipient server, where the message includes at least recipient information and message body, is disclosed. The method includes testing the recipient information by establishing a temporary test connection through the Internet from the sender server to the recipient server, before relying on the recipient information for sending the message, so as to provide an indication of deliverability of the message to the recipient without using an SMTP VRFY command.

Claims (29)

1. In a messaging system interfaced through the Internet, a method for processing a message from a sender and intended for delivery to at least one recipient, which sender is interfaced to the Internet through a sender server capable of communicating with a recipient server, said method comprising:

at said sender server, receiving from said sender a plurality of discrete data packets for use in defining said message, at least one of said plurality of discrete data packets including recipient information and at least another one of said plurality of discrete data packets including message body;

directing said plurality of discrete data packets through an application program interface to one of a plurality of external applications for performing at least one of (i) modifying said plurality of discrete data packets according to a first predetermined set of rules, (ii) adding additional data packets to said plurality of discrete data packets according to a second predetermined set of rules, and (iii) ordering said plurality of discrete data packets according to a third predetermined set of rules, and, consequently, for providing a plurality of resultant data packets;

receiving said plurality of resultant data packets from said one of a plurality of external applications through said application program interface;

if a group of messages is scheduled for delivery, ordering said plurality of resultant data packets within the group of messages based on said recipient information such that sending messages directed to a particular domain within the group of messages is evenly distributed over time;

generating said message by combining at least a portion of said plurality of resultant data packets;

establishing a connection through the Internet from said sender server to said recipient server; and

directing said message through said connection to said recipient server for delivery to said recipient.

2. In a messaging system interfaced through the Internet, a method for processing a message from a sender and intended for delivery to at least one recipient, which sender is interfaced to the Internet through a sender server capable of communicating with a recipient server, said method comprising:

at said sender server, receiving from said sender a plurality of discrete data packets for use in defining said message, at least one of said plurality of discrete data packets including recipient information and at least another one of said plurality of discrete data packets including message body;

directing said plurality of discrete data packets through an application program interface to one of a plurality of external applications for performing at least one of (i) modifying said plurality of discrete data packets according to a first predetermined set of rules, (ii) adding additional data packets to said plurality of discrete data packets according to a second predetermined set of rules, and (iii) ordering said plurality of discrete data packets according to a third predetermined set of rules, and, consequently, for providing a plurality of resultant data packets;

receiving said plurality of resultant data packets from said one of a plurality of external applications through said application program interface;

if a group of messages is scheduled for delivery, ordering said plurality of resultant data packets within the group of messages based on said recipient information such that sending messages directed to a particular domain within the group of messages is evenly distributed over time; and

generating said message by combining at least a portion of said plurality of resultant data packets.

3. The method of claim 2 wherein said messaging system further includes a hard drive for storing files, and wherein said message is handled without storing said message as one of said files in said hard drive.

4. In a messaging system interfaced through the Internet, a method for processing a message from a sender and intended for delivery to at least one recipient, which sender is interfaced to the Internet through a sender server capable of communicating with a recipient server, said method comprising:

at said sender server, separating said message into a plurality of discrete data packets, at least one of said plurality of discrete data packets including recipient information and at least another one of said plurality of discrete data packets including message body;

directing said plurality of discrete data packets through an application program interface to one of a plurality of external applications for performing at least one of (i) modifying said plurality of discrete data packets according to a first predetermined set of rules, (ii) adding additional data packets to said plurality of discrete data packets according to a second predetermined set of rules, and (iii) ordering said plurality of discrete data packets according to a third predetermined set of rules, and, consequently, for providing a plurality of resultant data packets;

receiving said plurality of resultant data packets from said one of a plurality of external applications through said application program interface;

if a group of messages is scheduled for delivery, ordering said plurality of resultant data packets within said group of messages or data packets corresponding to said group of messages based on said recipient information such that sending messages addressed to the same domain within said group of messages is evenly distributed over time; and

generating said message by combining at least a portion of said plurality of resultant data packets.

5. The method of claim 4 further comprising:

establishing a connection through the Internet from said sender server to said recipient server; and

directing said message through said connection to said recipient server for delivery to said recipient.

6. In a messaging system interfaced through the Internet, a method for processing a group of messages from a sender, which sender is interfaced to the Internet through a sender server capable of communicating with a plurality of recipient servers, each message in said group of messages being intended for delivery to a recipient, said method comprising:

at said sender server, separating each message in said group of messages into a plurality of discrete data packets, at least one of said plurality of discrete data packets including recipient information and at least another one of said plurality of discrete data packets including message body for the corresponding message out of said group of messages; and

ordering said plurality of discrete data packets within said group of messages based on said recipient information such that sending messages directed to a particular domain within said group of messages is evenly distributed over time.

7. The method of claim 6 further comprising:

directing said plurality of discrete data packets through an application program interface to one of a plurality of external applications for performing at least one of (i) modifying said plurality of discrete data packets according to a first predetermined set of rules, (ii) adding additional data packets to said plurality of discrete data packets according to a second predetermined set of rules, and (iii) ordering said plurality of discrete data packets according to a third predetermined set of rules, and, consequently, for providing a plurality of resultant data packets.

Assignments (28)
SECURITY INTEREST Recorded Jun 8, 2025
From: QUEST SOFTWARE INC.; ANALYTIX DATA SERVICES INC.; ERWIN, INC.
To: ALTER DOMUS (US) LLC
Reel/Frame 071527/0649 →
SECURITY INTEREST Recorded Jun 8, 2025
From: QUEST SOFTWARE INC.; ANALYTIX DATA SERVICES INC.; ERWIN, INC.
To: ALTER DOMUS (US) LLC
Reel/Frame 071527/0001 →
RELEASE OF SECOND LIEN SECURITY INTEREST IN PATENTS Recorded Feb 2, 2022
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
To: QUEST SOFTWARE INC.
Reel/Frame 059096/0683 →
RELEASE OF FIRST LIEN SECURITY INTEREST IN PATENTS Recorded Feb 2, 2022
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
To: QUEST SOFTWARE INC.
Reel/Frame 059105/0479 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Jun 7, 2018
From: QUEST SOFTWARE INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 046327/0486 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Jun 7, 2018
From: QUEST SOFTWARE INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 046327/0347 →
RELEASE OF FIRST LIEN SECURITY INTEREST IN PATENTS RECORDED AT R/F 040581/0850 Recorded May 22, 2018
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
To: QUEST SOFTWARE INC. (F/K/A DELL SOFTWARE INC.); AVENTAIL LLC
Reel/Frame 046211/0735 →
CHANGE OF NAME Recorded Dec 6, 2017
From: DELL SOFTWARE INC.
To: QUEST SOFTWARE INC.
Reel/Frame 044800/0848 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE PREVIOUSLY RECORDED AT REEL: 040587 FRAME: 0624. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Nov 28, 2017
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: QUEST SOFTWARE INC. (F/K/A DELL SOFTWARE INC.); AVENTAIL LLC
Reel/Frame 044811/0598 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Nov 10, 2016
From: DELL SOFTWARE INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040587/0624 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Nov 9, 2016
From: DELL SOFTWARE INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040581/0850 →
RELEASE OF SECURITY INTEREST Recorded Oct 31, 2016
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: AVENTAIL LLC; DELL PRODUCTS, L.P.; DELL SOFTWARE INC.
Reel/Frame 040521/0467 →
RELEASE OF SECURITY INTEREST IN CERTAIN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040039/0642) Recorded Oct 31, 2016
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
To: AVENTAIL LLC; DELL PRODUCTS L.P.; DELL SOFTWARE INC.
Reel/Frame 040521/0016 →
RELEASE OF SECURITY INTEREST Recorded Sep 14, 2016
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; DELL MARKETING L.P.; ASAP SOFTWARE EXPRESS, INC.; APPASSURE SOFTWARE, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL PRODUCTS L.P.; DELL USA L.P.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040040/0001 →
SECURITY AGREEMENT Recorded Sep 14, 2016
From: AVENTAIL LLC; DELL PRODUCTS, L.P.; DELL SOFTWARE INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040030/0187 →
SECURITY AGREEMENT Recorded Sep 14, 2016
From: AVENTAIL LLC; DELL PRODUCTS L.P.; DELL SOFTWARE INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040039/0642 →
RELEASE OF SECURITY INTEREST Recorded Sep 14, 2016
From: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: DELL MARKETING L.P.; ASAP SOFTWARE EXPRESS, INC.; APPASSURE SOFTWARE, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL PRODUCTS L.P.; DELL USA L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040065/0618 →
RELEASE OF SECURITY INTEREST Recorded Sep 13, 2016
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: DELL MARKETING L.P.; ASAP SOFTWARE EXPRESS, INC.; APPASSURE SOFTWARE, INC.; COMPELLANT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL PRODUCTS L.P.; DELL USA L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040065/0216 →
PATENT SECURITY AGREEMENT (TERM LOAN) Recorded Jan 2, 2014
From: DELL INC.; APPASSURE SOFTWARE, INC.; ASAP SOFTWARE EXPRESS, INC.; BOOMI, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL USA L.P.; FORCE10 NETWORKS, INC.; GALE TECHNOLOGIES, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 031899/0261 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Jan 2, 2014
From: APPASSURE SOFTWARE, INC.; ASAP SOFTWARE EXPRESS, INC.; BOOMI, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL USA L.P.; FORCE10 NETWORKS, INC.; GALE TECHNOLOGIES, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS FIRST LIEN COLLATERAL AGENT
Reel/Frame 031897/0348 →
PATENT SECURITY AGREEMENT (ABL) Recorded Jan 2, 2014
From: DELL INC.; APPASSURE SOFTWARE, INC.; ASAP SOFTWARE EXPRESS, INC.; BOOMI, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL USA L.P.; FORCE10 NETWORKS, INC.; GALE TECHNOLOGIES, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 031898/0001 →
MERGER Recorded Nov 22, 2013
From: COLDSPARK, INC.
To: QUEST SOFTWARE, INC.
Reel/Frame 031658/0830 →
CHANGE OF NAME Recorded Aug 20, 2013
From: QUEST SOFTWARE, INC.
To: DELL SOFTWARE INC.
Reel/Frame 031043/0281 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 29, 2011
From: BAKBONE SOFTWARE INCORPORATED
To: QUEST SOFTWARE, INC.
Reel/Frame 026522/0610 →
TO CORRECT ADDRESS OF ASSIGNEE AS RECORDED AT REEL 024427, FRAME 0170. Recorded Aug 17, 2010
From: COLDSPARK, INC.
To: COLDSPARK, INC.
Reel/Frame 024909/0848 →
MERGER Recorded May 21, 2010
From: COLDSPARK, INC.
To: COLDSPARK, INC.
Reel/Frame 024427/0170 →
MERGER Recorded May 12, 2010
From: COLDSPARK, LLC
To: COLDSPARK, INC.
Reel/Frame 024372/0359 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 1, 2009
From: BROWN, SCOTT T.; WANSER, KELLY A.; GANORA, VICTOR, JR.
To: COLDSPARK, LLC
Reel/Frame 022759/0639 →