According to Sachin Agrawal, a researcher at Deutsche Telekom, the Internet isn’t ready for all of us to start toting mobile phones that receive e-mail in real time. Such devices require so-called “push message delivery,” for which existing Internet protocols simply weren’t designed.
In other words, the Internet was designed for periodic access – a browser loads a website after opening a connection to a server, and after some period of inactivity, the (TCP) connection between the two is closed and recycled by a server, which can only have 65,536 connections (ports) open at any one time – a limit imposed by the TCP protocol itself.
A second problem with push messaging is that it requires a phone to maintain a continuous connection to the Internet. That’s a recipe for rapidly draining a phone’s battery. Many devices get around this limitation by “short polling” their mail servers – they only connect every few minutes, or at some other interval set by a user. This approach has the disadvantage of preventing the delivery of e-mail in real time.
In a new paper just published on the arXiv prepress service, Agrawal suggests that a better alternative, one that more effectively uses both server (port) and client (battery) resources. It simply turns off the connection between a phone and the Internet whenever it calculates it’s unlikely a user will be receiving any messages.
Agrawal’s devices know when a user isn’t going to receive any e-mails because humans are highly predictable.
We show how past message reception times are good predictors of future message arrival times due to the periodic and repetitive nature of human communication.
Agrawal rigged up an Android phone with a dynamic learning algorithm capable of observing when e-mails typically arrive for a user. To test his algorithm, he used four years of publicly available e-mails from Enron (yes - that Enron).
The Enron e-mail data set, publicly released by the US Federal Energy Regulatory Commission, contains approximately 500,000 e-mail messages of 150 senior Enron employees (with e-mail addresses ending in “@enron.com”) over a span of about 4 years. We extracted the sending time of each e-mail from its header and used this information to build lists of e-mail-reception times for each employee.
The results are impressive: by employing such an algorithm, Agrawal’s system could theoretically shut down a phone for 12 of every 24 hours, conserving both battery and network resources, and still deliver messages practically the moment they are sent, 90 percent of the time.
Original paper: Toward a Push-Scalable Global Internet, Sachin Agarwal