Search Images Maps Play YouTube News Gmail Drive More »
Sign in
Screen reader users: click this link for accessible mode. Accessible mode has the same essential features but works better with your reader.

Patents

  1. Advanced Patent Search
Publication numberUS20010042099 A1
Publication typeApplication
Application numberUS 09/776,165
Publication dateNov 15, 2001
Filing dateFeb 1, 2001
Priority dateFeb 2, 2000
Also published asUS6738766, US6928467, US20010047363, US20010048728, WO2001057673A1, WO2001057694A1, WO2001057733A1, WO2001058088A1
Publication number09776165, 776165, US 2001/0042099 A1, US 2001/042099 A1, US 20010042099 A1, US 20010042099A1, US 2001042099 A1, US 2001042099A1, US-A1-20010042099, US-A1-2001042099, US2001/0042099A1, US2001/042099A1, US20010042099 A1, US20010042099A1, US2001042099 A1, US2001042099A1
InventorsLuosheng Peng
Original AssigneeDoongo Technologies, Inc.
Export CitationBiBTeX, EndNote, RefMan
External Links: USPTO, USPTO Assignment, Espacenet
Apparatus and methods for optimizing traffic volume in wireless email communications
US 20010042099 A1
Abstract
An exemplary method for optimizing traffic volume in a communications network comprises the steps of receiving a first file, parsing a header portion of the file to find a reference header, extracting an identifier of a second file in the reference header, determining a nearest location to retrieve the second file based on the identifier, and retrieving the second file based on the determining. In one embodiment, the extracting step includes the step of determining a tag associated with the reference header; the tag including the identifier and an address to download the second file.
Images(6)
Previous page
Next page
Claims(14)
What is claimed is:
1. A method for optimizing traffic volume in a communications network, comprising the steps of:
receiving a first file;
parsing a header portion of said file to find a reference header;
extracting an identifier of a second file in said reference header;
determining a nearest location to retrieve said second file based on said identifier; and
retrieving said second file based on said determining.
2. The method of
claim 1
, wherein said extracting step includes the step of:
determining a tag associated with said reference header; said tag including said identifier and an address to download said second file.
3. The method of
claim 1
, wherein said determining a nearest location includes the steps of:
examining a local cache for a copy of said second file;
examining said reference header for a server address to download said second file if said local cache does not include said second file; and
extracting an address of a sender of said first file if said reference header does not include said server address.
4. A method for optimizing traffic volume in a communication network, comprising the steps of:
receiving a first file having a first identifier;
generating a tag for said first file based on said first identifier;
embedding said tag in a second file;
creating an association to said tag in a reference header of said second file;
assigning a second identifier to said second file; and
sending said second file.
5. The method of
claim 4
, further comprising the steps of:
determining a nearest address to download said first file; and
including said nearest address in said tag.
6. A method for optimizing traffic volume in a communication network, comprising the steps of:
receiving a first file;
parsing a header portion of said first file for a reference header;
extracting an identifier to a second file based on said reference header;
examining a local cache for a copy of said second file; and
updating said reference header to include an address to said local cache if said copy of said second file is in said local cache.
7. The method of
claim 6
, wherein said extracting step includes the step of:
determining a tag associated with said reference header; said tag including said identifier.
8. A computer program product for optimizing traffic volume in a communications network, comprising:
logic code for receiving a first file;
logic code for parsing a header portion of said file to find a reference header;
logic code for extracting an identifier of a second file in said reference header;
logic code for determining a nearest location to retrieve said second file based on said identifier; and
logic code for retrieving said second file based on said determining.
9. The computer program product of
claim 8
, wherein said logic code for extracting includes:
logic code for determining a tag associated with said reference header; said tag including said identifier and an address to download said second file.
10. The computer program product of
claim 8
, wherein said logic code for determining a nearest location includes:
logic code for examining a local cache for a copy of said second file;
logic code for examining said reference header for a server address to download said second file if said local cache does not include said second file; and
logic code for extracting an address of a sender of said first file if said reference header does not include said server address.
11. A computer program product for optimizing traffic volume in a communication network, comprising:
logic code for receiving a first file having a first identifier;
logic code for generating a tag for said first file based on said first identifier;
logic code for embedding said tag in a second file;
logic code for creating an association to said tag in a reference header of said second file;
logic code for assigning a second identifier to said second file; and
logic code for sending said second file.
12. The computer program product of
claim 11
, further comprising:
logic code for determining a nearest address to download said first file; and
logic code for including said nearest address in said tag.
13. A computer program product for optimizing traffic volume in a communication network, comprising:
logic code for receiving a first file;
logic code for parsing a header portion of said first file for a reference header;
logic code for extracting an identifier to a second file based on said reference header;
logic code for examining a local cache for a copy of said second file; and
logic code for updating said reference header to include an address to said local cache if said copy of said second file is in said local cache.
14. The computer program product of
claim 13
, wherein said logic code for extracting includes:
logic code for determining a tag associated with said reference header; said tag including said identifier.
Description
RELATED APPLICATIONS

[0001] This application claims priority to the provisional application entitled “Data Synchronization System Modeling and Optimization for Support of Disconnected Operation and High Data Availability,” filed on Feb. 2, 2000, and bearing the Ser. No. 60/179,761.

[0002] This application is also related to applications entitled “Apparatus and Methods for Providing Universal Data Synchronization Algorithms by Facilitating Data Synchronization System Design,” “Apparatus And Methods For Providing Coordinated And Personalized Application And Data Management For Resource-limited Mobile Devices,” and “Apparatus and Methods for Providing Personalized Application Search for Wireless Devices Based on Self User Profiling,” bearing serial numbers______,______, and ______, respectively. These applications were filed on ______ and all claimed priority to the above provisional application bearing Ser. No. 60/179,761.

[0003] 1. Field of the Invention

[0004] This invention relates to wireless communications. In particular, this invention relates to apparatus and methods for optimizing traffic volume in wireless email communications.

[0005] 2. Background of the Invention

[0006] Electronic mail (email) has in recent years become one of the most convenient and widely used means of communication. Most existing email systems are based on SMTP for outgoing messages and POP3 or IMAP for incoming messages. In addition, some email systems utilize the so-called extended email protocols that allow electronic deliveries of multi-format data in email messages. These extended email protocols, however, do not address bandwidth utilization or traffic volume optimization of email communications.

[0007] Efficient email communications require optimized bandwidth utilization. Bandwidth utilization is especially important in networks having limited bandwidth. Wireless networks, particularly wireless cellular networks, typically have very limited bandwidth than wired networks. Thus, optimizing traffic volume of wireless email communications, thereby improving bandwidth utilization, is especially important.

[0008] Thus, it is desirable to provide apparatus and methods for optimizing traffic volume in wireless email communications.

SUMMARY OF THE INVENTION

[0009] An exemplary method for optimizing traffic volume in a communications network comprises the steps of receiving a first file, parsing a header portion of the file to find a reference header, extracting an identifier of a second file in the reference header, determining a nearest location to retrieve the second file based on the identifier, and retrieving the second file based on the determining. In one embodiment, the extracting step includes the step of determining a tag associated with the reference header; the tag including the identifier and an address to download the second file. In another embodiment, the step of determining a nearest location includes the steps of examining a local cache for a copy of the second file, examining the reference header for a server address to download the second file if the local cache does not include the second file, and extracting an address of a sender of the first file if the reference header does not include the server address.

[0010] Another exemplary method for optimizing traffic volume in a communication network comprises the steps of receiving a first file having a first identifier, generating a tag for the first file based on the first identifier, embedding the tag in a second file, creating an association to the tag in a reference header of the second file, assigning a second identifier to the second file, and sending the second file. In one embodiment, the exemplary method further comprises the steps of determining a nearest address to download the first file and including the nearest address in the tag.

[0011] Yet another exemplary method for optimizing traffic volume in a communication network comprising the steps of receiving a first file, parsing a header portion of the first file for a reference header, extracting an identifier to a second file based on the reference header, examining a local cache for a copy of the second file, and updating the reference header to include an address to the local cache if the copy of the second file is in the local cache. In one embodiment, the extracting step includes the step of determining a tag associated with the reference header; the tag including the identifier.

[0012] An exemplary computer program product for optimizing traffic volume in a communications network comprises logic code for receiving a first file, logic code for parsing a header portion of the file to find a reference header, logic code for extracting an identifier of a second file in the reference header, logic code for determining a nearest location to retrieve the second file based on the identifier, and logic code for retrieving the second file based on the determining. In one embodiment, the logic code for extracting includes logic code for determining a tag associated with the reference header; the tag including the identifier and an address to download the second file. In another embodiment, the logic code for determining a nearest location includes logic code for examining a local cache for a copy of the second file, logic code for examining the reference header for a server address to download the second file if the local cache does not include the second file, and logic code for extracting an address of a sender of the first file if the reference header does not include the server address.

[0013] Another exemplary computer program product for optimizing traffic volume in a communication network comprises logic code for receiving a first file having a first identifier, logic code for generating a tag for the first file based on the first identifier, logic code for embedding the tag in a second file, logic code for creating an association to the tag in a reference header of the second file, logic code for assigning a second identifier to the second file, and logic code for sending the second file. In one embodiment, the exemplary computer program product further comprises logic code for determining a nearest address to download the first file and logic code for including the nearest address in the tag.

[0014] Yet another computer program product for optimizing traffic volume in a communication network comprises logic code for receiving a first file, logic code for parsing a header portion of the first file for a reference header, logic code for extracting an identifier to a second file based on the reference header, logic code for examining a local cache for a copy of the second file, and logic code for updating the reference header to include an address to the local cache if the copy of the second file is in the local cache. In one embodiment, the logic code for extracting includes logic code for determining a tag associated with the reference header; the tag including the identifier.

BRIEF DESCRIPTION OF THE DRAWINGS

[0015]FIG. 1 schematically illustrates an exemplary prior art network.

[0016]FIG. 2 schematically illustrates an exemplary network in accordance with an embodiment of the invention.

[0017]FIG. 3 schematically illustrates an exemplary client system in accordance with an embodiment of the invention.

[0018]FIG. 4 illustrates an exemplary process in accordance with an embodiment of the invention.

[0019]FIG. 5 schematically illustrates an exemplary server system in accordance with an embodiment of the invention.

[0020]FIG. 6 illustrates another exemplary process in accordance with an embodiment of the invention.

DETAILED DESCRIPTION OF THE INVENTION

[0021]FIG. 1 schematically illustrates an exemplary prior art email network 100. In the email network 100, a user device A 102 and a user device B 104 are connected to an email server A 106 and an email server B 108, respectively. The user device A 102 and the user device B 104 communicate with each other through their respective servers and via multiple gateways or routers (G/R) 110A-110D across the network 100. For example, a user at user device A 102 may initiate communication by generating and sending an email 1 to a user at the user device B 104. In an exemplary embodiment, the email 1 is first sent to the email server A 106. The email server A 106 sends the email 1 through G/R 110A and G/R 110 B to the email server B 108. The email server B 108 delivers the email 1 to the user at the user device B 104. Likewise, the user at the user device B 104 may respond to the email 1 by generating and sending an email 2 to the user at the user device A 102. The email 2 is first sent to the email server B 108. In an exemplary embodiment, the email 2 includes a reference to the email 1. Typically, the reference is a copy of the email 1 appended to the email 2. The email server B 108 sends the email 2 through G/R 110D and G/R 110C to the email server A 106. The email server A 106 delivers the email 2 to the user device A 102. Under current standard protocols, a copy of email 1 may be stored temporarily in one or more devices in transit between user A and user B, including in the user device A 102 and/or the email server A 106; thus, the physical copy of the email 1 appended to the email 2 creates unnecessary increased traffic that consumes bandwidth.

[0022]FIG. 2 schematically illustrates an exemplary email network 200 in accordance with an embodiment of the invention. In the email network 200, the email server A 106 and email server B 108 each has a respective local storage (LS) 204A and 204B for storing email messages managed by each server for a predetermined amount of time. In an exemplary embodiment, the predetermined amount of time is configured in the email servers automatically or manually. Similarly, the user device A 102 and the user device B 104 each has a respective LS 204 a and 204 b for storing email messages generated or received by each device for a predetermined or an infinite amount of time.

[0023] In an exemplary embodiment, the user device A 102 generates an email 1, assigns a unique ID to the email 1, and sends the email 1 to the email server A 106. In an exemplary embodiment, the user device A 102 may save a copy of the email 1 in the local storage 204 a temporarily. The email server A 106 sends the email 1 to the email server B 108 via G/R 110. In an exemplary embodiment, the email server A 106 may save a copy of the email 1 in its local storage 204A temporarily. The email server B 108 sends the email 1 to the user device B 104. Again, depending on the current protocol applicable to email server B 108, the email server B 108 may save a copy of email 1 in its local storage 204B temporarily.

[0024] When responding to the email 1, the user device B 104 may wish to refer to email 1. If so, in an exemplary embodiment, the user device B 104 creates a tag that refers to the email 1 and an address where a copy of the email 1 can be downloaded. In one embodiment, the tag is created based on the unique ID assigned to the email 1 by the user device A 102. In the response (namely, email 2), the user device B 104 embeds the tag in the email 2, assigns a unique ID to the email 2, and sends the email 2 to the email server B 108. In an exemplary embodiment, a copy of the email 2 may be saved in the local storage 204 b of the user device B 104.

[0025] After receiving the email 2, the email server B 108 parses the header portion of the email 2 for any reference header that refers to a tag embedded in the email 2. If a reference header is located, the email server B 108 parses the associated tag for a unique ID of the referenced email, in this case the email 1. The email server B 108 examines its local storage 204B for a copy of the referenced mail, or the email 1. If the email server B 108 has a copy of the email 1 in its local storage 204B, it updates the tag to include its address since it is nearer to the user device A 102 (or the destination) than the user device B 104. When the tag has been updated, the email server B 108 may store a copy of the email 2 in its local storage 204B before sending the email 2 to the email server A 106 via G/R 110.

[0026] At the email server A 106, the header portion of email 2 is again examined for any reference header. If a reference header is found, the email server A 106 parses the reference header to find a reference to an embedded tag. In an exemplary embodiment, the tag includes an unique ID of the referenced email (i.e., the email 1) and an address (the original address) to download the referenced email. The email server A 106 then checks its local storage 204A for a copy of the referenced email. In this example, if the email server A 106 has a copy of the email 1 in its local storage 204A, the email server A 106 updates the tag to substitute the original address with its own address. In an exemplary embodiment, the original address is substituted only if the email server A 106 is located relatively closer to the user device A 102. Next, the email server A 106 sends the email 2 to the user device A 102. In an exemplary embodiment, the email server A 106 may save a copy of the email 2 in its local storage 204A temporarily before sending it to the user device A 102.

[0027] When the user device A 102 receives the email 2, it examines the header portion of the email 2 for any reference header. Upon discovering a reference header, the user device A 102 examines an associated embedded tag in the email 2 for a unique ID associated with a referenced email and an address to download the referenced email. Next, the user device A 102 first examines its own local storage 204 a for a copy of the referenced mail. If the user device A 102 does not have the referenced mail in its local storage 204 a, it attempts to download the referenced email based on the address in the tag. If no address is included in the tag, the user device A 102 attempts to download the referenced mail from the user device B 104. In this example, if the user device A 102 has a copy of the referenced mail (email 1) in its own local storage 204 a, the email 1 is retrieved from the local storage 204 a.

[0028] If a user at the user device A 102 responds to the email 2 by sending an email 3 that refers to both the email 1 and the email 2, tags for both the email 1 and the email 2 are embedded in the email 3. In an exemplary embodiment, a tag for the email 2 is created based on the unique ID assigned to email 2 by the user device B 104. And the process repeats as described above. As rounds of emails increase between the user device A 102 and the user device B 104, where each new email refers to one or more previously sent email messages, the amount of traffic is substantially reduced by sending embedded tags associated with previous sent email messages instead of the actual email messages.

[0029]FIG. 3 illustrates an exemplary user device A 102 in accordance with an embodiment of the invention. The user device 102 includes a communications interface 302, a microprocessor 304, a user interface 306, and a memory 308. The memory 308 includes an operating system 310, communications applications 312 (e.g., a browser application), a mail client module 314, a mail encoding module 316, a GUID generator module 318, a tag create and embed module 320, a tag search and referenced mail load module 322, and a local storage 204 a. In an exemplary embodiment, the user interface 306 includes a user input device for receiving user inputs and an output display device. In an exemplary embodiment, the mail client module 314 performs basic email functions at the client side and may be a generally available software such as Microsoft Outlook by Microsoft. In one embodiment, the mail encoding module 316 encodes email to ensure each email is understandable and decodable by the recipient.

[0030] The GUID generator module 318 generates a unique ID for each new outgoing email. In an exemplary embodiment, the unique ID assigned to each email is a global unique mail ID (GUID). In one embodiment, the GUID is a combination of a four-byte number from the IP address or phone number of the user device A 102 and a four-byte sequence number. The sequence number is unique to each email. For example, if the user device A 102 is assigned an IP address of 137.203.96.28 in a wireless network and the user device A 102 has a current sequence number of 198, the next GUID has 8 bytes representing the numbers: 137, 203, 96, 28, 0, 0, 0, 199.

[0031] When creating a new email that refers to a previous email, the tag creation and embedding module 320 creates a tag for the previous email based on that previous email's GUID. In an exemplary embodiment, the tag is created using the hypertext markup language (HTML) or the dynamic markup language (XML). For example, a tag may be written in the HTML language as follows:

[0032] Tag<=

[0033] <a href=mail-ID>[user-readable-description]</a>|

[0034] <a href=mail-ID: start-pos>[user-readable-description]</a>|

[0035] <a href=mail-ID: -end-pos>[user-readable-description]</a>|

[0036] <a href=mail-ID: start-pos-end-pos>[user-readable-description]</a>

[0037] In the above example, the <a . . . > indicates the start of the tag and the </a> indicates the end of the tag. The href is a parameter that defines the referenced email or a section of an email. The mail-ID is to be replaced by the GUID of the referenced email. The start-pos is the start position of the referenced email and should be specified if the referenced position does not begin from the top of the referenced email. In an exemplary embodiment, the start-pos is replaced with an integer number that is equal to the number of bytes from the top of the referenced email. The end-pos indicates the end position of the referenced email and should be specified if the referenced position does not end at the bottom of the referenced email. Like the start-pos, in an exemplary embodiment, the end-pos is replaced with an integer number that is equal to the number of bytes from the top of the referenced email. The user-readable-description is the text which is displayed to the mail recipient when the referenced email cannot be loaded (e.g., when the referenced email is already deleted from all devices in the delivery path).

[0038] Next, the tag creation and embedding module 320 embeds the tag in the new email and refers to the tag in a reference header of the new email. When the new email is received, the tag search and reference mail loading module 314 parses the new email's header portion for any reference header that refers to a tag. In an exemplary embodiment, the existing extended mail protocols allow one or more reference headers to be included in a message. In one embodiment, each reference header refers to a tag that specifies a referenced mail and a nearest location to download that referenced email. An exemplary process for loading a referenced mail is described in FIG. 4 below.

[0039]FIG. 4 illustrates an exemplary process for loading a referenced mail. At step 402, an email having at least one reference header is received by the user device. For each reference header, the header is parsed for any reference to an embedded tag (step 404). In an exemplary embodiment, the embedded tag specifies a unique ID of a referenced email and an address to download the referenced email. Next, whether the referenced email is stored in the local storage is determined (step 406). If the referenced email is stored in the local storage of the user device, load the referenced email (step 408). If the referenced email is not stored in the local storage of the user device (step 406), determine whether a server address to download the referenced email is specified in the tag (step 410). If a server address is specified, load the referenced mail from that server (step 412). Referring back to step 410, if a server address is not specified, load the referenced mail from the sender of the email.

[0040]FIG. 5 schematically illustrates an exemplary email server A 106 in accordance with an embodiment of the invention. The server 106 includes a communications interface 502, a CPU 504, a user interface 506, and memory 508. The memory 508 includes an operating system 510, communications applications 512, mail delivery applications 514, mail server applications 516, tag search module 518, encoded mail depository 520, and a local storage 204A. In an exemplary embodiment, the communications interface facilitates communications between the server 106 and a network, such as a wireless network. The user interface 506 includes a user input device and an output display device. In an exemplary embodiment, the mail delivery applications 514 facilitates mail delivery to each client. The mail server applications 516 performs mail processing and delivery at the server side. The encoded mail depository 520 stores encoded mail. An exemplary process performed by the email server A 106 is described in FIG. 6 below.

[0041]FIG. 6 illustrates an exemplary process performed by the email server A 106 in accordance with an embodiment of the invention. In particular, FIG. 6 illustrates an exemplary process facilitated by the tag search module 518 in the email server A 106. At step 602, an email is received by the server 106. The header portion of the email is parsed by the server 106 (step 604). Whether the header portion contains any reference header is determined (step 606). If not, the process ends (step 608). If the header portion contains at least one reference header, the reference header is parsed for any reference to an embedded tag (step 610). If the reference header refers to an embedded tag, the tag is reviewed for information (step 612). For example, a tag may specify a GUID of a referenced email and an address to download that referenced email. Next, using the information, such as the GUID, the server 106 determines if the referenced email is stored in the encoded mail depository 520 (step 614). If not, the process ends (step 608). If the referenced email is stored in the encoded mail depository 520, the reference header is updated to include the server's 106 address (step 616). Next, the server 106 determines whether there is any more reference header (step 618). If not, the process ends (step 608). If there is another reference header, the process repeats at step 610.

[0042] The foregoing examples illustrate certain exemplary embodiments of the invention from which other embodiments, variations, and modifications will be apparent to those skilled in the art. The invention should therefore not be limited to the particular embodiments discussed above, but rather is defined by the claims.

Patent Citations
Cited PatentFiling datePublication dateApplicantTitle
US5491800 *Dec 20, 1993Feb 13, 1996Taligent, Inc.Object-oriented remote procedure call networking system
US5613108 *Feb 18, 1994Mar 18, 1997Minolta Camera Kabushiki KaishaElectronic mail processing system and electronic mail processing method
US5631018 *Oct 4, 1994May 20, 1997Sequus Pharmaceuticals, Inc.Lipid-polymer conjugates and liposomes
US5771355 *Dec 21, 1995Jun 23, 1998Intel CorporationTransmitting electronic mail by either reference or value at file-replication points to minimize costs
US5815663 *Mar 15, 1996Sep 29, 1998The Robert G. Uomini And Louise B. Bidwell TrustDistributed posting system using an indirect reference protocol
US5835911 *Aug 21, 1995Nov 10, 1998Fujitsu LimitedSoftware distribution and maintenance system and method
US5838727 *Feb 15, 1991Nov 17, 1998Schlumberger Technology CorporationMethod and apparatus for transmitting and receiving digital data over a bandpass channel
US5887254 *Apr 26, 1996Mar 23, 1999Nokia Mobile Phones LimitedMethods and apparatus for updating the software of a mobile terminal using the air interface
US5903723 *Dec 21, 1995May 11, 1999Intel CorporationMethod and apparatus for transmitting electronic mail attachments with attachment references
US5926624 *Sep 12, 1996Jul 20, 1999Audible, Inc.Digital information library and delivery system with logic for generating files targeted to the playback device
US5999932 *Jan 13, 1998Dec 7, 1999Bright Light Technologies, Inc.System and method for filtering unsolicited electronic mail messages using data matching and heuristic processing
US6026410 *Feb 10, 1997Feb 15, 2000Actioneer, Inc.Information organization and collaboration tool for processing notes and action requests in computer systems
US6105063 *May 5, 1998Aug 15, 2000International Business Machines Corp.Client-server system for maintaining application preferences in a hierarchical data structure according to user and user group or terminal and terminal group contexts
US6169909 *Jul 9, 1998Jan 2, 2001Nec CorporationMobile communication system with re-connect function for non-speech data communications
US6170060 *Oct 3, 1997Jan 2, 2001Audible, Inc.Method and apparatus for targeting a digital information playback device
US6199076 *Oct 2, 1996Mar 6, 2001James LoganAudio program player including a dynamic program selection controller
US6256666 *Jul 14, 1998Jul 3, 2001International Business Machines Corp.Method and system for remotely managing electronic mail attachments
US6275850 *Jul 24, 1998Aug 14, 2001Siemens Information And Communication Networks, Inc.Method and system for management of message attachments
US6344853 *Jan 6, 2000Feb 5, 2002Alcone Marketing GroupMethod and apparatus for selecting, modifying and superimposing one image on another
US6360252 *Aug 31, 2000Mar 19, 2002Fusionone, Inc.Managing the transfer of e-mail attachments to rendering devices other than an original e-mail recipient
US6411685 *Jan 29, 1999Jun 25, 2002Microsoft CorporationSystem and method for providing unified messaging to a user with a thin web browser
US6421707 *Feb 13, 1998Jul 16, 2002Lucent Technologies Inc.Wireless multi-media messaging communications method and apparatus
US6460058 *Dec 6, 1996Oct 1, 2002Microsoft CorporationObject-oriented framework for hyperlink navigation
US6471707 *May 11, 2001Oct 29, 2002BiometBone screw having bioresorbable proximal shaft portion
US6505236 *Apr 30, 1999Jan 7, 2003Thinmail, Inc.Network-based mail attachment storage system and method
US6564321 *Apr 23, 2001May 13, 2003Bobo Ii Charles RSystems and methods for storing, delivering, and managing messages
US6622147 *Jun 11, 2002Sep 16, 2003Actioneer, Inc.Method and apparatus for group action processing between users of a collaboration system
US6725239 *Aug 6, 2002Apr 20, 2004Microsoft CorporationSelective information synchronization based on implicit user designation
US6725281 *Nov 2, 1999Apr 20, 2004Microsoft CorporationSynchronization of controlled device state using state table and eventing in data-driven remote device control model
US6745024 *Jan 10, 2000Jun 1, 2004Qualcomm IncorporatedSystem and method for preparing and sending an electronic mail communication using a wireless communications device
US6757711 *Aug 26, 2002Jun 29, 2004Intel CorporationMethod and apparatus for delivering data
Referenced by
Citing PatentFiling datePublication dateApplicantTitle
US7072670 *Oct 7, 2003Jul 4, 2006Matsushita Electric Industrial Co., Ltd.Terminal apparatus and information acquiring system
US7184753 *Jan 22, 2004Feb 27, 2007Research In Motion LimitedMailbox pooling pre-empting criteria
US7376701 *Apr 29, 2002May 20, 2008Cisco Technology, Inc.System and methodology for control of, and access and response to internet email from a wireless device
US7509378 *Mar 9, 2004Mar 24, 2009Bea Systems, Inc.System and method for message ordering in a message oriented network
US8005903 *Dec 13, 2006Aug 23, 2011International Business Machines CorporationMethod and apparatus for managing locally stored E-mail messages
US8010082Oct 19, 2005Aug 30, 2011Seven Networks, Inc.Flexible billing architecture
US8127342Sep 23, 2010Feb 28, 2012Seven Networks, Inc.Secure end-to-end transport through intermediary nodes
US8209709Jul 5, 2010Jun 26, 2012Seven Networks, Inc.Cross-platform event engine
US8316098Nov 20, 2012Seven Networks Inc.Social caching for device resource sharing and management
US8356080Jan 15, 2013Seven Networks, Inc.System and method for a mobile device to use physical storage of another device for caching
US8516058 *Nov 2, 2007Aug 20, 2013International Business Machines CorporationSystem and method for dynamic tagging in email
US8549587Feb 14, 2012Oct 1, 2013Seven Networks, Inc.Secure end-to-end transport through intermediary nodes
US8561086May 17, 2012Oct 15, 2013Seven Networks, Inc.System and method for executing commands that are non-native to the native environment of a mobile device
US8731522Jan 16, 2007May 20, 2014Blackberry LimitedMailbox pooling pre-empting criteria
US8811952May 5, 2011Aug 19, 2014Seven Networks, Inc.Mobile device power management in data synchronization over a mobile network with or without a trigger notification
US8831561Apr 28, 2011Sep 9, 2014Seven Networks, IncSystem and method for tracking billing events in a mobile wireless network for a network operator
US8868753Dec 6, 2012Oct 21, 2014Seven Networks, Inc.System of redundantly clustered machines to provide failover mechanisms for mobile traffic management and network resource conservation
US8874761Mar 15, 2013Oct 28, 2014Seven Networks, Inc.Signaling optimization in a wireless network for traffic utilizing proprietary and non-proprietary protocols
US8977755Dec 6, 2012Mar 10, 2015Seven Networks, Inc.Mobile device and method to utilize the failover mechanism for fault tolerance provided for mobile traffic management and network/device resource conservation
US9002828Jan 2, 2009Apr 7, 2015Seven Networks, Inc.Predictive content delivery
US9043433May 25, 2011May 26, 2015Seven Networks, Inc.Mobile network traffic coordination across multiple applications
US9043731Mar 30, 2011May 26, 2015Seven Networks, Inc.3D mobile user interface with configurable workspace management
US9047142Dec 16, 2010Jun 2, 2015Seven Networks, Inc.Intelligent rendering of information in a limited display environment
US9049179Jan 20, 2012Jun 2, 2015Seven Networks, Inc.Mobile network traffic coordination across multiple applications
US9055102Aug 2, 2010Jun 9, 2015Seven Networks, Inc.Location-based operations and messaging
US9060032May 9, 2012Jun 16, 2015Seven Networks, Inc.Selective data compression by a distributed traffic management system to reduce mobile data traffic and signaling traffic
US9065765Oct 8, 2013Jun 23, 2015Seven Networks, Inc.Proxy server associated with a mobile carrier for enhancing mobile traffic management in a mobile network
US9075893 *Feb 25, 2011Jul 7, 2015Amazon Technologies, Inc.Providing files with cacheable portions
US9077630Jul 8, 2011Jul 7, 2015Seven Networks, Inc.Distributed implementation of dynamic wireless traffic policy
US9084105Apr 19, 2012Jul 14, 2015Seven Networks, Inc.Device resources sharing for network resource conservation
US9100873Sep 14, 2012Aug 4, 2015Seven Networks, Inc.Mobile network background traffic data management
US20020059388 *Oct 17, 2001May 16, 2002David ThompsonE-mail and messaging systems and methods
US20040107250 *Oct 21, 2003Jun 3, 2004Guillermo MarcianoMethods and systems for integrating communication resources using the internet
US20040205141 *Mar 9, 2004Oct 14, 2004Goland Yaron Y.System and method for message ordering in a message oriented network
US20050164703 *Jan 22, 2004Jul 28, 2005Research In Motion LimitedMailbox pooling pre-empting criteria
US20050170848 *Oct 7, 2003Aug 4, 2005Junichi SatoTerminal apparatus and information acquiring system
US20090119370 *Nov 2, 2007May 7, 2009International Business Machines CorporationSystem and method for dynamic tagging in email
Classifications
U.S. Classification709/206, 709/245
International ClassificationH04L12/24, H04L29/06, G06F12/12, G06F17/30, H04L29/08, G06F7/00, G06F15/16, H04L12/58
Cooperative ClassificationY10S707/99935, Y10S707/99934, Y10S707/99936, Y10S707/99945, Y10S707/99932, Y10S707/99948, H04L41/00, G06F12/121, H04L12/5895, H04L12/24, H04W28/10, H04L41/12, H04L51/06, G06F17/30867, H04L29/06, H04L51/38, H04L12/5825, H04L67/2804, H04L67/04, H04L69/329, H04L67/306, H04L67/18, H04L67/2852, H04L67/1095, H04L67/2842, H04L67/288, H04L67/06
European ClassificationG06F17/30S, G06F12/12B, H04L29/08N27S4, H04L29/06, H04L41/00, H04L29/08N3, H04L29/08N29U, H04L12/24, H04L29/08N27A, H04L41/12, H04W28/10, H04L29/08N17, H04L29/08N5, G06F17/30W1F, H04L12/58W
Legal Events
DateCodeEventDescription
Feb 1, 2001ASAssignment
Owner name: DOONGO TECHNOLOGIES, INC., CALIFORNIA
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:PENG, LUOSHENG;REEL/FRAME:011553/0694
Effective date: 20010130
Aug 25, 2004ASAssignment
Owner name: INNOPATH SOFTWARE, INC., CALIFORNIA
Free format text: CHANGE OF NAME;ASSIGNOR:DOONGO TECHNOLOGIES, INC.;REEL/FRAME:015083/0148
Effective date: 20040809