Re: Sending files with E?
Kevin Reid <[email protected]>
| Newsgroups | gmane.comp.lang.e.general |
|---|---|
| Message-ID | <[email protected]> |
On Oct 7, 2008, at 15:30, Bill Frantz wrote: > [email protected] (Kevin Reid) on Tuesday, October 7, 2008 wrote: > >> All my work so far addresses basic stream objects and OS-level IO >> (files, pipes and sockets) -- I haven't started on the problem of >> efficiently streaming data over a CapTP connection. > > It seems to me that any streaming of data over CapTP connections > will run into the flow-control problem. Flow control is currently > left as an application issue. I propose this classification of solutions: 1. Set up a separate OS/network level connection, and make use of its flow control rather than hiding it. (Hm: This is an application for VatTP without CapTP, no?) This would work fine for data, and could be made reasonably transparent in the EIO subsystem, I think, but gets tricky if you want to transport caps/objects over the flow-controlled stream, as you have to have some kind of interconnection with the primary CapTP stream. 2. Provide a way for (authorized) applications to see the flow information that is being hidden by CapTP (due to its ordering and non- blocking guarantees). For example, getting reports on how many of the messages you've sent over some far ref have been delivered to the remote side, and thus how many more you can send to maintain reasonable flow. 3. Implement flow control at the application level as you described. Comments? Missed options? -- Kevin Reid <http://homepage.mac.com/kpreid/>