Implement TCP flow control

Description

CASSANDRA-15013 introduced backpressure on the channel using TCP flow control.

We should avoid writing to the socket when the data can't be flushed to the kernel buffer.

In python, we already support this at a basic level, but we should verify it works correctly for all event loop implementations and check if there are any higher level unintended consequences of dealing with back pressure.

Environment

None

Pull Requests

None

Assignee

Alan Boudreault

Reporter

Alan Boudreault

Fix versions

None

Labels

None

PM Priority

None

External issue ID

None

Doc Impact

None

Reviewer

None

Size

None

Pull Request

None

Sprint

Py P-NEXT

Priority

Major