Date: Fri, 10 Aug 2007 11:33:22 -0400 (EDT) From: Rick Macklem <rmacklem@uoguelph.ca> To: freebsd-fs@freebsd.org Subject: multiplexing TCP sockets in the NFS client Message-ID: <Pine.GSO.4.63.0708101121080.25743@muncher>
next in thread | raw e-mail | index | archive | help
Long long ago, I felt it might be better to use a separate TCP socket for each mount to the same server. The argument was along the lines of: Some mounts might be much busier than others and, as such, the separate TCP socket would provide feedback to the client w.r.t. load on that mount. The assumption w.r.t. busier mount points tacitly assumed separate disks with some disks experiencing heavy I/O loads. It seems to me that these days, what with SANs, RAIDs, GEOM,... that a mount point probably isn't going to reflect a different disk subsystem so much as an administrative boundary. Also, it's not obvious that the feedback argument is relevant anyhow, since clients will still receive replies when the server gets around to doing the RPC, in any case. So, I'm thinking that it might be better to change the client code so that it shares one TCP connection between all mounts to the same server. This reduces the number of TCP connections (possibly an issue if clients use an automounter to do a lot of mounts). It might also help w.r.t transport performance by increasing the volume of data being transferred on the TCP connection? (I don't know enough about current TCP stacks to know if this is the case or not?) Any comments? rick
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.GSO.4.63.0708101121080.25743>