23.1 Introduction
In this chapter, we will dig a bit deeper into
SCTP, examining more of the features and socket options that SCTP
provides to its users. We will discuss a number of topics,
including control of failure detection, unordered data, and
notifications. Throughout this chapter, we will provide examples of
code so that the reader can see how to use some of SCTP's advanced
features.
SCTP is a message-oriented protocol, delivering
partial or complete messages to the user. Partial messages will
only be delivered if the application chooses to send large messages
(e.g., larger than half the socket buffer size) to its peer. When
partial messages are delivered, SCTP will never mix two partial
messages together. An application will either receive a whole
message in one receive operation or it will receive a message in
several consecutive receive operations. We will illustrate a method
of dealing with this partial delivery mechanism through an example
utility function.
SCTP servers can be either iterative or
concurrent, depending on the style of interface the application
developer chooses. SCTP also provides a method to extract an
association from a one-to-many-style socket into a separate
one-to-one-style socket. This method allows the construction of a
server that is both iterative and concurrent.
|