TCP flow controll question

Eric Norum eric.norum at usask.ca
Mon Dec 18 14:45:40 UTC 2000


"Alexander D. Tarkhov" wrote:
> 
> Hello, rtems society,
> 
> We use RTEMS 4.0.0 with mips64orion p4650.
> We have succeded in compiling network support for our bsp,
> but there seems to be a problem somewhere.
> 
> Sometimes in some projects mbuf clusters are filled up critically
> due to some errors :)
> In our case it implyes "rtems panic" as a consequence.
> The simplest solution is to increase the initial amount of mbuf memory.
> >From that point my question arises:
> 
> In our partiqular case we deal with a faulty Data Link Layer (non
> ethernet),
> so that it may take several retries to transmit a TCP packet.
> IP stack allows us to call send() as many times as we want, not
> bothering
> wether previous data are really away or not. As a result we get all our
> great amount
> of mbuf memory filled and return to our good-old "rtems panic" again.
> 
> Is there any way to know, if data is still in the system?
> Other words: Is there any way to controll the flow of data through a TCP
> socket?

You can set the window size (SO_SNDBUF and SO_RCVBUF socket  options). 
You can also change the limit on the send and receive queue sizes
(ifqmaxlen) when you initialize the network devices.

-- 
Eric Norum                                 eric.norum at usask.ca
Department of Electrical Engineering       Phone: (306) 966-5394
University of Saskatchewan                 FAX:   (306) 966-5407
Saskatoon, Canada.



More information about the users mailing list