[OpenAFS-devel] RX Performance
Ken Hornstein
kenh@cmf.nrl.navy.mil
Thu, 19 Jun 2003 10:38:26 -0400
>i dont believe tcp is the answer. in the vafs work, rx was replaced by
>aal5 for data transactions. aal5 is more like udp than tcp. the aal5
>datagrams didnt consist of a number of standard rx datagrams. it was
>simply a biggish packet (or pdu) with an rx header. very easy to handle.
>there are some other limits in the fileserver that probably 'held back'
>filserver performance. if i remember, there is some strange 45k limit
>in the fileserver.
The problem with this that I see is that all of the serious thinking about
how to make a good-performing stream protocol in the last 10 years has been
done with TCP, and _not_ done with RX. So we could duplicate that in
RX, which would be hard, or just use TCP, which would be easy.
>further, use of tcp would tend to limit scalability/number of clients.
I had this discussion with Love in the AFS Workshop; he pointed out that
most modern OS's have solved the problem with select()ing on large numbers
of descriptors (Solaris has /dev/poll, the BSDs have kqueue, and Linux
has something which I forget right now). That seems to be the big one.
--Ken