Electronic mailboxes are used to store electronic mail (e-mail) messages. Electronic mailboxes are connected to the Internet to enable users to send and receive incoming and outgoing e-mail messages. These mailboxes may also be extended to deliver e-mail to mobile wireless communication devices via wireless networks. In the case of a corporation, electronic mailboxes are typically located on mail servers at the corporation. On the other hand, mailboxes for small businesses or individuals are typically located on mail servers at an Internet service provider (ISP) location.
Mail user agents (MUAs) use a technique called polling to deliver messages from the mail server to the mail program at a user's computer or mobile wireless communications device. A MUA is a program running either on a user's personal computing device (mobile or stationary), or on a shared server that checks for new mail on behalf of a multitude of such users. More particularly, polling is the retrieval of incoming messages from other users at the mail server and delivery of these messages to the user's mailbox.
Mailbox polling generally occurs at different intervals or rates. Furthermore, mailbox polling rates may be customized. That is, corporations and/or Internet service providers may change polling intervals to best meet their particular needs. For example, because e-mails used for business communications are often high priority communications, corporate mail servers may be polled fairly regularly, such as every one to two minutes. On the other hand, ISP mailboxes are typically polled less frequently, e.g., once every fifteen minutes.
Mailbox polling typically occurs synchronously at the mail server at a predetermined interval. Mailboxes on the server are polled to send or receive messages, regardless of whether the mailbox has any new incoming or outgoing messages. In large systems, this traditional polling method may consume large amounts of server resources and thus impact performance.
More particularly, such resource consumption may be split into two parts, namely resource consumption (RC) on a mail server (MS), and on the MUA. RC on MS increases with the frequency of polling, and is particularly demanding when the MUA is running on a mobile wireless device. Such a consumption of resources and associated performance impact is particularly acute when mobile wireless communications devices are used. This is because of the bandwidth constraints associated with the wireless networks over which mobile wireless communications devices communicate with mail servers. For example, a mail server hosting a thousand or more mailboxes may need to communicate message data to several hundred or even thousands of mobile wireless communications devices after each polling interval. This may severely congest the wireless network and cause significant service delays. Furthermore, some mail servers may not be able to adequately support such usage models.
As a result, traditional mailbox polling does not perform particularly well when one or more of the following conditions are met: (1) a large number of mailboxes are being polled; (2) polling frequency is high; (3) MUA is on an network where connections to the MS are slow and/or expensive; and (4) the cumulative workload of polling can overwhelm the capacity of the network. One approach which has been used to address this problem is adaptive polling. Adaptive polling is a more intelligent method of polling mailboxes based upon a triggering event. More particularly, adaptive polling automatically changes the polling interval for a user based on the triggering event(s).
By way of example, U.S. Pat. No. 6,557,026 describes a system for converting information from a text format to an audio format, in which the information is transmitted from a server to a client device via a wired or wireless communications link. In particular, the information relates to “stories” such as news headlines, stock quotes, etc. The server includes a data source monitor which periodically polls data sources to check for new stories based upon polling schedules. The patent notes that the polling schedules may include an adaptive scheduler, which increases the polling frequency with the rate of arrival of new stories. Moreover, the adaptive scheduler reduces the polling rate as the rate of arrival of new stories decreases. Static schedulers are also included, for example, to provide hourly polling during business hours.
Despite such systems, further advancements in polling techniques are desirable to accommodate the ever-increasing usage of mobile wireless communications devices for accessing electronic messages.