Re: [PATCH RFC net-next] net/smc: Unbind buffer size from clcsock and make it tunable

Tony Lu
2021-11-24T04:46:24Z

On Tue, Nov 23, 2021 at 10:33:07AM +0100, Karsten Graul wrote:
> On 23/11/2021 07:56, Tony Lu wrote:
> > To solve this issue, we developed a set of patches to replace the
> > AF_INET / SOCK_STREAM with AF_SMC / SMCPROTO_SMC{6} by configuration.
> > So that we can control acceleration in kernel without any other changes
> > in user-space, and won't break our application containers and publish
> > workflow. These patches are still improving for upstream.
>
> This sounds interesting. Will this also be namespace-based like the sysctls
> in the current patch? Will this future change integrate nicely with the current
> new sysctls? This might allow to activate smc for containers, selectively.
>
> Please send these changes in a patch series together when they are finished.
> We would like to review them as a whole to see how things play together.
>
> Thank you!

Hi Graul,

I am glad to hear that. The container, which is isolated by
net-namespace, is the minimal deployment unit in our environment. The
transparent replacement facility is namespace-based, so that we can
control the applications behaviors according to the dimensions of
containers.

The per-netns sysctl is the first step, control the applications'
buffer, and not to disturb TCP connections in the same container. The
container's memory is not as large as that of a physical machine, and
containers might run different workload applications, so we use
per-netns sysctl to adjust buffer. And it can be sent out separately.

Then, we can allow to activate SMC for some containers with transparent
replacement. These patches are improving, make sure the flexible enough
for containers and applications scopes, and cohesion enough for
upstream.

I will send them out as the containers solutions. Thank for you advice.

Thanks,
Tony Lu