Performance Evaluation of TCP Flows Florian Hisch Chair for Network - - PowerPoint PPT Presentation

performance evaluation of tcp flows
SMART_READER_LITE
LIVE PREVIEW

Performance Evaluation of TCP Flows Florian Hisch Chair for Network - - PowerPoint PPT Presentation

Performance Evaluation of TCP Flows Florian Hisch Chair for Network Architectures and Services Department for Computer Science Technische Universit at M unchen 11.07.2014 1 Florian Hisch: Performance Evaluation of TCP Flows Outline


slide-1
SLIDE 1

Performance Evaluation of TCP Flows

Florian Hisch

Chair for Network Architectures and Services Department for Computer Science Technische Universit¨ at M¨ unchen

11.07.2014

Florian Hisch: Performance Evaluation of TCP Flows 1

slide-2
SLIDE 2

Outline

1

Overview of TCP and AQM

2

TCP Throughput / Performance Models Single Connection Models (SCM) Multiple Connections Models (MCM) Fluid Models

3

Modeling Process Assumptions Model Validation Techniques

4

Applicability

5

Conclusion

Florian Hisch: Performance Evaluation of TCP Flows 2

slide-3
SLIDE 3

Transmission Control Protocol (TCP)

Protocol Topology most used transport protocol ISO/OSI level 4 usually in combination with IP (called TCP/IP)

Ethernet Token Ring ... IP

TCP

, UDP, ... ... Physical Data Link Network Transport ... 1 2 3 4 5-7

Figure : TCP in the ISO/OSI protocol stack.

Florian Hisch: Performance Evaluation of TCP Flows 3

slide-4
SLIDE 4

Transmission Control Protocol (TCP)

Data Transfer connection oriented protocol data partitioned in segments with unique segment-numbers received segments are acknowledged (with an ACK) missing segments can be resend Transfer Control sliding window with size WND Flow Control:

not to overload the receiver Flow Window Size RWND

Congestion Control:

not to overload the network Congestion Window Size CWND

Florian Hisch: Performance Evaluation of TCP Flows 4

slide-5
SLIDE 5

Transmission Control Protocol (TCP)

Connection Phases

1 Connection Establishment (Three-Way-Handshake)

Figure : Three-Way-Handshake during TCP initialization.

Florian Hisch: Performance Evaluation of TCP Flows 5

slide-6
SLIDE 6

Transmission Control Protocol (TCP)

Connection Phases

1 Connection Establishment (Three-Way-Handshake) 2 Date Transfer 1 Initial Slow Start

X

Congestion Threshold Time t Congestion Window Size

Figure : Size of the Congestion Window over time.

Florian Hisch: Performance Evaluation of TCP Flows 6

slide-7
SLIDE 7

Transmission Control Protocol (TCP)

Connection Phases

1 Connection Establishment (Three-Way-Handshake) 2 Date Transfer 1 Initial Slow Start 2 Congestion Avoidance

Slow Start Window Bisection Fast Retransmit / Fast Recovery

X

Triple Duplicated ACKs Congestion Threshold Timeout Triple Duplicated ACKs Time t Congestion Window Size

Figure : Size of the Congestion Window over time.

Florian Hisch: Performance Evaluation of TCP Flows 7

slide-8
SLIDE 8

Transmission Control Protocol (TCP)

Connection Phases

1 Connection Establishment (Three-Way-Handshake) 2 Date Transfer 1 Initial Slow Start 2 Congestion Avoidance

Slow Start Window Bisection Fast Retransmit / Fast Recovery

3 Connection Teardown

Figure : TCP Teardown.

Florian Hisch: Performance Evaluation of TCP Flows 8

slide-9
SLIDE 9

Active Queuing Management (AQM)

Basics routers have buffers for incoming packets dropping policy Example: Taildrop drops incoming packets only if buffer is full synchronizes TCP flows simple but limits the network performance Example: Random Early Drop (RED) drop probability is a function of buffer fill randomness desynchronizes TCP flows rather simple but ignores Quality of Service

Florian Hisch: Performance Evaluation of TCP Flows 9

slide-10
SLIDE 10

Active Queuing Management (AQM)

Basics routers have buffers for incoming packets dropping policy Example: Taildrop drops incoming packets only if buffer is full synchronizes TCP flows simple but limits the network performance Example: Random Early Drop (RED) drop probability is a function of buffer fill randomness desynchronizes TCP flows rather simple but ignores Quality of Service

Florian Hisch: Performance Evaluation of TCP Flows 9

slide-11
SLIDE 11

Active Queuing Management (AQM)

Basics routers have buffers for incoming packets dropping policy Example: Taildrop drops incoming packets only if buffer is full synchronizes TCP flows simple but limits the network performance Example: Random Early Drop (RED) drop probability is a function of buffer fill randomness desynchronizes TCP flows rather simple but ignores Quality of Service

Florian Hisch: Performance Evaluation of TCP Flows 9

slide-12
SLIDE 12

TCP Modeling

Why to model TCP performance? tries to express TCP / AQM behavior in math used to estimate the overall performance of a specific network used to improve the behavior for the next TCP version Model classification Single Connection Models (SCM) Multiple Connections Models (MCM) Fluid Models

Florian Hisch: Performance Evaluation of TCP Flows 10

slide-13
SLIDE 13

Single Connection Models (SCM)

Basics

  • bserves a single TCP flow

can model all aspects of TCP behavior for single and multiple bottleneck networks Examples E[Dh] = RTT + Ds · ( 1 − pr 1 − 2pr + 1 − pf 1 − 2pf − 2) E[Dss] = RTT · logγ E[Sss](γ − 1) w1 + 1

  • E[SCAFR]

= 3 8 + q 2 − q2 2

  • W 2 +

7 4 − 5q 2 + 3q2 2

  • W

  • 1 − 2q + q2

Florian Hisch: Performance Evaluation of TCP Flows 11

slide-14
SLIDE 14

Multiple Connections Models (MCM)

Basics

  • bserves a many TCP flow

can model nearly all aspects of TCP behavior in some cases: heterogeneous traffic (e.g. UDP) for single and multiple bottleneck networks

Florian Hisch: Performance Evaluation of TCP Flows 12

slide-15
SLIDE 15

Fluid Models

Basics

  • bserves all network links and TCP flows

can only model the Congestion Avoidance behavior AQM can be modeled very easy whole model can be expressed in aprox. 3 equations Example (F,G,H)-Model xs(t + 1) = Fs(xs(t), qs(t)) =

  • xs(t) + 1 − qs(t)

RTT2

s

− 2 3qs(t)x2

s(t)

+

Florian Hisch: Performance Evaluation of TCP Flows 13

slide-16
SLIDE 16

Assumptions

Data Transfer deals with the availability / length of data performance depends on data length (Short- / Long-Lived flows) most TCP flows are rather short (e.g. HTTP over TCP) but typical assumption: data always available Fluid models need to assume endless data

Florian Hisch: Performance Evaluation of TCP Flows 14

slide-17
SLIDE 17

Assumptions

End Points defines the expected behavior of the flow end-points needed because of various TCP versions (Tahoe, Reno, Vegas, ...) most papers show results for some versions typical assumption:

Nagle algorithm off size of receiver window ...

Florian Hisch: Performance Evaluation of TCP Flows 15

slide-18
SLIDE 18

Assumptions

Network TCP throughput is function of loss probability p p depends on the network topology (Tethered, WiFi) typical assumption:

RTT is independent from Congestion Window RTT is constant Tethered / WiFi ...

Florian Hisch: Performance Evaluation of TCP Flows 16

slide-19
SLIDE 19

Model Validation Techniques

Simulation full knowledge on the environment not simulated side-effects can affect throughput in reality TCP implementation can differ from real implementation in

  • peration systems

Controlled Measurements real-world side-effects affect the results high effort to control the network environment Live Measurements model can be validated against the reality small knowledge of the environment

Florian Hisch: Performance Evaluation of TCP Flows 17

slide-20
SLIDE 20

Model Validation Techniques

Simulation full knowledge on the environment not simulated side-effects can affect throughput in reality TCP implementation can differ from real implementation in

  • peration systems

Controlled Measurements real-world side-effects affect the results high effort to control the network environment Live Measurements model can be validated against the reality small knowledge of the environment

Florian Hisch: Performance Evaluation of TCP Flows 17

slide-21
SLIDE 21

Model Validation Techniques

Simulation full knowledge on the environment not simulated side-effects can affect throughput in reality TCP implementation can differ from real implementation in

  • peration systems

Controlled Measurements real-world side-effects affect the results high effort to control the network environment Live Measurements model can be validated against the reality small knowledge of the environment

Florian Hisch: Performance Evaluation of TCP Flows 17

slide-22
SLIDE 22

Applicability

depends on the assumptions models are only valid in special network topologies most models consider a single bottleneck link

1 2 n R1 R2 1 2 n bottleneck

Figure : Single Bottleneck layout. n sources and sinks are connected via a single link which has more incoming data than it can handle.

Florian Hisch: Performance Evaluation of TCP Flows 18

slide-23
SLIDE 23

Applicability

Applicability Matrix RTT Variance Losses Variance small large small large single bottleneck tethered X X wireless X X multiple bottleneck tethered X X wireless X X

Florian Hisch: Performance Evaluation of TCP Flows 19

slide-24
SLIDE 24

Conclusion

TCP Models Single / Multiple Connection(s) Models:

microscopic TCP modeling loose accuracy in complex networks

Fluid Models:

macroscopic TCP modeling accurate in complex networks simple modeling of Active Queuing Management

Assumptions Data transfer, End Points, Network Validation Techniques Simulation, Controlled Measurements, Live Measurements Applicability Most cases: Single Bottleneck, small tethered networks

Florian Hisch: Performance Evaluation of TCP Flows 20

slide-25
SLIDE 25

Questions? Thanks for your attention!

Source (for figures): Lecture slides: Grundlagen Rechnernetzte und Verteilte Systeme, SoSe 2013

Florian Hisch: Performance Evaluation of TCP Flows 21

slide-26
SLIDE 26

Questions? Thanks for your attention!

Source (for figures): Lecture slides: Grundlagen Rechnernetzte und Verteilte Systeme, SoSe 2013

Florian Hisch: Performance Evaluation of TCP Flows 21