Re: [PATCH RFC 0/2] kproxy: Kernel Proxy
flat view
From: Tom Herbert <hidden>
Date: 2017-06-29 23:21:34
On Thu, Jun 29, 2017 at 3:04 PM, Thomas Graf [off-list ref] wrote:
Hi Tom On 29 June 2017 at 11:27, Tom Herbert [off-list ref] wrote:quoted
This is raw, minimally tested, and error hanlding needs work. Posting as RFC to get feedback on the design... Sidecar proxies are becoming quite popular on server as a means to perform layer 7 processing on application data as it is sent. Such sidecars are used for SSL proxies, application firewalls, and L7 load balancers. While these proxies provide nice functionality, their performance is obviously terrible since all the data needs to take an extra hop though userspace.
Hi Thomas,
I really appreciate this work. It would have been nice to at least attribute me in some way as this is exactly what I presented at Netconf 2017 [0].
Sure, will do that!
I'm also wondering why this is not built on top of KCM which you suggested to use when we discussed this.
I think the main part of that discussion was around stream parser which is needed for message delineation. For a 1:1 proxy, KCM is probably overkill (the whole KCM data path and lock becomes superfluous). Also, there's no concept of creating a whole message before routing it, in the 1:1 case we should let the message pass through once it's cleared by the filter (this is the strparser change I referred to). As I mentioned, for L7 load balancing we would want a multiplexor probably also M:N, but the structure is different since there's still no user facing sockets, they're all TCP for instance. IMO, the 1:1 proxy case is compelling to solve in itself... Tom
[0] https://docs.google.com/presentation/d/1dwSKSBGpUHD3WO5xxzZWj8awV_-xL-oYhvqQMOBhhtk/edit#slide=id.g203aae413f_0_0