-
Notifications
You must be signed in to change notification settings - Fork 690
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Lower the per connection buffer to 64k at the listener level #1407
Comments
In #1375, this is recommended to be 32k instead. Updating title accordingly. |
Introduce a `DefaultCluster()` convenience API that returns a Envoy `v2.Cluster` struct that has only the Contour internal default fields initialized. This gives us a single place where clusters get default settings. Add the 32K default for `per_connection_buffer_limit_bytes`. Update all the tests to merge their Cluster spec into the default Cluster struct. This makes the tests insensitive to changes in the envoy Cluster defaults. This fixes projectcontour#1407. Signed-off-by: James Peach <jpeach@vmware.com>
Based on #1797 (review) there's a good change that this setting doesn't do what I thought it did. Moving to the backlog for more investigation. |
Hi, Looks like one of the differences between Contour Envoy configuration and the suggestions from the Envoy team for running on the edge is the lack of defining this buffer limit for Listener & Cluster. Searching for this led me to this ticket here.
Thanks in advance folks! |
@BerGer23 I think it makes sense to look into using Envoy's recommended settings here, but we also need to ensure we understand the impact on existing users of changing the settings. One possible approach here would be to change the default setting, but also expose a tuneable to allow users to modify the setting to something else if needed. Have you done/are you able to do any testing around changing this setting, and observing any perf or behavior changes? |
Hi @skriss, sorry about the late answer. |
Envoy assigns a 1Mb buffer to to each incoming connection. It is not clear if it consumes the whole 1Mb in one go, or that is a upper limit.
Either way, I think this should be lowered to something like 64.
https://www.envoyproxy.io/docs/envoy/latest/api-v2/api/v2/lds.proto#envoy-api-field-listener-per-connection-buffer-limit-bytes
The text was updated successfully, but these errors were encountered: