1 TCP Meets Mobile Code Parveen PatelDavid Wetherall Jay Lepreau Andrew Whitaker (Univ. of Utah) (Univ. of Washington)

Slides:



Advertisements
Similar presentations
Encrypting Wireless Data with VPN Techniques
Advertisements

Chapter 17 Networking Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design Principles, 6/E William.
Camarillo / Schulzrinne / Kantola November 26th, 2001 SIP over SCTP performance analysis
CCNA – Network Fundamentals
Module 5: TLS and SSL 1. Overview Transport Layer Security Overview Secure Socket Layer Overview SSL Termination SSL in the Hosted Environment Load Balanced.
Transmission Control Protocol (TCP)
SCTP Tutorial Randall Stewart
Network Isolation Using Group Policy and IPSec Paula Kiernan Senior Consultant Ward Solutions.
The Aerospace Clinic 2002 Team Members Nick Hertl (Project Manager) Will Berriel Richard Fujiyama Chip Bradford Faculty Advisor Professor Michael Erlinger.
LAB#2 JAVA SECURITY OVERVIEW Prepared by: I.Raniah Alghamdi.
CS 268: Active Networks Ion Stoica May 6, 2002 (* Based on David Wheterall presentation from SOSP ’99)
1 Hybrid Resource Control for Active Extensions Parveen Patel Jay Lepreau University of Utah.
Programmability with Proof-Carrying Code George C. Necula University of California Berkeley Peter Lee Carnegie Mellon University.
Mobile Agents: A Key for Effective Pervasive Computing Roberto Speicys Cardoso & Fabio Kon University of São Paulo - Brazil.
Aleksandar Kuzmanovic & Edward W. Knightly A Performance vs. Trust Perspective in the Design of End-Point Congestion Control Protocols.
1 Upgrading Transport Protocols using Untrusted Mobile Code Parveen Patel Andrew Whitaker Jay Lepreau David Wetherall Tim Stack (Univ. of Washington) (Univ.
DCP: The Datagram Control Protocol Eiman Zolfaghari E190 – Technical Communications Professor Hatton April 2002.
1 Summer Report Reporter : Yi-Cheng Lin Data: 2008/09/02.
Datagram Congestion Control Protocol Timothy Sohn Eiman Zolfaghari CS268 Project May 15, 2002.
Wireless Application Protocol (WAP) Reference: Chapter 12, section 2, Wireless Communications and Networks, by William Stallings, Prentice Hall.
Gursharan Singh Tatla Transport Layer 16-May
Week #10 Objectives: Remote Access and Mobile Computing Configure Mobile Computer and Device Settings Configure Remote Desktop and Remote Assistance for.
Christopher Bednarz Justin Jones Prof. Xiang ECE 4986 Fall Department of Electrical and Computer Engineering University.
1 Transport Layer Computer Networks. 2 Where are we?
SOCKS Group: Challenger Member: Lichun Zhan. Agenda Introduction SOCKS v4 SOCKS v5 Summary Conclusion References Questions.
Chapter 17 Networking Dave Bremer Otago Polytechnic, N.Z. ©2008, Prentice Hall Operating Systems: Internals and Design Principles, 6/E William Stallings.
13/09/2015 Michael Chai; Behrouz Forouzan Staffordshire University School of Computing Transport layer and Application Layer Slide 1.
Honeypot and Intrusion Detection System
1 Liquid Software Larry Peterson Princeton University John Hartman University of Arizona
Defense by Amit Saha March 25 th, 2004, Rice University ANTS : A Toolkit for Building and Dynamically Deploying Network Protocols David Wetherall, John.
1 Version 3.0 Module 11 TCP Application and Transport.
Wireless Access and Terminal Mobility in CORBA Dimple Kaul, Arundhati Kogekar, Stoyan Paunov.
1 22 August 2001 The Security Architecture of the M&M Mobile Agent Framework P. Marques, N. Santos, L. Silva, J. Silva CISUC, University of Coimbra, Portugal.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 OSI Transport Layer Network Fundamentals – Chapter 4.
ICOM 6115©Manuel Rodriguez-Martinez ICOM 6115 – Computer Networks and the WWW Manuel Rodriguez-Martinez, Ph.D. Lecture 26.
The Socket API Unit – Background 4.2 The Socket Metaphor In IPC
Transmission Control Protocol TCP. Transport layer function.
CCNA 1 v3.0 Module 11 TCP/IP Transport and Application Layers.
Reconsidering Internet Mobility Alex C. Snoeren, Hari Balakrishnan, M. Frans Kaashoek MIT Laboratory for Computer Science.
Lecture 6: Sun: 8/5/1435 Distributed Applications Lecturer/ Kawther Abas CS- 492 : Distributed system & Parallel Processing.
CSCI 465 D ata Communications and Networks Lecture 27 Martin van Bommel CSCI 465 Data Communications & Networks 1.
ISA SERVER 2004 Group members : Sagar Bhakta – [intro] Orit Ahmed – [installation] Michael Wijaya [advantages] Rene Salazar - [features]
SOCKS By BITSnBYTES (Bhargavi, Maya, Priya, Rajini and Shruti)
Wireless and Mobile Security
1 Isolating Web Programs in Modern Browser Architectures CS6204: Cloud Environment Spring 2011.
Application Communities Phase II Technical Progress, Instrumentation, System Design, Plans March 10, 2009.
GRID ANATOMY Advanced Computing Concepts – Dr. Emmanuel Pilli.
4343 X2 – The Transport Layer Tanenbaum Ch.6.
Uni Innsbruck Informatik th IETF, PMTUD WG: Path MTU Discovery Using Options draft-welzl-pmtud-options-01.txt Michael Welzl
Anetd and the Abone SRI International Livio Ricciulli.
Monitoring Dynamic IOC Installations Using the alive Record Dohn Arms Beamline Controls & Data Acquisition Group Advanced Photon Source.
Represented BY:- Allauddin Ahmad.  What it is?  OSI model.  History.  Objectives.  Encapsulation and decapsulation.  Multiplexing and demultiplexing.
3. END-TO-END PROTOCOLS (PART 1) Rocky K. C. Chang Department of Computing The Hong Kong Polytechnic University 22 March
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Internet Protocol Version4 (IPv4)
SERVERS. General Design Issues  Server Definition  Type of server organizing  Contacting to a server Iterative Concurrent Globally assign end points.
IST 201 Chapter 11 Lecture 2. Ports Used by TCP & UDP Keep track of different types of transmissions crossing the network simultaneously. Combination.
UDP Socket Programming
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S
Client-Server Communication
Securing the Network Perimeter with ISA 2004
Transport Layer.
Long-haul Transport Protocols
TCP-in-UDP draft-welzl-irtf-iccrg-tcp-in-udp-00.txt
Chapter 6: Transport Layer (Part I)
SCTP v/s TCP – A Comparison of Transport Protocols for Web Traffic
Transport Protocols Relates to Lab 5. An overview of the transport protocols of the TCP/IP protocol suite. Also, a short discussion of UDP.
TCP - Part I Relates to Lab 5. First module on TCP which covers packet format, data transfer, and connection management.
AAA: A Survey and a Policy- Based Architecture and Framework
Introduction to Computer Networks
Sending data to EUROSTAT using STATEL and STADIUM web client
Presentation transcript:

1 TCP Meets Mobile Code Parveen PatelDavid Wetherall Jay Lepreau Andrew Whitaker (Univ. of Utah) (Univ. of Washington)

2 The Key Idea Transport protocols, such as TCP, need a better upgrade mechanism Untrusted mobile code will work!

3 TCP is a work-in-progress A steady stream of TCP extensions and new transport protocols TCP SACK (1996) TCP Connection Migration (2000) ECN and ECN nonce (2001) TCP Nice (2002) TFRC (2000) DCCP (2002) SCTP (2002) …

4 Upgrading TCP takes forever Research and simulation Prototype Standards committee Implementation in OS 1 Implementation in OS 2 … Addition into standard build OS 1 Addition into standard build OS 2 … Enable by default Enable by default on peer

5 Lousy fallback: one-ended change Immediate deployment for self benefit Does not always work  Can’t exchange new information Does not work very well  Lose the benefit of cooperation between both ends

6 Survey of transport extensions

7 Our Solution: XTCP Connection peers can upgrade each other with new transport protocols using mobile code Deployment at one end is all we need !

8 Upgrading with XTCP is faster Research and simulation Prototype Standards committee Implementation to the XTCP API Implementation in OS 1 Implementation in OS 2 … Addition into standard build OS 1 Addition into standard build OS 2 … Enable by default Enable by default on peer

9 XTCP usage scenario #1 (Download TCP-HP) Server Client A web server pushes a “high-performance” TCP to its clients the first time they connect

10 XTCP usage scenario #2 (Download TCP-Migrate) ServerClient A mobile client pushes “TCP connection migration” [MobiCom ’00] to a server to allow itself to move

11 XTCP usage scenario #3 (With TCP-Nice) Host A Host B A user installs “TCP nice” [OSDI ’02] to support background data transfer

12 Will it work ? XTCP sounds similar to the challenging domain of active networking Challenges can be met in this restricted domain

13 XTCP Challenges 1. Host safety – must isolate and limit resource consumption 2. Network safety – should not compete unfairly or attack other nodes 3. Performance – should not undermine improvement due to extensions

14 XTCP Design Sockets Layer XTCP Network Layer APPLICATION 1 Download manager Compiler TCP-B TCP-A XTCP SANDBOX XTCP API

15 1. Host safety No shared state between extensions  Easy resource accounting  Easy termination Memory safety: type-safety of Cyclone CPU timer-based CPU protection

16 2. Network safety Well-defined notion of network safety  TCP-friendliness [RFC 2914]  TCP response function is mathematically defined [SIGCOMM ’98] Enforcement without trusting transports  Adapt ECN nonce mechanism is used for validation [ICNP ’01]

17 Nonce Mechanism [unstrusted red, trusted green components] XTCP TCP-A datagram with nonce send (seq_no) XTCP TCP-A Datagram with nonce senderreceiver

18 Nonce Mechanism XTCP TCP-A ack+nonce XTCP TCP-A send_ack ack+nonce sender receiver ack (seq_no, nonce)

19 3. Performance Connections proceed without delays  Code is downloaded out-of-band  Benefits later connections Efficient to share data between the C- based kernel and Cyclone code  No garbage collection  Lightweight runtime

20 Status Prototype in FreeBSD 4.7 Modest memory and CPU cost  CPU cost is 80% more than base TCP on the sender side, without any optimizations. Ported TCP Friendly UDP, TCP NewReno and TCP SACK to the XTCP API User-level version in progress

21 It works! UDP

22 It works! TCP

23 Open research issues TCP rate policing function  Quickly detect unresponsive extensions  Admit all responsive extensions XTCP API  Must be sufficient and portable

24 Conclusions Transport protocols need self upgrade mechanism Mobile code works !  Constrained domain and recent advances Mathematical definition of TCP response function (1998) Cyclone (2002)

25 END OF TALK …. BACKUP/DETAIL SLIDES

26 Policies Applications can use socket options Administrators can set policies Policy daemons can collaborate

27 Granularity of extensions Transport protocols are written to the XTCP API Complete transport protocols are transferred over the network  Retains the way protocols are written now  Maximum flexibility  Maximum simplicity  Code is not large: 85K compressed source

28 Connection setup and code loading

29 Network safety TCP friendly network access API  xtcp_net_send (seq_no)  xtcp_net_resend (seq_no)  xtcp_net_ack (seq_no, nonce)  xtcp_net_acksum (seq_no, nonce_sum)

30 A Fourth Challenge: Deployment of XTCP framework Benefits self Can only harm self Deployment only needed at end points TCP-friendliness is non-threatening