mediasoup

/ home / Documentation / v3 / mediasoup / SCTP Parameters

SCTP Parameters

Dictionaries

SctpParameters

Parameters of the SCTP association.

Field Type Description Required Default
port Number Must always equal 5000. Yes  
OS Number Initially requested number of outgoing SCTP streams. Yes  
MIS Number Maximum number of incoming SCTP streams. Yes  
maxMessageSize Number Maximum allowed size for SCTP messages. Yes  

NumSctpStreams

Field Type Description Required Default
OS Number Initially requested number of outgoing SCTP streams (from 1 to 65535). No 1024
MIS Number Maximum number of incoming SCTP streams (from 1 to 65535). No 1024

Both OS and MIS are part of the SCTP INIT+ACK handshake. OS refers to the initial number of outgoing SCTP streams that the server side transport creates (to be used by DataConsumers), while MIS refers to the maximum number of incoming SCTP streams that the server side transport can receive (to be used by DataProducers). So, if the server side transport will just be used to create data producers (but no data consumers), OS can be low (~1).

When obtaining numSctpStreams from mediasoup-client via device.sctpCapabilities.numStreams, the obtained fields must be reversed:

const transport = await router.createWebRtcTransport(
  {
    enableSctp     : true,
    numSctpStreams :
    {
      OS  : clientSctpCapabilities.numStreams.MIS,
      MIS  : clientSctpCapabilities.numStreams.OS
    }
  });

SctpStreamParameters

SCTP stream parameters describe the reliability of a certain SCTP stream.

Field Type Description Required Default
streamId Number SCTP stream id true  
ordered Boolean Whether data messages must be received in order. if true the messages will be sent reliably. No true
maxPacketLifeTime Number When ordered is false indicates the time (in milliseconds) after which a SCTP packet will stop being retransmitted. No  
maxRetransmits Number When ordered is false indicates the maximum number of times a packet will be retransmitted. No  
  • If ordered is true then maxPacketLifeTime and maxRetransmits must be false.

  • If ordered if false, only one of maxPacketLifeTime or maxRetransmits can be true.