Skip to content

C4 does not always provide low delays #79

@huitema

Description

@huitema

We see a worrisome pattern of building delays higher than the nominal min, as shown in this simulation graph of two C4 connections sharing a link:

Image

On one hand, the graph shows a pretty good handling of the competition: the path capacity is well used, and the two competing connections get almost equal shares. On the other hand, we see the delays follow a bumpy curve, occasionally hitting a minimum probably aligned with the recovery phase, and then climbing towards the "max RTT".

Image

Using the qvis tool we can see how the number of bytes in flight regularly climbs toward the value of the CWND: we see that when the greenish plot of "bytes in flight" meets the purple line of "CWND". This can only happen if the pacing rate is higher than the path bandwidth. If the pacing rate was lower than the bandwidth, the number of bytes in flight would be at most the BDP product, generally lower than the product of path bandwidth by nominal max RTT.

This needs to be investigated. Is it possible to safely assess that the bandwidth is a bit too high, and maybe not engage in "big push" at +25% if that is the case? Is it possible to do that without compromising other scenarios, like the competition against a Cubic connection?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions