I. Introduction
Smart phones, tablet PCs and other customized PDAs try to provide the user with fresh data. This includes the user’s emails, social news feed etc. Real time communications, such as voice and video calls over Internet Protocol (IP), are also performed through such devices. Since the devices in question have limited battery life, they cannot frequently poll for information updates, incoming call notifications etc. Rather, they rely on getting timely updates using push notification technology [1]. Mobile platforms like iPhone, Android, Windows Phone, Black Berry etc. provide a Notification Service which, at a high level, can be modeled as shown in Figure 1. Rather than polling different services to check if data needs to be downloaded, the user’s device only maintains a TCP connection to a notification server. This connection is called a Notification Channel. When the user’s social network service wants to send recent activity feeds, it sends a new activity notification to the notification server. This is pushed to the device through the notification channel. Based on this notification, the device opens a new connection to the social network service, downloads the activity feed and closes the connection. Similar workflow is executed for downloading unread emails, receiving voice and video calls etc.
A model of notification service used in different mobile platforms.