From: Chase Douglas <[EMAIL PROTECTED]> Date: Fri, 08 Jul 2005 16:12:12 -0500
> This can be useful for programs such as mpi. In mpi, a server receives > results of computations from clients. However, the server cannot control who > sends data when. If the server needs data from client A to know how to > process the data from client B, then the server will want data from client A > first. Currently, if data from Client B comes first, then the mpi library > will copy the data into the library in userspace, then copy the data from > client A into the server program, and then copy the data from client B from > its own library buffer into the server program. If the socket is seekable, > then if data from client B comes first, we can seek past it and grab the > data from client A and copy it directly to the server program, then copy the > data from client B directly into the server program, saving a copy from > userspace to userspace (and possibly an allocation in userspace in the mpi > library). Other uses can also be found. It seems more logical to use a different socket for each client to solve this problem. You're trying to multiplex a single TCP connection, and that's what multiple TCP connections are for. This whole seekable socket idea seems quite foolhardy, and seems to serve only to help misdesigned userspace applications. - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html