SCTP Discussions

Text archives Help


[SCTP-Discussion] Re: Latest socketapi data loss if using ext_select() on sctp-dgram socket (urgent)


Chronological Thread 
  • From: Michael Tuexen <Michael.Tuexen AT micmac.franken.de>
  • To: Vanegue julien <Vanegue.julien AT epita.fr>
  • Cc: discussion AT sctp.de, dreibh AT exp-math.uni-essen.de
  • Subject: [SCTP-Discussion] Re: Latest socketapi data loss if using ext_select() on sctp-dgram socket (urgent)
  • Date: Tue Dec 14 19:52:43 2004
  • List-id: SCTP Discussions <discussion.sctp.de>

Hi,

we have a sctplib which is a release candidate. The socketapilib
will be released after the sctplib. I have not done any tests
with that, I'm working sequentially here.

Do you know if you loose data on an SCTP socket or on a TCP socket?

If you want I can send you the release candiate of the sctplib.

You can not get the source address in a dataarive notification,
but you get the assoc id. Isn't that enough?

Best regards
Michael

On Nov 30, 2004, at 16:39 Uhr, Vanegue julien wrote:


Hi there,

I'm experiencing severe data loss from a tcp socket when using
ext_select() from the latest socketapi. I am afraid this is the
sequel of a former bug that was reported 1 month ago on the list. Thomas
provided me a first sctplib/socketapi patch but some problems still remain.

TCP clients on (1), (2), (3) (... N ...) are sending requests to servers
on (4), (5), (6), (... N ...) using a one-dgram-socket-multiple-streams
sctp tunnel by sendmsg/recvmsg calls, and it works well when I try with
telnet as a client and a web server at the other side for performing a
'simple GET' request.

tcp clients ---> + ---- S C T P T U N N E L ---- + <--- tcp servers


Nevertheless, in case of big traffic with multiple tunneled sockets,
packet loss occurs on both way of the link (on the diagram, + represent
SCTP proxies on both side of the test environment).

I use 1 sctp stream per input TCP client socket. The
stream multiplexing works well. However it seems that ext_select() does
not see some data (indeed delivered and received on the network,
verified by sniffing), resulting in a partial web page (in case of www
browser proxying).

Is there a more recent snapshot available that could resolve
definitely this issue ?

I tried to use directly the sctplib on both sides of the link without
socketapi, but in this way I dont know how to retreive the real
data sender IP address in the DataArriveNotif() event. I looked
deep inside the sctplib/socketapi source code, and the execution path
that leads to the filling of 'pathindex' (which could help for getting
the peer IP address of the TCP client/server that has sent the data,
if using SCTP_pathStatus() ) seems useless in my case.

Is there a simple function that can return this information (normally
given by the ext_recvmsg call of socketapi) in sctplib ?

I would be pleased to have a quick reply even if there is no answer to
both questions ;)

Thanks a lot guys !

---
Julien Vanegue <may at epita dot fr>
EPITA : School for Computer Science and Advanced Techniques, Paris.







Archive powered by MHonArc 2.6.19+.

Top of page