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