Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Need a better background Adhoc Control reconnection attempts. #14333

Closed
2 tasks done
anr2me opened this issue Apr 1, 2021 · 5 comments · Fixed by #14335
Closed
2 tasks done

Need a better background Adhoc Control reconnection attempts. #14333

anr2me opened this issue Apr 1, 2021 · 5 comments · Fixed by #14335

Comments

@anr2me
Copy link
Collaborator

anr2me commented Apr 1, 2021

Based on announcement at Hunterverse discord
image
There seems to be an issue of flooded logs on Adhoc Server side when connections attempts got refused, which could happened due to:

  1. The player's IP still exists on Adhoc Server side (ie. due to PPSSPP crashing and unable to logout from Adhoc Server properly), players usually need to wait for 15 seconds for the IP to be removed from Adhoc Server (default timeout on Adhoc Server side is 15 sec, but they might also increased this timeout)
  2. They implement banning system and the player is being banned.

I tried to simulate it on localhost by increasing the timeout to 150 sec and forcing non-first instance to use 127.0.0.2
image
With current implementation, PPSSPP will try to reconnects to Adhoc Server every 2 seconds in the case it lost connectivity to Adhoc Server to simulate what happened on a real PSP (based on @adenovan test where connection to adhoc control will be restored in background)

What should happen?

Not to reconnect on interval based

Who would benefit from it?

Adhoc Server hosters

What's it specific to (remove if not)?

Hardware, device, or operating system?

Specific games?

Does anything else have a similar feature?

Checklist

@anr2me
Copy link
Collaborator Author

anr2me commented Apr 1, 2021

I'm thinking to improve it by reconnecting only when the game is trying to Create/Join/Connect to a group, and also Scan for groups instead of using interval.

And personally i think 5 seconds is good enough as timeout instead of making players to wait for 15 seconds, not sure why the original/old AdhocServer timeout is being set to 15 seconds, but the built-in Adhoc Server seem to be able to recognize disconnection when PPSSPP is being forcefully killed (EndTasked or Stopped through VS Debugger) thus players doesn't need to wait for 15 secs, not sure about crashes tho.

@ghost
Copy link

ghost commented May 24, 2021

I guess the fix not being on 1.11.3 stable release (because its on dev) caused sushicat to get ddosed and now its down lol (for now).
rip.

@anr2me
Copy link
Collaborator Author

anr2me commented May 25, 2021

sushicat is online with 75 players right now, they probably had maintenance earlier.

And the flooding connection attempt shouldn't be as bad as ddos, since it have 2 seconds interval, compared to ddos which could flood many packets within few milliseconds.

And Windows (since WinXP SP2 as i remembered) will blocks any attempt to flood someone, WinXP SP1 or older can still be used for flooding a target tho, but PPSSPP no longer compatible with WinXP by now, not sure about other OS, but they might allow flooding.

@ghost
Copy link

ghost commented May 25, 2021

The sushicat owner ctually told me its because of this or fake games keep connecting and disconnecting.
But maybe.

@hrydgard
Copy link
Owner

hrydgard commented May 25, 2021

Ah, that's not good - should improve once PPSSPP 1.12 is out though..

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants