[OpenAFS-devel] fileserver parameters
Jeffrey Hutzelman
jhutz@cmu.edu
Thu, 30 Jun 2005 23:22:43 -0400
On Thursday, June 30, 2005 10:08:50 PM -0400 Jeffrey Altman
<jaltman@columbia.edu> wrote:
> Troy Benjegerdes wrote:
>
>> Do you wind up serializing multiple calls into 1 TCP stream? How hard
>> would adapting this work to SCTP be?
>
> One tcp socket connection is used for one bi-directional rx_connection.
> Multiple calls in both directions share the same tcp connection.
To clarify, this is true even in the case of multiple _simultaneous_ calls.
The traditional UDP-based Rx protocol allows up to four simultaneous calls
per connection, with independent windowing for each call stream. The RxTCP
protocol design allows the server to specify the maximum number of
simultaneous calls on a per-connection basis, with a hard maximum of 255
active calls per connection. However, the server must allocate resources
for a connection based on the permitted number of simultaneous calls, even
if they are not all in use; thus, allowing more calls per connection
consumes more resources per connection.
I am told that in order to simplify certain things, the initial RxTCP
server implementation will retain the 4-call-per-connection limit.
However, I would expect this to become a tunable parameter some time in the
future.
> I do not expect that providing an STCP transport once this work is
> done will be all that hard.
It's certainly not out of reach, but I think it is harder than you think.
I'm hoping we will have time to discuss this in Sweden next month, though I
expect it will be lower priority than the protocol design work needed to
integrate things like rxgk and rxk5. What happens at hackathons tends to
depend a lot on the interests of those attending.
-- Jeff