
Revised and much faster, run your own high-end cloud gaming service on EC2 - SG-
http://lg.io/2015/07/05/revised-and-much-faster-run-your-own-highend-cloud-gaming-service-on-ec2.html
======
halotrope
I have followed the original instructions and after a couple days of tinkering
around it is now my go-to service for gaming. I can play AAA titles on my mac
without having them consume precious SSD space nor does the computer get
anywhere as hot as when I was running them in bootcamp. The cost is quite
affordable when making your own AMI with Steam and everything preinstalled.
Since booting the machine and setting everything up takes around 10 minutes I
also don't get tempted to play when I would have to work. It is a much more
conscious decision. I only had to get an ethernet cable because wifi was too
flaky. But now it is very solid with a 50M DSL line and average ping of 60ms
to Ireland.

~~~
octaveguin
I, too, followed the original instructions and played the Witcher 3 and Ark:
Survival Evolved via my mac against an AWS instance on the frankfurt
datacenter. This was in Vienna which means that the average ping was around
40ms.

It was a fun little project to get it all working and it was playable but
barely.

The added latency makes you feel a little floaty (like a bad VR experience -
the kind that make you sick). The witcher looked good when you stood still but
not while moving. Ark's performance was abysmal on the aws hardware such that
I had to turn down the settings.

Part of the bad experience is likely my ISP's fault - I had spikes of packet
loss - though I think this is fairly typical.

The cost is mostly not in the spot instance (that /is/ cheap) but in the
storage (EBS) that you need to keep around to mount a spot instance whenever
you want to play. The bandwidth cost is non-trivial for the amount of data
you're streaming. I had about a 40 euro bill for the month under somewhat
light use.

In the end, I can't say I recommend it. Onlive and Gaikai didn't do so well.
That might have been their business models but I believe the tech is equally
to blame. It's a ridiculously hard thing to get right consistently.

~~~
surge
I used OnLive, the latency in response, even if its good for a while isn't
consistent enough, even on a good connection, for playing anything other than
Lego Star Wars or turn based games without screaming in frustration. You'll be
met with sudden input delays or shuttering that just screws you.

~~~
bryans
This was not at all my experience with OnLive. I played Just Cause 2, and even
having a relatively terrible connection through Time Warner Cable, it worked
well enough that I was able to play the entire game without any noticeable
input latency. The only exception being at times that TWC was having severe
network issues, but that was both rare and understandable. The OnLive service
itself worked pretty flawlessly for me.

------
Wilya
The guide advocates an EC2 security group that allows everything, plus
disabling the Windows firewall. That's quite insecure, and unnecessary.

It's probably better, and not more work, to create a security group that only
allows:

* UDP on port 1194 (Openvpn server) * TCP on port 3389 (Remote Desktop) * ICMP (for ping)

~~~
micro-ram
Is Openvpn even necessary? Open 3389 to only your IP address in the security
group.

~~~
davb
Yeah, using OpenVPN allows your client and server to reside on the same
subnet, which I presume is necessary for Steam In-Home Streaming.

------
z3t4
We might just have seen the future of PC gaming DRM. That you will pay per
hour instead of a one-off payment.

There's one problem though, and it's latency, even 50ms will feel very laggy.
We need more decentralized data centers! With a data-center in each city you
could get latency down to less then a millisecond.

I think the next digital revolution will be low latency, and a flora of new
services coming with it.

~~~
halotrope
From first hand experience I have to say even 120ms is fine when you are not
playing competitively.

~~~
Tiksi
I tried to play GTAV when the first article came out, and while it wasn't
unplayable, the latency was frustrating at best. Driving was futile, and I
have a muc, much lower latency to aws than 120ms:

    
    
      > ping -c 4 sdb.amazonaws.com 
      PING sdb.amazonaws.com (176.32.102.211) 56(84) bytes of data.
      64 bytes from 176.32.102.211: icmp_seq=1 ttl=239 time=7.35 ms
      64 bytes from 176.32.102.211: icmp_seq=2 ttl=239 time=7.51 ms
      64 bytes from 176.32.102.211: icmp_seq=3 ttl=239 time=7.11 ms
      64 bytes from 176.32.102.211: icmp_seq=4 ttl=239 time=7.15 ms
      
      --- sdb.amazonaws.com ping statistics ---
      4 packets transmitted, 4 received, 0% packet loss, time 3003ms
      rtt min/avg/max/mdev = 7.119/7.285/7.512/0.180 ms

~~~
z3t4
That is weird. It should be worth investigating if you have any other bottle
necks that are increasing the latency. Monitors for example, usually have a
response time, from input to when you see the image, of around 10-20 ms.

Input > PC > amazon > PC > monitor

Maybe there's something in your PC that is adding to the lag, like a slow
software render.

It could also be that the machine answering to the ping is closer due to
anycast routing.

Can anyone come up with a practical way to measure the actual lag from input
to screen render!? For example using a high speed camera.

~~~
Tiksi
The monitor is
[http://www.samsung.com/us/computer/monitors/LU28D590DS/ZA](http://www.samsung.com/us/computer/monitors/LU28D590DS/ZA)
which has a 1ms response time, never noticed a delay with anything before.

The decoding was in hardware, and I have dual amd 7850s, so I don't think that
was the issue (and I wasn't trying to run at the full 4k either)

There was a very noticeable input -> display lag, according to telemetry on
steam it was ~40ms total, which is fine for a lot of games, but really
noticeable and annoying for something like gta. I mean I've played civ5 over
vnc before, and 40ms would be a godsend compared to that, but it was still
more than playable.

------
TheGRS
I really appreciate a guide that takes you through the process, giving me a
chance to understand all of the steps, before sharing the pre-packaged
solution at the bottom.

I was a little surprised by the cost as well. At the rate that I'm gaming
these days it would be like $10-20 per month, that's pretty damn good (price
of games not included obviously).

~~~
PaulHoule
When I see the 50 cent an hour price, I think of the old days when I'd pay 25
cents for one play of Pac-Man.

Say you allocate another 50 cents an hour for software then you are getting to
a $20 or $40 a month spend which is getting in the range of a good video game
habit. This leg could support sales of an AAA product and also could probably
fund AA games.

Get your configuration right and you have a system for multiplayer games with
pretty low latency behind the servers -- even if the video gets screwed up,
the games will always stay in sync.

It is no way an accident that the costs wind up like that because everybody
else is thinking about "Can I replace $X spent on hardware with $Y a hour
spend in EC2."

------
feld
This is impressive, but you should probably not use his AMI unless you use
your own uniquely generated OpenVPN certificates/keys

~~~
micro-ram
Agreed. Only use the provided AMI for testing and learning how to create your
own.

------
zachlatta
Big fan of this approach.

I wrote a simple script
([https://github.com/zachlatta/dotfiles/blob/master/local/bin/...](https://github.com/zachlatta/dotfiles/blob/master/local/bin/streamctl))
to really easily spin up and down the machine I set up for game streaming.

------
lectrick
Somewhere, someone at Valve is noticing this and pitching it around as a new
service idea :O

------
glogla
It seems that the reason why this makes sense is Spot instance pricing - it
wouldn't be economical with normal instance.

But don't they pull the instance out from under you if someone outbids you?
Does anyone have experience with that?

And one more question - how is the performance? The OP shows screenshot of
game running in 1280*800, but that might be because of the macbook resolution.
Can it do fullhd or 4k?

------
Arelius
Something that I'm a bit worried about, I used to try to run performance
sensitive game servers on a Xen based virtual machine, was that no matter how
many resources I tried to dedicate to the virtual machine. The xen scheduler
would give hitchy performance. introducing large enough delays sporadically to
make playing the game a little painful.

Does anybody know much about the EC2 hyper-visor schedulers or in the case of
large instances, does it even run with a serious hypervisor?

~~~
lucaspiller
I'm not sure about specifics of shared machines, but when creating an instance
there is an option to run on single-tenant hardware (obviously at a higher
cost).

------
rl3
One of the more exciting possibilities afforded by DIY cloud game streaming is
the ability to interactively share single-player gaming experiences with
people, in games that otherwise do not support co-op. Games like FTL and XCOM:
Enemy Unknown come to mind.

However, one thing I would be extremely wary of is running your Steam account
from AWS or any other server environment. The last thing you want is to get
flagged as a bot or VPN abuser and banned; Valve customer support isn't
exactly known for being particularly understanding or responsive. Personally I
would just load up a throwaway Steam account with a few games and use that.

~~~
bentcorner
> _The last thing you want is to get flagged as a bot or VPN abuser and
> banned; Valve customer support isn 't exactly known for being particularly
> understanding or responsive. Personally I would just load up a throwaway
> Steam account with a few games and use that._

I wonder if you could set up the tunnel going the other way so that the EC2
instance goes through your home network to access the internet?

~~~
rl3
Even with tunneling there's still the possibility of hardware fingerprinting.
Unsure if it would be limited in scope to Steam Guard or not.

------
programminggeek
Am I ridiculous for wanting this to be a sort of on demand service with a
small markup?

~~~
infecto
Not ridiculous at all. Seems like a nice logical step from the failed business
attempt of ...forgot the name but the company that provided streaming service
but had lock-in of games on their platform.

~~~
ncallaway
OnLive and Gaikai were the big two that I remember. Gaikai was acquired by
Sony, and OnLive failed and parts of it were also sold off to Sony.

~~~
mastax
I wonder how much of this post is covered by patents now owned by Sony.

~~~
jerf
You're basically combining three parts, Steam Streaming, nVidia's hardware
stuff, and OpenVPN. OpenVPN and all the high-level ideas it embodies
definitely predates Gankai or anything like that. Steam Streaming and nVidia's
stuff are certainly going to be covered by their own patents. In theory the
combination could be patented but I'd argue for "a network stream can be run
over a VPN" is firmly "obvious to those skilled in the art"... network streams
are network streams are network streams.

Sony et al probably have more specific patents for their own setups, but to
the extent they cover this setup they'd either be obvious, or they'd be trying
to sue you for doing stuff covered under nVidia or Valve's patents. This,
alas, doesn't necessarily protect you, but would certainly raise some PR
issues. Plus Amazon might have some questions as well, since they don't want
people getting hit for using cloud services to do things; anything that smells
like special cloud licensing just because you're doing X "but in the cloud!"
is going to hurt their business model.

I can't guarantee they have nothing to sue over, but the costs/benefits would
not seem to argue in favor of Sony suing.

------
lewisl9029
Has anyone tried SoftEther VPN in place of OpenVPN for something like this?

[http://www.softether.org/](http://www.softether.org/)

I've been using it to set up a site-to-site VPN between my home network and my
Azure VMs and in my experiences the performance has been quite good. They also
claim to have higher max throughput than OpenVPN but I haven't yet verified
those claims myself.

------
pdeva1
i tried using the prebuilt ami. However after installing and configuring
tunnelblick on my mac, when i connect to the vpn, i get: "This computer's
apparent public IP address was not different after connecting to
<<hostname>>'. now steam cannot detect the windows server. what am i doing
wrong?

~~~
packetslave
You can ignore that error message (or disable IP addressing checking). The
OpenVPN connection isn't configured to forward all traffic over the VPN, so
your public IP won't change.

~~~
nicksergeant
Ah, okay. Strange though, Steam client won't recognize the server even when
connected. Thought maybe the IP address error was the problem.

~~~
packetslave
double-check the OpenVPN log after you connect to the server. I had to add a
flag to tshark in the provided up.sh script to make multicast forward
properly.

~~~
nicksergeant
Would you be willing to post your modified up.sh script here, or somewhere?
Would love to see what you did to get it to work (still no luck on my end).

------
dsmithatx
I read the entire thing and I think it is cool that now days this is possible.
However, I got to thinking at $.50+ per hour, if I play 6 hours a night,
that's $3.00 a day on weeknights. If I only play $8 on weekends it adds up to
$23 per week. This would equate to $1196 per year at (23*52). Basically I'd
much rather invest in a gaming rig. My CPU and GPU haven't required upgrades
now for years in this day in age. At least if I invest in a gaming rig I
actually have a gaming rig.

While I respect and find the technology fascinating and cool, it feels like
leasing a car I'll never own versus owning and evening buying a new one every
few years at a much lower price. For those who game a few hours a week
however, I can see this being a cheap alternative to a gaming rig.

~~~
jaimeyap
6 hours a night on weeknights sounds like a heck of a lot! Owning might make
sense for you, but you might be an outlier.

I would have to think most people with a job and family might struggle to find
3-4 hours a week to game. No offense intended by the above. I'm quite envious
:).

------
philtar
Anyone wanna team up and build something like this?

~~~
Flammy
Potentially. I assume you already know of OnLive? Email is in profile - I
think it is visible? If not reply.

~~~
ryan-c
When people say "email in profile", they're talking about listing it in the
"about" section. The email field is private.

~~~
Flammy
Gotcha, thanks!

------
skellington
Just curious how he got $0.11/hr for a "spot" instance of g2.2xlarge? Amazon's
"on demand" pricing of that config w/ Windows on their website is $0.767/hr.

~~~
abtinf
On-demand and spot prices are two different things. Keep looking at the
pricing page and you will see. Spot prices fluctuate constantly and your
instance is auto-killed when the spot prices rises above the maximum price you
are willing to pay.

~~~
skellington
Thanks, I wasn't aware of the spot pricing (never scrolled that far down the
very long pricing page :)

I'm not sure that I understand the economics of the spot option from Amazon's
POV since it seems that a person who needed persistent servers could set their
spot max price at the same price as an on-demand instance and always be ahead
by doing it that way (with the caveat that there would be a short interruption
if forced to switch to on-demand).

For someone who needs cheapest possible compute power with a flexible
schedule, spot arbitrage makes sense of course.

~~~
wxs
> it seems that a person who needed persistent servers could set their spot
> max price at the same price as an on-demand instance and always be ahead by
> doing it that way

Not if you need persistence: the spot price can go above the on-demand price.
So if you set your max spot price to the on-demand price your instance might
get terminated.

------
kayoone
we really need a focus on low latency instead of bandwidth but i guess that's
even worse in terms of marketing than upload bandwidth. But its frustrating to
know that <10ms latencys are easily achievable with current technology but
ISPs just don't care. Lower latency even improves web browsing a ton,
voice/video calls and any kind of realtime interaction basically. Then again
with 4K gaming becoming more popular, even todays bandwidth will not be
enough.

~~~
apapli
I'm not the biggest fan of ISPs but that comment isn't entirely fair on them.

In Australia the speed of light actually matters for the distances light needs
to travel - this is probably the same for mid-west towns not near an AWS
centre too (not sure of their presence there, but I expect they are
predominately on the coasts).

The speed of light is 300,000 kms per second.

Distance wise: Perth to Sydney approx 4,000kms or 13ms travel time, and
Brisbane to Sydney approx 1,000kms or 3ms travel time.

I'd say it is highly doubtful to get sub 10ms from Brisbane to Sydney if
you're going via even just a handful of routers. And Perth to Sydney? Forget
it!

~~~
burke
I'm ~2 light-ms from us-east-1, and my latency is 49ms. My latency is 11 times
what it would be if there were a direct fiber run from my laptop to us-east-1.

~~~
leni536
Just for nitpicking, light doesn't travel the same speed in fiber as in
vacuum. AFAIK the refraction index of the core is typically ~1.45 so your
latency is _" only"_ around 8 times larger than the theoretical limit.

------
rroriz
Amazing idea! If this could be set up for a multiplayer games without much
trouble (lag, cheating, licenses), this could be The Next Big Thing :)

~~~
kordless
I call tell you do marketing for a living.

------
ortuna
I wonder why this works better than the Steam In-Home Streaming. I could never
get it to be close to 60fps. The video suggests 60fps.

~~~
jon-wood
I imagine having the equivalent of two GTX 680 GPUs probably helps here, those
cards are no slouch generally, and these ones have been especially put
together to handle streaming games.

------
thedaemon
Has anyone tried this with Nvidia GeForce Experience and a Shield TV? I might
try this instead of upgrading my aging desktop.

~~~
jcastro
The ShieldTV comes with Nvidia GRID, which is basically the same idea, a big
instance on AWS with a GTX980 streamed to the device, it works surprisingly
well.

------
Tehnix
For some reson I haven't been able to get it to another resolution than
1024x768. Anyone else having luck on this?

Else I would say that it runs super well! The input lat is ~15ms, ping is
~30ms and display lat is ~30ms, reported from the steam client. I have no
trouble whatsoever playing FPS games at all, or any other game for that
matter.

------
jordanlev
So you can install MS Windows on an EC2 instance without having to pay for a
license? How does that work?

~~~
cschep
Amazon is paying for it and it is reflected in the price you pay. Windows
machines are more expensive to spin up than Linux machines.

------
WA
Anyone tried to play competitive multiplayer games like CS or Heroes of the
Storm with such a setup? I can imagine that streaming adds a bit of latency,
which isn't a problem in singleplayer games, but could add too much lag for
fast-paced multiplayer games. Any experiences?

~~~
jleight
I have a VMware ESXi box at home that I use to run a Windows VM with a video
card passed through. I've been using it to stream Heroes of the Storm with
Steam's In-Home Streaming and I get a consistent 30 FPS (1920x1080) with no
noticeable lag.

Admittedly, it's not exactly the same as the setup in this article since it's
not streaming over the internet, but I would assume that as long as your
latency is low and bandwidth is high, you'll have no problem with this setup.

~~~
WA
I'm just wondering. Theoretically, you have an additional hop.

Game server <\--> Amazon <\--> Home

From a pure latency point of view, this is probably not an issue. However,
whatever events you see on screen, the game server sees you reacting slower,
because your keyboard basically has a delay of 20-30ms (Home --> Amazon).

Maybe, it depends a bit on the game you play, if this has any negative
consequences or not.

Edit: This could be somewhat compensated by the faster connection of Amazon
<\--> Game server (just assuming that it's faster than a connection from
home).

------
TD-Linux
I wonder how the hardware encoders and decoders compare to software
implementations. They of course use less CPU, but also generally tend to
compress worse and have higher latencies than software implementations. Is
nVidia's hardware specially optimized for this use case?

------
pjar
Am I the only getting stuck on OpenVPN instructions? Are they copy-paste easy
or need some know-how? All I get is errors about can't open
/etc/ssl/openssl.conf and list from --help command saying that -config is
unknown option. Build-dh hungs

~~~
meepster
Nope, same issue here. Started from scratch twice and build-dh is still
hanging. Also getting the warnings about /etc/ssl/openssl.conf... Anyone know
whats up?

------
annon
This would work fantastic with Steam Link that they have coming out:
[http://store.steampowered.com/universe/link](http://store.steampowered.com/universe/link)

It uses the same in home streaming feature of steam.

~~~
packetslave
I was thinking the same, but you'd have to figure out how to create the VPN to
the EC2 instance for multicast forwarding, since presumably the Steam Link
won't be able to run OpenVPN.

~~~
Nexxxeh
Add another piece of hardware. Cheap off-the-shelf Linux-running hardware. A
rebadged Netgear router that'll run OpenWRT is £7. Worst case, Raspberry Pi is
£45 including case, cheap small SD card, PSU and an extra USB Ethernet
adapter.

------
Procrastes
This can work very well for some applications. I have a startup doing
something similar to this with the Second Life Viewer with good results. The
most painful parts turn out to be in the plumbing around state and change
management as you might expect.

------
dogas
What is the latency of a setup like this? Could I play an intensive FPS and be
competitve?

~~~
callum85
Click the button on this page and it will tell you the latency to every AWS
datacenter:

[http://www.cloudping.info/](http://www.cloudping.info/)

For me (London) it looks like I could get a latency of 28ms if I hosted my rig
in their Dublin datacenter, which sounds OK. (But obviously this would be on
top of the ping to the multiplayer host, if you're playing online.)

~~~
comex
According to that site, I can't get less than 44ms with Amazon where I live...

This site has a much larger number of providers:

[http://cloudharmony.com/speedtest-latency-for-compute-
limit-...](http://cloudharmony.com/speedtest-latency-for-compute-limit-10m)

But of course most of them don't offer GPU servers.

~~~
Dolores12
nice website! thanks :)

------
ris
I think we have a new winner for the stupid and inefficient ways humanity is
going to start using its precious infrastructure and resources.

Previous holder of the title was spending terawatts of power bitcoin mining.

------
nickpsecurity
Cool experiment. I thought about trying this for streaming video or music to
cheap devices in various places as well. For now, I just use my smartphone and
WiFi as it's cheaper. :)

------
zubspace
Does someone have experience hosting a dedicated server on EC2 24/7? How's the
performance and is it cost effective? Or is it preferable to host on digital
ocean/linode?

~~~
kuschku
If you want to get a lot of power, especially for gaming, you can forget DO.

Let’s take your average (okay, this is really beefy, but I couldn't find
something lower at most dedicated hosters) gaming system: 8 Cores (16
Threads), 32GB RAM, 2TB HDD. At Digital Ocean, you pay approx. 320$/month for
12 Cores, 32GB RAM, and 320GB SSD

Let’s take your average small hoster, in this case Hetzner, as comparison: You
pay 55$/month (plus 55$ setup) for 8 cores (16 Threads), 32GB RAM and 2TB HDD.

I’m just showing this as example: Using Cloud hosters for stuff that is
running 24/7 is not cost effective, especially if you always need the same
performance – use a dedicated server instead, hosters that specialize on that
can provide far better offers.

~~~
Namrog84
I think your thoughts on average gaming system are skewed

~~~
kuschku
Well, it’s the cheapest dedicated server that Hetzner and OVH provide, so I
used it for comparison, and a lot of people have similar specs nowadays.

------
bhear
Has anyone thought of selling preconfigured cloud gaming services?

~~~
dikaiosune
OnLive (now defunct), NVIDIA (ramping up), Gaikai (working with, or acquired
by?, Sony) just to name a couple. They don't give you your own VM to host and
manage, they're subscription game streaming services, but it's the SaaS
version of this.

~~~
comex
Acquired by Sony, and the source for the Playstation Now service released
earlier this year, which lets you stream PS3 games to a few devices

[http://arstechnica.com/gaming/2015/01/playstation-now-
review...](http://arstechnica.com/gaming/2015/01/playstation-now-review-sony-
finally-proves-streaming-gaming-is-viable/)

[http://arstechnica.com/gaming/2015/07/hands-on-with-
playstat...](http://arstechnica.com/gaming/2015/07/hands-on-with-playstation-
now-on-a-samsung-smart-tv/)

------
xhrpost
This is crazy awesome. Since it uses h264, I wonder how well a Raspberry Pi
would work as a client machine. Heck, you might be able to do a whole LAN
party just with PI's.

~~~
randunel
Imagine the bandwidth required to stream a lan party :)

~~~
xhrpost
I thought of that, but it would be downstream intensive, so even at 5Mbps for
HD, you could still get at least 4 people working on a simple 20 meg line.

~~~
moron4hire
RPi is bound at the network interface, then. Even the onboard Ethernet runs
over the USB hub.

------
sunsu
Does Google Compute Engine have the instances needed for this as well? Their
datacenter is centrally located, so long times are much faster for me than
east or west coast.

~~~
packetslave
GCE doesn't (yet) offer instances with GPUs, so no.

------
dharma1
i did this about a year ago to run 3dsmax/vray on ec2 gpu instance via RDP.
Worked ok-ish but i found it quite clunky to mess about with AWS interface to
start and turn off an instance every time I wanted to use it.

Has anyone managed to script something where you just press a button/run a
local script and it does all the work, including saving your image to EBS
before you turn the thing off and stop paying for the instance?

~~~
MrException
I believe that is exactly what he does in the article.

------
bsharitt
I'm going to set this up to see how it compares to my Windows Steam on Wine
that sits next to my native Steam on Linux with its smaller library.

------
pepijndevos
How does the AMI handle the certificates? It seems like everyone would use the
same cert and thus log on to any instance of the AMI.

------
spydum
i hate to admit, there are a lot of places I thought cloud services could be
leveraged, this just wasn't one of them (keep in mind, I say useful, not
necessarily best fit).

This is such a cool idea, makes me realize what other creative solutions are
just lurking, ready to slap me across the face.

------
beagle3
Anyone know what protocol (RDP, VNC, h264, ???) is underlying the Steam remote
display?

------
mullen
This is actually a cost savings. Windows games are much cheaper than their OSX
versions and they are available much sooner on Windows than OSX.

~~~
tdicola
That might have been true 20 years ago with big box retail games, but on
Steam, GOG, etc. everything is the same price and many games are
multiplatform.

~~~
mullen
About 30% of the games are Windows only.

~~~
Artemis2
Their prices are the same though.

------
sengork
g2.steam instance type please.

------
mo1ok
This is really important as virtual reality begins to take center stage, but
most people don't have the rigs to run it.

~~~
davesque
I'm pretty sure the latency would make VR headsets unusable with this setup.

~~~
intrasight
In the VR context, latency is just a bandwidth problem (think instruction
look-ahead), and bandwidth keeps increasing.

~~~
davesque
The context isn't just VR. It's the internet. Probably the best ping you can
expect to get from an aws data center (for most people) is around 30ms or
40ms. You probably only get 20ms if you're lucky. According to John Carmack,
the _maximum_ acceptable latency for a VR system is 20ms.

