Are Fdev seriously out of touch calling P2P "SEAMLESS"

I'm not a network expert, but could someone explain how a connection involving three computers and two network paths (player <--> server <--> player) is going to be an improvement over a connection involving two computers and one network path (player <--> player) ?
Network load capability, and server processing capability can be vastly improved via an actual server hosting an instance instead of it being distributed among a handful of often very transient, very mixed hardware where a lot of it is undoubtedly not new hotness, on residential internet of varying capabilities.
In Elite's P2P, or any P2P game that has the game "world" and progress tracked/saved remotely, there is the third computer anyway.
 
I'm not a network expert, but could someone explain how a connection involving three computers and two network paths (player <--> server <--> player) is going to be an improvement over a connection involving two computers and one network path (player <--> player) ?

There are pros and cons. With a client server model, then if someone has a bad connection it only tends to be them negatively affected. On the flip side, if the server is heavily loaded or otherwise has issues, then everyone is affected.

With (pure) P2P you are not reliant on a central server but one person's poor connection can affect others (when you instance with them) and with pure P2P, matchmaking can be a problem.

What FD uses is a hybrid system, with a server for matchmaking but then once connections are established the clients talk directly to each other.

P2P (or Hybrid) is a cheaper solution and one that can work better than C/S - no bottleneck, direct traffic between clients. However, its less reliable as it relies on everyone in the system having good connections and also doesn't scale as well as C/S. P2P generates a lot more traffic as you scale up.

In theory, with modern networks, P2P is the better choice. Its not the 90s any more and it saves on a lot of money.

In reality, P2P doesn't always work that well.

However, companies are investing in P2P tech and i'm sure as time goes on, less and less games will use C/S and more will use P2P.
 
Honestly, this quote is the biggest concern of mine looking ahead at Odyssey. As it stands, Elite Dangerous is a laggy mess as far as networking is concerned. Where players congregate, the game becomes unstable. I am currently in Shinrarta and even interdiction is unplayable. I cannot get my head around Frontier calling P2P a seamless experience. The game is horrific due to this. I truly hope to see Odyssey works, because if shooting on foot suffers the same instancing/lag/rubber banding as the main game, then by goodness the experience will be one to forget!

Rants'r'us is here...
I've had no problems in Shinrarta the last time I was there, which was admittedly a few years back now. Maybe it's gotten worse since then, but I can't see how. There were plenty ships in system when I was there.

Not that, that's what they meant by a seamless experience.
 
There are pros and cons. With a client server model, then if someone has a bad connection it only tends to be them negatively affected. On the flip side, if the server is heavily loaded or otherwise has issues, then everyone is affected.

With (pure) P2P you are not reliant on a central server but one person's poor connection can affect others (when you instance with them) and with pure P2P, matchmaking can be a problem.

What FD uses is a hybrid system, with a server for matchmaking but then once connections are established the clients talk directly to each other.

P2P (or Hybrid) is a cheaper solution and one that can work better than C/S - no bottleneck, direct traffic between clients. However, its less reliable as it relies on everyone in the system having good connections and also doesn't scale as well as C/S. P2P generates a lot more traffic as you scale up.

In theory, with modern networks, P2P is the better choice. Its not the 90s any more and it saves on a lot of money.

In reality, P2P doesn't always work that well.

However, companies are investing in P2P tech and i'm sure as time goes on, less and less games will use C/S and more will use P2P.
This. P2P will be the future as network speeds get faster and our computers get more capable. C/S system have their own flaws and are far from perfect themselves. I personally don't see the point in going to a C/S system in a game like ED.
 
I understand all your concern as I exprienced first hand the trouble of "instancing" with my wing mates, or when enter a system with max fleet carriers (you cant even supercruise without getting orange sidewinder).

That being said, I have to acknowledge that 95% of the time ED is "seamless" enough for me. I lived in South East Asia and was genuinely surprised that the network is actually quite good. Consider that I have to returned many multiplayer games such as Deep Rock Galactic, Pulsar Lost Colony ... due to heavy lag to no regional players. Even popular game such as Fall Guy would fail from time to time.

My squadron have mates all over the world from England, Sweden, US, SEA, Australia and despite a few occasions that we have to login/ logoff/ supercruise out when there is error of "instancing" at the beginning, the rest of the time we were able to do wing activities pretty fine.

Yeah, FDev still need to fix the Fleet Carries problem, but have to give them some credits too given they have to balance the server costs as well as the technical constraints.
 
When mining and processing fragments, I'm not sure the game is actively communicating with the servers in solo? Just intermittent connections?

afaik?

I can only assume they are conditioning certain actions with recording/validating those actions with the servers - even if it's only with the journaling servers at FDev's end
And if im not mistaken, journaling records not only the big actions like jumping, but the really small mining actions like picking fragments, processing them in refinery and transferring them to cargo racks.
If that's not going flawless, or at least in a timely manner, we get those hiccups.

Now, going back to p2p - this makes it way harder to deal with cheating and with the current network model used by FD, it offers no session persistence. Hence clogging issues

Also it is less reliable - i assume they have some checks when electing the session owner (but maybe not) - as in high bandwidth and low latency.
But those parameters can change - maybe the session holder starts a download or someone else in the household does it. And when it happens it will affect the instance for everyone else and ruin everyone else experience.

Now i do have a fiber optic connection with 500mbps bandwidth (and an easy and cheap upgrade path to 1000 mbps), but not everyone has that. Actually in Western Europe and some of the US the internet connections are on the lo-fi side (was talking with someone in Belgium at the beginning of this year - they were still relying on ADSL with no FO in sight any time soon).
And this is not going to help p2p instancing in a p2p reliant game, but it would not matter in a c2s architecture


Sure, the reverse - c2s - can get really expensive, it requires regional servers with really low latency interconnects between them and if there are regional problems with a carrier that will affect a lot of players
 
I'm not a network expert, but could someone explain how a connection involving three computers and two network paths (player <--> server <--> player) is going to be an improvement over a connection involving two computers and one network path (player <--> player) ?

p2p:

  • (n-1) upstream connections per client
  • (n-1) downstream connections per client
  • simulation running on random (potentially potato) HW
  • simulation running in a random (potentially potato) network

Host-client (p2p with one client acting as a simulation server / client-server with the server running a local client):

  • 1 upstream connection per client
  • 1 downstream connection per client
  • n upstream connections per host ('server')
  • n downstream connections per host ('server')
  • simulation running on random (potentially potato) HW
  • simulation running in a random (potentially potato) network

Client-server:

  • 1 upstream connection per client
  • 1 downstream connection per client
  • n upstream connections per server
  • n downstream connections per server
  • simulation running on known HW
  • simulation running in a known network

If you've ever developed a multiplayer game then you know how big of a relief it is not to have your simulation running on a random device in a random network.

I've been managing for several years the development of an immersive 3D (VR & pancake) multiplayer system (just B2B instead of gaming) and while we do have a hybrid networking model slightly different from the archetypes presented here, essentially we're doing a client-server model because of course we are and because servers really aren't nearly expensive enough to justify not to.

1609316544589.png
 
I get the impression that, by context, the implication is not that p2p is 'seamless', rather that it hasn't been changed for Odyssey exclusively...
Yes - I get the impression that they mean it won't be flipping between P2P and C/S depending on what you're doing.
(Which would have to be the case, when "what you're doing" could continuously go between flying and walking over a scale of several hundred kilometres with a chain of people all having visibility of the next person in the chain)

In short - support Systems or Events with heavy traffic (Hotspots) with Client/Server and increased/more stable Instances - while all normal random/low-traffic encounters remain P2P, where it is generally sufficient.
That'd hide the P2P limitations alot while requiring only a fairly low amount of effort in terms of Server support, as the vast bulk of Instancing would still remain dirt cheap P2P.
The tricky bit would be reliably determining that an instance was busy enough to be worth having a server host it (in practice, host the NPC actions and environment) and then have that start up and take over.

Having two slightly different network protocols each with their own set of bugs and quirks might also be interesting...

I'm not a network expert, but could someone explain how a connection involving three computers and two network paths (player <--> server <--> player) is going to be an improvement over a connection involving two computers and one network path (player <--> player) ?
It depends what you value.

If you want full consistency of state, you have to run the simulation on the server, and just send display information to the players and receive commands back. This has the slight issue that by the time you press the key for the command, you're responding to the simulation state 50-100ms ago, and by the time your command gets back to the server the state will be another 50-100ms further on. Whether that's a problem or not depends very much on the type of game. Also, of course, it means running some potentially very expensive simulations for something like Elite Dangerous which uses the GPU to dynamically generate planetary surfaces.

The big advantage of P2P for Elite Dangerous, however, is not for that case, but for the far more common case of "there is one player in an instance", which is basically all of them because of how big the galaxy is. Then the trade off is (player <--> server) versus (player) and the one without any network connections at all [1] comes out way ahead.

[1] Beyond relatively infrequent and small telemetry synchronisations, of course. But you don't need a mid-bandwidth stream continually open both ways.

servers really aren't nearly expensive enough to justify not to.
In the general case, certainly. And if you're developing for the B2B market where six figure software purchases aren't abnormal, definitely not.

In the case of Elite Dangerous Horizons [2], simulation would probably require a few hundred quid of hardware per instance, which basically means a few hundred quid of hardware per concurrent player.

The client-server space games all have much more restricted play areas where the number of players per instance is generally much higher (and often guaranteed to be higher) so it works for them.

[2] Without planetary landings and the terrain generation requirements, it would be fine. But that wouldn't be popular.
 
It works great, no complaints here... that is as long as I stick to solo.

Instancing issues have been plaguing to my coop session since game launch.

Even asking instancing to work seamlessly with just one other friended player is too much to ask.

I would be fitting to say the devs are in an other instance altogether :)
 
Last edited:
FPS can work fine in P2P networking. Flying a ship however is not as there are way more variable to take into account.

FPS is simple... location, orientation and are they shooting or not....

Ship handling is a whole other level of complexity that I feel just doesn't respond well in P2P.

I can play all sorts of FPS games with my crap aussie net yet a few ships in ED just messes it all up...
 
There are pros and cons. With a client server model, then if someone has a bad connection it only tends to be them negatively affected. On the flip side, if the server is heavily loaded or otherwise has issues, then everyone is affected.

With (pure) P2P you are not reliant on a central server but one person's poor connection can affect others (when you instance with them) and with pure P2P, matchmaking can be a problem.

What FD uses is a hybrid system, with a server for matchmaking but then once connections are established the clients talk directly to each other.

P2P (or Hybrid) is a cheaper solution and one that can work better than C/S - no bottleneck, direct traffic between clients. However, its less reliable as it relies on everyone in the system having good connections and also doesn't scale as well as C/S. P2P generates a lot more traffic as you scale up.

In theory, with modern networks, P2P is the better choice. Its not the 90s any more and it saves on a lot of money.

In reality, P2P doesn't always work that well.

However, companies are investing in P2P tech and i'm sure as time goes on, less and less games will use C/S and more will use P2P.
If we were talking about a P2P connection between just two players then maybe, with multiple players in the same instance there's going to be a lot of network overhead as all Peers need to agree on what the hell is going on resulting in much more packets exchanged.

There's a reason MMO's don't use this model and please don't make me post a screen shot of Limsa Lominsa or Stormwind to show you the difference between a real MMO and this poor man's multi-player because I can probably fit more players in a single screenshot in any of the MMO's that I've played than E: D can fit in an entire instance.


edit: somebody used a lot more words and a pretty graphic to say (much more clearly) what I was trying to say. :D
 
Last edited:
In general play the P2P mostly works fine, I always see some players where I should.

However, as someone who takes part in racing events where we're trying to fit as many as we can into an instance it doesn't work very well with people frequently unable to race because the instance won't let them in any more. (see the sig)
The reliable limit in the srv races has been ~12 at a time, sometimes more but you then get lag and teleporting players. When you have 20 people turn up there's a lot of disappointment and frustration on the chat.

I know racing isn't that popular really but explorer meetups, PvP events, general CG's are affected all the time and it's not the experience it could be.
Even reliably getting 10s of people in an instance would be a game changer.
 
If we were talking about a P2P connection between just two players then maybe, with multiple players in the same instance there's going to be a lot of network overhead as all Peers need to agree on what the hell is going on resulting in much more packets exchanged.

There's a reason MMO's don't use this model and please don't make me post a screen shot of Limsa Lominsa or Stormwind to show you the difference between a real MMO and this poor man's multi-player because I can probably fit more players in a single screenshot in any of the MMO's that I've played than E: D can fit in an entire instance.


edit: somebody used a lot more words and a pretty graphic to say (much more clearly) what I was trying to say. :D

GTA uses P2P. Ok, not really an MMO, but you get up to 30 people in a lobby.

Outside big meetings, in MMOs, you rarely see that many people in one place. There isn't that strong a reason to use C/S over P2P in MMOs either. A lot of them use a lot less networking than games like ED or GTA.
 
The only thing P2P has going for it is it is cheap. So if the metric you are using is saving money, then it is the better choice. Any other metric I can think of makes it a worse choice.

In principle, P2P can be the better choice for PvP, at least with only a few people together and a lack of NPCs around. Say 2 people in an empty part of space.

This is because you have networking from A to B and B to A. Direct connection, rather than A to X to B and B to X to A. Lower latency.

The problems start to increase the more players and NPCs, where A has to talk to B and C and D, etc, and all have to agree on what NPCs are doing.

This is why its possible to get 100+ players in an instance in deep space where there are no NPCs.

Having said that, i'm sure the game would struggle ot get 100 players in an instance in deep space even if it was client/server.

Regardless of method, networking is tricky, and it takes a lot of fancy code to get lots of players together without issue.
 
There's a reason MMO's don't use this model and please don't make me post a screen shot of Limsa Lominsa or Stormwind to show you the difference between a real MMO and this poor man's multi-player because I can probably fit more players in a single screenshot in any of the MMO's that I've played than E: D can fit in an entire instance.

I used to play DAoC between beginning of 2002 and 2009. Client server architecture, monthly subs model
Using the tech of those days, DAoC could provide 3 realm fights gathering hundreds (as in more than 500) of players in the same zone (same instance) .

Below a movie from a memorial where 500 players from all 3 realms gathered to pay their respects to an early departed fellow player.

Source: https://www.youtube.com/watch?v=43wQdFGmf30
 
Back
Top Bottom