Multipath TCP in Practice (Work in Progress) Mark Handley Damon Wischik Costin Raiciu Alan Ford

Size: px
Start display at page:

Download "Multipath TCP in Practice (Work in Progress) Mark Handley Damon Wischik Costin Raiciu Alan Ford"

Transcription

1 Multipath TCP in Practice (Work in Progress) Mark Handley Damon Wischik Costin Raiciu Alan Ford

2 The difference between theory and practice is in theory somewhat smaller than in practice. In theory, this quote actually originated somewhere. In practice it is impossible for us to know...

3 Designing an effective Multipath TCP requires a balance between theory and pragmatics Three parts to practical MP-TCP: Desirable packet-level dynamics. Deployable protocol design. Effective heuristics for using the protocol.

4 Desirable packet-level congestion control dynamics.

5 Selfish: Safety: Network: Improve throughput for applications. Improve reliability for applications. Co-exist gracefully with existing single-path TCP flows. Pool resources where possible. Move traffic away from congestion. Predictable behaviour.

6 Implications Window-based protocol Get at least as much throughput as a single-path TCP on the best of the MP-TCP paths. Through a single bottleneck, subflows shouldn t get more than a single TCP flow. RTT dependency.

7 Starting point: a window-based version of a coupled congestion controller.

8 Coupling the subflows is fair, even if they all go through the same bottleneck. x 1 x 2 x 1 + x 2 = y y So coupled MP-TCP will be fair to normal TCP.

9 So, how well does it work in practice? How much more congested is the red link than the blue one?

10 Coupled subflows Uncoupled TCP flows (Epsilon controls the degree of coupling)

11 But what if the load is dynamic? 8 on/off TCP flows 1 multipath flow 3 long lived TCP flows Parameters set so mean loss rate is roughly the same on both paths

12 Coupled subflows Uncoupled TCP flows (Epsilon controls the degree of coupling)

13 Effect of dynamic load 8 on/off TCP flows 3 long lived TCP flows Coupling tries to equalize the loss With unequal loss, will move almost all traffic off the more congested path. On/off flows briefly congest the top path. Coupled algorithm rapidly moves almost all traffic off top path. On/off flows briefly underload the top path. Coupled algorithm is sending so little traffic on top path and increases so slowly it doesn t notice until after the transient underload has passed.

14 Self-interference Consider the ideal case where we have equal random loss on two identical paths. Might hope coupling would split traffic equally across both paths. Subflow window on path 2 Traffic flaps between one path and the other Subflow window on path 1

15 Loss rates are never precisely equal. The coupled congestion controller gets stuck on one path, then after a random time flaps to the other path. Regular TCP Flows Coupled Subflows

16 What to do? Apply some sort of damping? But will be even slower to respond to real changes in load. Compromise on resource pooling a little? Build in some sense of history? Better resource pooling when conditions are stable More responsive when conditions are varying

17 Compromise solution? =1 is an interesting case. Reasonable load balancing, good equipoise. Very simple algorithm.

18 =1 is an algorithm that just links the increases.

19 The linked increases algorithm does not flap. loss on path i: p i window on path i: w i Stable fixed point: w 1 p 1 = w 2 p 2 Does not attempt to completely equalize losses, so doesn t move all the traffic off a more congested path.

20 The linked increases algorithm has nice properties, but isn t sufficient by itself. It s not naturally fair to TCP when multiple subflows go through the same bottleneck. When RTTs on the subflows are dissimilar, it can get poor throughput. But the dynamics are pretty good, so these are just a question of scaling the aggressiveness.

21 Differing round trip times can influence throughput significantly. 1. For the same loss rate, linked increases will equalize the windows of the subflows. 2. For the same bandwidth, an equal number of flows will give a lower loss rate on a higher RTT path.

22 An example: Consider first the throughput when the loss rates and RTTs are equal. w 1 = 10 RTT 1 =10ms => 1000pkts/s Src p 1 = p 2 Dst w 2 = 10 RTT 2 =10ms => 1000pkts/s Total rate = 2000 pkts/s

23 The linked increases algorithm gets low throughput when the round trip times are different. But a regular TCP on on path 1 would get 2000pkts/s w 1 = 10 RTT 1 =10ms => 1000pkts/s Src Dst w 2 = 10 RTT 2 =100ms => 100pkts/s Total rate = 1100 pkts/s

24 We can correct for this, but first we need to decide what a desirable outcome would be. Goal 1: Improve Throughput Do at least as well as a single-path flow on the best path. Goal 2: Do no harm. Affect other flows no more than a single-path flow on their path. Goal 3: Balance congestion Move the maximum amount of traffic off the more congested path

25 We can make the linked increases algorithm fair by simply scaling the increase function. a is the aggressiveness. It doesn t change relative window sizes, so doesn t affect Goal 3: move traffic away from congestion. By tuning a, we can also achieve Goal 1: improve throughput and Goal 2: do no harm.

26 The value of a can be calculated from the window sizes and the RTTs of the subflows. w^ is the equilibrium window, but experiments show the instantaneous window can be used.

27 RTT compensation is effective; MPTCP implementation over WiFi and 3G

28 Load balancing of a multihomed server A minority of MP-TCP flows can balance the traffic of single-path TCP flows at a multihomed server. 5 and 15 TCP flows, add 10 MP-TCP flows 15 and 25 TCP flows, add 10 MP-TCP flows

29 Can we design a deployable MP-TCP protocol?

30 What does deployable MP-TCP actually mean? Protocol works at least as well as regular TCP. Always works when a regular TCP would work. Falls back to regular TCP when path or endpoint is not MP-TCP capable. Plays nicely with all the strange middleboxes that are out there. Simple and secure.

31 TCP Packet Header Bit 0 Bit 15 Bit 16 Bit 31 Source Port Destination Port Sequence Number Header Length Reserved Acknowledgment Number Code bits Receive Window 20 Bytes Checksum Urgent Pointer Options 0-40 Bytes Data

32 Negotiation Send MP-CAPABLE option on SYN packet. If receive MP-CAPABLE on SYN/ACK packet. else enable MPTCP and establish additional subflows as required. fallback to regular TCP behaviour.

33 Sequence Numbers Packets go multiple paths. Need sequence numbers to put them back in sequence. Need sequence numbers to infer loss on a single path. Options: One sequence space shared across all paths? One sequence space per path, plus an extra one to put data back in the correct order at the receiver?

34 Sequence Numbers One sequence number per path is preferable. Loss inference is more reliable. Some firewalls/proxies expect to see all the sequence numbers on a path. Outer TCP header holds subflow sequence numbers. Where do we put the data sequence numbers?

35 TCP Packet Header Bit 0 Bit 15 Bit 16 Bit 31 Subflow Source Port SubflowDestination Port Header Length Subflow Sequence Number Subflow Acknowledgment Number Reserved Checksum Code bits Data sequence number? Options Receive Window Urgent Pointer 20 Bytes 0-40 Bytes Data sequence number? Data

36 Data Sequence Number It s a little cleaner to put the data sequence number in an option. Assume this; actually quite a big debate though.

37 TCP Packet Header Bit 0 Bit 15 Bit 16 Bit 31 Subflow Source Port SubflowDestination Port Header Length Subflow Sequence Number Subflow Acknowledgment Number Reserved Checksum Code bits [Data sequence number] Options Receive Window Urgent Pointer 20 Bytes What does this this now now mean? 0-40 Bytes Data

38 Receive Window Regular TCP: receive window is the amount of buffer the receiver has available beyond the cumulative ack. Flow control: sender can t send data receiver doesn t have buffering for. Receive window must therefore refer to data sequence space, not subflow sequence space. Relative to which Ack? Really want a Data Acknowledgment field.

39 TCP Packet Header Bit 0 Bit 15 Bit 16 Bit 31 Subflow Source Port Header Length Subflow Sequence Number Subflow Acknowledgment Number Reserved Checksum Code bits [Data sequence number] Options Data SubflowDestination Port DataReceive Windowrelative to Urgent Pointer 20 Bytes 0-40 Bytes [Data acknowledgment number]

40 How big must the receive window be? Need to be able to lose a packet on largest delay subflow, resend, and have the other subflows not fill the receive buffer. If sender cannot fast-retransmit, must wait for a timeout:

41 Problems, problems, problems... TCP offload engines may re-segment TCP packets, replicating options on all segments. Firewalls may drop packets with options. Firewalls may remove options from packets. Proxies may ack data before it s received by receiver. Proxies may report their window, not the receiver s. Proxies/NATs may rewrite/extend/shrink payload and fix up sequence numbers accordingly. Normalizers may ensure retransmissions are consistent with the original data. Firewalls may rewrite sequence numbers in packets.

42 The Resegmentation Problem We cannot guarantee the segmentation of data into packets we send is what is actually received. Implicit mapping of subflow sequence numbers to data sequence numbers in an option is unreliable. Can t just supply a data sequence number; needs to be an explicit data sequence number mapping. But subflow sequence numbers get re-written (eg, by pf) Data seqno must be absolute, Subflow seqno must be relative to start of flow. Need a mapping length to cope with resegmentation where only the first packet gets the option added.

43 TCP Packet Header Bit 0 Bit 15 Bit 16 Bit 31 Subflow Source Port Header Length Subflow Sequence Number Subflow Acknowledgment Number Reserved Checksum Code bits Data SubflowDestination Port DataReceive Windowrelative to Urgent Pointer 20 Bytes [Subflow seqno, length -> Data seqno] [Data acknowledgment number] 0-40 Bytes

44 Smart NAT What happens if a NAT rewrites content, changing its length? Gap or overlap in data sequence number mapping. Disaster - cannot recover! DSN mapping must carry a checksum. Checksum fails, drop the subflow. Unless it s the only subflow: Initiate a new subflow between the same addresses Signal an infinite mapping, basically falling back to regular TCP with no further explicit mappings Drop the failed subflow.

45 TCP Packet Header Bit 0 Bit 15 Bit 16 Bit 31 Subflow Source Port Header Length Subflow Sequence Number Subflow Acknowledgment Number Reserved Checksum Code bits Data SubflowDestination Port DataReceive Windowrelative to Urgent Pointer 20 Bytes [Subflow seqno, length -> Data seqno, checksum] [Data acknowledgment number] 0-40 Bytes

46 More issues Lots: What do you do when you receive data for which there s no mapping? Silently drop; sender will retransmit? Ack at subflow, drop at data level? Wrong answer to this leads to potential deadlocks when proxies manipulate receive window. Etc, etc.

47 Heuristics and Open Issues When should we start an additional subflow? Which address pair to use? What should slowstart behaviour be? When should you resend data on a different subflow? When is performance on a subflow so bad we should give up on it. Or should we send redundant data on it, as a placeholder? How should costs (in $ ) factor in to which subflows are used? How does multipath performance trade off against battery life on smart phones and similar devices? Can we factor latency into path choice for delay-sensitive apps? Or is that a recipe for instability?

48 Conclusions Practical congestion control is never simple. Multipath multiply so. Design of deployable extensions to TCP in the presence of creative middleboxes is just painful. No way to verify design decisions short of widespread deployment. Resulting changes are no longer simple. We think we have a design that falls back gracefully to regular TCP behaviour. Will still confuse intrusion detection systems, etc, which no longer see the whole connection.

An Overview of Multipath TCP

An Overview of Multipath TCP An Overview of Multipath TCP Olivier Bonaventure, Mark Handley, and Costin Raiciu Olivier Bonaventure is a Professor at Catholic University of Louvain, Belgium. His research focus is primarily on Internet

More information

Lecture 16: Multi-path TCP"

Lecture 16: Multi-path TCP Lecture 16: Multi-path TCP" CSE 222A: Computer Communication Networks Alex C. Snoeren Thanks: Costin Raiciu Lecture 16 Overview" TCP review MPTCP Overview 2 TCP Connection Setup HTTP server listening on

More information

The following reference answers are based on the trace files provided with the text book, which can be downloaded from the textbook website.

The following reference answers are based on the trace files provided with the text book, which can be downloaded from the textbook website. Wireshark Lab 3 TCP The following reference answers are based on the trace files provided with the text book, which can be downloaded from the textbook website. TCP Basics Answer the following questions

More information

Lecture 15: Congestion Control. CSE 123: Computer Networks Stefan Savage

Lecture 15: Congestion Control. CSE 123: Computer Networks Stefan Savage Lecture 15: Congestion Control CSE 123: Computer Networks Stefan Savage Overview Yesterday: TCP & UDP overview Connection setup Flow control: resource exhaustion at end node Today: Congestion control Resource

More information

How Hard Can It Be? Designing and Implementing a Deployable Multipath TCP

How Hard Can It Be? Designing and Implementing a Deployable Multipath TCP How Hard Can It Be? Designing and Implementing a Deployable Multipath TCP Costin Raiciu, Christoph Paasch, Sebastien Barre, Alan Ford, Michio Honda, Fabien Duchene, Olivier Bonaventure and Mark Handley

More information

Data Center Networking with Multipath TCP

Data Center Networking with Multipath TCP Data Center Networking with Multipath TCP Costin Raiciu, Christopher Pluntke, Sebastien Barre, Adam Greenhalgh, Damon Wischik, Mark Handley Hotnets 2010 報 告 者 : 莊 延 安 Outline Introduction Analysis Conclusion

More information

Multipath TCP design, and application to data centers. Damon Wischik, Mark Handley, Costin Raiciu, Christopher Pluntke

Multipath TCP design, and application to data centers. Damon Wischik, Mark Handley, Costin Raiciu, Christopher Pluntke Multipath TCP design, and application to data centers Damon Wischik, Mark Handley, Costin Raiciu, Christopher Pluntke Packet switching pools circuits. Multipath pools links : it is Packet Switching 2.0.

More information

Transmission Control Protocol (TCP) A brief summary

Transmission Control Protocol (TCP) A brief summary Transmission Control Protocol (TCP) A brief summary TCP Basics TCP (RFC 793) is a connection-oriented transport protocol TCP entities only present at hosts (end-end) retain state of each open connection

More information

Boosting mobility performance with Multi-Path TCP

Boosting mobility performance with Multi-Path TCP Boosting mobility performance with Multi-Path TCP Name SURNAME 1, Name SURNAME 2 1 Organisation, Address, City, Postcode, Country Tel: +countrycode localcode number, Fax: + countrycode localcode number,

More information

Internet Ideal: Simple Network Model

Internet Ideal: Simple Network Model Middleboxes Reading: Ch. 8.4 Internet Ideal: Simple Network Model Globally unique identifiers Each node has a unique, fixed IP address reachable from everyone and everywhere Simple packet forwarding Network

More information

Lab 3. According to above figure, the client computer (source) s IP address is and the TPC port number is 1161.

Lab 3. According to above figure, the client computer (source) s IP address is and the TPC port number is 1161. Lab 3 1. What is the IP address and TCP port number used by the client computer (source) that is transferring the file to gaia.cs.umass.edu? To answer this question, it s probably easiest to select an

More information

Flow processing and the rise of the middle.

Flow processing and the rise of the middle. Flow processing and the rise of the middle. Mark Handley, UCL With acknowledgments to Michio Honda, Laurent Mathy, Costin Raiciu, Olivier Bonaventure, and Felipe Huici. Part 1 Today s Internet Protocol

More information

Data Networks Summer 2007 Homework #3

Data Networks Summer 2007 Homework #3 Data Networks Summer Homework # Assigned June 8, Due June in class Name: Email: Student ID: Problem Total Points Problem ( points) Host A is transferring a file of size L to host B using a TCP connection.

More information

This sequence diagram was generated with EventStudio System Designer (http://www.eventhelix.com/eventstudio).

This sequence diagram was generated with EventStudio System Designer (http://www.eventhelix.com/eventstudio). Client App Network Server App 25-May-13 15:32 (Page 1) This sequence diagram was generated with EventStudio System Designer (http://www.eventhelix.com/eventstudio). TCP is an end to end protocol which

More information

Middleboxes. Firewalls. Internet Ideal: Simple Network Model. Internet Reality. Middleboxes. Firewalls. Globally unique idenpfiers

Middleboxes. Firewalls. Internet Ideal: Simple Network Model. Internet Reality. Middleboxes. Firewalls. Globally unique idenpfiers Ideal: Simple Network Model Middleboxes Jennifer Rexford COS 461: Computer Networks Lectures: MW 10-10:50am in Architecture N101 hgp://www.cs.princeton.edu/courses/archive/spr12/cos461/ Globally unique

More information

Multipath TCP in Data Centres (work in progress)

Multipath TCP in Data Centres (work in progress) Multipath TCP in Data Centres (work in progress) Costin Raiciu Joint work with Christopher Pluntke, Adam Greenhalgh, Sebastien Barre, Mark Handley, Damon Wischik Data Centre Trends Cloud services are driving

More information

TCP and Wireless Networks Classical Approaches Optimizations TCP for 2.5G/3G Systems. Lehrstuhl für Informatik 4 Kommunikation und verteilte Systeme

TCP and Wireless Networks Classical Approaches Optimizations TCP for 2.5G/3G Systems. Lehrstuhl für Informatik 4 Kommunikation und verteilte Systeme Chapter 2 Technical Basics: Layer 1 Methods for Medium Access: Layer 2 Chapter 3 Wireless Networks: Bluetooth, WLAN, WirelessMAN, WirelessWAN Mobile Networks: GSM, GPRS, UMTS Chapter 4 Mobility on the

More information

TCP (Transmission Control Protocol)

TCP (Transmission Control Protocol) TCP (Transmission Control Protocol) Originally defined in RFC 793 (September 1981) UDP features: multiplexing + protection against bit errors Ports, checksum Connection-oriented Establishment and teardown

More information

Mobile Communications Chapter 9: Mobile Transport Layer

Mobile Communications Chapter 9: Mobile Transport Layer Mobile Communications Chapter 9: Mobile Transport Layer Motivation TCP-mechanisms Classical approaches Indirect TCP Snooping TCP Mobile TCP PEPs in general Additional optimizations Fast retransmit/recovery

More information

CS268 Exam Solutions. 1) End-to-End (20 pts)

CS268 Exam Solutions. 1) End-to-End (20 pts) CS268 Exam Solutions General comments: ) If you would like a re-grade, submit in email a complete explanation of why your solution should be re-graded. Quote parts of your solution if necessary. In person

More information

TCP in Wireless Mobile Networks

TCP in Wireless Mobile Networks TCP in Wireless Mobile Networks 1 Outline Introduction to transport layer Introduction to TCP (Internet) congestion control Congestion control in wireless networks 2 Transport Layer v.s. Network Layer

More information

Transport Layer Protocols

Transport Layer Protocols Transport Layer Protocols Version. Transport layer performs two main tasks for the application layer by using the network layer. It provides end to end communication between two applications, and implements

More information

- TCP and UDP - Transport Layer Protocols

- TCP and UDP - Transport Layer Protocols 1 Transport Layer Protocols - TCP and UDP - The Transport layer (OSI Layer-4) does not actually transport data, despite its name. Instead, this layer is responsible for the reliable transfer of data, by

More information

TCP: Overview RFCs: 793, 1122, 1323, 2018, 2581

TCP: Overview RFCs: 793, 1122, 1323, 2018, 2581 TCP: Overview RFCs: 793, 1122, 1323, 2018, 2581 socket door point-to-point: one sender, one receiver reliable, in-order byte steam: no message boundaries pipelined: TCP congestion and flow control set

More information

Lecture Objectives. Lecture 07 Mobile Networks: TCP in Wireless Networks. Agenda. TCP Flow Control. Flow Control Can Limit Throughput (1)

Lecture Objectives. Lecture 07 Mobile Networks: TCP in Wireless Networks. Agenda. TCP Flow Control. Flow Control Can Limit Throughput (1) Lecture Objectives Wireless and Mobile Systems Design Lecture 07 Mobile Networks: TCP in Wireless Networks Describe TCP s flow control mechanism Describe operation of TCP Reno and TCP Vegas, including

More information

Design, implementation and evaluation of congestion control for multipath TCP

Design, implementation and evaluation of congestion control for multipath TCP Design, implementation and evaluation of congestion control for multipath TCP Damon Wischik, Costin Raiciu, Adam Greenhalgh, Mark Handley University College London ABSTRACT Multipath TCP, as proposed by

More information

CSE 473 Introduction to Computer Networks. Exam 2 Solutions. Your name: 10/31/2013

CSE 473 Introduction to Computer Networks. Exam 2 Solutions. Your name: 10/31/2013 CSE 473 Introduction to Computer Networks Jon Turner Exam Solutions Your name: 0/3/03. (0 points). Consider a circular DHT with 7 nodes numbered 0,,...,6, where the nodes cache key-values pairs for 60

More information

Computer Networks. Chapter 5 Transport Protocols

Computer Networks. Chapter 5 Transport Protocols Computer Networks Chapter 5 Transport Protocols Transport Protocol Provides end-to-end transport Hides the network details Transport protocol or service (TS) offers: Different types of services QoS Data

More information

COMP 3331/9331: Computer Networks and Applications. Lab Exercise 3: TCP and UDP (Solutions)

COMP 3331/9331: Computer Networks and Applications. Lab Exercise 3: TCP and UDP (Solutions) COMP 3331/9331: Computer Networks and Applications Lab Exercise 3: TCP and UDP (Solutions) AIM To investigate the behaviour of TCP and UDP in greater detail. EXPERIMENT 1: Understanding TCP Basics Tools

More information

17: Queue Management. Queuing. Mark Handley

17: Queue Management. Queuing. Mark Handley 17: Queue Management Mark Handley Queuing The primary purpose of a queue in an IP router is to smooth out bursty arrivals, so that the network utilization can be high. But queues add delay and cause jitter.

More information

CSCE 463/612 Networks and Distributed Processing Spring 2016

CSCE 463/612 Networks and Distributed Processing Spring 2016 CSCE 463/612 Networks and Distributed Processing Spring 2016 Transport Layer IV Dmitri Loguinov Texas A&M University March 10, 2016 Original slides copyright 1996-2004 J.F Kurose and K.W. Ross 1 Chapter

More information

Names & Addresses. Names & Addresses. Hop-by-Hop Packet Forwarding. Longest-Prefix-Match Forwarding. Longest-Prefix-Match Forwarding

Names & Addresses. Names & Addresses. Hop-by-Hop Packet Forwarding. Longest-Prefix-Match Forwarding. Longest-Prefix-Match Forwarding Names & Addresses EE 122: IP Forwarding and Transport Protocols Scott Shenker http://inst.eecs.berkeley.edu/~ee122/ (Materials with thanks to Vern Paxson, Jennifer Rexford, and colleagues at UC Berkeley)

More information

The Transmission Control Protocol (TCP): Lecture 1

The Transmission Control Protocol (TCP): Lecture 1 Today s Lecture The Transmission Control Protocol (TCP): Lecture 1 I. TCP overview II. The TCP Header III. Connection establishment and termination Internet Protocols CSC / ECE 573 Fall, 2005 N. C. State

More information

Data Communication & Networks G22.2262-001. Session 9 - Main Theme The Internet Transport Protocols: TCP, UDP. Dr. Jean-Claude Franchitti

Data Communication & Networks G22.2262-001. Session 9 - Main Theme The Internet Transport Protocols: TCP, UDP. Dr. Jean-Claude Franchitti Data Communication & Networks G22.2262-001 Session 9 - Main Theme The Internet Transport Protocols: TCP, UDP Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute

More information

Outline. TCP connection setup/data transfer. 15-441 Computer Networking. TCP Reliability. Congestion sources and collapse. Congestion control basics

Outline. TCP connection setup/data transfer. 15-441 Computer Networking. TCP Reliability. Congestion sources and collapse. Congestion control basics Outline 15-441 Computer Networking Lecture 8 TCP & Congestion Control TCP connection setup/data transfer TCP Reliability Congestion sources and collapse Congestion control basics Lecture 8: 09-23-2002

More information

Overview. Lecture 4: Congestion Control TCP. Transport. A Bit of History TCP. Internet is a network of networks

Overview. Lecture 4: Congestion Control TCP. Transport. A Bit of History TCP. Internet is a network of networks Overview Internet is a network of networks Lecture 4: Congestion Control Narrow waist of IP: unreliable, best-effort datagram delivery Packet forwarding: input port to output port Routing protocols: computing

More information

Before beginning this lab, you ll probably want to review sections 3.5 and 3.7 in the text. 1

Before beginning this lab, you ll probably want to review sections 3.5 and 3.7 in the text. 1 Wireshark Lab: TCP Version: 2.0 2007 J.F. Kurose, K.W. Ross. All Rights Reserved Computer Networking: A Topdown Approach, 4 th edition. In this lab, we ll investigate the behavior of TCP in detail. We

More information

Transmission Control Protocol (TCP) Reliable Connection-oriented Point-to-point Full-duplex Streams, not messages

Transmission Control Protocol (TCP) Reliable Connection-oriented Point-to-point Full-duplex Streams, not messages Transmission Control Protocol (TCP) Reliable Connection-oriented Point-to-point Full-duplex Streams, not messages Initialization: 3 Way Handshake Initiator SYN (Synchronization Sequence Number) SYN = ISN

More information

Chapter 3 Transport Layer

Chapter 3 Transport Layer Chapter 3 Transport Layer All material copyright 1996-2009 J.F Kurose and K.W. Ross, All Rights Reserved Computer Networking: A Top Down Approach 5 th edition. Jim Kurose, Keith Ross Addison-Wesley, April

More information

La couche transport dans l'internet (la suite TCP/IP)

La couche transport dans l'internet (la suite TCP/IP) La couche transport dans l'internet (la suite TCP/IP) C. Pham Université de Pau et des Pays de l Adour Département Informatique http://www.univ-pau.fr/~cpham Congduc.Pham@univ-pau.fr Cours de C. Pham,

More information

The Case Against Jumbo Frames. Richard A Steenbergen GTT Communications, Inc.

The Case Against Jumbo Frames. Richard A Steenbergen <ras@gtt.net> GTT Communications, Inc. The Case Against Jumbo Frames Richard A Steenbergen GTT Communications, Inc. 1 What s This All About? What the heck is a Jumbo Frame? Technically, the IEEE 802.3 Ethernet standard defines

More information

High Performance VPN Solutions Over Satellite Networks

High Performance VPN Solutions Over Satellite Networks High Performance VPN Solutions Over Satellite Networks Enhanced Packet Handling Both Accelerates And Encrypts High-Delay Satellite Circuits Characteristics of Satellite Networks? Satellite Networks have

More information

Due for Week Group of 3 (max) Percentage awarded for comments, coding practice, layout style, naming convention, completed task.

Due for Week Group of 3 (max) Percentage awarded for comments, coding practice, layout style, naming convention, completed task. EE4607 Project Goals Details Due for Week 11-12. Group of 3 (max) Percentage awarded for comments, coding practice, layout style, naming convention, completed task. Task Create a SDL implementation of

More information

TCP - Part I. Relates to Lab 5. First module on TCP which covers packet format, data transfer, and connection management.

TCP - Part I. Relates to Lab 5. First module on TCP which covers packet format, data transfer, and connection management. TCP - Part I Relates to Lab 5. First module on TCP which covers packet format, data transfer, and connection management. 1 Overview TCP = Transmission Control Protocol Connection-oriented protocol Provides

More information

Outline. Lecture 4: TCP TCP TCP. TCP Segment. How TCP Provides Reliability. Internetworking. TCP Transmission Control Protocol.

Outline. Lecture 4: TCP TCP TCP. TCP Segment. How TCP Provides Reliability. Internetworking. TCP Transmission Control Protocol. Internetworking Outline TCP Transmission Control Protocol RFC 793 (and several follow-ups) Literature: Lecture 4: TCP Forouzan, TCP/IP Protocol Suite: Ch 12 Connection Management Reliability Flow control

More information

Prefix AggregaNon. Company X and Company Y connect to the same ISP, and they are assigned the prefixes:

Prefix AggregaNon. Company X and Company Y connect to the same ISP, and they are assigned the prefixes: Data Transfer Consider transferring an enormous file of L bytes from Host A to B using a MSS of 1460 bytes and a 66 byte header. What is the maximum value of L such that TCP sequence numbers are not exhausted?

More information

Is it Still Possible to Extend TCP?

Is it Still Possible to Extend TCP? Is it Still Possible to Extend TCP? Michio Honda, Yoshifumi Nishida, Costin Raiciu, Adam Greenhalgh, Mark Handley, Hideyuki Tokuda Keio University, Universitatea Politehnica Bucuresti, University College

More information

Resource Pooling across the Internet. Mark Handley, UCL

Resource Pooling across the Internet. Mark Handley, UCL Resource Pooling across the Internet Mark Handley, UCL Resource Pooling Make a network's resources behave like a single pooled resource. Aim is to increase reliability, flexibility and efficiency. Method

More information

High-Speed TCP Performance Characterization under Various Operating Systems

High-Speed TCP Performance Characterization under Various Operating Systems High-Speed TCP Performance Characterization under Various Operating Systems Y. Iwanaga, K. Kumazoe, D. Cavendish, M.Tsuru and Y. Oie Kyushu Institute of Technology 68-4, Kawazu, Iizuka-shi, Fukuoka, 82-852,

More information

CS640: Introduction to Computer Networks. Transport Protocols. Functionality Split

CS640: Introduction to Computer Networks. Transport Protocols. Functionality Split CS640: Introduction to Computer Networks Aditya Akella Lecture 14 TCP I - Transport Protocols: TCP Segments, Flow control and Connection Setup Transport Protocols Lowest level endto-end protocol. Header

More information

tcpcrypt Andrea Bittau, Dan Boneh, Mike Hamburg, Mark Handley, David Mazières, Quinn Slack Stanford, UCL

tcpcrypt Andrea Bittau, Dan Boneh, Mike Hamburg, Mark Handley, David Mazières, Quinn Slack Stanford, UCL tcpcrypt Andrea Bittau, Dan Boneh, Mike Hamburg, Mark Handley, David Mazières, Quinn Slack! Stanford, UCL Reminder: project goal IPsec SSH TLS Unencrypted TCP traffic today Not drawn to scale Reminder:

More information

We will give some overview of firewalls. Figure 1 explains the position of a firewall. Figure 1: A Firewall

We will give some overview of firewalls. Figure 1 explains the position of a firewall. Figure 1: A Firewall Chapter 10 Firewall Firewalls are devices used to protect a local network from network based security threats while at the same time affording access to the wide area network and the internet. Basically,

More information

TCP - Introduction. Features of TCP

TCP - Introduction. Features of TCP TCP - Introduction The Internet Protocol (IP) provides unreliable datagram service between hosts The Transmission Control Protocol (TCP) provides reliable data delivery It uses IP for datagram delivery

More information

Visualizations and Correlations in Troubleshooting

Visualizations and Correlations in Troubleshooting Visualizations and Correlations in Troubleshooting Kevin Burns Comcast kevin_burns@cable.comcast.com 1 Comcast Technology Groups Cable CMTS, Modem, Edge Services Backbone Transport, Routing Converged Regional

More information

Improving DNS performance using Stateless TCP in FreeBSD 9

Improving DNS performance using Stateless TCP in FreeBSD 9 Improving DNS performance using Stateless TCP in FreeBSD 9 David Hayes, Mattia Rossi, Grenville Armitage Centre for Advanced Internet Architectures, Technical Report 101022A Swinburne University of Technology

More information

Transport-Layer Support for Interactive Multimedia Applications. Stephen McQuistin Colin Perkins

Transport-Layer Support for Interactive Multimedia Applications. Stephen McQuistin Colin Perkins Transport-Layer Support for Interactive Multimedia Applications Stephen McQuistin Colin Perkins Interactive Multimedia Applications Multimedia traffic comprises the majority of Internet traffic: 57% in

More information

Improving the Performance of TCP Using Window Adjustment Procedure and Bandwidth Estimation

Improving the Performance of TCP Using Window Adjustment Procedure and Bandwidth Estimation Improving the Performance of TCP Using Window Adjustment Procedure and Bandwidth Estimation R.Navaneethakrishnan Assistant Professor (SG) Bharathiyar College of Engineering and Technology, Karaikal, India.

More information

TCP. Raj Jain. Professor of CIS The Ohio State University Columbus, OH 43210 Raj Jain 20-1

TCP. Raj Jain. Professor of CIS The Ohio State University Columbus, OH 43210  Raj Jain 20-1 TCP Professor of CIS Columbus, OH 43210 Jain@ACM.Org http://www.cis.ohio-state.edu/~jain/ 20-1 Overview Key features, Header format Mechanisms, Implementation choices Slow start congestion avoidance, Fast

More information

Transport Layer: UDP vs. TCP

Transport Layer: UDP vs. TCP EEC 189Q: Computer Networks Transport Layer: UDP vs. TCP Reading: 8.4 & 8.5 Review: Internet Protocol Stack Application Telnet FTP HTTP Transport Network Link Physical bits on wire TCP LAN IP UDP Packet

More information

Before beginning this lab, you ll probably want to review sections 3.5 and 3.7 in the text. 1

Before beginning this lab, you ll probably want to review sections 3.5 and 3.7 in the text. 1 Ethereal Lab: TCP Version: July 2005 2005 J.F. Kurose, K.W. Ross. All Rights Reserved Computer Networking: A Topdown Approach Featuring the Internet, 3 rd edition. In this lab, we ll investigate the behavior

More information

Guide to TCP/IP Fourth Edition. Chapter 9: TCP/IP Transport Layer Protocols

Guide to TCP/IP Fourth Edition. Chapter 9: TCP/IP Transport Layer Protocols Guide to TCP/IP Fourth Edition Chapter 9: TCP/IP Transport Layer Protocols Objectives Explain the key features and functions of the User Datagram Protocol and the Transmission Control Protocol Explain,

More information

CHAPTER 24. Questions PRACTICE SET

CHAPTER 24. Questions PRACTICE SET CHAPTER 24 PRACTICE SET Questions Q24-1. The protocol field of the datagram defines the transport-layer protocol that should receive the transport-layer packet. If the value is 06, the protocol is TCP;

More information

Challenges of Sending Large Files Over Public Internet

Challenges of Sending Large Files Over Public Internet Challenges of Sending Large Files Over Public Internet CLICK TO EDIT MASTER TITLE STYLE JONATHAN SOLOMON SENIOR SALES & SYSTEM ENGINEER, ASPERA, INC. CLICK TO EDIT MASTER SUBTITLE STYLE OUTLINE Ø Setting

More information

Guide to TCP/IP, Third Edition. Chapter 5: Transport Layer TCP/IP Protocols

Guide to TCP/IP, Third Edition. Chapter 5: Transport Layer TCP/IP Protocols Guide to TCP/IP, Third Edition Chapter 5: Transport Layer TCP/IP Protocols Objectives Understand the key features and functions of the User Datagram Protocol Explain the mechanisms that drive segmentation,

More information

La couche transport dans l'internet (la suite TCP/IP)

La couche transport dans l'internet (la suite TCP/IP) La couche transport dans l'internet (la suite TCP/IP) C. Pham RESO-LIP/INRIA Université Lyon 1 http://www.ens-lyon.fr/~cpham Basé sur les transparent de Shivkumar Kalyanaraman La couche transport dans

More information

CSE331: Introduction to Networks and Security. Lecture 9 Fall 2006

CSE331: Introduction to Networks and Security. Lecture 9 Fall 2006 CSE33: Introduction to Networks and Security Lecture 9 Fall 2006 Announcements Project Due TODAY HW Due on Friday Midterm I will be held next Friday, Oct. 6th. Will cover all course material up to next

More information

Improving Effective WAN Throughput for Large Data Flows By Peter Sevcik and Rebecca Wetzel November 2008

Improving Effective WAN Throughput for Large Data Flows By Peter Sevcik and Rebecca Wetzel November 2008 Improving Effective WAN Throughput for Large Data Flows By Peter Sevcik and Rebecca Wetzel November 2008 When you buy a broadband Wide Area Network (WAN) you want to put the entire bandwidth capacity to

More information

15-441: Computer Networks Homework 2 Solution

15-441: Computer Networks Homework 2 Solution 5-44: omputer Networks Homework 2 Solution Assigned: September 25, 2002. Due: October 7, 2002 in class. In this homework you will test your understanding of the TP concepts taught in class including flow

More information

Computer Networking. TCP: Overview RFCs: 793, 1122, 1323, 2018, 2581

Computer Networking. TCP: Overview RFCs: 793, 1122, 1323, 2018, 2581 Computer Networking Connec1on- Oriented Transport: : Overview RFCs: 793, 1122, 1323, 2018, 2581 point- to- point: one sender, one receiver reliable, in- order byte steam: no message boundaries pipelined:

More information

A Survey on Congestion Control Mechanisms for Performance Improvement of TCP

A Survey on Congestion Control Mechanisms for Performance Improvement of TCP A Survey on Congestion Control Mechanisms for Performance Improvement of TCP Shital N. Karande Department of Computer Science Engineering, VIT, Pune, Maharashtra, India Sanjesh S. Pawale Department of

More information

CS514: Intermediate Course in Computer Systems

CS514: Intermediate Course in Computer Systems : Intermediate Course in Computer Systems Lecture 7: Sept. 19, 2003 Load Balancing Options Sources Lots of graphics and product description courtesy F5 website (www.f5.com) I believe F5 is market leader

More information

M U L T I P A T H T C P, P W N I N G T O D A Y S N E T W O R K S W I T H

M U L T I P A T H T C P, P W N I N G T O D A Y S N E T W O R K S W I T H M U L T I P A T H T C P, P W N I N G T O D A Y S N E T W O R K S W I T H T O M O R R O W S P R O T O C O L S. Catherine Pearce Catherine.pearce@neohapsis.com, twitter: @secvalve A B S T R A C T : MultiPath

More information

Good Ideas So Far Computer Networking. Outline. Sequence Number Space. Lecture 18 More TCP & Congestion Control. The devilish details of TCP

Good Ideas So Far Computer Networking. Outline. Sequence Number Space. Lecture 18 More TCP & Congestion Control. The devilish details of TCP Good Ideas So Far 15-441 Computer Networking Lecture 18 More TCP & Congestion Control Flow control Stop & wait Parallel stop & wait Sliding window (e.g., advertised windows) Loss recovery outs Acknowledgement-driven

More information

TFTP TRIVIAL FILE TRANSFER PROTOCOL OVERVIEW OF TFTP, A VERY SIMPLE FILE TRANSFER PROTOCOL FOR SIMPLE AND CONSTRAINED DEVICES

TFTP TRIVIAL FILE TRANSFER PROTOCOL OVERVIEW OF TFTP, A VERY SIMPLE FILE TRANSFER PROTOCOL FOR SIMPLE AND CONSTRAINED DEVICES TFTP - Trivial File TFTP Transfer Protocol TRIVIAL FILE TRANSFER PROTOCOL OVERVIEW OF TFTP, A VERY SIMPLE FILE TRANSFER PROTOCOL FOR SIMPLE AND CONSTRAINED DEVICES Peter R. Egli INDIGOO.COM 1/10 Contents

More information

Computer Networks COSC 6377

Computer Networks COSC 6377 Computer Networks COSC 6377 Lecture 25 Fall 2011 November 30, 2011 1 Announcements Grades will be sent to each student for verificagon P2 deadline extended 2 Large- scale computagon Search Engine Tasks

More information

TCP and UDP. Raj Jain. Professor of CIS The Ohio State University Columbus, OH

TCP and UDP. Raj Jain. Professor of CIS The Ohio State University Columbus, OH TCP and UDP Professor of CIS Columbus, OH 43210 Jain@ACM.Org http://www.cis.ohio-state.edu/~jain/ 12-1 Overview Key features Header format Mechanisms Implementation choices Slow start congestion avoidance

More information

B-2 Analyzing TCP/IP Networks with Wireshark. Ray Tompkins Founder of Gearbit www.gearbit.com

B-2 Analyzing TCP/IP Networks with Wireshark. Ray Tompkins Founder of Gearbit www.gearbit.com B-2 Analyzing TCP/IP Networks with Wireshark June 15, 2010 Ray Tompkins Founder of Gearbit www.gearbit.com SHARKFEST 10 Stanford University June 14-17, 2010 TCP In this session we will examine the details

More information

The Fundamentals of Intrusion Prevention System Testing

The Fundamentals of Intrusion Prevention System Testing The Fundamentals of Intrusion Prevention System Testing New network-based Intrusion Prevention Systems (IPS) complement traditional security products to provide enterprises with unparalleled protection

More information

Computer Networks - CS132/EECS148 - Spring 2013 ------------------------------------------------------------------------------

Computer Networks - CS132/EECS148 - Spring 2013 ------------------------------------------------------------------------------ Computer Networks - CS132/EECS148 - Spring 2013 Instructor: Karim El Defrawy Assignment 3 - Solutions Deadline : May 9 th 9:30pm (hard and soft copies required) ------------------------------------------------------------------------------

More information

Transport Control Protocol (TCP)

Transport Control Protocol (TCP) Transport Control Protocol (TCP) Richard T. B. Ma School of Computing National University of Singapore CS 3103: Compute Networks and Protocols Transport services and protocols provide logical communication

More information

CSE 123: Computer Networks

CSE 123: Computer Networks CSE 123: Computer Networks Homework 4 Solutions Out: 12/03 Due: 12/10 1. Routers and QoS Packet # Size Flow 1 100 1 2 110 1 3 50 1 4 160 2 5 80 2 6 240 2 7 90 3 8 180 3 Suppose a router has three input

More information

TCP over Multi-hop Wireless Networks * Overview of Transmission Control Protocol / Internet Protocol (TCP/IP) Internet Protocol (IP)

TCP over Multi-hop Wireless Networks * Overview of Transmission Control Protocol / Internet Protocol (TCP/IP) Internet Protocol (IP) TCP over Multi-hop Wireless Networks * Overview of Transmission Control Protocol / Internet Protocol (TCP/IP) *Slides adapted from a talk given by Nitin Vaidya. Wireless Computing and Network Systems Page

More information

Chapter 15. Transmission Control Protocol (TCP) TCP/IP Protocol Suite 1

Chapter 15. Transmission Control Protocol (TCP) TCP/IP Protocol Suite 1 Chapter 15 Transmission Control Protocol (TCP) TCP/IP Protocol Suite 1 Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter Outline TCP/IP Protocol Suite 2

More information

Congestion Control Review. 15-441 Computer Networking. Resource Management Approaches. Traffic and Resource Management. What is congestion control?

Congestion Control Review. 15-441 Computer Networking. Resource Management Approaches. Traffic and Resource Management. What is congestion control? Congestion Control Review What is congestion control? 15-441 Computer Networking What is the principle of TCP? Lecture 22 Queue Management and QoS 2 Traffic and Resource Management Resource Management

More information

TCP: Reliable, In-Order Delivery

TCP: Reliable, In-Order Delivery TCP: Reliable, In-Order Delivery EE 122: Intro to Communication Networks Fall 2006 (MW 4-5:30 in Donner 155) Vern Paxson TAs: Dilip Antony Joseph and Sukun Kim http://inst.eecs.berkeley.edu/~ee122/ Materials

More information

Question: 3 When using Application Intelligence, Server Time may be defined as.

Question: 3 When using Application Intelligence, Server Time may be defined as. 1 Network General - 1T6-521 Application Performance Analysis and Troubleshooting Question: 1 One component in an application turn is. A. Server response time B. Network process time C. Application response

More information

Application Level Congestion Control Enhancements in High BDP Networks. Anupama Sundaresan

Application Level Congestion Control Enhancements in High BDP Networks. Anupama Sundaresan Application Level Congestion Control Enhancements in High BDP Networks Anupama Sundaresan Organization Introduction Motivation Implementation Experiments and Results Conclusions 2 Developing a Grid service

More information

Network Neutrality and the IETF. Mark Handley

Network Neutrality and the IETF. Mark Handley Network Neutrality and the IETF Mark Handley Why should the IETF care about Network Neutrality? An economic and legal issue. IETF doesn t do this well. Both sides of the debate present here. IETF can t

More information

D1.2 Network Load Balancing

D1.2 Network Load Balancing D1. Network Load Balancing Ronald van der Pol, Freek Dijkstra, Igor Idziejczak, and Mark Meijerink SARA Computing and Networking Services, Science Park 11, 9 XG Amsterdam, The Netherlands June ronald.vanderpol@sara.nl,freek.dijkstra@sara.nl,

More information

Master Course Computer Networks IN2097

Master Course Computer Networks IN2097 Chair for Network Architectures and Services Prof. Carle Department of Computer Science TU München Master Course Computer Networks IN2097 Prof. Dr.-Ing. Georg Carle Christian Grothoff, Ph.D. Stephan Günther

More information

TCP/IP. IPv4 packet layout. IPv4 packet layout. Emin Gun Sirer

TCP/IP. IPv4 packet layout. IPv4 packet layout. Emin Gun Sirer IP TCP/IP Emin Gun Sirer Internetworking protocol Network layer Common packet format for the Internet Specifies what packets look like Fragments long packets into shorter packets Reassembles fragments

More information

STANDPOINT FOR QUALITY-OF-SERVICE MEASUREMENT

STANDPOINT FOR QUALITY-OF-SERVICE MEASUREMENT STANDPOINT FOR QUALITY-OF-SERVICE MEASUREMENT 1. TIMING ACCURACY The accurate multi-point measurements require accurate synchronization of clocks of the measurement devices. If for example time stamps

More information

Key Components of WAN Optimization Controller Functionality

Key Components of WAN Optimization Controller Functionality Key Components of WAN Optimization Controller Functionality Introduction and Goals One of the key challenges facing IT organizations relative to application and service delivery is ensuring that the applications

More information

Network Probe. Figure 1.1 Cacti Utilization Graph

Network Probe. Figure 1.1 Cacti Utilization Graph Network Probe Description The MCNC Client Network Engineering group will install several open source network performance management tools on a computer provided by the LEA or charter school to build a

More information

Using TrueSpeed VNF to Test TCP Throughput in a Call Center Environment

Using TrueSpeed VNF to Test TCP Throughput in a Call Center Environment Using TrueSpeed VNF to Test TCP Throughput in a Call Center Environment TrueSpeed VNF provides network operators and enterprise users with repeatable, standards-based testing to resolve complaints about

More information

Access Control: Firewalls (1)

Access Control: Firewalls (1) Access Control: Firewalls (1) World is divided in good and bad guys ---> access control (security checks) at a single point of entry/exit: in medieval castles: drawbridge in corporate buildings: security/reception

More information

A Comparative Analysis of TCP Tahoe, Reno, New-Reno, SACK and Vegas

A Comparative Analysis of TCP Tahoe, Reno, New-Reno, SACK and Vegas A Comparative Analysis of TCP Tahoe, Reno, New-Reno, SACK and Vegas Abstract: The purpose of this paper is to analyze and compare the different congestion control and avoidance mechanisms which have been

More information

Overview of TCP. Overview of TCP. Overview of TCP. Overview of TCP. Connection-oriented, byte-stream

Overview of TCP. Overview of TCP. Overview of TCP. Overview of TCP. Connection-oriented, byte-stream Overview of TCP Overview of TCP Connection-oriented, byte-stream sending process writes some number of bytes TCP breaks into segments and sends via IP receiving process reads some number of bytes Full

More information

Компјутерски Мрежи NAT & ICMP

Компјутерски Мрежи NAT & ICMP Компјутерски Мрежи NAT & ICMP Riste Stojanov, M.Sc., Aleksandra Bogojeska, M.Sc., Vladimir Zdraveski, B.Sc Internet AS Hierarchy Inter-AS border (exterior gateway) routers Intra-AS interior (gateway) routers

More information

Recent advances in transport protocols

Recent advances in transport protocols Recent advances in transport protocols April 12, 2013 Abstract Transport protocols play a critical role in today s Internet. This chapter first looks at the evolution of the Internet s Transport Layer

More information