While porting to Solaris 10 we have encountered one issue with Solaris 10 SCTP. We have seen than SCTP doesn't return comm lost to application in case remote end system is restarted.
Following is the scenario description: 192.168.1.80 is Solaris 10 machine with SCTP application running in CLIENT mode. 192.168.1.225 is remote node with SCTP application running in SERVER mode. Start both applications and wait till association is established. Reboot 192.168.1.225. Initially 192.168.1.80 will inform application about comm-lost. Application makes connection request. SCTP sends init request to remote system which is currently restarting and hence there will be no response to this init. Now SCTP is supposed to keep trying INIT request for some time and eventually inform application about comm-lost or connect attempt failure. But neither it tries multiple times nor it sends any event to application. We are attaching ethereal traces for the scenario. We have tried different related cases. In most cases the SCTP behavior is proper. e.g. if remote system is in power off state from the begining it self then sctp keeps trying init multiple times. So the case which we have described above is very specific. Some notes about application: Our application has registered event handle to receive all events from sctp. It uses explicit connect request to setup association. It is not relying on send request to setup association implicitly. It sends connect request as soon as it receives comm lost/comm error kind of events from sctp. Heartbeat interval has been set to 1 second with maximum retry count to 3. This message posted from opensolaris.org
system-restart.cap
Description: Binary data
_______________________________________________ networking-discuss mailing list [email protected]
