Hello,
The JERI multiplexing protocol allows 128 sessions between two nodes,
when this value is exceeded, an exception is thrown and a connection
cannot be made.
I have run into some situations during stress testing where 128 sessions
isn't enough.
The JERI multiplexing protocol sends a signed byte, the allowable range
is from 0 to 127 (inclusive) and consumes it at the remote end.
However I have noticed in the implementation, checks for maximum and
minimum sessions occurs while the number is a 32 bit integer, before
being cast to byte, so basically we can change this to an unsigned byte,
without breaking compatibility with existing implementations (until we
exceed 128 sessions).
Using an unsigned byte would allow a maximum 255 Sessions.
As both endpoints have to consume a byte, increasing this value further
would break the protocol.
Existing connections break when the number of sessions exceeds 128, this
will not cause any unexpcected additional breakage.
I'm not aware of any additional third party implementations of the JERI
protocol.
It's also worth noting that the JERI implementation of today, is much
faster and more efficient than JERI released in Jini 2.1, 128
connections would have suffereed from contention, today, this isn't an
issue.
Regards,
Peter.