Dolphin, the GameCube and Wii emulator - Forums

Full Version: How does the traversal server work with Dolphin?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.

ArturFluor

Hi everyone,

I tried searching the forums and google to learn more about the traversal server solution that dolphin uses for netplay. Me and a friend were talking about how good it works and that it is p2p but while still kinda going through a server.

So, I was looking at dolphin's code on github and just browsing google to learn more about traversal connection but couldn't really find something particularly clear about it. Even on github I couldn't really pinpoint the specific folder where the code for netplay is.

Couple of direct questions:

1- Is the Traversal Server connection still p2p? I believe it works at as a middle man up to the point where players are in the room, then it just have both players connected to each other without having to relay information to a main server like in online games.

2- Is the solution's code open source? Where on github is the folder that has the netplay code?

3- I have also heard that dolphin has a server running that acts as the Traversal. How big and/or fast must this server be to comport all the netplay games going on every day? Also, do you guys use AWS or what other hosting solution?

Thank you so much for the explanations, I really appreciate it =)
I believe this is what Dolphin uses: https://en.wikipedia.org/wiki/STUN

(04-23-2020, 12:42 AM)ArturFluor Wrote: [ -> ]1- Is the Traversal Server connection still p2p? I believe it works at as a middle man up to the point where players are in the room, then it just have both players connected to each other without having to relay information to a main server like in online games.

Yes, that's correct.

(04-23-2020, 12:42 AM)ArturFluor Wrote: [ -> ]2- Is the solution's code open source? Where on github is the folder that has the netplay code?

Some of Dolphin's netplay code can be found here (and some of it in other files): https://github.com/dolphin-emu/dolphin/b...Client.cpp https://github.com/dolphin-emu/dolphin/b...Server.cpp

I don't know about the code for the traversal server itself.

(04-23-2020, 12:42 AM)ArturFluor Wrote: [ -> ]3- I have also heard that dolphin has a server running that acts as the Traversal. How big and/or fast must this server be to comport all the netplay games going on every day? Also, do you guys use AWS or what other hosting solution?

I don't really know the details, but I can't imagine the load on it would be that high. It doesn't have to do much for each netplay session.
The STUN server is tiny and load should be trivial compared to the rest of the processes on the machine it runs on (If I remember the build infra layout correctly).

ArturFluor

Thank you for the info guys. I find dolphin netplay an amazing solution and was looking to apply something similar to a project I'm working with a few friends (not an emulator tho).

Thanks =)