Reconsidering Internet Mobility Alex C. Snoeren, Hari Balakrishnan, M. Frans Kaashoek MIT Laboratory for Computer Science.

Slides:



Advertisements
Similar presentations
CSE 413: Computer Networks
Advertisements

Chapter 17 Networking Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design Principles, 6/E William.
ConnectionMigration 818L Network Centric Computing Spring 2002 Ishan Banerjee.
Data and Computer Communications Eighth Edition by William Stallings Lecture slides by Lawrie Brown Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based.
Data and Computer Communications Eighth Edition by William Stallings Lecture slides by Lawrie Brown Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based.
PROTOCOLS AND ARCHITECTURE Lesson 2 NETS2150/2850.
Socket Programming.
MOBILITY SUPPORT IN IPv6
Protocols and the TCP/IP Suite Chapter 4 (Stallings Book)
Protocols and the TCP/IP Suite
Networking Support In Java Nelson Padua-Perez Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
William Stallings Data and Computer Communications 7 th Edition (Selected slides used for lectures at Bina Nusantara University) Transport Layer.
1 School of Computing Science Simon Fraser University CMPT 771/471: Internet Architecture and Protocols Socket Programming Instructor: Dr. Mohamed Hefeeda.
William Stallings Data and Computer Communications 7 th Edition Chapter 2 Protocols and Architecture.
Department of Electronic Engineering City University of Hong Kong EE3900 Computer Networks Transport Protocols Slide 1 Transport Protocols.
Data Networking Fundamentals Unit 7 7/2/ Modified by: Brierley.
COS 461: Computer Networks
TCP: Software for Reliable Communication. Spring 2002Computer Networks Applications Internet: a Collection of Disparate Networks Different goals: Speed,
COE 342: Data & Computer Communications (T042) Dr. Marwan Abu-Amara Chapter 2: Protocols and Architecture.
Gursharan Singh Tatla Transport Layer 16-May
OIS Model TCP/IP Model.
Protocols and the TCP/IP Suite Chapter 4. Multilayer communication. A series of layers, each built upon the one below it. The purpose of each layer is.
Enabling Internet “Suspend/Resume” with Session Continuations Alex C. Snoeren MIT Laboratory for Computer Science (with Hari Balakrishnan, Frans Kaashoek,
1 Proxy-based Adaptation for Mobile Computing ECET 581 Spring 07 Authors: Markus Endler Hana Rubinsztejn Ricardo C. A. da Rocha Vagner Sacramento ISSN.
Host Mobility for IP Networks CSCI 6704 Group Presentation presented by Ye Liang, ChongZhi Wang, XueHai Wang March 13, 2004.
MobileSocket Toward Continuous Operation for Java Applications Tadashi OKOSHI Graduate School of Media and Governance Keio University, JAPAN
Chapter 17 Networking Dave Bremer Otago Polytechnic, N.Z. ©2008, Prentice Hall Operating Systems: Internals and Design Principles, 6/E William Stallings.
Data and Computer Communications Eighth Edition by William Stallings Lecture slides by Lawrie Brown Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based.
Presentation on Osi & TCP/IP MODEL
What is a Protocol A set of definitions and rules defining the method by which data is transferred between two or more entities or systems. The key elements.
Remote Access Chapter 4. Learning Objectives Understand implications of IEEE 802.1x and how it is used Understand VPN technology and its uses for securing.
Protocols and the TCP/IP Suite
LWIP TCP/IP Stack 김백규.
Session-Based Mobility An End-to-End Approach Alex C. Snoeren MIT Laboratory for Computer Science (with Hari Balakrishnan, Frans Kaashoek, and Jon Salz)
William Stallings Data and Computer Communications 7 th Edition Data Communications and Networks Overview Protocols and Architecture.
Lect1..ppt - 01/06/05 CDA 6505 Network Architecture and Client/Server Computing Lecture 2 Protocols and the TCP/IP Suite by Zornitza Genova Prodanoff.
Data and Computer Communications Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based Applications 1.
Introduction to Networks CS587x Lecture 1 Department of Computer Science Iowa State University.
Wireless Access and Terminal Mobility in CORBA Dimple Kaul, Arundhati Kogekar, Stoyan Paunov.
Chapter 1. Introduction. By Sanghyun Ahn, Deot. Of Computer Science and Statistics, University of Seoul A Brief Networking History §Internet – started.
CS 6401 Internetworking Outline Internet Architecture Best Effort Service Model.
Data and Computer Communications Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based Applications.
University of the Western Cape Chapter 12: The Transport Layer.
Fundamentals of Computer Networks ECE 478/578 Lecture #19: Transport Layer Instructor: Loukas Lazos Dept of Electrical and Computer Engineering University.
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 2.5 Internetworking Chapter 25 (Transport Protocols, UDP and TCP, Protocol Port Numbers)
Dr. John P. Abraham Professor University of Texas Pan American Internet Applications and Network Programming.
1. I NTRODUCTION TO N ETWORKS Network programming is surprisingly easy in Java ◦ Most of the classes relevant to network programming are in the java.net.
Internetworking Internet: A network among networks, or a network of networks Allows accommodation of multiple network technologies Universal Service Routers.
Chapter 2 Applications and Layered Architectures Sockets.
Chapter 2 Protocols and the TCP/IP Suite 1 Chapter 2 Protocols and the TCP/IP Suite.
TCP/IP Protocol Architecture CSE 3213 – Fall
An Architecture to Support Context-Aware Applications
CHAPTER 4 PROTOCOLS AND THE TCP/IP SUITE Acknowledgement: The Slides Were Provided By Cory Beard, William Stallings For Their Textbook “Wireless Communication.
1 ECEN “Internet Protocols and Modeling”, Spring 2011 Slide 5.
1 Network Communications A Brief Introduction. 2 Network Communications.
Lecture 14 Mobile IP. Mobile IP (or MIP) is an Internet Engineering Task Force (IETF) standard communications protocol that is designed to allow mobile.
TUNALIData Communications1 Chapter 2 Protocols and Architecture.
Date: April. 13, Monday Evening.
Protocols and the TCP/IP Suite
Reliable Sockets: A Foundation for Mobile Communications
Chris Meullion Preston Burden Dwight Philpotts John C. Jones-Walker
Net 431: ADVANCED COMPUTER NETWORKS
Client-Server Interaction
Protocols and the TCP/IP Suite
Data and Computer Communications by William Stallings Eighth Edition
ECEN “Internet Protocols and Modeling”
Lecture 6: TCP/IP Networking 1nd semester By: Adal ALashban.
Lecture 2: Overview of TCP/IP protocol
Protocols and the TCP/IP Suite
Computer Networking A Top-Down Approach Featuring the Internet
Presentation transcript:

Reconsidering Internet Mobility Alex C. Snoeren, Hari Balakrishnan, M. Frans Kaashoek MIT Laboratory for Computer Science

A Model of Mobility Hosts change attachment point  Move from home, to office, to …  Use multiple physical technologies Mobility events are rare  When compared with packet RTTs Long Running Applications  SSH Tunnels  Streaming apps

Services Required Locate the mobile host or service Preserve communication  Support changes in network attachment Expect and support disconnection  Gracefully detect lack of connectivity  Conserve resources during disconnection  Reconnect quickly and efficiently Keep the application informed!

Naming is not Enough Naming can abstract location details  E.g., Mobile IP uses “home IP address”  But specifies both timing and granularity Mobility is more than a naming problem  Apps need different semantics (IP, DNS)  Handle resolution failures (disconnection)  Lookup granularity is application specific Don’t prescribe a naming scheme!

 Proxies provide transparency  Applications oblivious to changes  Must highly engineer and place well The Problem with Proxies WAP Proxy End host support more flexible  Can integrate with other resources  Simplifies trust model  Can be equally transparent

Migrate Architecture Naming Service (Dynamic DNS) Mobile Host foo.bar.edu Location Query (DNS Lookup) Session Initiation xxx.xxx.xxx.xxx Correspondent Host Location Update (DNS Update) Session Migration yyy.yyy.yyy.yyy

Positioning Mobility Services Kernel User space Application Network Layer Link Layer Session Layer Transport Protocol Transparency Generality

Migrate Approach Provide services in a Session Layer  Applications define what a “session” is: A single RPC-like packet exchange A bundle of semantically-related streams Or any combination in between Manage sessions as a group Resources can be associated with network activity, and allocated accordingly Support is strictly optional

Session Layer Services Provide robust communication across changes of end-point addresses  Resynchronize transport protocols Detect and handle disconnectivity  Buffer, discard, or distill connections Manage related system resources  Memory, timers, files, devices Marshall and store session state

A Conference Session vic vat wb Session Layer DiscardDistill Buffer Application Resources System Resources User spaceKernel

Application Migrate Framework Session Layer Network Layer Link Layer Transport Protocol Session Creation Connectivity Monitor Connectivity Updates Policy Engine Policy Decisions Session Callbacks

Robust Communication Application Session Layer TCP Handle disconnection  Block or buffer sockets of reliable connections  Proactively discard unreliable datagrams Restart transport layers?  Rebind network endpoints  Replay buffered data TCP

Disconnection and Hibernation Monitor network connectivity  Exploit transport/network layer signals  Support application hints  Interface with network monitoring agents Support application-dependent behavior  Default handlers can spool to disk  Virtualize remote services  Invoke application-specific handlers

Resource Management Notify application to hibernate  Blocked apps can be swapped out  Shared files and devices can be released System resources can be reallocated  Similar to Resource Containers  Timers, locks, semaphores released  Buffer space drained/paged

State Management Enable state migration  Associate application and system state  Transfer from kernel to app, host to host Context management  State may depend on path characteristics  Support transcoding, different transport protocol, etc.

Summary Mobility services are session oriented  Often several related network activities Naming neither necessary nor sufficient  Applications have different needs Resource management is key  Especially with large numbers of hibernated sessions Sessions enable state management

The Session API Session creation  Applications specify resources and end points (e.g. TCP connections, UDP port/address pairs) Connectivity Monitor  Status can be signaled from above (application), below (transport stack), or separate monitor Callback Register  Applications can register to be notified on disconnection, reconnection, and/or changes in network attachment point

Supporting Disconnection Current approaches: Generally do not address disconnection  Proxies often assumed always connected Our approach: Handle unexpected disconnections  Many disconnections are unplanned

Reconnection Hosts contact correspondent peers  “Lost” hosts may force naming lookup  Session state is resynchronized Transport sessions may need to be restarted Application processing resumed  Notification of reconnection delivered  System resources are reallocated

Enabling graceful reconnection Current approaches: Obscure network characteristics  Hide path dynamics & resource availability Our approach: Notify higher layers of changes  Enable application adaptation Eliminate lower-layer dependence  Enable rebinding of network endpoints

A Model of Mobility Move from home, to office, to coffee shop, across multiple access technologies, all without restarting applications. Periods between movement >> Round Trip Times