These forums have been archived and are now read-only.

The new forums are live and can be found at https://forums.eveonline.com/

EVE Technology Lab

 
  • Topic is locked indefinitely.
 

EVE Online Running on MVS?

Author
BrundleMeth
State War Academy
Caldari State
#1 - 2013-08-03 20:06:07 UTC  |  Edited by: BrundleMeth
I've worked for 3 decades with Large IBM Mainframe Systems running z/OS, OS/390, MVS/ESA, etc as the OS. Running CICS on MVS you can get 20,000 users from Florida to Alaska each getting sub-second response time. I admit I know very little about the Hardware EVE runs on but I have been wondering for a long time that if EVE could run under MVS how it would fare. It is true that you can run any OS on a z/OS LPAR such as AIX, WIndows, Novell, AS/400, etc however you would still suffer the limitations of those OS's. MVS is still the most powerful OS out there, literally unhackable and can never be affected by a virus. (Some may want to debate those statements I imagine).

After the big battle last week with 4000 pilots and all the discussion about Tidi, it got me thinking about this. Yeah I've heard it all before. EVE is the best, EVE is the only MMO like this, blah, blah. But IMO EVE is ahead of it's time. What do I mean? If I am in a battle with 4000 people I want to see the exact same response as I would in a 5 man battle. Clicking my mouse and waiting 20 minutes or 2 hours for a response is not playing, it's crap.

Is there anyone else out there that lives with MVS that also understands the EVE Cluster that could imagine the possibilities of what running EVE under MVS could do?
Steve Ronuken
Fuzzwork Enterprises
Vote Steve Ronuken for CSM
#2 - 2013-08-03 22:54:58 UTC
'unhackable'. The only computer that can't be hacked is one that's switched off, in a sealed concrete bunker, protected by the SAS. And only just. Things can just be /difficult/ to hack.


The problem with big fights in eve is single threaded processes. If my memory serves, mainframes tend to be good at running lots and lots of threads at the same time. Which isn't particularly useful for Eve. Work is being done to split some bits off onto other threads, but the core 'X shoots Y, Y shoots back' pretty much has to be a single thread. (proper multithreading is difficult. And not possible for certain kinds of problem)

Woo! CSM XI!

Fuzzwork Enterprises

Twitter: @fuzzysteve on Twitter

Elmore Jones
New Eden Mining Organisation
The Craftsmen
#3 - 2013-08-04 00:21:47 UTC
Seems to be that time of the month. This thread is usually about moving eve to a linux server. Small + for minor variety. Otherwise, move along :)

+++ Reality Error 404 - Reboot Cosmos +++

Agamo
Expatriates.
#4 - 2013-08-04 03:01:42 UTC
Steve Ronuken wrote:
'unhackable'. The only computer that can't be hacked is one that's switched off, in a sealed concrete bunker, protected by the SAS. And only just. Things can just be /difficult/ to hack.


The problem with big fights in eve is single threaded processes. If my memory serves, mainframes tend to be good at running lots and lots of threads at the same time. Which isn't particularly useful for Eve. Work is being done to split some bits off onto other threads, but the core 'X shoots Y, Y shoots back' pretty much has to be a single thread. (proper multithreading is difficult. And not possible for certain kinds of problem)



In addition to Steve's comment, there are additional layers of abstraction required in order to get modern server tech to talk with IBM "iron"--converting from EIBCDIC to ASCII and the like. I'm a mainframe (and distributed) programmer myself, but in examining the way that EVE works, I don't see it being a plausible solution. The advantage of the mainframe/MVS is in processing large quantities of centralized data (all stored in, essentially, the same "place"), but when it comes to having to maintain all that data on an individual basis--for each client connected to the server--the small overhead that would normally be incurred is increased exponentially.
BrundleMeth
State War Academy
Caldari State
#5 - 2013-08-04 11:38:41 UTC  |  Edited by: BrundleMeth
Agamo wrote:
Steve Ronuken wrote:
'unhackable'. The only computer that can't be hacked is one that's switched off, in a sealed concrete bunker, protected by the SAS. And only just. Things can just be /difficult/ to hack.


The problem with big fights in eve is single threaded processes. If my memory serves, mainframes tend to be good at running lots and lots of threads at the same time. Which isn't particularly useful for Eve. Work is being done to split some bits off onto other threads, but the core 'X shoots Y, Y shoots back' pretty much has to be a single thread. (proper multithreading is difficult. And not possible for certain kinds of problem)



In addition to Steve's comment, there are additional layers of abstraction required in order to get modern server tech to talk with IBM "iron"--converting from EIBCDIC to ASCII and the like. I'm a mainframe (and distributed) programmer myself, but in examining the way that EVE works, I don't see it being a plausible solution. The advantage of the mainframe/MVS is in processing large quantities of centralized data (all stored in, essentially, the same "place"), but when it comes to having to maintain all that data on an individual basis--for each client connected to the server--the small overhead that would normally be incurred is increased exponentially.

Excellent answer....exactly what I was looking for...

And yes unhackable, anyone who know anything about ACF2 / RACF / MVS knows the OS will simply dead stop before processing unauthorized code...It's not that the code will cause damage it just will not run at all. It can't...

But your second comments about the tech are good, makes sense. That's also what I was interested in knowing...
Vaerah Vahrokha
Vahrokh Consulting
#6 - 2013-08-04 16:30:54 UTC
BrundleMeth wrote:
Excellent answer....exactly what I was looking for...

And yes unhackable, anyone who know anything about ACF2 / RACF / MVS knows the OS will simply dead stop before processing unauthorized code...It's not that the code will cause damage it just will not run at all. It can't...

But your second comments about the tech are good, makes sense. That's also what I was interested in knowing...


I can give you other excellent answers:

- the top EvE issue does not come from a OS / hardware limitation but by legacy architecture which originated a decade ago. Therefore putting more servers or more powerful OSes is not going to help. Proof: reinforced nodes still bend over despite being "dedicated" to just one system. Even an expecially optimized one like Jita, where the server does not even manage all the operations, but those are split on multiple computers (one for the markets, one for the ships sim and so on).

- I have greatly enjoyed working with some AS/400 and even 1 mainframe (whose "hard disk" weighted so many tons they had to reinforce the building to not crush under its weight! ). However powering 20,000 end users filling in corporate forms is not the same as computing more or less complex mathematical simulations.

What would help EvE the most would be a fully "snap in" redundant "cloud alike" architecture, with basic operations being split in small chunks (unlike the current vertical 1 CPU heavy weight processes) processed in a "lazy".
For a very cheap implementation, I envision EvE being run by something like Seti@Home where each player hosts a "micro-sim", a little shardlet of EvE with anonymous data coming in to be processed and coming out with the results.
Of course that'd immediately prompt security issues (old MMO motto: "never trust the clients") but those shardlets could be sandboxed on the central EvE shardlet gathering process at CCP's HQ. Only a minority would be enticed to try malicious attempts, as the data coming to their computer would be anonymized (just IDs), possibly encrypted and anyway regarding a random event in a random other system in EvE.
Steve Ronuken
Fuzzwork Enterprises
Vote Steve Ronuken for CSM
#7 - 2013-08-04 16:40:54 UTC
Vaerah Vahrokha wrote:
old MMO motto: "never trust the clients"


Pretty much the motto of anyone that cares about security.

I always shudder when I see code where, for example, they handle form validation in javascript, and then don't bother also checking it server side.

Client side validation is good, from a usability perspective. But You can't trust that what you get from a user hasn't been tweaked.

Woo! CSM XI!

Fuzzwork Enterprises

Twitter: @fuzzysteve on Twitter

Vaerah Vahrokha
Vahrokh Consulting
#8 - 2013-08-04 16:57:27 UTC  |  Edited by: Vaerah Vahrokha
Steve Ronuken wrote:
Vaerah Vahrokha wrote:
old MMO motto: "never trust the clients"


Pretty much the motto of anyone that cares about security.

I always shudder when I see code where, for example, they handle form validation in javascript, and then don't bother also checking it server side.

Client side validation is good, from a usability perspective. But You can't trust that what you get from a user hasn't been tweaked.


Yes, in principle it's true. In practice there are some very basic yet hard to solve obstacles and MMO makers have to let the clients send data. I.e. most MMOs have "maps" / terrains. It's very very expensive to continuously check the clients characters positions on those maps, in order to decide if they are slamming into a closed door, wall, or falling in water (and adapt the animations to those situations). It's also very bad looking to have characters that enter a wall just to be bounched out after half second just because some lag delayed the server deciding you slammed into a wall.

So they trust the clients sending their positional data, but with the same approach I proposed: a "sandbox" that performs sanity checks on such data against the now classic hacks: teleporting, flying, bypassing obstacles, flattening mountains (client side) and so on.
BrundleMeth
State War Academy
Caldari State
#9 - 2013-10-06 13:21:04 UTC
Vaerah Vahrokha wrote:
BrundleMeth wrote:
Excellent answer....exactly what I was looking for...

And yes unhackable, anyone who know anything about ACF2 / RACF / MVS knows the OS will simply dead stop before processing unauthorized code...It's not that the code will cause damage it just will not run at all. It can't...

But your second comments about the tech are good, makes sense. That's also what I was interested in knowing...


I can give you other excellent answers:

- the top EvE issue does not come from a OS / hardware limitation but by legacy architecture which originated a decade ago. Therefore putting more servers or more powerful OSes is not going to help. Proof: reinforced nodes still bend over despite being "dedicated" to just one system. Even an expecially optimized one like Jita, where the server does not even manage all the operations, but those are split on multiple computers (one for the markets, one for the ships sim and so on).

- I have greatly enjoyed working with some AS/400 and even 1 mainframe (whose "hard disk" weighted so many tons they had to reinforce the building to not crush under its weight! ). However powering 20,000 end users filling in corporate forms is not the same as computing more or less complex mathematical simulations.

What would help EvE the most would be a fully "snap in" redundant "cloud alike" architecture, with basic operations being split in small chunks (unlike the current vertical 1 CPU heavy weight processes) processed in a "lazy".
For a very cheap implementation, I envision EvE being run by something like Seti@Home where each player hosts a "micro-sim", a little shardlet of EvE with anonymous data coming in to be processed and coming out with the results.
Of course that'd immediately prompt security issues (old MMO motto: "never trust the clients") but those shardlets could be sandboxed on the central EvE shardlet gathering process at CCP's HQ. Only a minority would be enticed to try malicious attempts, as the data coming to their computer would be anonymized (just IDs), possibly encrypted and anyway regarding a random event in a random other system in EvE.

Yes, another excellent answer...

(Sorry for the slow response)...