public inbox for linux-nfs@vger.kernel.org
 help / color / mirror / Atom feed
* Linux NFS4.1 client's "server trunking" seems to do the opposite of what the name implies
@ 2021-04-20 20:59 guy keren
  2021-04-20 23:28 ` Olga Kornievskaia
  2021-04-21  7:42 ` guy keren
  0 siblings, 2 replies; 5+ messages in thread
From: guy keren @ 2021-04-20 20:59 UTC (permalink / raw)
  To: linux-nfs


Hi,

when attempting to make two NFS 4.1 mounts from a linux NFS client, to 
two IP addresses belonging to two different hosts in the same cluster 
(i.e. the server major id in the EXCHANGE_ID response is the same) - the 
linux NFS4.1 client discards the new TCP connection (to the 2nd IP) and 
instead decides to use the first client connection for both mounts. this 
seems to be handled in a hard-coded inside the function named 
"nfs41_discover_server_trunking", and leads to reduced performance, 
relative to using NFS3 (which will use two different TCP connections to 
the two different hosts in the storage cluster).

i was under the impression that (client_id) trunking is supposed to 
allow to multiplex commands over multiple TCP connections - not to 
consolidate different workloads onto the same TCP connection.

is there a way to avoid this behaviour, other then faking that the 
"server major id" is different on each node in the cluster? (this is 
what appears to be done by NetApp, for instance).

thanks,

--guy keren

Vast Data.


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2021-04-21 13:24 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-04-20 20:59 Linux NFS4.1 client's "server trunking" seems to do the opposite of what the name implies guy keren
2021-04-20 23:28 ` Olga Kornievskaia
     [not found]   ` <4999b214-db58-a5ab-3097-523cf9a51c75@vastdata.com>
2021-04-21 13:21     ` Olga Kornievskaia
2021-04-21  7:42 ` guy keren
2021-04-21 12:18   ` Trond Myklebust

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox