Extreme (un-real) RoundTripTime on iOS 3.0.4.3 SDK
Options
I am upgrading a game from Photon 2.x to 3.x and on the iOS client (obj-c) the peer.RoundTripTime is extremely high and drops negative sporadically as well. It in fact does not even look anything like a "ms" measurement. Even if I divide it by a million, it does not appear to be correct (still too high). Did this number change in some way for iOS? Should I divide it by 10 million to "fix it", but even that seems off as on Android on the very same network I get 50ms to 60ms? The values I get back on the Android client all look like real "ms" measurements. Here are some values I'm seeing as output from the log on iOS:
2013-01-21 15:16:44.583 AppTest[359:907] roundTripTime:2104889886 roundTripTimeVariance:148645840 2013-01-21 15:16:49.583 AppTest[359:907] roundTripTime:2104889886 roundTripTimeVariance:148645840 2013-01-21 15:16:54.585 AppTest[359:907] roundTripTime:1827034617 roundTripTimeVariance:529998448 2013-01-21 15:16:59.583 AppTest[359:907] roundTripTime:1650920899 roundTripTimeVariance:705697843 2013-01-21 15:17:04.585 AppTest[359:907] roundTripTime:1488302228 roundTripTimeVariance:813856056 2013-01-21 15:17:09.582 AppTest[359:907] roundTripTime:1341686028 roundTripTimeVariance:-206771431 2013-01-21 15:17:14.582 AppTest[359:907] roundTripTime:1394566618 roundTripTimeVariance:59185120 2013-01-21 15:17:19.583 AppTest[359:907] roundTripTime:1235571925 roundTripTimeVariance:251450047 2013-01-21 15:17:24.586 AppTest[359:907] roundTripTime:1101207526 roundTripTimeVariance:423725235 2013-01-21 15:17:29.584 AppTest[359:907] roundTripTime:1173926583 roundTripTimeVariance:418375702 2013-01-21 15:17:34.586 AppTest[359:907] roundTripTime:1040641836 roundTripTimeVariance:547030084 2013-01-21 15:17:39.583 AppTest[359:907] roundTripTime:1117491434 roundTripTimeVariance:476976739
0
Comments
-
Hi Josh.
Nice to hear that you have found the time to update your Photon version.
Thats the first time that I hear about this issue and I could not reproduce it with our 3.0.4.3 iOS obJC demos. Its still ms and depending on the network and how often you call service() values between 2-3 and a few hundred ms should be normal.
Could you provide us with a minimal reproduction case, please?0 -
Kaiserludi wrote:...Could you provide us with a minimal reproduction case, please?
Hi, thanks for the quick reply. I believe this is happening because of a change to TCP instead of UDP. You can see the same results in the "demo_iPhone_realtime_objc". Here is what you change to see it:
In PhotonDemo.m, change from:m_pLitePeer = [[LitePeer alloc] initWithPhotonListener:self :false];
To:m_pLitePeer = [[LitePeer alloc] initWithPhotonListener:self :true]; //true for TCP
I then changed the port, but also had to change the AppName to connect to for our server as our default is different, but I would think this is not be required to test. I changed from:[m_pLitePeer connect:[NSString stringWithUTF32String:L"MYSERVERNAME:5055"]];
To:NSString *appName = @"Lite"; unsigned char *appNameC = (unsigned char *)[appName UTF8String]; [m_pLitePeer connect:[NSString stringWithUTF32String:L"MYSERVERNAME:4530"] :appNameC];
That is it, then when I run it on my iPod Touch it clearly shows the bad values in the demo.0 -
Thanks.
I could reproduce it now.
We will track this down and provide a fix asap.0 -
We have just released a bugfix for this issue in our donwloadareas.
Please update to 3.0.4.4 and thank you for pointing us to this.0 -
Kaiserludi wrote:We have just released ... 3.0.4.4 ...
Thanks again,
Josh0 -
Thanks for the feedback and the compliment :-)0