data channel send flow control?

I noticed the WebRTC 1.0 data channel API for which we are modeling 
doesn't include a way to easily do application level sending flow 
control and likely because web sockets doesn't have application sending 
flow control either. Personally I think this is a such an important use 
case and such an easy thing to fix.

If I want to stream a larger file from peer to peer over a reliable 
channel, currently I'd have to poll the send buffer size to see if 
there's room to add more data. But I think a better way to do this which 
is more bandwidth agnostic is to have an "onsendready(...)" so you can 
have events from the sending engine fire indicating there's room for 
more data and only re-fire the event again once the application has 
called the send(...) method and again there's more room to send 
afterwards. That would allow for a much easier way for applications to 
do flow control of streamed application level data without having to 
have as much intelligence about bandwidth and polling to maximize 
throughput. Plus eventing "send ready" is a pretty typical mechanism and 
a well understood paradigm.

I think this oversight should be addressed.

-Robin

Received on Friday, 25 April 2014 02:25:32 UTC