Corruption Informative by pjx11396

VIEWS: 6 PAGES: 20

More Info
									                                 Understanding TCP Parallelization

                                                          Qiang Fu
                                                        qfu@swin.edu.au




                       Outline
                         TCP Performance Issues
                         TCP Enhancements
                         TCP Parallelization (research areas of interest)
                             Related Approaches
                             TCP Parallelization vs. Single Connection Based Approach
                             Active Queue Management
                             Satellite/Terrestrial Networks
                             Wireless/Mobile Networks
                             High Speed Networks
                             End-to-End Service Differentiation
                             Effectiveness vs. Fairness
                         Modelling
                         Simulation Results
                         A Delay-Based Approach
                         Conclusions



                                         CAIA Seminar                http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 2




Swinburne University of Technology                                                                                                1
                       TCP Performance Issues
                         Application performance perceived by end
                         users largely depends on TCP performance
                         Future Internet: fast links, diversity in
                         network access technologies
                         One TCP for all or specific TCPs for specific
                         networks




                                        CAIA Seminar              http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 3




                       TCP Performance Issues
                         Unnecessary timeouts and congestion control
                             Impossible to design retransmit timeout algorithms that never
                             result in an unnecessary timeout
                             Impossible to design fast retransmit algorithms that always
                             correctly determine whether or not a packet loss has occurred
                             (unnecessary congestion control)
                             Difficulty in distinguishing between congestion and corruption
                             Informative ACKs/notifications: lost themselves, overhead,
                             network asymmetry
                         Conservative AIMD algorithm (Additive Increase Multiplicative
                         Decrease)
                             More aggressive AI (more than 1 segment per RTT)
                             Milder MD (less than W/2)
                             Effectiveness up, fairness down
                         Network asymmetry, service differentiation, active queue
                         management (AQM), etc.


                                        CAIA Seminar              http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 4




Swinburne University of Technology                                                                                             2
                       TCP Enhancements
                         Existing TCP Congestion Control Mechanisms
                             Tahoe, Reno, New Reno, Sack, Vegas
                         Enhancements for wireless/mobile computing
                             End-to-end solutions: Freeze-TCP, TCP-Probing, TCP Santa Cruz, TCP-Real,
                             Explicit Loss Notification (ELN), Explicit Congestion Notification (ECN), etc.
                             Proxy-Based Solutions: Indirect-TCP (I-TCP), MTCP, Explicit Bad State Notification
                             (EBSN), WTCP, Snoop, etc.
                         Active Queue Management (AQM)
                             RED, REM, BLUE, ECN, XCP
                         File/data striping
                             MFTP, XFTP, GridFTP, PSockets, etc.
                         Enhancements for high bandwidth-delay product (BDP) networks
                             High-Speed, Scalable, FAST
                         The TCP that we need
                             Robust across a wide range of environments rather than fine-tuned for a particular
                             environment
                             Take all the problems into account with lowest cost, complexity and inflexibility
                             Ease the impact of the problems rather than solve them




                                              CAIA Seminar                    http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 5




                       TCP Parallelization (TP)
                         Splitting a single TCP connection into a number of parallel virtual
                         connections (VCs)




                         VCs could be established through multiple network interfaces
                         The VCs could be standard or modified TCP connections
                         A single TCP control block (TCB) or individual TCBs for VCs
                         The windows of VCs could be centrally or individually controlled



                                              CAIA Seminar                    http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 6




Swinburne University of Technology                                                                                                         3
                       TP: Related Approaches
                         File/data striping over multiple TCP connections
                             MFTP, XFTP
                                  Overcome the 64KB limit on window size
                                  Satellite networks
                             GridFTP, PSockets
                                  Increase throughput
                                  Data intensive applications
                         Single connection based approach
                             MulTCP
                                  Emulate the behaviour of a set of multiple standard TCP connections
                                  End-to-End service differentiation
                             High-Speed, Scalable, FAST
                                  (sort of) Emulate the behaviour of multiple TCP (Reno, Vegas) connections
                                  High bandwidth-delay product (BDP) networks
                         CM (Connection Manager), Ensemble TCP, Fractional Method
                             Use a set of parallel TCP connections to emulate a single TCP connection
                         SCTP (Stream Control Transmission Protocol)
                             Multi-streaming designed to solve the head-of-line blocking problem
                             A single TCB based window control to emulate a standard TCP




                                               CAIA Seminar                           http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 7




                       TP: TP vs. Single Connection Based Approach
                         Advantages
                             Localize disturbances such as timeouts, packet losses, out-of-order
                             packets
                             Disperse packet losses
                             Reduce head-of-line blocking by independent sequencing for VCs
                             Reduce the impact of fast recovery
                             Introduce “self-curing”
                             Easier to maintain several smaller/less aggressive windows than a single
                             large / aggressive window
                             Less bursty traffic
                         Disadvantages
                             Complexity and inflexibility, fairness concern




                                               CAIA Seminar                           http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 8




Swinburne University of Technology                                                                                                                 4
                       TP: Active Queue Management
                         Interaction with AQM (RED, ECN)
                         AQM reduces unnecessary packet losses and smoothes
                         traffic by marking or dropping packets
                            Misjudgement on dropping and marking
                         TCP parallelization reduces the burstiness of packet arrivals
                         AQM may allow TCP:
                            More aggressive to increase window (more than 1 segment per
                            RTT)
                            Milder to reduce window (less than W/2)




                                       CAIA Seminar              http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 9




                       TP: Satellite/Terrestrial Networks
                         Demand on the integration of satellite and terrestrial networks
                            “Out-of-area” coverage
                            Load switching
                         Long propagation delay and high error rate
                            Significant performance improvements
                            TCP parallelization with Reno/New Reno/SACK can outperform
                            single connection based SACK
                         Network asymmetry
                            Downstream bandwidth could be hundreds times upstream
                            bandwidth
                            Delayed/lost ACKs over upstream channel could either create
                            bursts of packets or disrupt window growth
                            Reducing the no. of ACKs at the risk of destroying the self-
                            clocking of TCP and unnecessary retransmit timeouts
                            Reducing ACK size: not good for informative ACKs




                                       CAIA Seminar             http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 10




Swinburne University of Technology                                                                                            5
                       TP: Wireless/Mobile Networks
                         Wireless transmission errors, route failures, medium access
                         contention, contention between TCP data and ACKs
                         Forward Error Correction (FEC)
                             Small FEC gives the most efficient throughput gain
                             Large FEC gives the maximum throughput
                             Small FEC with TCP parallelization
                         Bit interleaving
                             Random losses
                         Bad link state
                             Transient (random interference)
                             Persistent (mobility, link failure)
                         Unreliable estimated upper bound on RTT in the wireless
                         environments, persistent reordering of packets (especially cellular
                         systems)




                                            CAIA Seminar              http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 11




                       TP: High Speed Networks
                         The traditional AIMD algorithm is too
                         conservative for high BDP networks
                         Tremendous cost for unnecessary
                         congestion control and timeouts
                         Difficult and costly to maintain a single
                         large/aggressive window
                         Multiple small/mild windows can reduce
                         costs and improve performance



                                            CAIA Seminar              http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 12




Swinburne University of Technology                                                                                                  6
                      TP: End-to-End Service Differentiation
                         Inter-domain issues for Weighted Fair
                         Queuing (WFQ), Class Based Queuing
                         (CBQ)
                         MulTCP: TCP level service differentiation
                            Poor performance
                            Rely on SACK and AQM
                         TCP parallelization: better performance,
                         even better with AQM




                                     CAIA Seminar       http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 13




                       TP: Effectiveness vs. Fairness
                         Effectiveness up, fairness down
                         Balance between effectiveness and fairness
                         Decoupling effectiveness and fairness
                         AQM support to eliminate persistent congestion
                         and give better RTT estimation
                         Queue stabilizing
                         Optimising effectiveness and fairness factors




                                     CAIA Seminar       http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 14




Swinburne University of Technology                                                                                    7
                       Modelling
                         An Analytical Model for TCP parallelization (Fast recovery not
                         considered)
                                                                      m(2cn − 1) MSS
                                                        BWn =                   ×
                                                                         2p       RTT
                               BWn:                         estimated throughput of a set of n parallel
                                                            connections
                               MSS:                         Maximum Segment Size (fixed packet size)
                               RTT:                         Round-Trip Time
                               n:                           number of parallel connections
                               m:                           window increase factor (the aggregate window
                                                            increases m packets per RTT)
                               c:                           window decrease factor (the individual window cuts
                                                            by 1/c, in response to a packet loss)
                               p:                           packet loss rate



                                                            CAIA Seminar                   http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 15




                       Modelling
                                                  100
                                                  90
                                                  80
                            Throughput(MSS/RTT)




                                                  70
                                                  60
                                                  50
                                                  40
                                                  30                                                     m=n
                                                                                                         m=n/2
                                                  20
                                                                                                         m=1
                                                  10                                                     m=1/2
                                                   0
                                                        0      5           10      15     20          25           30
                                                                           No. of Connections

                         Throughput vs. various m schemes (c=2, p=0.01)

                                                            CAIA Seminar                   http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 16




Swinburne University of Technology                                                                                                                       8
                       Modelling
                                                      140

                                Throughput(MSS/RTT)   120

                                                      100

                                                      80

                                                      60
                                                                                                              c=2
                                                      40
                                                                                                              c=8/n
                                                      20                                                      c=4/n
                                                                                                              c=2/n
                                                       0
                                                            0        5          10      15     20          25           30
                                                                                No. of Connections

                         Throughput vs. various c schemes (m=n, p=0.01)

                                                                 CAIA Seminar                   http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 17




                       Modelling
                         Another Analytical Model for TCP parallelization (Fast
                         recovery considered)


                           2
                                (cn − 1)W n                      +
                                                                     m (n e − 1) W n
                                                                                +    ×
                                                                                       Wn   n −1 1
                                                                                           − e  × +
                                                       cn               ne        cn   cmn   ne  2
                                (cn − 1)W n                          m (n e − 1)     1 1
                           2                                     +               × 1× =
                                                       cn               ne           2 p

                         BW n =
                                                                         (1 p ) ∗ MSS
                                                                  Wn   n −1
                                                            1+        − e                    ∗ RTT
                                                                  cmn   ne
                         ne :                    actual number of connections used to emulate the
                                                 behaviour of a set of n parallel connections



                                                                 CAIA Seminar                   http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 18




Swinburne University of Technology                                                                                                                            9
                       Modelling
                                                    11.8
                                                   11.75
                                                    11.7
                             Throughput(MSS/RTT)
                                                   11.65
                                                    11.6
                                                   11.55
                                                    11.5
                                                   11.45
                                                    11.4
                                                   11.35
                                                    11.3
                                                   11.25
                                                             0             5          10   15    20            25           30
                                                                                  No. of Connections

                        Emulating a single standard TCP connection, p=0.01

                                                                 CAIA Seminar                    http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 19




                       Modelling
                                                   450

                                                   400                         noFR
                             Throughput(MSS/RTT)




                                                   350                         n_emu_=n
                                                                               n_emu_=5
                                                   300
                                                                               n_emu_=1
                                                   250
                                                   200
                                                   150

                                                   100

                                                    50
                                                     0
                                                         0             5          10       15    20           25            30
                                                                                  No. of Connections

                         Emulating a set of parallel TCP connections, p=0.01
                                                                                  n_emu_=ne
                                                                 CAIA Seminar                    http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 20




Swinburne University of Technology                                                                                                                             10
                       Simulation Results (SR)
                         Simulation Topology




                                          CAIA Seminar                     http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 21




                       Simulation Results (SR)
                         Simulation Parameters
                          TCP Scheme                     Reno/Newreno/Sack
                          Bottleneck Capacity            28.6/8Mbps

                          Link Delay                     100ms (5+90+5)
                          Packet Size (MSS)              1,000bytes
                          Buffer Size                    Unlimited/Limited
                          Error Distribution (p)         Uniform/Two-state Markov

                          Background Traffic             TCP/UDP Traffic
                          Simulation Time                1,000s




                                          CAIA Seminar                     http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 22




Swinburne University of Technology                                                                                                       11
                       Simulation Results (SR)
                         Fractional Method
                            Fractional Approach
                                               The aggregate window of a set of n connections increases
                                               1 packet per RTT (e.g., m=1)
                                               In response to a packet loss, the involved individual
                                               window is halved (e.g., c=2)
                                               FM=n/m=n (FM: fractional multiplier)
                            Combined Approach
                                               A standard TCP connection + a set of n parallel
                                               connections
                                               The aggregate window of the set of n connections
                                               increases 1/FM_C packets per RTT (e.g., m=1/FM_C |
                                               FM_C>=1, FM_C: combined fractional multiplier)
                                               In response to a packet loss, the involved individual
                                               window is halved (e.g., c=2)


                                                        CAIA Seminar                  http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 23




                       SR: Fractional Method
                         Uniform Errors
                                               40

                                               35

                                               30
                              Percentage (%)




                                               25

                                               20

                                               15

                                               10
                                                                                 Simun                 FM=n
                                               5                                 Simu10                FM=10
                                                                                 Simu100               FM=100
                                               0
                                                    1             3          5         7                  9
                                                                       No. of Connections

                                                        Throughput share (p=0.001)
                                                        CAIA Seminar                  http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 24




Swinburne University of Technology                                                                                                                  12
                       SR: Fractional Method
                         Uniform Errors
                                               40
                                                                    FM=n                      Simun
                                                                    FM_C=10                   Simu10
                                               35                   FM_C=100                  Simu100
                              Percentage (%)



                                               30


                                               25


                                               20


                                               15
                                                    1                3                5              7                  9
                                                                            No. of Connections
                                                         Throughput share (p=0.01)
                                                         CAIA Seminar                               http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 25




                       SR: Fractional Method
                         Bursty Errors


                                                                                                                        40
                                                                                                                       35
                                                                                                                             Percentage (%)




                                                                                                                       30
                                                                                                                       25
                                                                                                                      20
                                                                                                                      15
                                                                                                                      10
                                                Model                                                                5
                                                        0.1                                                          0
                                                              0.3
                                                                                                                9
                                                                    0.5                                   7
                                                                          0.7                       5
                                                                                0.9            3
                                                        Burstiness                        1        No. of Connections

                                    Throughput share vs. Burstiness (0.001)

                                                         CAIA Seminar                               http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 26




Swinburne University of Technology                                                                                                                                13
                       SR: Fractional Method
                              Bursty Errors

                                                                                                                         40
                                                                                                                        35
                                                                                                                        30




                                                                                                                              Percentage(%)
                                                                                                                        25
                                                                                                                        20
                                                                                                                     15
                                                                                                                    10
                                                  Model                                                             5
                                                          0.1                                                       0
                                                                0.3
                                                                                                              9
                                                                      0.5
                                                                                                        7
                                                                            0.7                   5
                                                                                  0.9        3
                                                           Burstiness                            No. of Connections
                                                                                        1


                                                   Throughput share vs. Burstiness (0.01)
                                                                  CAIA Seminar                        http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 27




                       SR: Fractional Method
                              Buffer Overflow Errors
                                         68
                                                                 FM_C=10                    B1000
                                                                 B1000s                     B200
                                         58                      B200s                      B20
                        Percentage (%)




                                                                 B20s
                                         48


                                         38


                                         28


                                         18
                                              1                        3                5                    7                                9
                                                                             No. of Connections
                                                           Throughput share with TCP traffic
                                                                  CAIA Seminar                        http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 28




Swinburne University of Technology                                                                                                                                  14
                       SR: Fractional Method
                              Buffer Overflow Errors
                                         35            FM_C=10               B1000
                                                       B1000s                B200
                                                       B200s                 B20
                        Percentage (%)




                                         30            B20s


                                         25


                                         20


                                         15
                                              1            3             5                  7                        9
                                                                 No. of Connections
                                                    Throughput share with UDP traffic
                                                       CAIA Seminar                  http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 29




                       Simulation Results
                              SC Emulating TP (Single Connection
                              Emulating TCP Parallelization)
                                              MulTCP, High-Speed, Scalable, FAST
                                              MulTCP
                                                  Use a single connection to emulate the behaviour of
                                                  a set of n standard TCP connections.
                                                  The single window increases n packets per RTT
                                                  (e.g., m=n)
                                                  In response to a packet loss, the window is reduced
                                                  by 1/2n (e.g., c=2n)




                                                       CAIA Seminar                  http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 30




Swinburne University of Technology                                                                                                                 15
                       SR: SC Emulating TP
                                  Uniform Errors
                                                                    16
                                                                                       n_emu_=n
                                                                    14                 Sack_n
                                                                                       New reno_n             n connections
                                                                    12
                                                                                       Reno_n
                                                 Throughput(Mb/s)



                                                                    10                 n_emu_=1
                                                                                       Sack_1
                                                                    8                  New reno_1
                                                                                       Reno_1
                                                                    6

                                                                    4

                                                                    2
                                                                                              Single connection emulating n connections
                                                                    0
                                                                         0                        10                   20                         30
                                                                                                 No. of Connections

                                                                         Throughput performance (p=0.01)
                                                                             CAIA Seminar                             http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 31




                       SR: SC Emulating TP
                                  Uniform Errors
                                        60

                                        50
                       Percentage (%)




                                        40

                                        30
                                                                              n_emu_=5
                                        20
                                                                              Simu5
                                        10                                    n_emu_=1
                                                                              Simu1
                                        0
                                             0                           5                  10            15              20                25                 30
                                                                                            No. of Connections
                                                                                   Throughput share (p=0.01)
                                                                             CAIA Seminar                             http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 32




Swinburne University of Technology                                                                                                                                                  16
                       SR: SC Emulating TP
                                    Uniform Errors
                                        55

                                        50
                       Percentage (%)




                                        45

                                        40
                                                                                n_emu_=5
                                        35                                      Simu5

                                        30                                      n_emu_=1
                                                                                Simu1
                                        25
                                             0                              5              10       15          20               25                 30
                                                                                        No. of Connections
                                                                                  Throughput share (p=0.001)
                                                                            CAIA Seminar                   http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 33




                       SR: SC Emulating TP
                                    Bursty Errors
                                                                    7
                                                                                     Sack_b
                                                                                     New reno_b
                                                                    6                Reno_b
                                                                                     n_emu_=1
                                                 Throughput(Mb/s)




                                                                    5                Sack
                                                                                     New reno
                                                                    4                Reno

                                                                    3

                                                                    2

                                                                    1

                                                                    0
                                                                        0        5          10      15     20            25            30
                                                                                            No. of Connections
                                             Throughput performance with a single connection
                                             (Burstiness=0.3)
                                                                            CAIA Seminar                   http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 34




Swinburne University of Technology                                                                                                                                       17
                       SR: SC Emulating TP
                         Bursty Errors

                                                                                                                60

                                                                                                               50




                                                                                                                           Percentage (%)
                                                                                                               40

                                                                                                              30

                                                                                                              20

                                                                                                              10
                               Model
                                Uniform                                                                    0
                                       0.1
                                          0.3                                                         1
                                                                                                 5
                                                   0.5                                    10
                                                         0.7                         15
                                                               0.9             20
                                                                          25
                                          Burstiness                 30        No. of Connections


                                     Throughput share vs. Burstiness
                                           CAIA Seminar                             http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 35




                       SR: SC Emulating TP
                         Bursty Errors

                                                                                                               60

                                                                                                              50
                                                                                                                     Percentage (%)




                                                                                                              40

                                                                                                           30

                                                                                                           20

                                                                                                          10

                               Model                                                                      0
                                Uniform
                                          0.1                                                        1
                                             0.3                                                5
                                                   0.5                                    10
                                                         0.7                        15
                                                               0.9             20
                                                                          25
                                      Burstiness                     30        No. of Connections


                              Throughput share vs. Burstiness (5 connections)
                                           CAIA Seminar                             http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 36




Swinburne University of Technology                                                                                                                18
                       SR: SC Emulating TP
                                        Buffer Overflow Errors

                                            50                                   B1000                    B200
                                                                                 B20                      B1000b
                                                                                 B200b                    B20b
                       Percentage (%)




                                            40

                                            30

                                            20

                                            10

                                            0
                                                 1             3            5                 7                       9
                                                                    No. of Connections

                                                     Throughput share: UDP traffic vs. no UDP traffic
                                                             CAIA Seminar                http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 37




                       SR: SC Emulating TP
                                        Buffer Overflow Errors
                                            55
                                            50
                                            45
                           Percentage (%)




                                            40
                                            35
                                            30
                                                            B1000
                                            25              B200
                                            20              B20
                                                            B1000_1
                                            15              B200_1
                                                            B20_1
                                            10
                                                 1              3            5                 7                        9
                                                                     No. of Connections
                                                        Throughput share with UDP traffic
                                                        (single connection vs. 5 connections)
                                                             CAIA Seminar                http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 38




Swinburne University of Technology                                                                                                                     19
                       A Delay-Based Approach
                         Fairness and effectiveness bonded for loss based
                         approaches
                         Decouple fairness and effectiveness
                            RTT measurement to detect congestion
                            Window growth controlled by fairness factor in presence
                            of congestion
                            Window growth controlled by effectiveness factor in
                            absence of congestion
                         Challenges
                            RTT may not reflect queue length
                            Stabilise queue size



                                      CAIA Seminar             http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 39




                       Conclusions
                         Significant performance improvement by TCP parallelization
                         over single connection based approach
                         Good option for improving TCP performance over a wide
                         range of networks
                         Not a complete solution: a fundamental step/option towards
                         TCP performance improvement in heterogeneous networks
                         Complexity, fairness concern, etc. can be addressed to a
                         reasonable level




                                      CAIA Seminar             http://caia.swin.edu.au qfu@swin.edu.au 6 July 2005 Page 40




Swinburne University of Technology                                                                                           20

								
To top