SCTP Discussions

Text archives Help


[SCTP-Discussion] sctpd, sctplib, and IPC


Chronological Thread 
  • From: "Michael Mueller" <bhu5nji AT yahoo.com>
  • To: <discussion AT sctp.de>
  • Subject: [SCTP-Discussion] sctpd, sctplib, and IPC
  • Date: Wed Aug 29 15:35:02 2001
  • List-id: SCTP Discussions <discussion.sctp.de>

My impression of sctpd is that it is a daemon that manages multiple
SCTP instances for clients through a UDP interfaces. Is this
correct?

The User Manual, mentions that it is possible to run multiple
instances of SCTP using different IP addresses. Is this the only
method for managing multiple IP addresses with sctplib?

How does sctpd transfer chunks to other processes? Is it
implementation dependent? Here is how I think that it would be
done:

Consider a system with two daemons where one is running sctplib
(called d-sctp to differentiate it from sctpd) and the other is
running a user application (called d-ua). The two processes
communicate with each other using UDP sockets. Do the following
sctplib design choices make sense in this situation?

1. d-sctp uses helper function sctp_registerUdpCallback() to cause
sctp_eventLoop() to create/bind/watch for UDP input on
127.0.0.0:50023. The callback function transfers information from
the UDP datagram to an SCTP stream.

2. d-sctp will create/bind a UDP socket on 127.0.0.0:50024.

3. d-ua sends to d-sctp on 127.0.0.0:50023 and receives from d-sctp
on 127.0.0.0:50024.

4. d-sctp has a function defined for function pointer
(*dataArriveNotif)() that will transfer all incoming SCTP chunks to
127.0.0.0:50024 if the socket is write-ready; if the socket is not
write ready, then the chunk is placed into a queue.

5. d-sctp uses the Timer helper functions to periodically service
the IPC queue mentioned in 4 above. If the queue has chunk entries,
then they will be sent to d-ua if the socket is write-ready.

Thanks again,
Mike





Archive powered by MHonArc 2.6.19+.

Top of page