And yes, I have written a #multicast git transport for #librecast
Of course I have.
And yes, I have written a #multicast git transport for #librecast
Of course I have.
We've got some good news thanks to @nlnet and @NGIZero
Librecast has been funded to do more awesome things with #multicast
Watch this space.
@mray @cwebber would love to know as well.
For people not in the know, @librecast is a R&D initiative that's innovating the internet stack with support of @NGIZero and @nlnet
First, to enable #multicast on the unicast internet an overlay network is planned, based on #WebRTC. See:
https://librecast.net/librecast-strategy-2025.html
#Librecast LIVE will bring all the technology together, to demonstrate and be a reference implementation. With #ActivityPub support being planned. See:
Dodge the dodgy #AI infested corporate #streaming services and zoom out, as on the #fediverse we own the stream. Here are platforms that offer #streaming of #video or #audio in real time or near real time, with live chat and other #social capabilities.
On the fediverse our #lifestreams meet people and humanity and we engage our favorite fedi crowds. Fedi is where outreach matters.
#Librecast LIVE. @librecast is a research project aiming to bring #Multicast to the masses.
Had an interesting conversation with someone from the IETF about #multicast today.
Some folks have been trying to solve the problem of getting multicast streams from unicast only sources (Off-net Sourcing) such as browsers.
This happens to be something #Librecast built a demo for back in 2022 as part of #NGI0Discovery and which we're working on again now as part of #NGI0Core thanks to @nlnet so I think we might be able to help.
Congratulations on the release, #Librecast team!
It is a very exciting #multicast use case you are driving lcagent with, and I am looking forward to learn more about your experiences with this #CI setup.
Thank you, for all the hard work!
lcagent can be used to send and receive data over #multicast and to pipe data between programs on one computer and as many receivers as the multicast network can support simultaneously. We're currently using it now to run our own CI builds by multicasting the patch to multiple build servers simultaneously.
This could also be useful for monitoring and configuration management.
#librecast
We've got a new tool! lcagent version 0.1.0, the #Librecast #multicast agent.
In server mode, lcagent can be configured to listen on Librecast Channels (multicast groups) and execute programs in response to packet data received on those Channels.
Packets must be accompanied by an authorized token and signed by the matching key or they will be silently dropped.
Data is encoded with #RaptorQ using Librecast’s liblcrq library to provide forward error correction in the event of packet loss.
Je trie mes vieux cartons :
#collector ! Il y a trente ans, Francis Mizio raconte comment il été pris d'une sorte de frayeur cosmique lors de la première expérience planètaire temps réel de la version distribuée #multicast du #poieticgenerator
@dlakelan @mray You're technically correct (the best kind!)
Yes, SSM is PULL rather than PUSH, so it has one of the properties of multicast, but it is lacking the other characteristics that make multicast special.
SSM relies on knowing in advance the *unicast* IP address of the source.
SSM is unidirectional.
SSM lets one sender shout at everyone else.
SSM is not group communication.
SSM has its uses, and it's easier than true #multicast but it doesn't meet #Librecast 's requirements.
@mray IP multicast is a complicated mess, largely because IP is fundamentally unicast in design. There are several different forms of ASM (Any Source Multicast) and most of the complexity is around building source trees when you don't know where the source(s) will be yet.
SSM is a clever hack that says, what if we just skip past all that to the end when we KNOW who is sending, and build that, as it covers a lot of use cases (eg. ballgames).
But, it loses most of what makes #multicast special
@mray Depends on your point of view. Streaming a ballgame to millions of viewers is a problem television solved over 70 years ago. We call that broadcast.
If we use SSM (Single Source Multicast) to unidirectionally stream a game to millions of viewers, I call that broadcast, regardless of how many protocols we use that happen to have #multicast in their name.
Most IP multicast is actually broadcast.
Multicast is group communication. If only one member of the group can speak, that's broadcast.
Oops. I think I might have just told a well known person in the IP #multicast world that SSM isn't multicast and that what they've built is "broadcast"...
Oh, ha, and speaking of #firewall + #multicast fixes: Didn't notice before but my #Linux #netfilter fix for #MRD has made it upstream, yaiy: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=4a3540a8bf3c13dc3955f0c0895332b9c653be3f
It went in through net-next, so likely won't be backported to stable kernels. But now I'm looking forward to #Proxmox using Linux 6.10, then I can drop the workaround firewall rule on the @chaotikumev server.
It's a new release of Librecast!
This release adds restricted channel support with token based authentication. This allows keyrings to be created and filters to be applied to channels such that any data arriving which is not signed and accompanied by a token issued by an authorised key will be dropped.
Use #BSD for good networking, nuff said... Use #OPNsense for a firewall/router, nuff said...
Me trying to use #multicast snooping with this in our hackspace: After several hours of debugging, realizing it's not bc. of the #OpenWrt powered, #rtl83xx based switch I've added, nor the new patches I've made and added to it. But because of this two years old, ignored #OPNsense (or #FreeBSD?) bug with #MLD: https://github.com/opnsense/core/issues/6247
All you never wanted to know about creating fast socket I/O on #Linux. Unless you are a real geek.
A small, ultra-high performance publish-subscribe server doing kind of TCP #multicast using #sendfile, #io_uring, #splice, (mapped) files, and #fallocate for file hole punching.
Saturating a 10 Gbps link with useful data with just 8 cores.
A beautiful writeup for anyone into fast Linux networking. Not just for #ATproto
h/t @nohillside
#PubSub #Kernel #Hacking
https://www.asayers.com/jetrelay
I wrote a program.
Now all I have to is try and explain what it does and how to use it.
How hard could that possibly be?
Every time I `git commit` now my computer is sending patches over #IPv6 #multicast to our CI system (a bunch of test machines and VMs running on qemu) and this is how development should be.
`git pull` ?! Pah! You unicast kids with your centralized servers!
So, a bunch of #multicast fixes for #rtl83xx / #OpenWrt / Linux bridge / #switchdev / DSA patches are out now.
Fix 1: Already applied: https://github.com/openwrt/openwrt/pull/18733
Fix 2: Pending: https://github.com/openwrt/openwrt/pull/18769
And a slightly larger patchset here: https://github.com/openwrt/openwrt/pull/18780