JBoss.orgCommunity Documentation
Be aware, JBoss Communications Stream Library is subject to changes as it is under active development!
JBoss Communications Stream Library builds layer of abstraction with API similar to NIO . Abstraction is built with three main components:
Selector - performs stream queries and presents user with streams ready for I/O operations.
SelectorKey - represents stream in selectors space
Stream - straight as it is, a stream of data
Beside simplified stream API , there is also need for SCTP(SCTP is not available in JDK6) like streaming. JBoss Communications Stream Library provides such feature over defined stream API .
Datalink
is a proprietary protocol designed to provide following:
peer to peer transport
reliable delivery - retransmissions
stream status metadata - provide user with stream status info(active,inactive, down...). Metadata is information which ifnroms peers about readiness to receive data for instance.
async I/O
Generaly
Datalink
can be imagined as follows:
Datalink follows state machine which reassembles one depicted on diagram below: