Show HN: Pion SCTP with RACK is 70% faster with 30% less latency
SOURCE:Hacker News|BY:pch07
SCTP is a low level protocol focused on reliable packet transmission. Unlike hopelessly flinging packets from one device to another, it makes sure that the packets are correct using CRC, removes duplicate packets, and allows for packets to be sent in any order.
Going into an established library, I thought that everything was already implemented and that there wasn't anything to do until I went through the existing issues and organized all the tasks and decided on an order. Sean DuBois (https://github.com/Sean-Der), one of the co-creators and current maintainers of Pion, an open-source pure Go implementation of WebRTC (which uses SCTP), introduced me to a dissertation that was written about improving SCTP from 2021 (https://duepublico2.uni-due.de/servlets/MCRFileNodeServlet/d...). To my surprise, the features in it weren't actually implemented yet, and generally went unused even though it depicted pretty big improvements. This came as a bit of a shock to me considering the countless companies and services that actively use Pion with millions of users on a daily basis.
This led to two things: 1) implement the feature (done by me) and 2) measure the performance (done by Joe Turki https://github.com/JoeTurki). If you're interested in reading more, please check out the blog post where we go over what SCTP is used for, how I improved it, and the effort that went into making such a large improvement possible.
This also marks a huge milestone for other companies and services that use SCTP as they can refer to the implementation in Pion for their own SCTP libraries including any real-time streaming platforms such as Microsoft Teams, Discord screen share, Twitch guest star, and many more!
For my personal background, please take a look at a comment below about what it was like for me to get started with open-source and my career related journeys. Thanks for reading!
Comments URL: https://news.ycombinator.com/item?id=46413053
Points: 33
# Comments: 5
SCTP is a low level protocol focused on reliable packet transmission. Unlike hopelessly flinging packets from one device to another, it makes sure that the packets are correct using CRC, removes duplicate packets, and allows for packets to be sent in any order.
Going into an established library, I thought that everything was already implemented and that there wasn't anything to do until I went through the existing issues and organized all the tasks and decided on an order. Sean DuBois (https://github.com/Sean-Der), one of the co-creators and current maintainers of Pion, an open-source pure Go implementation of WebRTC (which uses SCTP), introduced me to a dissertation that was written about improving SCTP from 2021 (https://duepublico2.uni-due.de/servlets/MCRFileNodeServlet/d...). To my surprise, the features in it weren't actually implemented yet, and generally went unused even though it depicted pretty big improvements. This came as a bit of a shock to me considering the countless companies and services that actively use Pion with millions of users on a daily basis.
This led to two things: 1) implement the feature (done by me) and 2) measure the performance (done by Joe Turki https://github.com/JoeTurki). If you're interested in reading more, please check out the blog post where we go over what SCTP is used for, how I improved it, and the effort that went into making such a large improvement possible.
This also marks a huge milestone for other companies and services that use SCTP as they can refer to the implementation in Pion for their own SCTP libraries including any real-time streaming platforms such as Microsoft Teams, Discord screen share, Twitch guest star, and many more!
For my personal background, please take a look at a comment below about what it was like for me to get started with open-source and my career related journeys. Thanks for reading!