• 1 Post
  • 464 Comments
Joined 1 year ago
cake
Cake day: March 23rd, 2025

help-circle
  • Not really. Games have very similar security implications as any other server/client software.

    You are right now reading on exactly such a system, which is open source, and still you don’t see massive amounts of hacks targeting lemmy or piefed.

    The premise is simple: Never trust the client. The border you have to defend isn’t the border between the client software and the user, but the one between the client and the server. Always treat the client software as compromised.

    In terms of games that means:

    • All game state calculation happens on the server. The client sends to the server what it wants to do, the server sends what happens. So instead of the client sending “The player is now at position XY”, it sends “The player is walking forwards”. The server calculates the speed, distance and new position and returns that to the client.
    • The server only sends the client things the player should know. If the enemy unit is not visible, it is not sent to the client.

  • That’s what buggs me about the situation. Physical media doesn’t matter one bit.

    There’s nothing about physical media that conferrs any kind of ownership over the copy. Already way back in 2012 I bought an used copy of Skyrim only to find out when trying to install it that it used Steam and the CD key was already tied to the previous owner’s Steam account. I had the physical media, but it was worthless to me.

    What we should be fighting for (or put our money towards) is DRM-free copies, like what GOG sells. If you really fetishize plastic disks nobody’s stopping you from burning a copy of the DRM-free installer onto one, or you can put it on your NAS, the cloud or where the sun don’t shine.



  • Yeah, that’s mostly a regulation/legal incentives situation, combined with lack of education on the side of the execs.

    It is possible to sell devices as “defective”, even if they aren’t defective. That way you don’t have warranty or other legal obligations.

    Similar story with the “Scrap the whole device for data privacy reasons”. That’s not a thing. Scrapping the storage media, sure, totally. Scrapping the mainboard, case and power supply? That’s crap.

    But the main issue is that there’s no incentive for companies to reuse devices versus scrapping them. So they scrap the whole thing without regards to anything else, because it’s a single decision that requires no further thought und it’s cheap enough that it doesn’t matter.

    If they’d have to pay for full recycling cost, so the cost for actually turning 100% of the device back into usable raw components, then they will instantly start giving those away for free.




  • Germany alone pays €200mio per year to Microsoft. Imagine what would happen if this money would go to FOSS development instead? And imagine what would happen if all EU countries would follow suit?

    And now the really crazy part: what if they all didn’t do their own little thing but instead pooled resources? That would overtake Microsoft within months.





  • The algorithm is super easy:

    A stream is defined as something that shares the same Source IP, Target IP, Source port, Target port and protocol, so e.g. “TCP 192.168.0.2:45231 -> 80.0.0.1:443”. This 5-tuple is guaranteed to be unique at a certain time.

    The router counts how many packets each stream had in the last second.

    If the bandwith is at its limit and two streams want to send a packet, prioritize the one that had fewer packets in the last second.

    This covers all of your bases:

    • A huge download will have tons of packages and it will not have trouble if it gets its speed throttled by a few percent. Because it gets most of the slots it gets lowest priority.
    • A video call will have medium traffic. It gets priority over the download, because it has less packets, thus it will not lag, but because it doesn’t need more traffic, it will not interrupt the download.
    • Scrolling Facebook requires quite low traffic. Most of the content is text or pictures, with a rare, often short low-quality video with quite low traffic requirements. It will get priority over the video call, but since the traffic volume is so tiny it will not harm the video call, unless you have a severely slow connection (<50MBit).
    • Telemetry has incredibly low traffic requirements. We are talking about a few kilobytes per hour. These will have high priority, but since they have such an incredibly tiny traffic footprint, that won’t do anything at all, unless you are on a 56k modem, but if you are you won’t be downloading, video calling or scrolling Facebook anyway.

    The cool thing is, this algorithm needs extremely little space in RAM and is extremely easy on the CPU too. To store a stream’s data you need 13 bytes for the metadata plus 3 bytes for the package counter, netting 16 bytes per stream. That’s 64 concurrent streams per Kilobyte of used RAM. A megabyte fits 64k streams. You can implement that algorithm on an original Gameboy and it wouldn’t sweat.

    Also, remember that this algorithm only looks at the last second or so of data, so it can drop all idle sessions within just one second. 64k concurrent streams within one second is enough for professional-grade office routers.

    Source: I actually spent the first 7 years of my carreer at a company that makes routers and switches and developed the software for them. 128MB RAM was what our mid-range models had, and every single model we had had traffic priorisation.

    In fact, our network-provider-grade routers and switches had dedicated network metadata RAM, and they were usually limited to 4-16MB.

    The only reason your router even has 128MB RAM or more is so that it can display a fancy configuration web page with images.







  • What is not true?

    Do the math yourself, it’s only grade school level:

    A download takes 100 minutes at 10Mbit. How long does it take at 20Mbit and how many minutes are saved?

    The same download takes 2 minutes at 500Mbit. How long does it take at 1000Mbit and how many minutes are saved?

    This calculation doesn’t even take into consideration that most servers don’t allow for gigabit downloads and that most wifi connections also don’t allow for gigabit.


  • A relevant part is that double the speed doesn’t save the same time.

    So e.g. if a download takes 100 minutes on 10MBit, you save 50 minutes by doubling the speed.

    The same download would take 10 minutes on 100MBit, doubling the bandwidth would only save 5 minutes.

    And on 500MBit it’s two minutes, so doubling the bandwidth only saves one minute.

    We are deep into diminishing returns here.

    €58 vs €49 means an extra €108 per year. That’s quite a sum.

    In my case going from the 150Mbit/s I have to gigabit would cost me €35 extra per month, €420 a year, yeah, that’s not worth it to speed up some background downloads.

    I’m on Fedora, updates are frequent as well, but since they download in the background I hardly care about the speed. I see there’s a new update, so I start the download in the beginning of the day. It finishes within half an hour or an hour or so, while I continue doing my stuff, and in the evening when I’m done I run the actual update if it requires a reboot.


  • But how often do you do that? And do you need all 10 games instantly available on your PC?

    I recently setup a new laptop on Fedora on a 150MBit connection. That was around 10min for downloading Fedora, 20min for installing it, another 20min or so for setting up Steam and Heroic launcher (for GOG, Epic and Amazon Games). I started the first game download on Steam while I was setting up Heroic and it was done downloading before I was done with Heroic.

    Since I can only play one game at the time, I could already start playing and let the rest of my library download in the background.

    A faster internet connection would have just shaved off a few minutes from the initial 10min downloading time for Fedora, but I don’t know how fast the server even lets me download the image.

    I mean, if you pay €20 for gigabit, sure, why not. The only network provider who serves gigabit at my home wants €65 per month for it compared to the €30 I pay right now. That’s €420 per year extra, and there’s really no point in paying that to save a few minutes every few months or so.


  • Tbh, I don’t think the post is bad at all. If you have special high-bandwidth use cases that require massive speed you know that already and then the article isn’t for you.

    If you say you “didn’t have fiber” I’m guessing you were on 50MBit VDSL? Then, of course, switching to gigabit makes sense.

    In the blog post the author explicitly doesn’t say “Go get VDSL”, but they compare Gigabit with 500MBit. That’s not nearly that much of a difference, you’ll still be able to play a new game minutes after you bought it, but just twice as many minutes. If that at all, because if you have wifi in your home, it will likely limit your bandwidth to less than 500MBit in real use anyway.

    The main point of the post is to show whether a regular user really benefits from Gigabit, and no, they don’t. Their netflix stream will not improve when going from a few hundred MBit to a Gigabit. Neither will most of their experience.

    If you are lucky enough to live in a place where Gigabit costs nothing, sure, might as well. The only provider who serves Gigabit to my home wants €65 per month for that, €780 per year. That’s a lot of money for something that maybe saves me a few minutes once or twice a month.