Disruption-tolerant sessions: a socket layer for mobility-aware applications on the internet (Sessões de comunicações tolerantes a rupturas: uma camada de Socket para aplicações cientes de mobilidade na Internet)

N owadays services available on the Internet can be accessed from mobile devices while they roam across heterogeneous wireless networks. Due to the inherent reasons of device mobility, however, the access to such services is frequently involved with delay and disruptions. The most common reasons are: i) losing radio signal at places where mobile access coverage area is not available; ii) frame error, losses, and fading on the radio signal when the mobile device moves away from the Base Station; iii) changes on the device’s IP address over ongoing transmission, while the mobile node migrates among different wireless networks. As result, networked application fails with disruptions on TCP connections established in the mobile user’s path. Handling seamlessly mobility on the Internet is a technical challenge of the Mobile Computing Paradigm. It has been widely researched over the last decade. Several solutions have been proposed to work from the Link Layer to the Application Layer. Most of them, however, work intrusively and require modifications in the classical TCP/IP protocol stack, as well as rely on additional network infrastructure to support mobile end-to-end communication. Besides increasing the cost of deployment and maintenance, intrusive and infrastructure dependent strategies may not present suitable performance. In this sense, we devised an architecture to handle mobility at the Application level by means of communication sessions that do not fail with delay, disruption or disconnection. Such sessions work only at the end-systems in a such way that: are fully transparent to the adjacent layers of Transport and Application; do not require additional network infrastructure to forward and manage the communication between two mobile peers; and do not impose any modification on the legacy protocols from the TCP/IP stack. The concept of Disruption-Tolerant Sessions is implemented in Linux by means of a general purpose API extended from the Socket interface. Such API is a transparent layer placed on top of the Socket to provide mobility awareness to the Application Layer. To do so, session services are provided for: tracking mobile peers along the session duration; detecting disruptions over TCP connection caused by mobility of the local or remote peer; suspending and resuming sessions with efficiency, security and reliability. Experiments conducted in emulated and real systems (off-the-shelf hardware and open source software) showed the desired efficiency. Besides introducing little overhead on the goodput, disruptions are detected in a range of microseconds and suspended sessions are resumed in milliseconds. With performance greater than the general IP layer mobility solution, the proposed sessions do not require software adaptation in the core of the network infrastructure.

[1]  Donald E. Eastlake Secure Domain Name System Dynamic Update , 1997, RFC.

[2]  Saikat Guha,et al.  Characterization and measurement of TCP traversal through NATs and firewalls , 2005, IMC '05.

[3]  H. Soliman,et al.  Hierarchical mobile IPv6 mobility management , 2005 .

[4]  Mauro Onori,et al.  Evolvable Production Systems: A Coalition-Based Production Approach , 2011 .

[5]  M. Cruz-cunha,et al.  Handbook of Research on Mobility and Computing : Evolving Technologies and Ubiquitous Impacts , 2011 .

[6]  Roberto Sadao Yokoyama,et al.  Exploring user's habits and virtual communities to improve IP-connectivity management , 2009, 2009 International Conference on Ultra Modern Telecommunications & Workshops.

[7]  Cullen Jennings,et al.  Network Address Translation (NAT) Behavioral Requirements for Unicast UDP , 2007, RFC.

[8]  Rajeev Koodli,et al.  Fast Handovers for Mobile IPv6 , 2001, RFC.

[9]  David M'Raïhi,et al.  OCRA: OATH Challenge-Response Algorithm , 2011, RFC.

[10]  Fayez Al-Shraideh,et al.  Host Identity Protocol , 2006, International Conference on Networking, International Conference on Systems and International Conference on Mobile Communications and Learning Technologies (ICNICONSMCL'06).

[11]  B.Y.L. Kimura,et al.  Prototyping applications to handle connection disruptions in end-to-end host Mobility , 2010, 2010 Seventh International Conference on Wireless On-demand Network Systems and Services (WONS).

[12]  Dan Wing,et al.  Session Traversal Utilities for NAT (STUN) , 2020, RFC.

[13]  Bruno Yuji Lino Kimura,et al.  TIPS: wrapping the sockets API for seamless IP mobility , 2008, SAC '08.

[14]  Edson dos Santos Moreira,et al.  Disruption-tolerant sessions for seamless mobility , 2012, 2012 IEEE Wireless Communications and Networking Conference (WCNC).

[15]  Kostas Pentikousis,et al.  Towards a GNU/Linux IEEE 802.21 Implementation , 2009, 2009 IEEE International Conference on Communications.

[16]  Mark Handley,et al.  SIP: Session Initiation Protocol , 1999, RFC.

[17]  Bryan Ford,et al.  State of Peer-to-Peer (P2P) Communication across Network Address Translators (NATs) , 2008, RFC.

[18]  Bruno Yuji Lino Kimura,et al.  Mobility at the Application Level , 2009, IEEE INFOCOM Workshops 2009.

[19]  Jonathan M. Smith,et al.  DHARMA: distributed home agent for robust mobile access , 2005, Proceedings IEEE 24th Annual Joint Conference of the IEEE Computer and Communications Societies..

[20]  Amir Qayyum,et al.  Performance comparison of end-to-end mobility management protocols for TCP , 2012, J. Netw. Comput. Appl..

[21]  Andrei Gurtov Host Identity Protocol (HIP): Towards the Secure Mobile Internet , 2008 .

[22]  Jukka Manner,et al.  Mobility Related Terminology , 2004, RFC.

[23]  Ian F. Akyildiz,et al.  A survey of mobility management in next-generation all-IP-based wireless systems , 2004, IEEE Wirel. Commun..

[24]  Wesley M. Eddy At what layer does mobility belong? , 2004, IEEE Communications Magazine.

[25]  Ralph E. Droms,et al.  Dynamic Host Configuration Protocol , 1993, RFC.

[26]  Massimo Rimondini,et al.  Netkit: easy emulation of complex networks on inexpensive hardware , 2008 .

[27]  Mark Handley,et al.  Architectural Guidelines for Multipath TCP Development , 2011, RFC.

[28]  Hari Balakrishnan,et al.  An end-to-end approach to host mobility , 2000, MobiCom '00.

[29]  Simon A. Dobson,et al.  Cross-Layer Architectures for Autonomic Communications , 2006, Journal of Network and Systems Management.

[30]  Xuemin Shen,et al.  IP mobility management for vehicular communication networks: challenges and solutions , 2011, IEEE Communications Magazine.

[31]  Brighten Godfrey,et al.  OpenDHT: a public DHT service and its uses , 2005, SIGCOMM '05.

[32]  Mark Alexander Connell Snoeren A session-based architecture for Internet mobility , 2002 .

[33]  Samuel J. Leffler,et al.  The design and implementation of the 4.3 BSD Unix operating system , 1991, Addison-Wesley series in computer science.

[34]  Yakov Rekhter,et al.  Address Allocation for Private Internets , 1994, RFC.

[35]  Robert T. Braden,et al.  Requirements for Internet Hosts - Communication Layers , 1989, RFC.

[36]  Yakov Rekhter,et al.  Dynamic Updates in the Domain Name System (DNS UPDATE) , 1997, RFC.

[37]  Asanga Udugama Manipulating the network environment using RTNETLINK , 2006 .

[38]  David A. Maltz,et al.  MSOCKS+: an architecture for transport layer mobility , 2002, Comput. Networks.

[39]  Teemu Koponen,et al.  Resilient Connections for SSH and TLS , 2006, USENIX Annual Technical Conference, General Track.

[40]  Van Jacobson,et al.  TCP Extensions for High Performance , 1992, RFC.

[41]  Paul Francis,et al.  The IP Network Address Translator (NAT) , 1994, RFC.

[42]  Nick McKeown,et al.  A network in a laptop: rapid prototyping for software-defined networks , 2010, Hotnets-IX.

[43]  R. Atkinson ILNP Concept of Operations , 2011 .

[44]  Dino Farinacci,et al.  The Locator/ID Separation Protocol (LISP) , 2009, RFC.

[45]  B. Y. L. Kimura,et al.  Secure Connection Re-establishment for Session-Based IP Mobility , 2012, 2012 Second Brazilian Conference on Critical Embedded Systems.

[46]  T. Dagiuklas,et al.  Mobility management schemes for supporting multimedia services in all-IP network infrastructures , 2003 .

[47]  Ian F. Akyildiz,et al.  Mobility Management in Next Generation Wireless Systems , 1999, ICCCN.

[48]  Charles E. Perkins,et al.  IP Mobility Support for IPv4 , 2002, RFC.

[49]  E. Gustafsson,et al.  Always best connected , 2003, IEEE Wirel. Commun..

[50]  Mohamed Othman,et al.  Mobility management for IP-based next generation mobile networks: Review, challenge and perspective , 2012, J. Netw. Comput. Appl..

[51]  Thomas Narten,et al.  Neighbor Discovery for IP Version 6 (IPv6) , 1996, RFC.

[52]  Charles E. Perkins,et al.  IP Mobility Support for IPv4, Revised , 2010, RFC.