doing buffered RPC via clnt_call: how to do a buffer flush?

doing buffered RPC via clnt_call: how to do a buffer flush?

Post by Birgit Herz » Fri, 27 Jan 1995 07:12:17



Hi,

   at the university I am trying to write a fast client/server application
using RPC (tcp mode).
For this I am trying to force RPC to buffer RPC calls which do not need a return
value locally at the client. This should greatly increase the speed of
my application as I do not have to wait for the servers response at every call.

I have figured out to use the buffered clnt_call
   (see RPCs clnt_tcp.c:
      * TCP based RPC supports 'batched calls'.
      * A sequence of calls may be batched-up in a send buffer.  The rpc call
      * return immediately to the client even though the call was not necessaril
      * sent.  The batching occurs if the results' xdr routine is NULL (0) AND
      * the rpc timeout value is zero (see clnt.h, rpc).
    )
This buffers the RPC locally at the client, but seem not send the RPC call
to the server regulary.

My question:

  How do I force RPC to send the buffer contents from the client to the server?
  (how do I flush the buffer).

Any hint is appreciated.


Many thanks.

-- Birgit

 
 
 

1. doing buffered RPC via clnt_call: how to do a buffer flush?

Hi,

   at the university I am trying to write a fast client/server application
using RPC (tcp mode).
For this I am trying to force RPC to buffer RPC calls which do not need a return
value locally at the client. This should greatly increase the speed of
my application as I do not have to wait for the servers response at every call.

I have figured out to use the buffered clnt_call
   (see RPCs clnt_tcp.c:
      * TCP based RPC supports 'batched calls'.
      * A sequence of calls may be batched-up in a send buffer.  The rpc call
      * return immediately to the client even though the call was not necessaril
      * sent.  The batching occurs if the results' xdr routine is NULL (0) AND
      * the rpc timeout value is zero (see clnt.h, rpc).
    )
This buffers the RPC locally at the client, but seem not send the RPC call
to the server regulary.

My question:

  How do I force RPC to send the buffer contents from the client to the server?
  (how do I flush the buffer).

Any hint is appreciated.


Many thanks.

-- Birgit

2. default conf path

3. Samba 2.0.6 and logon scripts: file permissions?

4. bionode : buffer already done

5. linux 1.3.4 termcap, fixed but...

6. Warning - running *really* short on DMA buffers while doing file transfers

7. Slackware running on Toshiba Notebook 740CDT

8. doing fd buffer bigger

9. HELP: Connectivity between DOS/DOS and DOS/Linux

10. 2.5.46: buffer layer error at fs/buffer.c:399

11. buffer layer error at fs/buffer.c:1166

12. buffer layer error at fs/buffer.c:127; problems with via686a sensor