docker / libchan

Like Go channels over the network
Apache License 2.0
2.47k stars 142 forks source link

Dual transport #46

Closed dmcgowan closed 9 years ago

dmcgowan commented 9 years ago

The default SpdyTransport uses spdy streams for messages as well as byte streams. A Dual transport would allow for using spdy streams for messages, but a different network type for byte streams. This would most likely involve adding a transport type which is created with a network connection for channels over spdy, but contains a listener/dialer for creation of byte streams. This would allow calls to CreateByteStream on the transport's sender to return real network connections. Any new protocol should be clearly defined and referenced by changes to the Protocol document to ensure different implementation of libchan are in agreement of the transport protocol.

AdrianRossouw commented 9 years ago

I think this ties into what we have run into over at jschan: https://github.com/GraftJS/jschan/issues/22

dmcgowan commented 9 years ago

Stream level abstraction in 0.2.0 makes this a possibility without changing the core network libchan implemenation.