• Paolo Abeni's avatar
    mptcp: really share subflow snd_wnd · b713d006
    Paolo Abeni authored
    As per RFC, mptcp subflows use a "shared" snd_wnd: the effective
    window is the maximum among the current values received on all
    subflows. Without such feature a data transfer using multiple
    subflows could block.
    
    Window sharing is currently implemented in the RX side:
    __tcp_select_window uses the mptcp-level receive buffer to compute
    the announced window.
    
    That is not enough: the TCP stack will stick to the window size
    received on the given subflow; we need to propagate the msk window
    value on each subflow at xmit time.
    
    Change the packet scheduler to ignore the subflow level window
    and use instead the msk level one
    Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
    Signed-off-by: default avatarMat Martineau <mathew.j.martineau@linux.intel.com>
    Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
    b713d006
protocol.c 96.4 KB