+0 socket(..., SOCK_STREAM, IPPROTO_SCTP) = 3 +0 setsockopt(3, IPPROTO_SCTP, SCTP_MAXSEG, {assoc_value=500}, 8) = 0 +0 setsockopt(3, IPPROTO_SCTP, SCTP_NODELAY, [0], 4) = 0 +0 connect(3, ..., ...) = -1 EINPROGRESS (Operation now in progress) +0 > sctp: INIT[flgs=0, tag=..., a_rwnd=..., os=2048, is=10, tsn=0, ...] +0.05 < sctp: INIT_ACK[flgs=0, tag=22, a_rwnd=100000, os=2048, is=10, tsn=0, STATE_COOKIE[len=4, val=...]] +0 > sctp: COOKIE_ECHO[flgs=0, len=4, val=...] +0.05 < sctp: COOKIE_ACK[flgs=0] +0.25 write(3, ..., 500) = 500 +0.00 > sctp: DATA[flgs=BE, len=516, tsn=0, sid=0, ssn=0, ppid=0] // Other flags allowed: IU +0.02 < sctp: SACK[flgs=0, cum_tsn=0, a_rwnd=99500, gaps=[], dups=[]] +0.25 write(3, ..., 2500) = 2500 +0.00 > sctp: DATA[flgs=B, len=516, tsn=1, sid=1, ssn=0, ppid=0]; DATA[flgs=0, len=516, tsn=2, sid=1, ssn=0, ppid=0] +0.00 > sctp: DATA[flgs=0, len=516, tsn=3, sid=1, ssn=0, ppid=0]; DATA[flgs=0, len=516, tsn=4, sid=1, ssn=0, ppid=0] +0 < sctp: SACK[flgs=0, cum_tsn=4, a_rwnd=98000, gaps=[], dups=[]] // Comment out when SCTP_NODELAY is set +0.00 > sctp: DATA[flgs=E, len=516, tsn=5, sid=1, ssn=0, ppid=0] +0.1 < sctp: SACK[flgs=0, cum_tsn=5, a_rwnd=100000, gaps=[], dups=[]] +0.25 close(3) = 0 +0 > sctp: SHUTDOWN[flgs=0, cum_tsn=...] +0.05 < sctp: SHUTDOWN_ACK[flgs=0] +0 > sctp: SHUTDOWN_COMPLETE[flgs=0] // Other flags allowed: T, Is SHUTDOWN_COMPLETE[] allowed?