[sctp-dev] Basic Questions
Christopher Hegarty - Sun Microsystems Ireland
Christopher.Hegarty at Sun.COM
Thu Jun 18 08:31:51 PDT 2009
David Ryan wrote:
> I have recently downloaded the Client/Server example from Chris
> Hegarty's Blog. I've been playing around with it and getting a feel for
> SCTP. My environment is Java 7 b59 running on Open Solaris 2009.06 (in
> VMware Fusion on OSX).
Great that you are playing around with this. I really appreciate the
feedback/questions. Interesting environment, good to see that you are on
> I changed the example code to send different sized packets and found
> that the maximum size of data returned by receive was 16,000 bytes. Is
> this the exact same size of the underlying network packet? I'm assuming
> it is and that the packet size is large because it didn't actually go
> over a network.
I assume you are sending messages larger that 16,000 bytes but the
receive is return an incomplete message, i.e. isComplete returns false,
The packet size does indeed look very large for a single PDU. I would
suspect that several PDU's are available in the input buffer and being
combined before returning to the user. Can you see the MTU of interface
that you are sending/receiving on, 'ifconfig -a'?
The API supports SCTP_DISABLE_FRAGMENTS socket option to disable the
implementation from fragmenting messages. On your platform I suspect
that this option is true by default. Can you check the value of this?
Maybe you could set it to false to determine the exact PMTU, if it is
not actually 16,000 which is may be.
> Is it possible to discover the PMTU size from the API so that a protocol
> can be optimized for SCTP?
It is not currently possible to retrieve the PMTU through the API, but
it should possible to implement an implementation specific socket option
to support this, and I could add it to the API if necessary.
Are you sure you want to do this? The reason I ask is that the PMTU may
be different for the different routes on an association with multiple
interfaces. Typical applications will not directly control which
destination address to use when sending, so trying to size your messages
to an specific size based on the PMTU may not be the best approach. Or
do you have a different scenario?
> Also, great to see SCTP on Java. Disapointing its not on all platforms
> yet, but I'm sure that will be fixed in good time.
Yes, hopefully over time other platforms/ports can be supported.
More information about the sctp-dev