Downloading Games at 10 GIGABIT?
Summary
TLDRCette vidéo explore une solution efficace pour éviter les ralentissements lors du téléchargement de jeux dans un environnement avec plusieurs utilisateurs. En mettant en place un serveur de cache, les fichiers de jeux sont stockés localement après leur premier téléchargement, ce qui permet de réduire l'utilisation de la bande passante pour les futurs téléchargements. Le processus technique implique l'utilisation de Docker et d'un serveur dédié avec des disques SSD en RAID. Bien que cela ne soit pas nécessaire pour tous les gamers, c'est une solution idéale pour les événements LAN ou les maisons avec plusieurs joueurs.
Takeaways
- 😤 Attendre une éternité pour télécharger des jeux est frustrant, surtout lorsque plusieurs personnes utilisent la même connexion.
- 🚀 L'utilisation d'un serveur de cache permet d'accélérer les téléchargements en évitant les engorgements de bande passante.
- 💻 Un serveur de cache fonctionne en stockant temporairement les fichiers d'un jeu pour ensuite les distribuer localement, économisant ainsi la bande passante.
- 🔧 La solution 'Steam Cache' permet de mettre en cache plusieurs plateformes de jeux comme Steam, Origin, Riot Games, Battle.net et même Windows Update.
- 📦 Docker est utilisé pour gérer les différents services de mise en cache, chaque plateforme nécessitant sa propre instance.
- ⚙️ Un serveur équipé de 64 Go de RAM et de SSDs en RAID permet des vitesses de lecture séquentielle allant jusqu'à 1 Go par seconde.
- 🔍 L'installation de Docker sur Linux est recommandée pour une meilleure efficacité, Ubuntu étant le choix préféré.
- 🌐 Il est plus pratique de configurer le DNS principal du routeur pour pointer vers le serveur de cache plutôt que de modifier les paramètres DNS sur chaque ordinateur.
- 🎮 Cette solution de cache peut convenir aux événements LAN ou aux foyers avec plusieurs gamers, mais peut être superflue pour un joueur unique.
- 🛠 Même si le système n'est pas critique, en cas de panne d'un disque, les données mises en cache peuvent être facilement récupérées.
Q & A
Pourquoi le téléchargement de jeux peut-il causer un problème dans un environnement avec plusieurs utilisateurs ?
-Le téléchargement simultané de jeux par plusieurs utilisateurs peut entraîner un goulot d'étranglement, car la bande passante est partagée, ce qui ralentit les vitesses de téléchargement pour tout le monde.
Qu'est-ce qu'un serveur de cache et comment fonctionne-t-il dans ce contexte ?
-Un serveur de cache stocke les fichiers téléchargés localement sur le réseau. Lorsqu'une personne télécharge un jeu pour la première fois, le fichier est sauvegardé sur le serveur, et les utilisateurs suivants peuvent télécharger le même fichier depuis ce serveur plutôt que de le récupérer à nouveau depuis Internet, réduisant ainsi la consommation de bande passante.
Quels sont les avantages d'utiliser un serveur de cache lors de LAN parties ou à domicile ?
-Un serveur de cache réduit la consommation de bande passante externe, améliore les temps de téléchargement et diminue la latence pour tous les utilisateurs partageant une connexion Internet, particulièrement utile dans un environnement à plusieurs utilisateurs comme un événement LAN ou une maison avec plusieurs gamers.
Qu'est-ce que le 'steam cache' et quels services peut-il prendre en charge ?
-Le 'steam cache' est une solution de mise en cache pour les services de jeux comme Steam, Origin, Riot Games, Battle.net, Uplay, et même Windows Update, facilitant les téléchargements pour plusieurs utilisateurs sur un réseau local.
Quels sont les composants matériels recommandés pour un serveur de cache performant ?
-Un serveur de cache performant nécessite un réseau de 1 gigabit, des disques SSD en RAID 0 pour des vitesses de lecture élevées, 64 Go de RAM pour la mise en cache en mémoire, et une carte réseau de 10 gigabits pour permettre des téléchargements simultanés à grande vitesse pour plusieurs utilisateurs.
Pourquoi le script mentionne-t-il l'utilisation de Docker pour ce projet ?
-Docker permet de créer des conteneurs pour chaque service de cache (Steam, Origin, etc.) séparément sans avoir à virtualiser un système d'exploitation complet. Cela le rend plus efficace et facile à gérer, surtout lorsque plusieurs instances sont nécessaires.
Pourquoi ont-ils choisi Ubuntu comme système d'exploitation pour le serveur de cache ?
-Ils ont choisi Ubuntu en raison de sa popularité, de sa compatibilité avec Docker et de la facilité d'installation, bien que le processus puisse fonctionner sur n'importe quelle distribution Linux.
Quels sont les risques associés à l'utilisation de disques SSD en RAID 0 dans ce type de configuration ?
-Le RAID 0 offre des vitesses élevées mais ne garantit pas de redondance. En cas de défaillance d'un disque, toutes les données sont perdues. Cependant, comme il ne s'agit que de données mises en cache qui peuvent être retéléchargées, cela n'est pas critique dans ce cas.
Quelles sont les limitations de la démonstration de téléchargement de jeux compressés comme PUBG ?
-Le téléchargement de jeux compressés comme PUBG est limité par la puissance de traitement de l'ordinateur client, car la décompression est effectuée localement, ce qui peut entraîner un goulot d'étranglement dû à la charge sur le processeur.
À qui ce type de solution de serveur de cache est-il le plus bénéfique ?
-Cette solution est particulièrement utile pour les grandes familles de gamers ou les organisateurs de LAN parties, car elle permet de réduire les temps de téléchargement pour plusieurs utilisateurs simultanés tout en économisant de la bande passante.
Outlines
😀 Amélioration de la vitesse de téléchargement des jeux
Le script traite de la frustration de devoir attendre des téléchargements de jeux et comment cela peut être problématique dans un environnement où plusieurs personnes veulent télécharger des jeux en même temps. L'auteur explique qu'ils ont cherché à résoudre ce problème sans simplement dépenser plus d'argent sur une connexion Internet plus rapide. Ils ont utilisé un serveur de mise en cache pour améliorer la vitesse de téléchargement, permettant à tous dans le bâtiment de télécharger des jeux de services comme Steam à pleine vitesse. Le script mentionne également un clavier Corsair Strafe Mark II avec des interrupteurs Cherry MX RGB et de la mémoire de profil interne. Il explique également le concept de serveur de mise en cache, comment il fonctionne et comment il peut aider à réduire la latence pour les utilisateurs partageant la même connexion.
🛠️ Configuration du serveur de mise en cache pour la téléchargement des jeux
Le script décrit le processus de mise en place d'un serveur de mise en cache pour améliorer la vitesse de téléchargement des jeux. Il explique comment les fichiers téléchargés sont d'abord enregistrés sur un serveur distinct avant d'être transférés à l'utilisateur, économisant ainsi de la bande passante et réduisant la latence. Le script mentionne l'utilisation de la solution nginx de mise en cache, nommée Steam Cache, qui prend en charge plusieurs services de jeux. Il détaille les spécifications matérielles du serveur, y compris 64 Go de RAM DDR4 et une carte réseau 10 GbE, et comment configurer Docker pour exécuter des conteneurs pour chaque service de mise en cache. Le script explique également comment configurer des adresses IP statiques pour chaque service et comment les utiliser avec Steam Cache DNS pour acheminer les requêtes de téléchargement vers le serveur de mise en cache.
🎮 Essais et conclusions sur la mise en cache des jeux
Le script présente les résultats des tests de téléchargement des jeux avec le serveur de mise en cache configuré. Il montre que plusieurs utilisateurs peuvent télécharger des jeux en même temps à des vitesses élevées, atteignant des pics de 7,2 Gbit/s. Il discute des limitations liées à la compression des jeux et à la performance du processeur de l'ordinateur client. Le script conclut que, bien que cette solution ne soit pas idéale pour tous les joueurs, elle est recommandée pour les maisons avec de nombreux joueurs ou les organisations de LAN gaming, car elle permet de réutiliser un ordinateur vieux pour un nouveau but. Il mentionne également une offre de Freshbooks pour les petites entreprises et invite les spectateurs à s'abonner et à laisser des commentaires pour un suivi vidéo.
Mindmap
Keywords
💡caching server
💡bandwidth
💡LAN
💡Docker
💡Nginx
💡RAID
💡SSD
💡DDR4
💡DNS
💡Freshbooks
Highlights
Game download bottleneck issue is common in shared environments, especially when multiple users are downloading at the same time.
Solution to speed up downloads involves using a caching server that saves files to a separate machine and relays them to users, reducing bandwidth usage.
Caching servers are used at major LAN events to deliver high download speeds without relying solely on fast internet connections.
Steam Cache is a pre-compiled Docker solution that supports caching for multiple services including Steam, Origin, Riot Games, Battle.net, and even Windows Update.
Docker is used for its efficiency, allowing multiple instances to run without the overhead of full virtual machines.
A 10-gigabit network card and high-speed NVMe SSDs are key components in building a powerful caching server to handle multiple users at full speed.
Setting up a caching server involves configuring static IPs for each service and DNS forwarding to direct traffic to the server instead of external sources.
Using RAID 0 configuration for SSDs boosts sequential read speeds, but it carries a risk of data loss if a drive fails—however, it's not critical since the server caches easily downloadable files.
The guide uses Linux for the server, as Docker can be run more efficiently on Linux compared to Windows, which requires virtualizing the Linux kernel.
Docker allows running individual containers for each game service, making it easier to manage and update the cache for each platform.
The demonstration showed download speeds reaching 7.2 gigabits per second when using the caching server, illustrating its capability for large-scale environments.
In some cases, game download speed is limited by CPU performance during decompression, such as with highly compressed games like PUBG.
The caching server is ideal for LAN events or homes with multiple gamers, reducing internet bandwidth consumption and improving download speeds.
Setting the cache IP as the primary DNS on a router can streamline the process for all devices in a network, rather than configuring each device manually.
This setup may not be practical for individual gamers, but it's a great solution for environments where games are frequently downloaded by multiple users.
Transcripts
waiting what seems like an eternity for
games to download is annoying enough to
start with but when there are multiple
people in the house or office and
everyone wants to grab a hot new title
at the same time you can run into some
serious bottlenecking so
we set out to solve that problem once
and for all
without just spending more money on a
faster internet connection and now
well not quite now jake's fixing it but
soon
everyone in this building will be able
to download games from services like
steam at full speed
and i'm going to show you guys
how after jake fixes the machine and i
tell you about corsair's next generation
strafe mark ii keyboard it features a
variety of cherry mx rgb key switches
and eight megabytes of onboard profile
storage check it out at the link below
[Music]
if you've been to an organized lan event
recently you were probably wowed by game
download speeds that seemed like they
were from the future or something
but unless it was dreamhack 2018 the
event's internet speed is probably
nowhere near enough to offer those kinds
of speeds
to even just a couple of people
so
how do they do it
great question and one that can be both
simple and complicated to answer so in
short those insane speeds are thanks to
the event having something called a
caching server
basically when a game is first
downloaded on the network instead of the
files just going straight to the
downloader's drive like let's say this
laptop that used to be here but instead
i'll use this hard drive as a prop
instead of them just going straight to
this drive they are first saved to a
separate machine and then
kind of relayed to the user
so then the next time someone wants to
download that same game let's say to
this
other hard drive instead of pulling it
off of steam or uplay directly it'll
save a ton of bandwidth to the outside
internet by grabbing it off of that same
server this will help keep latency down
for all of the gamers that are sharing
that same connection
so
the concept is simple
but when you get into sending up engine
x dns forwarding dealing with https and
worrying about when to clear the cache
the actual deployment can get pretty
confusing now thankfully for us there
are a ton of different solutions that
mostly revolve around the same built-in
nginx caching solution with the most
up-to-date being
the appropriately named steam cache
it's pre-compiled for docker making it
quick to set up and despite its name
there's actually a version of it that
supports steam origin riot games
battle.net frontier launchpad uplay and
even windows update so it's perfect for
your next lan or even general home use
because i mean
who needs epic games launcher anyway
right
yeah right
so let's get started on exactly how it
works then shall we for most people
standard one gigabit networking along
with a couple of uh
along with a couple of raid zeroed hard
drives will be more than sufficient but
come on you guys know how we do so we
wanted to plan to allow every single
writer here in the office to download
games at the same time so that would be
about one gigabyte per second of
sequential read speeds now that's
child's play for today's high-end nvme
ssds like this one
but since we also need capacity and
that's not what you're gonna get from a
single octane drive we decided on six
raid zeroed 480 gig sata ssds from
corsair that we pulled out of that dual
machine build rip rip in pieces
now it should be noted that a single
drive failure here would result in a
complete loss of all the data on the
array but
it doesn't really matter since this
server is not mission critical all it's
doing is caching readily available games
and updates we could easily throw a new
drive in and redownload it all the other
key specs of our system are its 64 gigs
of ddr4 ram lots of ram lets the server
cache files in memory for quicker
transfers and a 10 gigabit network card
so remember even though we want to
download from this server at one gigabit
we want multiple people to be able to do
that at the same time so this one needs
a bigger pipe now we're using an x540 t2
but that's kind of older it was because
we had it lying around they're actually
cheaper options these days from a
quantia and asus
so then now that we have a server primed
for caching we can get back to the
software side of things
as i mentioned earlier steam cache comes
in the form of a docker container which
is kind of like a virtual machine but
instead of emulating the entire
operating system then with the specific
software that we need on top of that
docker can run specific software as if
it's on its os
without running an entire separate os
making it a lot more efficient
especially if you need to run multiple
instances of the same software and we
will need to do that since each
different service that needs caching
steam origin battlenet etc will run in
its own instance
now we know all of that was a gross
oversimplification so we're actually
going to link a video below with a
better explanation of docker if you're
into that
docker can run on both linux and windows
but the windows version has to actually
virtualize linux kernel on top of
windows so we're going to stick with
linux we went with ubuntu desktop 18.04
because we love reading butthurt
comments from the arch and mint fanboys
just kidding love you guys
um but don't worry the guide that we're
going to have linked below will work on
pretty much any flavor of linux that you
like now our first step is to get docker
up and running
once you have it make sure that you run
your docker commands either with sudo or
by adding your user to the docker group
do not run any of this as root
please
then for our installation we want to
cache all of the services that we use on
a regular basis here at the office which
means that we're going to need six
static ips one for each of them since
this os has a graphical interface it's
actually super easy to set up our ips we
just need to navigate to network
settings and enter them well bam bam
just like that i type pretty fast now we
can start each of the caching docker
containers one by one and then steam
cache dns which will forward
all of the urls that need caching to our
server instead of the world wide web
then i mean don't worry then if
something isn't on our server it won't
just fail
if the content isn't cached yet it will
then get downloaded to the caching
server and be forwarded to the
downloader seamlessly
cool right so
theoretically then we should be good to
start downloading some games right uh
not quite so we need to set the cache ip
as dns on all the systems we want to use
right okay
so
keep in mind that if you intend to run a
solution like this long term it's a lot
more elegant to set your primary dns on
your router to the ip of your caching
server instead of setting up
the dns settings on a computer by
computer basis
uh don't worry any unrelated traffic
will go to the usual location okay so
we're ready so here's the caching server
we've got our diagnostics panel running
and all that and then we've got actually
a couple of test victims so first up
we've got this guy one of jake's test
benches and we're just going to do a
quick sanity check make sure
everything's working this is actually a
10 gig client with an intel optane drive
as its boot so go ahead and hit that i
want to hit it at the same time as you
okay three three two one go
okay let's go oh boy brandon you're
gonna have to get here
23 seconds here
i'm at 200 megs i'm coming down at 320
megs a second sir you're at what 223 223
230. 250.
oh wow 300. are you done the game yet uh
who's gonna win
two seconds two
and done
same time go check go check because
it'll be done too so we don't even have
to see the actual speed
wonder what the
that is disgusting okay so we peaked out
at
7.2 gigabit 7.2 gigabit yeah from the
serve
show brandon seven point k so that was
the peak 7.2 and then it was kind of
averaged around six
there's another 6.7 right there
dang flabbit that's insane all right for
lulls i'm just gonna do
pub g and see if that one works
oh yeah it is okay so
with games like pubg where there's a lot
of compression yeah you're limited by
your computer so if we look at the cores
of this system so this is an i9 you know
you don't have a huge amount of single
threaded performance
so steam will only use a certain amount
of cores and it won't bypass that so
you'll see
so we're capped out by our cpu right now
yeah decompressing not by our server so
if you see here there's two full cores
that are being utilized i think it's
normally three or four that it'll use
and then past that it won't use anymore
to not interrupt the rest of your system
right and i think it's more optimized
for like four to eight core systems
16 core is a little too much for steam
so it's a less impressive demo but it's
definitely our best case scenario and
that means that we could have five
systems yeah hitting it at the same time
apparently seven now based on what we
saw there
so i guess conclusion time then uh this
may not be a solution for the everyday
gamer like many people will only ever
download each game
play it once then delete it and never
download it again
and it's a lot more user friendly to use
just use steam zone
backup feature to a nas if there's
something that you you know think
occasionally you might want to
re-download
but if you have a bunch of gaming
efficient autos in the house or if you
help run a local lan gaming organization
we would definitely recommend giving it
a shot
especially if you have an old computer
lying around that's just waiting to be
given a new purpose
speaking of just waiting what are you
waiting for try freshbooks today
freshbooks is the small business
accounting software custom built for how
you want to work it's the simple way to
be more productive more organized and to
get paid faster freshbooks allows you to
create and send professional looking
invoices in less than 30 seconds
you can set up online payments with just
a couple of clicks and get paid up to
four days faster they've got apps for
ios and android so you can take the
entire freshbooks experience with you on
the go and you can see when your client
has seen your invoice to put an end to
the guessing games so for your
unrestricted 30-day free trial go to
freshbooks.com tech tips and enter linus
tech tips in the how did you hear about
us section we're gonna have that linked
below
so thanks for watching guys dislike or
like check out our other videos oh wait
this is my techwiki outro crap uh also
um get subscribed we have merch and let
us know if you want to see a follow up
to this video where instead of like a
janktastic
like
rat's nest of ssds in the back of a
regular tower yeah and jake's
water-cooled test bench if you want to
see us like set this up properly like
get like every steam and origin game
possible cached onto it and do some cool
demos maybe we should do like a lan
center oh
that'd be pretty this would be perfect
for that yeah we might need more
networking though
maybe
wanna see us take it to the next level
let us know in the comments below
Voir Plus de Vidéos Connexes
✉️ PHP Contact Form Tutorial: Sending Email via XAMPP on Localhost
N'utilisez plus de VPN : utilisez un VPS !
Retouche peinture: rayure pare choc carroserie voiture DIY tout le matériel dans le descriptif 👇
Hydrodistillation
Bouturage herbacé : Comment bouturer les vivaces: le Fuchsia, le Dahlia avec une mini-serre gratuite
COMMENT METTRE UN SHADER EN 5 MINUTES SUR MINECRAFT ?! (Tuto 2021)
5.0 / 5 (0 votes)