Skip to content

pion/sctp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


Pion SCTP

A Go implementation of SCTP

Pion SCTP join us on Discord Follow us on Bluesky
GitHub Workflow Status Go Reference Coverage Status Go Report Card License: MIT


Implemented

  • RFC 6525 — Stream Control Transmission Protocol (SCTP) Stream Reconfiguration
  • RFC 3758 — Stream Control Transmission Protocol (SCTP) Partial Reliability Extension
  • RFC 5061 — Stream Control Transmission Protocol (SCTP) Dynamic Address Reconfiguration
  • RFC 4895 — Authenticated Chunks for the Stream Control Transmission Protocol (SCTP)
  • RFC 1982 — Serial Number Arithmetic

Partial implementations

Pion only implements the subset of RFC 4960 that is required for WebRTC.

  • RFC 4960 — Stream Control Transmission Protocol [Obsoleted by 9260, above]
  • RFC 2960 — Stream Control Transmission Protocol [Obsoleted by 4960, above]

The update to RFC 9260 — Stream Control Transmission Protocol is currently a work in progress.

Potential future implementations

Ideally, we would like to add the following features as part of a v2 refresh:

Feature Reference Progress
RACK Paper In review
TLP Parent issue Would be implemented via RACK for SCTP
Adaptive burst mitigation Paper, see section 5A In review
Blocking writes 1, 2 In progress
association.listener (and better docs) 1, 2 Not started, blocked by above

RFCs of interest:

  • RFC 8312 as it addresses the low utilization problem of RFC 4960 in fast long-distance networks as mentioned here.

Roadmap

The library is used as a part of our WebRTC implementation. Please refer to that roadmap to track our major milestones.

Community

Pion has an active community on the Discord.

Follow the Pion Bluesky or Pion Twitter for project updates and important WebRTC news.

We are always looking to support your projects. Please reach out if you have something to build! If you need commercial support or don't want to use public methods you can contact us at [email protected]

Contributing

Check out the contributing wiki to join the group of amazing people making this project possible

License

MIT License - see LICENSE for full text

Contributors 40

Languages