If you are like me, as soon as you start using Instant Messaging (Octrotalk, Windows Live Messenger, IM+, Palringo) on your Windows Mobile Device – your battery life goes out the window. I’m talking, 12 hrs max. That is not a good thing for a mobile device where you need it to last at least a full day, if not multiple days.
The problem is that IM networks need to remain connected – a ‘heartbeat’ signal is sent over the network to ensure the client is still online, and so that if you receive any instant messages they are delivered to you, well, instantly.
The reason text messages do not eat up battery life is because the cell phone network does not require your phone to have a heartbeat data connection to the cellular network – if a text message is sent to you, your phone picks it up when it communicates with the cell phone towers over the “control connection” – which all cell phones use to keep track of which cellular tower it is in range of (for more information on how SMS text messages work, see Howstuffworks).
Apparently this problem is due to IPv4 and how most devices use Network Address Translation to route traffic to your phone. This is where your phone has a private IP and keeps a connection open with a main server, using a keep alive signal, to maintain connectivity. According to this talk from Nokia, IPv6 solves this problem since there are enough IP addresses to assign each device a unique one. No longer will they need to juggle this IP, meaning that there is a substantial savings in battery time.
It can’t come a moment too soon. This has really made me look forward to the coming IPv6 transition. Even though IPv6 is a few years away, services are slowly coming online and eventually a ‘critial mass’ will propel adoption of the new protocol across all installation.