Post Reply 
 
Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Strange networking issue possibly regarding Windows 10
05-08-2021, 05:47 AM
Post: #1
Strange networking issue possibly regarding Windows 10
Firstly, I apologize if this issue has already been addressed or covered somewhere else. I searched both this forum and the tutorials but couldn't find anything quite like the issue I'm having. After learning of the improvements to PPSSPP's networking (thank you very much to those who contributed!), I wanted to get back into playing some PSP games with my friends, Friend A and Friend B. The two games we've tried together so far are Kingdom Hearts: Birth by Sleep Final Mix and Phantasy Star Portable 2 Infinity.

The gist of the issue is that Friend A and I can connect just fine. We can see each other, play games with each other, etc. It's all perfect. Friend B, however, is suffering from an issue in which he can connect, but he never actually shows up in any kind of presence in-game. We first tried on myneighborsushicat, but then I hosted my own external ad hoc server so I could take a look at the logs.

Whenever Friend B joins, I can see his connection info (IP, Mac address and whatnot) just as I can with Friend A, but he never actually shows up in-game for us, nor do we show up for him. We've ensured that we're connecting to the same room and the log console prints this information as well (for example in Birth By Sleep, manual, room 1). We've tried having Friend A host and even Friend B host as well. Regardless of who hosts, the issue is the same: I can see Friend A and he can see me, but Friend B is somehow "isolated" despite connecting without any errors, and with the server clearly reading that he's connected.

I believe we've narrowed this down to an issue with his operating system. For context, I run Windows 7 (yes, I know it's time to update). Friend A and Friend B both run Windows 10 20H2. In case me running Windows 7 was somehow an issue, I had Friend A and Friend B attempt to connect to each other without my presence, and this did not work. Friend B can only successfully see us in-game if he boots into his Windows 7 partition; then it works fine. Therefore, it leads me to believe that this is some obscure setting on Windows 10 or something to that effect that is somehow creating this issue.

For some extra information, here's a list of what Friend B has tried so far to resolve the issue:

- PPSSPP Version 1.11.3

Updating to the latest Windows 10 20H2 version since he was initially outdated (failed)
Running PPSSPP as administrator (failed)
Various router settings (failed, but he can connect just fine on win7 so I imagine it's not a router setting anyways)
Allowing PPSSPP through firewall (failed)
Disabling firewall entirely (failed)
Having all of us use a VPN such as Hamachi (failed)
Various settings in PPSSPP's networking tab that we attempted to sync such as port offset, TCP No Delay, Forced first connect (failed)
Having Friend B connect to me/me to him without the presence of a third player (failed)
Friend B connecting to Friend A without my presence (failed)
Setting port offset above 1024 (failed)
Running PPSSPP on Windows 7 (worked!)

So once again, it seems that Friend B is only able to play with us on Windows 7, not Windows 10... despite the fact that Friend A is on Windows 10 and can play with me just fine. Note that Friend B has tried using the same PPSSPP install on both operating systems, so his settings are identical, but still, only Windows 7 works. Any insight, advice, or suggestions into this issue would be much appreciated.

Thank you!
Find all posts by this user
Quote this message in a reply
05-08-2021, 04:01 PM (This post was last modified: 05-08-2021 05:45 PM by Zinx777.)
Post: #2
RE: Strange networking issue possibly regarding Windows 10
When I think about it.
Windows 10 got specific settings like Game Mode and maybe some networking settings related to telemetry etc.
Maybe disabling or changing them could help?
Didn't try as I mostly use Linux where I could to play on PPSSPP just fine because it got superior drivers for my GPU etc.
BTW you didn't say if you tried the latest PPSSPP dev builds from Orphis (google them) .
Or you could try the latest test builds from AdamN signature but I doubt that will matter.

This is the only interesting thing I found about the difference in networking between win7 and 10:
https://github.com/Amebis/eduVPN/issues/65
https://superuser.com/questions/1369929/...munication
"the value of the ReceiveBufferSize. It appears that in Win7 the default size is 8KB, whereas in Win10 it is 64KB."
If I am not mistaken PPSSPP got an issue related to that with PSP2 Infinity.
So someone needs to change the default size on win10 to the size win 7 got or something (or let the user change it).
BTW the default buffer size on Android is also 64kb but on Linux its 87380 bytes like windows 7.
Tbh it actually explains why i get more stable online experience on Linux then on Win10.
Find all posts by this user
Quote this message in a reply
05-08-2021, 06:43 PM (This post was last modified: 05-08-2021 07:24 PM by Zinx777.)
Post: #3
RE: Strange networking issue possibly regarding Windows 10
You cant change the windows size/default buffer size on windows 10 manually BUT you can change the autotuning levels:
https://docs.microsoft.com/en-us/windows...ing-levels
You change the autotuning level with this command: netsh interface tcp set global autotuninglevel=<Value> replace Value with the desired value I guess.
See if something there will fix it for you.
Actually found out that for me the autotuning is disabled lol so it also might explain why I get issues I guess.

BTW both KHBBS and PSP2I suffers from the infinite loading thing I noticed (happens on KHBBS but less frequently and its more dynamic there).
I guess they got a similar netcode somewhat , I wonder if changing the TCP autotuning helps with that.
Find all posts by this user
Quote this message in a reply
05-09-2021, 04:46 AM (This post was last modified: 05-09-2021 05:58 AM by AdamN.)
Post: #4
RE: Strange networking issue possibly regarding Windows 10
Since both of your friends are using Win10 but only one (Friend B) have the issue, that means the issue is on your Friend B side, most-likely due to blocked ports (either by router, ISP, or network security software)

Try this to find out whether your Friend B have blocked port or not:
1). Let your Friend B host built-in Adhoc Server on his side.
2). You and Friend A connects to Friend B's Adhoc Server.
3). Ask your Friend B to check the Log Console to see if the Adhoc Server can detects anyone joining or not (other than him self).
If no body can connect to Friend B's Adhoc Server that means your Friend B have blocked ports,
if it's, you should ask Friend B to recheck everything that could block ports, may be he have internet/network security blocking the ports on his Win10, while it was disabled (or not installed) on his Win7.
Adhoc games need all players to have open ports, not only the host.

Also, regarding buffer size, we don't use system's default buffer size, we use the buffer size set by the game (different game use different buffer size) but multiplied by a certain number to prevent stuttering and disconnection issue on high latency network (internet), on a real PSP the buffer size probably not being multiplied because the latency is low on LAN so dropped packets can be resent faster.
Basically with small buffer size you'll get stutters due to dropped packets when the buffer is full, since high latency takes longer time for a packet to arrived when that packet is dropped due to full buffer, it will takes extra time to resend the packet due to the latency, and some games will not render the frame until it get all the state of each players.
Increasing buffer size can makes things smoother, but having too large buffer will introduce delays, because the most recent game's state will be queue far at the end in the buffer while the one you're seeing on screen is the state at the front (sender's older state)
Lowering the buffer size will cause packets to be dropped more often, especially on high latency because there could be a few more packets on-the-fly compared to low latency, this will cause stutters since the sender need to resend those dropped packets again, and could introduce disconnection if the game can't handle too many lost/dropped packets, but when that packet can be delivered successfully it will be close to the most recent state because the queue is not long.

My Modified PPSSPP :
==============
Win32&64: https://www.dropbox.com/s/2t3mtdhb0f045cn/PPSSPP_1.11-testbuild_Win32x64.zip?dl=0
Android(ARMv7): https://www.dropbox.com/s/b41bm43mtn1gpnn/PPSSPP_1.11-testbuild_ARMv7.apk?dl=0
Find all posts by this user
Quote this message in a reply
05-09-2021, 05:04 AM (This post was last modified: 05-09-2021 05:14 AM by Zinx777.)
Post: #5
RE: Strange networking issue possibly regarding Windows 10
But it can't be blocked ports when he used a VPN lol.
he also said that everything is the same just different OS.

Also not all games need the ports to be opened for every player.
Games that also got infrastructure mode as well dont need for the most part.
Thats what I discovered anyway with star wars.
Find all posts by this user
Quote this message in a reply
05-09-2021, 05:49 AM (This post was last modified: 05-09-2021 05:59 AM by AdamN.)
Post: #6
RE: Strange networking issue possibly regarding Windows 10
(05-09-2021 05:04 AM)Zinx777 Wrote:  But it can't be blocked ports when he used a VPN lol.
he also said that everything is the same just different OS.

Also not all games need the ports to be opened for every player.
Games that also got infrastructure mode as well dont need for the most part.
Thats what I discovered anyway with star wars.

It can, even localhost can be blocked by network security software.
I always need to put my PPSSPP exe as exclusion on my Anti-virus (Eset Internet Security) whenever i want to test on localhost, otherwise it can't see each other instance.

Which is why they need to test it using built-in Adhoc server just to make sure.

My Modified PPSSPP :
==============
Win32&64: https://www.dropbox.com/s/2t3mtdhb0f045cn/PPSSPP_1.11-testbuild_Win32x64.zip?dl=0
Android(ARMv7): https://www.dropbox.com/s/b41bm43mtn1gpnn/PPSSPP_1.11-testbuild_ARMv7.apk?dl=0
Find all posts by this user
Quote this message in a reply
05-09-2021, 06:53 AM (This post was last modified: 05-09-2021 07:04 AM by Zinx777.)
Post: #7
RE: Strange networking issue possibly regarding Windows 10
Ahh looks like he also did what you just said too lol (well on firewall not anti-virus).
I still wonder if the TCP autotuning thing could help with the inifnite loading bug on KHBBS and PSP2I though because for some reason my settings were way off the default ones (and with online stability in general) .... I need to try this out with someone later.
Find all posts by this user
Quote this message in a reply
05-09-2021, 08:29 AM (This post was last modified: 05-09-2021 08:37 AM by Somonkin.)
Post: #8
RE: Strange networking issue possibly regarding Windows 10
Ah, it was admittedly quite an oversight that we didn't try one of the test builds. We were greeted with a new error which I don't think is in 1.11.3: "Data from incorrect port" followed by Friend B's Mac address. I'm not entirely sure what the error means, but I concluded it meant the issue was port related, not OS related as I originally thought. The main reason I was weary of the OS at first is simply because it's caused issues in the past (infinite loading was mentioned, and I recall PSP2 having that issue with most Windows 7 computers, though that seems to be fixed in the later builds now as I no longer infinite load).

After messing around a bit more with a VPN, we were able to get it to work with him on Windows 10. I think the issue is most definitely that his ports are blocked, though I'm uncertain why we were still able to connect to his server when he hosted it previously (our IPs did show up in his logs, etc). It's just that despite being able to successfully connect to his server, we were unable to actually see each other. I'm assuming that perhaps port 27312 was allowed but the rest of the necessary ports for the games weren't. I was initially confused by this since Friend A only had 27312 forwarded, so I thought the issue would affect him as well if it was an issue of certain ports not being forwarded. It turns out that he has DMZ enabled, though, so I think that explains that.

Anyways, yes, it all seems good now, and we can get it to reliably work. I'll look into what he can do about his ports. For now, the VPN will do. He's from another country and his router settings are difficult to comprehend.

Thank you both for your help!
Find all posts by this user
Quote this message in a reply
05-09-2021, 08:46 AM (This post was last modified: 05-09-2021 08:50 AM by Zinx777.)
Post: #9
RE: Strange networking issue possibly regarding Windows 10
BTW hamachi is not that good anymore its better to use Radmin VPN in my opinion.
I still think the infinite loading is from the buffer size on TCP..and the difference it got between win7 and 10 etc.
Find all posts by this user
Quote this message in a reply
05-09-2021, 01:11 PM (This post was last modified: 05-09-2021 02:17 PM by AdamN.)
Post: #10
RE: Strange networking issue possibly regarding Windows 10
(05-09-2021 08:29 AM)Somonkin Wrote:  Ah, it was admittedly quite an oversight that we didn't try one of the test builds. We were greeted with a new error which I don't think is in 1.11.3: "Data from incorrect port" followed by Friend B's Mac address. I'm not entirely sure what the error means, but I concluded it meant the issue was port related, not OS related as I originally thought. The main reason I was weary of the OS at first is simply because it's caused issues in the past (infinite loading was mentioned, and I recall PSP2 having that issue with most Windows 7 computers, though that seems to be fixed in the later builds now as I no longer infinite load).

After messing around a bit more with a VPN, we were able to get it to work with him on Windows 10. I think the issue is most definitely that his ports are blocked, though I'm uncertain why we were still able to connect to his server when he hosted it previously (our IPs did show up in his logs, etc). It's just that despite being able to successfully connect to his server, we were unable to actually see each other. I'm assuming that perhaps port 27312 was allowed but the rest of the necessary ports for the games weren't. I was initially confused by this since Friend A only had 27312 forwarded, so I thought the issue would affect him as well if it was an issue of certain ports not being forwarded. It turns out that he has DMZ enabled, though, so I think that explains that.

Anyways, yes, it all seems good now, and we can get it to reliably work. I'll look into what he can do about his ports. For now, the VPN will do. He's from another country and his router settings are difficult to comprehend.

Thank you both for your help!

Hmm.. that is strange, "Data from incorrect port" was not supposed to happen on Windows vs Windows multiplayer, it was a rare and strange situation i had when playing Android vs Windows.
That error means that the data supposed to be sent from a certain port but upon arrival it was detected to be coming from a different port, thus the data is considered as unknown and being ignored, which certainly will cause some issue on lobby (it was related to AdhocMatching).
It happened when i was using Port Offset 5000, but after changing it to 10000 "Data from incorrect port" never occurred, which is strange.
May i know what port offset value you're using when you saw this message?

This should explain the cause of unable too see any room, infinite loading, or disconnection during lobby upto starting the mission, because we currently faking ACK packet on AdhocMatching that was supposed to be a signal to tell the sender that the data has been received successfully, so if that data is lost/dropped/ignored the sender didn't know about it and ended with desync.

Normally, when A send to B, and B received data from A, B should send ACK to A so A will know that the data is lost or not, and A can try to resend again if it was lost (if it didn't get that ACK after a certain timeout), with faked ACK and the data happened to be lost/dropped/ignored(due to wrong port) B never received the data sent by A and keep waiting for it, but A is thinking it was successfully sent and move on to send the next data (which is not what B is expecting)

The old AdhocMatching code is faking this ACK making the sender always thinking that the data was sent successfully, while it could be lost in reality, and this old code was the one used by pro-online client too, so changing this behavior to not-faking it on PPSSPP side could result to incompatibility with old/legacy pro-online (because they are faking the ACK too)

My Modified PPSSPP :
==============
Win32&64: https://www.dropbox.com/s/2t3mtdhb0f045cn/PPSSPP_1.11-testbuild_Win32x64.zip?dl=0
Android(ARMv7): https://www.dropbox.com/s/b41bm43mtn1gpnn/PPSSPP_1.11-testbuild_ARMv7.apk?dl=0
Find all posts by this user
Quote this message in a reply
05-09-2021, 01:21 PM
Post: #11
RE: Strange networking issue possibly regarding Windows 10
I never got that error myself when I used Windows but I know other people did like on Shin Budokai and other games.
Find all posts by this user
Quote this message in a reply
05-10-2021, 12:59 AM
Post: #12
RE: Strange networking issue possibly regarding Windows 10
(05-09-2021 01:11 PM)AdamN Wrote:  May i know what port offset value you're using when you saw this message?

When we tested with port offsets, I believe it was always above 1024, as I read somewhere that it can help just in case it's an operating system without administrator privileges enabled. I'll do more testing later tonight when my friend is online, but I recall that I tested with a port offset of 1200 and 1500. I'm unsure if the error showed up when the port offset was 0, but I'll post a more detailed report later tonight after some more testing. I'll try setting it above 10000 as well.

I do recall that the error said something else after the mac address. Its format was roughly "Data from incorrect port (mac address of offending user): 1501 -> 1". I'm at a loss as to what the last part means, but I think it was when we were testing with a port offset of 1500.
Find all posts by this user
Quote this message in a reply
05-10-2021, 04:45 AM (This post was last modified: 05-10-2021 05:00 AM by AdamN.)
Post: #13
RE: Strange networking issue possibly regarding Windows 10
"1501 -> 1" means the port "1501" was the source/sender port detected when the data being received, while "1" is the port the game was expecting, both ports in "xxx -> yyy" are not supposed to include port offset value (both should be "1" if it was a correct port).

When i had this issue on Android(sender) vs Windows(receiver), that "1501" was a random number that have no relation to port offset (which is weird), so it's interesting if you were able to get that message containing some number related to port offset, but still weird if it only happened occasionally.

Btw, is this only occurred when playing between Win7 vs Win10? or Win7 vs Win7, or Win10 vs Win10 will also get this message?

My Modified PPSSPP :
==============
Win32&64: https://www.dropbox.com/s/2t3mtdhb0f045cn/PPSSPP_1.11-testbuild_Win32x64.zip?dl=0
Android(ARMv7): https://www.dropbox.com/s/b41bm43mtn1gpnn/PPSSPP_1.11-testbuild_ARMv7.apk?dl=0
Find all posts by this user
Quote this message in a reply
Post Reply 


Forum Jump: