Arjan Peddemors, Henk Eertink, and Mortaza Bargh Telematica Instituut Ignas Niemegeers TU Delft Network Resource Awareness and Control in Mobile Applications As mobile devices become increasingly capable of simultaneously using various kinds of wireless and fixed networks, developers must match mobile application needs to network resource dynamics. The authors’ network resource model and network abstraction layer (NAL) software offer an extensible network resource abstraction to applications running on mobile devices. The NAL service can be used in conjunction with well-known APIs, such as the Socket API, which provide access to these resources; it also accommodates support for mobility- management facilities, such as Mobile IP, if available. M obile devices have developed rap- idly in the past several years as open computing platforms that can install and run software from different origins. Growing hardware capabilities, together with general-purpose operating systems and abundant possibilities for net- work communication, have made the mobile device platform an environment that enables many exciting applications. The properties of network resources on mobile devices are dynamic in many situations. As users are mobile, they walk in and out of range of wireless networks, often experience fluctuations in through- put capacity, and obtain different levels of support for IP connectivity. Depending on their specific needs, mobile applica- tions benefit from taking into account aspects of these dynamics — for instance, by adapting data rates to maximum available capacity or controlling when to scan and activate specific networks. Con- trary to some approaches to mobility and roaming, we argue that network and link- layer aspects cannot be fully hidden from applications but must be exposed in a flexible manner. To support applications in dealing with this cross-layer resource awareness and control, we have developed an extensible network resource model (NRM) that describes the available network entities and their interrelationships below the application layer. Applications can take different views on available network resources using the NRM such that they provide just enough information to match 34 Published by the IEEE Computer Society 1089-7801/07/$25.00 © 2007 IEEE IEEE INTERNET COMPUTING Roaming