IP Library Granted Patent US 7,483,949
Granted Patent B2
US 7,483,949 · App. 11/104,193 · Granted Jan 27, 2009

E-mail caching system and method

Assignee: Cemaphore Systems, Inc.
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 7,483,949
App. No.
11/104,193
Granted
Jan 27, 2009
Kind
B2
Abstract

A system and method to improve data access over a network. According to one embodiment of the present invention, a device for caching data from a server, such as e-mail messages, is provided at a location close to an end user. According to another embodiment of the present invention, a centrally stored address list is provided that may be accessed by a client to determine the best or nearest server for data access.

Claims (65)

1. A method for caching e-mail data over a network, comprising:

storing e-mail data on an e-mail server at a first network location;

accessing the network with a client at a second network location;

retrieving a site local e-mail message caching device (EMCD) IP address table with the client using IP address table information stored in a user's mailbox;

comparing a network location of the client to the site local EMCD IP address table; and

selecting a site local (EMCD) for caching the e-mail data from the e-mail server based on the network proximity of the site local (EMCD) to the client;

said comparing comprising the steps of:

parsing the IP address table to retrieve at least one IP address record for a given (EMCD), wherein the IP address record includes at least one IP address/mask pair of an (EMCD);

wherein for each IP address/mask pair retrieved:

performing a first bitwise AND between a client local address and the mask of the address/mask pair;

performing a second bitwise AND between the table address and the mask of the address/mask pair;

comparing a resulting value from the first and the second bitwise AND for a match; and

in response to a match, including the table address in a resulting list of potential IP addresses for the site local (EMCD);

if there is no match, the address is discarded from consideration.

2. The method according to claim 1 , wherein the user's mailbox storing the IP address table information is on the e-mail server at the first network location.

3. The method according to claim 2 , wherein the e-mail data is stored in the user's mailbox.

4. The method according to claim 1 , wherein the selected site local (EMCD) is located on the same LAN as the client.

5. The method according to claim 1 , wherein the IP address table list information stored in the user's mailbox comprises the list of site local (EMCD) addresses.

6. The method according to claim 1 , wherein the first network location comprises a first LAN and the second network location comprises a second LAN.

7. A system for caching data over a computer network, comprising:

a server having a first store for e-mail data at a first location;

a client for accessing the e-mail data at a second location, the first location and the second location being connected over a network; and

a site local e-mail message caching device (EMCD) at the second location comprising a second store for email data, wherein the site local EMCD is configured to act as a proxy for transmitting e-mail data between the server and the client, wherein

the site local (EMCD) further comprising virtual e-mail clients that communicate with said server to cache transactions between said server and the (EMCD);

said (EMCD) being located by

maintaining an IP address table for the site local (EMCD) at said email server;

placing the IP address table in an e-mail user's mailbox at said e-mail server;

in response to a user attempting to access said site local (EMCD) from a client, reading the IP address table from said e-mail user's mailbox at said e-mail server; and

parsing the IP address table to retrieve at least one IP address record for a given EMCD, wherein the IP address record includes at least one IP address/mask pair of an EMCD;

wherein for each IP address/mask pair retrieved:

performing a first bitwise AND between a client local address and the mask of the address/mask pair;

performing a second bitwise AND between the table address and the mask of the address/mask pair;

comparing a resulting value from the first and the second bitwise AND for a match; and

in response to a match, including the table address in a resulting list of potential IP addresses for the site local (EMCD);

if there is no match, the address is discarded from consideration.

8. The system according to claim 7 , wherein the network comprises a WAN.

9. The system according to claim 7 , wherein the first location comprises a first LAN, and the second location comprises a second LAN.

10. The system according to claim 7 , wherein the virtual e-mail clients communicate with the server using a given e-mail protocol selected from the group consisting of POP, IMAP or MAPI.

11. The system according to claim 7 , wherein the virtual e-mail clients monitor both the server and the EMCD for transactions on the state of data stored in a mailbox on the server and the corresponding data stored on the EMCD and then propagate those transactions between the EMCD and the server accordingly.

12. A method for accessing an e-mail message caching device (EMCD), comprising:

maintaining an e-mail server;

providing a site local (EMCD);

maintaining an IP address table for the site local (EMCD) at said e-mail server;

placing the IP address table in an e-mail user's mailbox at said e-mail server;

in response to a user attempting to access said site local (EMCD) from a client, reading the IP address table from said e-mail user's mailbox at said e-mail server; and

parsing the IP address table to retrieve at least one IP address record for a given (EMCD), wherein the IP address record includes at least one IP address/mask pair of an EMCD;

wherein for each IP address/mask pair retrieved;

performing a first bitwise AND between a client local address and the mask of the address/mask pair;

performing a second bitwise AND between the table address and the mask of the address/mask pair;

comparing a resulting value from the first and the second bitwise AND for a match; and

in response to a match, including the table address in a resulting list of potential IP addresses for the site local (EMCD);

if there is no match, the address is discarded from consideration.

13. The method according to claim 1 , wherein the client and the site local (EMCD) are located within a first LAN and the e-mail server is located within a second LAN.

14. The method according to claim 13 , wherein the first LAN and the second LAN are connected over a WAN.

15. The method according to claim 1 , wherein the IP address list is placed in an e-mail user's mailbox by one of a site local server and a management console.

16. A method for identifying a site local (EMCD), comprising:

placing code on a client computer to retrieve an IP address table;

acquiring the IP address table from an e-mail server;

parsing the IP address table to retrieve at least one IP address record for a given EMCD, wherein the IP address record includes at least one IP address/mask pair of an EMCD;

wherein for each IP address/mask pair retrieved:

performing a first bitwise AND between a client local address and the mask of the address/mask pair;

performing a second bitwise AND between the table address and the mask of the address/mask pair;

comparing a resulting value from the first and the second bitwise AND for a match; and

in response to a match, including the table address in a resulting list of potential IP addresses for the site local (EMCD);

if there is no match, the address is discarded from consideration.

Assignments (3)
SECURITY AGREEMENT Recorded Mar 8, 2010
From: CEMAPHORE SYSTEMS, INC.
To: SILICON VALLEY BANK
Reel/Frame 024047/0607 →
SECURITY AGREEMENT Recorded Jan 24, 2007
From: CEMAPHORE SYSTEMS, INC.
To: EKSTROM, ED
Reel/Frame 018802/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 9, 2005
From: PIKE, TYRONE F.; LOOMAN, JEFFREY M.; GILLE, J. BERNARD; BLAIR, JEFFREY D.
To: CEMAPHORE SYSTEMS, INC.
Reel/Frame 016521/0249 →
Continuity (2)
Provisional Application 6056161600 · Apr 12, 2004
Related Publication 20060020671A1 · Jan 26, 2006