15
Basic Dynamic Scheduling for Multiple Path Routing Joseph A LaConte CS 526 May 5, 2005

Basic Dynamic Scheduling for Multiple Path Routing Joseph A LaConte CS 526 May 5, 2005

  • View
    217

  • Download
    3

Embed Size (px)

Citation preview

Page 1: Basic Dynamic Scheduling for Multiple Path Routing Joseph A LaConte CS 526 May 5, 2005

Basic Dynamic Scheduling for Multiple Path Routing

Joseph A LaConte

CS 526

May 5, 2005

Page 2: Basic Dynamic Scheduling for Multiple Path Routing Joseph A LaConte CS 526 May 5, 2005

May 5, 2005 LaConte, Joseph A. 2

OVERVIEW

• Goals

• Purpose

• Dynamic Scheduler

• Design Issues

• TCP

• Slow Start Algorithm

• Proposed Solution Model– Benefits– Penalties

• Future Work

Page 3: Basic Dynamic Scheduling for Multiple Path Routing Joseph A LaConte CS 526 May 5, 2005

May 5, 2005 LaConte, Joseph A. 3

GOALS

• Review some traits of TCP.

• Discuss some of the design issues associated with a dynamic scheduler in multiple path routing.

• Propose a connection-based dynamic scheduler for TCP utilizing multiple paths.

Page 4: Basic Dynamic Scheduling for Multiple Path Routing Joseph A LaConte CS 526 May 5, 2005

May 5, 2005 LaConte, Joseph A. 4

PURPOSE

• What is multiple path routing?– Set of Proxy servers with indirect routing.– Overlay network.– Wireless ad hoc networks.– Multihoming.

• How does a dynamic scheduler relate to multiple path routing?

Page 5: Basic Dynamic Scheduling for Multiple Path Routing Joseph A LaConte CS 526 May 5, 2005

May 5, 2005 LaConte, Joseph A. 5

DYNAMIC SCHEDULER

The dynamic scheduler should:– Increase performance.– Have the capability to diagnose bandwidth

(within some degree).– Reduce network congestion (efficiency).

How would you implement a dynamic

scheduler for TCP using multipaths?

Page 6: Basic Dynamic Scheduling for Multiple Path Routing Joseph A LaConte CS 526 May 5, 2005

May 5, 2005 LaConte, Joseph A. 6

DESIGN ISSUES

• Network Layer (IP) versus Transport Layer.• Concurrent Multipaths:

– Arrival order is NOT guaranteed.– Bandwidth fluctuates.

• TCP:– NOT required to send an immediate ACK.– NOT required to use NACK [SACK].

• Network Congestion

Page 7: Basic Dynamic Scheduling for Multiple Path Routing Joseph A LaConte CS 526 May 5, 2005

May 5, 2005 LaConte, Joseph A. 7

TCP

Brief Review:– Sliding Window?– Congestion Control Window?– Slow Start Algorithm.– Fast Retransmit.

Page 8: Basic Dynamic Scheduling for Multiple Path Routing Joseph A LaConte CS 526 May 5, 2005

May 5, 2005 LaConte, Joseph A. 8

SLOW START ALGORITHM

• Controls congestion window.• Starts small, but grows exponentially.• Continues until a retransmission timeout.• Loop:

– Restarts using ½ old window size as a threshold.– When threshold is reached grows linearly.– Continues until a retransmission timeout.

Page 9: Basic Dynamic Scheduling for Multiple Path Routing Joseph A LaConte CS 526 May 5, 2005

May 5, 2005 LaConte, Joseph A. 9

Tanenbaum p. 550

Page 10: Basic Dynamic Scheduling for Multiple Path Routing Joseph A LaConte CS 526 May 5, 2005

May 5, 2005 LaConte, Joseph A. 10

TCP Congestion Control

Windowsize

Time (seconds)

Slow Start

Reach initial ssthresh;switch to CA mode

Fast retransmit Fast recovery

Congestion Avoidance

Packet loss

Time-out

Slow Start

1

Cai, Yu slide 26

Page 11: Basic Dynamic Scheduling for Multiple Path Routing Joseph A LaConte CS 526 May 5, 2005

May 5, 2005 LaConte, Joseph A. 11

PROPOSED SOLUTION MODEL

• Use congestion control as a rough diagnostic tool for each path.• Iterate each path until restart, storing the threshold for each

path.• Handle retransmission queue RTO timers (initial solution: by

retransmission of all not yet acknowledged segments in buffer through next path).

• Upon diagnostic completion:– Find weights using LCD on thresholds [approx]. – Calculate new threshold based on

β( sum(thresholds) ) where 0 < β < 1

RTO – Retransmission TimeOutLCD – Least (lowest) Common Denominator

Page 12: Basic Dynamic Scheduling for Multiple Path Routing Joseph A LaConte CS 526 May 5, 2005

May 5, 2005 LaConte, Joseph A. 12

BENEFITS OF MODEL

• Gives a relatively quick estimate of bandwidth/reliability.

• Spends less time on slow paths (and more time on less congested paths).

• Inherently avoids and reduces network congestion.

• β provides for limited network fluctuations.

Page 13: Basic Dynamic Scheduling for Multiple Path Routing Joseph A LaConte CS 526 May 5, 2005

May 5, 2005 LaConte, Joseph A. 13

PENALTIES FOR MODEL

• Poor solution for multiple wireless paths.

• Multiple paths are not exploited during diagnostics.

• Overreaching may occur in each window containing a timeout.

• Shorter TCP sessions benefit the least.

Page 14: Basic Dynamic Scheduling for Multiple Path Routing Joseph A LaConte CS 526 May 5, 2005

May 5, 2005 LaConte, Joseph A. 14

FUTURE WORK

• Implementation and testing.• Make enhancements to model:

– Experiment with caps on congestion window size based on receiver’s advertised window size to reduce cost penalties of overreach/timeout during diagnostic phase.

– Incorporate other TCP bookkeeping variables (RTO, RTTM, etc). – Refine mechanism for re-entering diagnostic phase.– Detect/Decide when to drop a path.– Allow for cap on number of paths (ie. use best m of n paths).

• Implement global mechanism in network layer that allows transport layer and application layer (if specific transport layer allows) to implement dynamic schedulers.

• Look at fast retransmit/broadcasting.• Experiment with timeout values.

RTTM – Round Trip Time Measured

Page 15: Basic Dynamic Scheduling for Multiple Path Routing Joseph A LaConte CS 526 May 5, 2005

May 5, 2005 LaConte, Joseph A. 15

ADDITIONAL RESOURCESMultiple Path Routing:

Watson, Frank E. 2005. Enhanced TCP Performance with Multiple Path Routing. Master’s thesis, University of Colorado at Colorado Springs.Cai, Yu. 2005. On the Proxy Server based Multipath Connection. PhD Dissertation Defense, University of Colorado at Colorado Springs.

http://cs.uccs.edu/~chow/pub/master/ycai/doc/phd_thesis_defense_yu_cai.ppt Gerla, M., Lee, S. S., Pau, G. 2002. TCP Westwood Performance Over Multiple Paths. http://www.cs.ucla.edu/NRL/hpi/papers/2002-tr-0.pdf

TCP:Tanenbaum, Andrew S. 2003. Computer Networks, 4th ed. Prentice Hall PTR, Upper Saddle River, NJ.Sarolahti, Pasi. 2002. Linux TCP. Seminar on Linux Kernel. http://www.cs.helsinki.fi/u/kraatika/Courses/sem02a/Linux-TCP.pdfCasetti, C., Gerla, M., Lee S. S., Mascolo, S., Sanadidi, M. 2000. TCP with Faster Recovery. http://www.cs.ucla.edu/NRL/hpi/tcpw/tcpw_papers/2000-milcom-0.pdf

Sacerdoti, Federico D. 2004. Tcphealth: TCP Connection Monitoring in Linux. http://heron.ucsd.edu/tcphealth/TCP: From PSH to ACK. 2005. Maintained by Rafael Stekolshchik.

http://cities.lk.net/tcp.html