Project

General

Profile

Actions

Feature #2100

closed

msgr: Prevent throttled clients from slowing down non-throttled connections (TCP buffers hitting global TCP memory limits)

Added by Anonymous about 12 years ago. Updated about 5 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
-
Target version:
-
% Done:

0%

Source:
Tags:
Backport:
Reviewed:
Affected Versions:
Pull request ID:

Description

Right now, it seems a throttled connection will still receive a TCP receive buffer's worth of data, but because the userspace daemon isn't reading the socket, that data is kept in kernel memory. There's a global limit how much TCP memory can use for these buffers. Enough throttled connections with enough buffered will cause the available memory for other sockets to be low, and thus slowing down performance of the non-throttled connections.

Jim Schutt's email: http://marc.info/?l=ceph-devel&m=133009796706284&w=2

Ceph's throttling could use SO_RCVBUF (or some other such mechanism) to try to limit the amount of data buffered for throttled connections. A quick googling did not give me a good example of an established project using this technique, so we should tread carefully, and see what others are doing.

Actions #1

Updated by Sage Weil about 12 years ago

  • Tracker changed from Bug to Feature
  • Subject changed from Prevent throttled clients from slowing down non-throttled connections (TCP buffers hitting global TCP memory limits) to msgr: Prevent throttled clients from slowing down non-throttled connections (TCP buffers hitting global TCP memory limits)
  • Category set to msgr
Actions #2

Updated by Sage Weil about 11 years ago

  • Assignee set to Sage Weil

see wip-tcp to tune this via ceph.conf. please test!

Actions #3

Updated by Sage Weil about 11 years ago

  • Status changed from New to 7
Actions #4

Updated by Greg Farnum about 11 years ago

This need a review? :)

Actions #5

Updated by Sage Weil about 11 years ago

yeah, sure! still needs testing, tho, too.

Actions #6

Updated by Greg Farnum about 11 years ago

I went over the code and it all looks good! (Modulo testing for impact, etc of course.)
Reviewed-by: Greg Farnum <>

Actions #7

Updated by Sage Weil about 11 years ago

  • Status changed from 7 to Resolved

commit:c47c02dd87064032762d6a79f58b441f624fc8ed

Actions #8

Updated by Sage Weil about 11 years ago

  • Target version set to v0.59
Actions #9

Updated by Greg Farnum about 5 years ago

  • Project changed from Ceph to Messengers
  • Category deleted (msgr)
  • Target version deleted (v0.59)
Actions

Also available in: Atom PDF