On Thu, Aug 11, 2011 at 5:13 PM, Tobias Oberstein <
tobias.oberst...@tavendo.de> wrote:

>  For a test driver for a TCP-based protocol (written in Twisted) I want to
> send data to a
> receiver as fast as the receiver can consume data, but not faster.
>
> Apparently, a naive loop which just does transport.write() does not work.
> When I do
> reactor.select(0) between the writes, it somehow works, but memory
> consumption
> of sender is growing fast, since I guess data is buffered within Twisted,
> right?
>
> I then got over implementing my own application level flow control, where
> the
> receiver gives feedback of how much it has consumed, and the sender
> throttles
> itself to that.
>
> However, isn't there a simpler way (without application level flow
> control)?
>
> In the end, the sender TCP stack must have knowledge of it's window size ..
> is there a way to get at that info?
>
> What is the recommended way?
>


You want to write a producer:

http://twistedmatrix.com/documents/current/core/howto/producers.html





-- 
Christopher Armstrong
http://radix.twistedmatrix.com/
http://planet-if.com/
_______________________________________________
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python

Reply via email to