New ASL Network Architecture?

Hi everyone -

We’re in the early stages of our new infrastructure, so some pieces are constantly changing. I joined this project with the intention of my work being open sourced, so once we’re all ready to do so, we’ll be publishing pieces of the infrastructure code on Github. Once we regain control of our previous Github page, we’ll make sure all of the legacy code stays up as well.

We want the ability for new volunteers to find flaws, add features, and contribute to the project in any way possible. So I’m with you on that!

As for the new infrastructure, our focus is simplicity and resiliency. We want AllStarLink’s infrastructure to require as little maintenance as possible so that we can focus on our core: ASL and the ham operators.

The registration server was completely rewritten as a NodeJS application for facilitating the IAX communication with ASL clients – it’s a sort of Asterisk emulator. This reduced the need for complicated load balancing, and we have redundant registration servers now simply for fault tolerance (but the effect is load balancing as well :slight_smile:). In our early testing before going live, we determined that we can have up to 15,000 registrations per server (more, but comfortably this amount), whereas before we could only handle around 1,000 per server.

Stats has been completely rewritten to move off of C/CGI so that we can more easily maintain the code, add features, and provide JSON APIs for users in the future. We’ve largely kept the same layout for stats but given it a slight facelift.

Other than that, most of ASL remains as before. We’ll provide updates as things change and of course when we publish code!

Cheers,
Rob
KK9ROB
ASL Dev/Admin