Fine-Grained Failover Using Connection Migration Alex C. Snoeren, David G. Andersen, Hari Balakrishnan MIT Laboratory for Computer Science.

Slides:



Advertisements
Similar presentations
Jaringan Informasi Pengantar Sistem Terdistribusi oleh Ir. Risanuri Hidayat, M.Sc.
Advertisements

Communication Protocols II Ninth Meeting. TCP/IP family.
CS3505 The Internet and Info Hiway transport layer protocols : TCP/UDP.
U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science Emery Berger University of Massachusetts Amherst Operating Systems CMPSCI 377 Lecture.
Csc333 Data communication & Networking Credit: 2.
Network Layer and Transport Layer.
ConnectionMigration 818L Network Centric Computing Spring 2002 Ishan Banerjee.
1 Network Measurements of a Wireless Classroom Network Carey Williamson Nuha Kamaluddeen Department of Computer Science University of Calgary.
Distributed components
M. S. Thesis Defense, 09/24/20011 Migratory TCP (MTCP) Transport Layer Support for Highly- Available Network Services Kiran Srinivasan DisCoLab Division.
OCT1 Principles From Chapter One of “Distributed Systems Concepts and Design”
1 Migratory TCP: Connection Migration for Service Continuity in the Internet* Florin Sultan, Kiran Srinivasan, Deepa Iyer, Liviu Iftode Department of Computer.
TCP Splicing for URL-aware Redirection
Anycast Jennifer Rexford Advanced Computer Networks Tuesdays/Thursdays 1:30pm-2:50pm.
FIREWALLS & NETWORK SECURITY with Intrusion Detection and VPNs, 2 nd ed. 6 Packet Filtering By Whitman, Mattord, & Austin© 2008 Course Technology.
Data Networking Fundamentals Unit 7 7/2/ Modified by: Brierley.
COS 461: Computer Networks
©Brooks/Cole, 2003 Chapter 6 Computer Networks. ©Brooks/Cole, 2003 Understand the rationale for the existence of networks. Distinguish between the three.
1 Content Distribution Networks. 2 Replication Issues Request distribution: how to transparently distribute requests for content among replication servers.
Enabling Internet “Suspend/Resume” with Session Continuations Alex C. Snoeren MIT Laboratory for Computer Science (with Hari Balakrishnan, Frans Kaashoek,
ATIF MEHMOOD MALIK KASHIF SIDDIQUE Improving dependability of Cloud Computing with Fault Tolerance and High Availability.
Serval: Software Defined Service-Centric Networking Jen Rexford Erik Nordstrom, David Shue, Prem Gopalan, Rob Kiefer, Mat Arye, Steven Ko, Mike Freedman.
Packet Filtering. 2 Objectives Describe packets and packet filtering Explain the approaches to packet filtering Recommend specific filtering rules.
Human-Computer Interface Course 5. ISPs and Internet connection.
DNS and HTTP CS 168. Domain Name Service Host addresses: e.g., – a number used by protocols – conforms to network structure (the “where”)
TCP Mobility/Splicing Francis Chang Systems Software Lab OGI.
Lesson 24. Protocols and the OSI Model. Objectives At the end of this Presentation, you will be able to:
Connection Migration: Why & How Hari Balakrishnan Networks and Mobile Systems Group MIT Lab for Computer Science Joint work with.
Layer 4 of the TCP/IP protocol stack: Application level Services: TELNET, FTP, SMTP, HTTP, DNS, RIP, NFS Hierarchy of protocols and services.
Presentation on Osi & TCP/IP MODEL
Chapter 6: Packet Filtering
Layered Protocol. 2 Types of Networks by Logical Connectivity Peer to Peer and Client-Server Peer-to-peer Networks  Every computer can communicate directly.
Our Last Class!!  summary  what does the future look like?
Networks – Network Architecture Network architecture is specification of design principles (including data formats and procedures) for creating a network.
Othman Othman M.M., Koji Okamura Kyushu University 1.
Redundancy. 2. Redundancy 2 the need for redundancy EPICS is a great software, but lacks redundancy support which is essential for some highly critical.
Wireless Networks of Devices (WIND) Hari Balakrishnan and John Guttag MIT Lab for Computer Science NTT-MIT Meeting, January 2000.
Sharing the Network It slices, it dices, it sequences ….. All of this and error checking too!
Network Protocols A network protocol defines the structure of messages sent over the network We will only talk about the Internet Network protocols need.
Geneva, Switzerland, 11 June 2012 Switching and routing in Future Network John Grant Nine Tiles
Fundamentals of Proxying. Proxy Server Fundamentals  Proxy simply means acting on someone other’s behalf  A Proxy acts on behalf of the client or user.
Data Communications and Computer Networks Chapter 2 CS 3830 Lecture 8 Omar Meqdadi Department of Computer Science and Software Engineering University of.
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S
Transport Layer COM211 Communications and Networks CDA College Theodoros Christophides
Reconsidering Internet Mobility Alex C. Snoeren, Hari Balakrishnan, M. Frans Kaashoek MIT Laboratory for Computer Science.
LEGS: A WSRF Service to Estimate Latency between Arbitrary Hosts on the Internet R.Vijayprasanth 1, R. Kavithaa 2,3 and Raj Kettimuthu 2,3 1 Coimbatore.
Interfaces and Services Each layer provides a service to the layer above it. A service is a set of primitive operations. Under UNIX, primitives are implemented.
CMSC Presentation An End-to-End Approach to Host Mobility An End-to-End Approach to Host Mobility Alex C. Snoeren and Hari Balakrishnan Alex C. Snoeren.
Internet Overview (Chapter 1 in [2]). 2 Outline History of the Internet History of the Internet Seven Layers of the OSI Model Seven Layers of the OSI.
CPSC 4411 CPSC 441: Computer Communications Carey Williamson Department of Computer Science University of Calgary.
INTERNET AND PROTOCOLS For more notes and topics visit: eITnotes.com.
Computer Network Architecture Lecture 6: OSI Model Layers Examples 1 20/12/2012.
HyperText Transfer Protocol (HTTP) Deepti Kulkarni CISC 856: TCP/IP and Upper Layer Protocols Fall 2008 Acknowledgements Professor Amer Richi Gupta.
Virtual Machine Movement and Hyper-V Replica
COMPUTER NETWORKS Hwajung Lee. Image Source:
Chapter 1 Characterization of Distributed Systems
COMP2322 Lab 6 TCP Steven Lee Mar 29, 2017.
Chris Meullion Preston Burden Dwight Philpotts John C. Jones-Walker
Chapter 6 The Transport Layer.
Processes The most important processes used in Web-based systems and their internal organization.
Data Networking Fundamentals
Distributed Systems Bina Ramamurthy 11/12/2018 From the CDK text.
Distributed Systems Bina Ramamurthy 11/30/2018 B.Ramamurthy.
Distributed Systems Bina Ramamurthy 12/2/2018 B.Ramamurthy.
Lecture 2: Overview of TCP/IP protocol
Lecture 3: Secure Network Architecture
TCP Protocol Analysis Access UMKC Home Page.
Distributed Systems Bina Ramamurthy 4/22/2019 B.Ramamurthy.
TCP Protocol Analysis Access UMKC Home Page.
Presentation transcript:

Fine-Grained Failover Using Connection Migration Alex C. Snoeren, David G. Andersen, Hari Balakrishnan MIT Laboratory for Computer Science

The Problem Servers Fail. More often than users want to know… ClientContent server

Solution: Server Redundancy Use a healthy one at all times.

1.Health Monitoring 2.Server Selection 3.Connection Resumption Failover Components

Today’s Replication Technology DNS/Content Routing Wide-area replication  Need client awareness Layer 4/Web Switches Transparent, possibly mid-stream failover  Requires co-location DNS Web Switch

Wide area replication  Yet somehow synchronize replica servers Transparent failover  Enable other servers to continue connections Ideal Technology

Stream Mapping  Infer application state from transport layer information Connection Migration  Transparently hand off sessions between servers Migrate Architecture Stream Mapper

Stream Mapping HTTP OK Content-Length: Content-Type: video/mpeg GET /StreamingContent.mpg HTTP/1.1 Client: Server Response: Stream Map: TCP SeqNo TCP ISS ClientObject (URL)Offset (TCP SeqNo) :4234/StreamingContent.mpg083346

Anatomy of Failover Client Support Group Initial Connection Migrated Connection

Support Groups Set of partially mirrored servers  All servers able to provide same content  Can be topologically diverse Synchronize on per-connection basis  Servers need not be complete mirrors  Connections from a failed server can be handled by a different support server  Connections may have distinct support groups

Soft State Synchronization Synchronize within support groups  Periodic advertisements  Advertise client application object requests  Communicate initial transport layer state Only initial state need be communicated  Current info inferred from transport layer  Clients will reject redundant migrates from stale support servers

TCP Connection Migration 1.Initial SYN 2.SYN/ACK 3.ACK (with data) 4.Normal data transfer 5.Migrate SYN 6.Migrate SYN/ACK 7.ACK (with data) clientserver

TCP Connection Migration 1.Initial SYN 2.SYN/ACK 3.ACK (with data) 4.Normal data transfer 5.Migrate SYN 6.Migrate SYN/ACK 7.ACK (with data) clientserver

TCP Connection Migration 1.Initial SYN 2.SYN/ACK 3.ACK (with data) 4.Normal data transfer 5.Migrate SYN 6.Migrate SYN/ACK 7.ACK (with data) clientserver failover server :546414(536) ack SYN :533525(0) ack current SYN :083521(0) (migrate T, R) stale

Implementation Server App Client Stream Mapping Wedges Software “Wedge”  Stream Mapping  Synchronization Wedge

Wedge Overhead e+06 1e Microseconds per request Request size (Kbytes) Wedge Direct

Experimental Topology Client initiates a transfer to A… Linux/Apache 1.3 then migrates to B… and back to A… 128Kbs links

Varying Oscillation Rates e Goodput (bytes) Time (secs) No Oscillations 10 sec 12 sec 2 sec 5 sec

Benefits & Limitations Enable wide area server replication  Low server synchronization overhead  Infer current state from transport layer Robust even under adverse loads  Health monitors can be overly reactive  Gracefully handle cascaded failures Leverages connection migration  Requires modern transport stack

Software available on the web: Networks and Mobile Systems