A Session-Based Architecture for Internet Mobility by Mark

The proliferation of mobile computing devices and wireless networking products over the past decade has led to an increasingly nomadic computing lifestyle. A computer is no longer an immobile, gargantuan machine that remains in one place for the lifetime of its operation. Today's personal computing devices are portable, and Internet access is becoming ubiquitous. A well-traveled laptop user might use half a dozen different networks throughout the course of a day: a cable modem from home, wide-area wireless on the commute, wired Ethernet at the office, a Bluetooth network in the car, and a wireless, local-area network at the airport or the neighborhood coffee shop. Mobile hosts are prone to frequent, unexpected disconnections that vary greatly in duration. Despite the prevalence of these multi-homed mobile devices, today's operating systems on both mobile hosts and fixed Internet servers lack fine-grained support for network applications on intermittently connected hosts. We argue that network communication is well-modeled by a session abstraction, and present Migrate, an architecture based on system support for a flexible session primitive. Migrate works with application-selected naming services to enable seamless, mobile "suspend/resume" operation of legacy applications and provide enhanced functionality for mobileaware, session-based network applications, enabling adaptive operation of mobile clients and allowing Internet servers to support large numbers of intermittently connected sessions. We describe our UNIX-based implementation of Migrate and show that sessions are a flexible, robust, and efficient way to manage mobile end points, even for legacy applications. In addition, we demonstrate two popular Internet servers that have been extended to leverage our novel notion of session continuations to enable support for large numbers of suspended clients with only minimal resource impact. Experimental results show that Migrate introduces only minor throughput degradation (less than 2% for moderate block sizes) when used over popular access link technologies, gracefully detects and suspends disconnected sessions, rapidly resumes from suspension, and integrates well with existing applications. Thesis Supervisor: Hari Balakrishnan Title: Associate Professor of Computer Science and Engineering Thesis Supervisor: M. Frans Kaashoek Title: Professor of Computer Science and Engineering

[1]  Barton P. Miller,et al.  Reliable network connections , 2002, MobiCom '02.

[2]  Tatu Ylonen,et al.  SSH: secure login connections over the internet , 1996 .

[3]  Ahmed Helmy,et al.  A multicast-based protocol for IP mobility support , 2000, Networked Group Communication.

[4]  Keith A. Lantz,et al.  Preemptable remote execution facilities for the V-system , 1985, SOSP 1985.

[5]  Vinton G. Cerf,et al.  The DoD Internet Architecture Model , 1983, Comput. Networks.

[6]  Robert Morris A Weakness in the 4.2BSD Unix† TCP/IP Software , 1999 .

[7]  A. L. Narasimha Reddy,et al.  A client oriented, IP level redirection mechanism , 1999, IEEE INFOCOM '99. Conference on Computer Communications. Proceedings. Eighteenth Annual Joint Conference of the IEEE Computer and Communications Societies. The Future is Now (Cat. No.99CH36320).

[8]  Larry L. Peterson,et al.  Making paths explicit in the Scout operating system , 1996, OSDI '96.

[9]  B. Bershad,et al.  Migration for Pervasive Applications , 2002 .

[10]  Bruce J. Walker,et al.  The LOCUS Distributed System Architecture , 1986 .

[11]  William Allen Simpson,et al.  The Point-to-Point Protocol (PPP) , 1993, RFC.

[12]  Robert Grimm,et al.  Programming for Pervasive Computing Environments , 2001 .

[13]  Vern Paxson,et al.  Computing TCP's Retransmission Timer , 2000, RFC.

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

[15]  Miron Livny,et al.  Condor-a hunter of idle workstations , 1988, [1988] Proceedings. The 8th International Conference on Distributed.

[16]  Sally Floyd,et al.  TCP Selective Acknowledgment Options , 1996, RFC.

[17]  Charles E. Perkins,et al.  IP Encapsulation within IP , 1996, RFC.

[18]  Mary Baker,et al.  Flexible Network Support for Mobile Hosts , 2001, Mob. Networks Appl..

[19]  W. Richard Stevens,et al.  TCP/IP Illustrated, Volume 1: The Protocols , 1994 .

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

[21]  Guido Appenzeller,et al.  The mobile people architecture , 1999, MOCO.

[22]  David R. Karger,et al.  Chord: A scalable peer-to-peer lookup service for internet applications , 2001, SIGCOMM '01.

[23]  Paramvir Bahl,et al.  Wake on wireless: an event driven energy saving strategy for battery operated devices , 2002, MobiCom '02.

[24]  Alex C. Snoeren,et al.  Adaptive inverse multiplexing for wide-area wireless networks , 1999, Seamless Interconnection for Universal Services. Global Telecommunications Conference. GLOBECOM'99. (Cat. No.99CH37042).

[25]  Harrick M. Vin,et al.  Transparent Mobility with Minimal Infrastructure , 2001 .

[26]  Vaduvur Bharghavan,et al.  A new multicasting-based architecture for Internet host mobility , 1997, MobiCom '97.

[27]  David Thaler,et al.  Multipath Issues in Unicast and Multicast Next-Hop Selection , 2000, RFC.

[28]  Luca Cardelli,et al.  Mobile Ambients , 1998, FoSSaCS.

[29]  H. Zimmermann,et al.  OSI Reference Model - The ISO Model of Architecture for Open Systems Interconnection , 1980, IEEE Transactions on Communications.

[30]  Amin Vahdat,et al.  Active Names: flexible location and transport of wide-area resources , 1999, Proceedings DARPA Active Networks Conference and Exposition.

[31]  Yoshito Tobe,et al.  MobileSocket: toward continuous operation for Java applications , 1999, Proceedings Eight International Conference on Computer Communications and Networks (Cat. No.99EX370).

[32]  Hideyuki Tokuda,et al.  TCP-R: TCP mobility support for continuous operation , 1997, Proceedings 1997 International Conference on Network Protocols.

[33]  Peter Druschel,et al.  Resource containers: a new facility for resource management in server systems , 1999, OSDI '99.

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

[35]  Ion Stoica,et al.  A Waypoint Service Approach to Connect Heterogeneous Internet Address Spaces , 2001, USENIX Annual Technical Conference, General Track.

[36]  James Gettys,et al.  The X window system , 1990 .

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

[38]  Paul Ferguson,et al.  Network Ingress Filtering: Defeating Denial of Service Attacks which employ IP Source Address Spoofing , 1998, RFC.

[39]  J. Postel,et al.  File transfer protocol (FTP) , 1985 .

[40]  Roy T. Fielding,et al.  Hypertext Transfer Protocol - HTTP/1.0 , 1996, RFC.

[41]  John Nagle,et al.  Congestion control in IP/TCP internetworks , 1995, CCRV.

[42]  Pyda Srisuresh,et al.  Traditional IP Network Address Translator (Traditional NAT) , 2001, RFC.

[43]  Bruce Zenel,et al.  A general purpose proxy filtering mechanism applied to the mobile environment , 1997, MobiCom '97.

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

[45]  Stephen E. Deering,et al.  Internet Protocol, Version 6 (IPv6) Specification , 1995, RFC.

[46]  W. Richard Stevens,et al.  TCP Slow Start, Congestion Avoidance, Fast Retransmit, and Fast Recovery Algorithms , 1997, RFC.

[47]  Gerald Q. Maguire,et al.  IP-based protocols for mobile internetworking , 1991, SIGCOMM 1991.

[48]  Donald S. Fussell,et al.  Compressed caching and modern virtual memory simulation , 1999 .

[49]  Jon Postel,et al.  User Datagram Protocol , 1980, RFC.

[50]  Robbert van Renesse,et al.  FLIP: an internetwork protocol for supporting distributed systems , 1993, TOCS.

[51]  Lixia Zhang,et al.  Stream Control Transmission Protocol , 2000, RFC.

[52]  Chieh-Yih Wan,et al.  Comparison of IP micromobility protocols , 2002, IEEE Wirel. Commun..

[53]  Hugo Krawczyk,et al.  A Security Architecture for the Internet Protocol , 1999, IBM Syst. J..

[54]  Charles E. Perkins,et al.  Route Optimization for Mobile IP , 1998, Cluster Computing.

[55]  Hari Balakrishnan,et al.  TESLA: A Transparent, Extensible Session-Layer Architecture for End-to-end Network Services , 2003, USENIX Symposium on Internet Technologies and Systems.

[56]  Andrew Birrell,et al.  Implementing Remote procedure calls , 1983, SOSP '83.

[57]  Keith Bostic,et al.  The design and implementa-tion of the 4.4BSD operating system , 1996 .

[58]  Liviu Iftode,et al.  Improving the Performance of Reliable Transport Protocols in Mobile Computing Environments , 1994, IEEE J. Sel. Areas Commun..

[59]  Lei Gao,et al.  Using Mobile Extensions to Support Disconnected Services , 2000 .

[60]  Jon Postel,et al.  Telnet Protocol Specification , 1980, RFC.

[61]  John C. Reynolds,et al.  The discoveries of continuations , 1993, LISP Symb. Comput..

[62]  Xun Qu A Mobile Tcp Socket , 1997 .

[63]  Anne-Marie Kermarrec,et al.  Introducing contextual objects in an adaptive framework for wide-area mobile computing , 1998, EW 8.

[64]  David M. Kristol,et al.  HTTP State Management Mechanism , 2000, RFC.

[65]  Mahadev Satyanarayanan,et al.  Agile application-aware adaptation for mobility , 1997, SOSP.

[66]  Jason Nieh,et al.  Proceedings of the 5th Symposium on Operating Systems Design and Implementation , 2022 .

[67]  Arjen K. Lenstra,et al.  Selecting Cryptographic Key Sizes , 2000, Public Key Cryptography.

[68]  Srinivasan Seshan,et al.  SPAND: Shared Passive Network Performance Discovery , 1997, USENIX Symposium on Internet Technologies and Systems.

[69]  Srinivasan Seshan,et al.  An integrated congestion management architecture for Internet hosts , 1999, SIGCOMM '99.

[70]  Mike Hibler,et al.  Interface and execution models in the Fluke kernel , 1999, OSDI '99.

[71]  Steven M. Bellovin,et al.  Defending against Sequence Number Attacks , 2012, RFC.

[72]  Liviu Iftode,et al.  Mi-gratory tcp: Highly available internet services using connection migration , 2001, IEEE International Conference on Distributed Computing Systems.

[73]  Paul V. Mockapetris,et al.  Development of the domain name system , 1988, SIGCOMM '88.

[74]  Henning Schulzrinne,et al.  Personal Mobility for Multimedia Services in the Internet , 1996, IDMS.

[75]  Nael B. Abu-Ghazaleh,et al.  A concurrent migration extension to an end-to-end host mobility architecture , 2001, MOCO.

[76]  Brian Wellington,et al.  Secure Domain Name System (DNS) Dynamic Update , 2000, RFC.

[77]  Henning Schulzrinne,et al.  RTP: A Transport Protocol for Real-Time Applications , 1996, RFC.

[78]  Ronald L. Rivest,et al.  The MD5 Message-Digest Algorithm , 1992, RFC.

[79]  Thomas Narten,et al.  IPv6 Stateless Address Autoconfiguration , 1996, RFC.

[80]  Hari Balakrishnan,et al.  Resilient overlay networks , 2001, SOSP.

[81]  Mike Hibler,et al.  An integrated experimental environment for distributed systems and networks , 2002, OSDI '02.

[82]  Maria Ebling,et al.  Exploiting weak connectivity for mobile file access , 1995, SOSP.

[83]  Leslie Lamport,et al.  Password authentication with insecure communication , 1981, CACM.

[84]  Son K. Dao,et al.  A "persistent connection" model for mobile and distributed systems , 1995, Proceedings of Fourth International Conference on Computer Communications and Networks - IC3N'95.

[85]  Jon Postel,et al.  Transmission Control Protocol , 1981, RFC.

[86]  Mahadev Satyanarayanan,et al.  Fundamental challenges in mobile computing , 1996, PODC '96.

[87]  Luigi Rizzo,et al.  Dummynet: a simple approach to the evaluation of network protocols , 1997, CCRV.

[88]  Srinivasan Seshan,et al.  Improving reliable transport and handoff performance in cellular wireless networks , 1995, Wirel. Networks.

[89]  M. Frans Kaashoek,et al.  Mobile Computing with the Rover Toolkit , 1997, IEEE Trans. Computers.

[90]  David R. Karger,et al.  INS/Twine: A Scalable Peer-to-Peer Architecture for Intentional Resource Discovery , 2002, Pervasive.

[91]  Donald E. Eastlake,et al.  Domain Name System Security Extensions , 1997, RFC.

[92]  Erich M. Nahum,et al.  Locality-aware request distribution in cluster-based network servers , 1998, ASPLOS VIII.

[93]  Robert Tappan Morris,et al.  DNS performance and the effectiveness of caching , 2001, IMW '01.

[94]  Jerome H. Saltzer,et al.  On the Naming and Binding of Network Destinations , 1993, RFC.

[95]  Satish K. Tripathi,et al.  Network layer mobility: an architecture and survey , 1996, IEEE Wirel. Commun..

[96]  Aruna Seneviratne,et al.  SLM, a framework for session layer mobility management , 1999, Proceedings Eight International Conference on Computer Communications and Networks (Cat. No.99EX370).

[97]  Fumio Teraoka,et al.  A network architecture providing host migration transparency , 1991, SIGCOMM 1991.

[98]  Brian N. Bershad,et al.  Using continuations to implement thread management and communication in operating systems , 1991, SOSP '91.

[99]  M. Baker,et al.  Internet Mobility 4x4 , 1996, SIGCOMM.

[100]  Jason Nieh,et al.  Mobile Communication with Virtual Network Address Translation , 2002 .

[101]  William Adjie-Winoto,et al.  The design and implementation of an intentional naming system , 2000, OPSR.

[102]  David R. Cheriton,et al.  An Architecture for Content Routing Support in the Internet , 2001, USITS.

[103]  Charles E. Perkins,et al.  Mobile IPv4 Challenge/Response Extensions , 2000, RFC.

[104]  Neil Haller,et al.  The S/KEY One-Time Password System , 1995, RFC.

[105]  Gabriel Montenegro,et al.  Reverse Tunneling for Mobile IP, revised , 2001, RFC.

[106]  Jyh-Cheng Chen,et al.  Mobility Management in a SIP Environment Requirements, Functions and Issues , 2000 .

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

[108]  Internet Architecture Board,et al.  IAB Considerations for UNilateral Self-Address Fixing (UNSAF) Across Network Address Translation , 2002, RFC.

[109]  Jonathan Walpole,et al.  Dynamic network reconfiguration support for mobile computers , 1997, MobiCom '97.

[110]  Fred Douglis Transparent process migration in the Sprite operating system , 1990 .

[111]  Raj Srinivasan,et al.  Binding Protocols for ONC RPC Version 2 , 1995, RFC.

[112]  T. Dierks,et al.  The TLS protocol , 1999 .

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

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

[115]  Stephen E. Deering,et al.  Host extensions for IP multicasting , 1986, RFC.

[116]  Willy Zwaenepoel,et al.  IO-lite: a unified I/O buffering and caching system , 1999, OSDI '99.

[117]  Mary Baker,et al.  Analysis of a local-area wireless network , 2000, MobiCom '00.

[118]  J. Noel Chiappa,et al.  The Nimrod Routing Architecture , 1996, RFC.