Pings & Gamers

Started by davej99, Nov 04, 2009, 11:50:13

Previous topic - Next topic

0 Members and 2 Guests are viewing this topic.

Fox

Most modern games use a mixture of UDP and TCP, for example Battlefield 2 uses ports 4711, 27901, 28910, 29900, 299 for TCP and 1500-4999, 16567, 27900, 29900 for UDP. Latency does have a major effect on gameplay especially in first person shooters. Most professional leagues and ladders have rules about what ping is allowable in matches, TWL and CAL both have rules on minimum and maximum pins (the minimum rule is to prevent a team competing on a LAN against a team connected via the internet).

The easiest way i can think to describe it is that if you are aiming at a moving target and shoot with high ping, even if you appear to be on target you are actually aiming at an image that has been delayed by its passage over the web. The higher your ping the higher the delay and the higher the chance of missing the target completely (and for a headshot at 300-400 yards the target is only a few pixels wide).

Most good gamers can adjust for high ping (lead the target more) but when latency times become unstable (constantly varying say between 50ms and spikes of 250 ms) the game becomes harder and harder to play.

........and yes, I do consider myself to be a good gamer. I have been number 1 in TWL with several teams and when I played BF2 on a regular basis I was ranked in the top 25 players in the world (out of 1.1 million players at that time).
True power doesn't lie with the people who cast the votes, it lies with the people who count them



Supanova

#26
Everyone has their gaming claim to fame. I'm not going to bore you with mine.

No offence but....

Dave you really should give up here. All of the gamers know you are wrong and are repeatedly trying to convince you otherwise. If you think it takes 0.7 seconds to react in an online FPS game you are demonstrating that you are a few years of FPS gaming behind the rest of us.

The problem with a higher ping that is the pipelining effect it has on you as a human. Generally to get a kill you have to go through a few actions and any delay between those actions passes to the next action and so on. If you can feel any delay you are scuppered.

Either the UDP ping that the player sees on the screen is merely a representation or we really are that fast. I'm happy with either result being true, while you Dave seem to have already made up your mind which is true.

Maybe this will give you an idea of how fast players are. A quick youtube search will yeald tonnes of vids. Some of those shots are a hell of a lot faster than your cricket ball.

Note most of his kills are headshots, so he is shooting a hitbox that is 1 or 2mm on his screen.
http://www.youtube.com/watch?v=I1FHjrjwuBA

"Privacy is dead, deal with it" - CEO Sun MicroSystems

Rik

I think the discussion has been useful for all of us who are not gamers and, therefore, don't understand what difference a few ms make. I've certainly found it instructional.
Rik
--------------------

This post reflects my own views, opinions and experience, not those of IDNet.

Fox

...... are you going to come over to the darkside Rik, and play a few rounds with us?
True power doesn't lie with the people who cast the votes, it lies with the people who count them



Rik

Not a chance, gaming is the waste of a good computer. ;D :out: :hide:
Rik
--------------------

This post reflects my own views, opinions and experience, not those of IDNet.

Fox

I think we should agree to disagree on that particular point before World War Three erupts on the forum

...but you should try it sometime, it shouldn't interupt your downloading those erm..."art" films too much  :evil:
True power doesn't lie with the people who cast the votes, it lies with the people who count them



Rik

If I'm not here, I'm usually to be found up to my elbows in Photoshop. ;)
Rik
--------------------

This post reflects my own views, opinions and experience, not those of IDNet.

davej99

Quote from: Supanova on Nov 06, 2009, 15:08:04..... If you think it takes 0.7 seconds to react in an online FPS game you are demonstrating that you are a few years of FPS gaming behind the rest of us. ........
I believe I said simple human reaction time was the order 200ms. Try for yourself HERE. I also said in complex situations, such as driving and braking, an alert driver can apply the brake in no better than 700ms. These are scientific facts not a personal opinion.

Rik

Rik
--------------------

This post reflects my own views, opinions and experience, not those of IDNet.

davej99

Quote from: Fox on Nov 06, 2009, 14:11:57Most good gamers can adjust for high ping (lead the target more) but when latency times become unstable (constantly varying say between 50ms and spikes of 250 ms) the game becomes harder and harder to play.

Thanks, FOX, for the background on use of TCP and UDP. Makes sense to use TCP for non time sensitive data. I believe I suggested earlier that as a pipe gets congested the average pings rises slowly but the peaks rise dramatically and unpredictably making the game unplayable. I also suggested that when gamers think the ping is a problem they mean the peaks are a problem. This is not too different from the point you are making on stability. So what counts is a stable and uncongested pipe and a baseline ping of is say better than a 100ms, which would equate to a UDP transit time of half that. Let us hope that is what IDNET are providing.

Also interested in your opinion on UDP packet loss %, which will probably track congestion, and if this feels different to unpredictable latency.

Technical Ben

On topic, but off subject... Things like Interleaving also have an effect. My pings (whatever the game measures) halved when I had interleaving turned off. And as the games usually have error compensation built in, or just request the occasional lost packed again, I'm better off not having it. I am better off having 99% of packets get through at half the speed compaired to 100% of the packets in double the time. There is only 1% difference in service for me, but twice the speed. I know that interleaving does not use twice the bandwidth, etc, but by the time it's all passed through the exchange it was about twice the time to get a response.

Where as most customers just browsing the web will not notice the difference in speed interleaving causes, but will notice that they get a perfect service with no errors. Apples and oranges really :)
I use to have a signature, then it all changed to chip and pin.

Fox

With regards to interleaving, most gamers prefer it off, the preference seems to be for lower response times as most multiplayer games use quite a low percentage of your available bandwidth so the occasional resent packet has very little effect on the overall game feel. Some players even set up asymmetrical ping to a game server (I wont go into the technicalities of this) to gain an advantage - lag armor - but most well coded games have measures to prevent/reduce this.
True power doesn't lie with the people who cast the votes, it lies with the people who count them



davej99

Quote from: Fox on Nov 06, 2009, 18:24:22
... the occasional resent packet has very little effect on the overall game feel. ....
Is that a TCP resend or is there a way of initiating a UDP resend?

Technical Ben

Wiki Says (in the main UDP article):
"Reliability and congestion control solutions

Lacking reliability, UDP applications must generally be willing to accept some loss, errors or duplication. Some applications such as TFTP may add rudimentary reliability mechanisms into the application layer as needed. Most often, UDP applications do not require reliability mechanisms and may even be hindered by them. Streaming media, real-time multiplayer games and voice over IP (VoIP) are examples of applications that often use UDP. If an application requires a high degree of reliability, a protocol such as the Transmission Control Protocol or erasure codes may be used instead.

Lacking any congestion avoidance and control mechanisms, network-based mechanisms are required to minimize potential congestion collapse effects of uncontrolled, high rate UDP traffic loads. In other words, since UDP senders cannot detect congestion, network-based elements such as routers using packet queuing and dropping techniques will often be the only tool available to slow down excessive UDP traffic. The Datagram Congestion Control Protocol (DCCP) is being designed as a partial solution to this potential problem by adding end host TCP-friendly congestion control behavior to high-rate UDP streams such as streaming media."

So UDP does not, but the games themselves will have a way to request the missing data to be resent, or just simply smooth out or fill in the gaps. In my own experience though, a large loss will result in a disconnect form the server. Smaller losses result in strange effects in game as the game tries to fill in the gaps automatically, or gets the results wrong (like the player going in the wrong direction or the animation being stuttered).
The article also mentions that UDP gets priority over TCP on most systems. Not because it goes first, but because unlike TCP it does not automatically throttle back, but keeps blundering on regardless or packet loss.

(we seem to be getting tangled over what part of the things we are talking about. Ping/latency/UDP/TCP. When really, most software acts independent of the limits or actions of the protocols. I may be cooking on gas, electric or microwaves, but my water still boils at 100 degrees. :) )
I use to have a signature, then it all changed to chip and pin.

davej99

#39
Quote from: Technical Ben on Nov 06, 2009, 20:44:11
..... The article also mentions that UDP gets priority over TCP .....
.... which gets priority over ICMP (ping) round trip. So how meaningful is ping as a measure of UDP transit time? Would be interested to know if game servers have a way of initiating UDP resend as a measure of transit time and so gaming equity.

Technical Ben

My last post on the subject...

From wiki (hint here ;) )
"In various network multiplayer games, the server notes the time it requires for a game packet to reach a client and a response to be received. This round-trip time is usually reported as the player's 'ping'. It is used as an effective measurement of the player's latency, with lower ping times being desirable. Note that this style of ping typically does not use ICMP packets."

Read the last line of my previous post. I apologise and recognise that at the beginning of this discussion, gamers (me included) and other netters did not realise this difference.
I use to have a signature, then it all changed to chip and pin.

davej99

Thx Ben. So server reported player (UDP) ping is not the same as the (ICMP) ping we might assess with tracert. It would be interesting to correlate. But that is for another day.

I have very much enjoyed talking to fellow IDNetters about gaming. After all we are one family and I believe that what is good for gamers is good for us all. I set out to enquire rather than to provoke, but anyway we all have something to say and enlightenment is always welcome, however put. I was impressed by those that clearly have the skill, knowledge and experience, and more importantly the time, patience and courtesy, to share the finer points of gaming and its technology with the rest of us. Hope you all stick with IDNET.