1 00:00:04,400 --> 00:00:07,800 Speaker 1: Welcome to tech stuff, a production from I heart radio. 2 00:00:11,920 --> 00:00:14,520 Speaker 1: He there, and welcome to tech stuff. I'm your host, 3 00:00:14,600 --> 00:00:18,160 Speaker 1: Jonathan Strickland. I'm an executive producer with I heart radio, 4 00:00:18,320 --> 00:00:21,960 Speaker 1: and how the Tech Are you? You know, there's a 5 00:00:21,960 --> 00:00:27,480 Speaker 1: good chance you've heard the Term Ping before. If you're 6 00:00:27,520 --> 00:00:31,720 Speaker 1: a golfer, you probably associated with equipment like clubs and bags, 7 00:00:31,760 --> 00:00:34,839 Speaker 1: but that's not what I'm talking about today. If you're 8 00:00:34,880 --> 00:00:38,360 Speaker 1: a submariner, well, your concept of paying is closer to 9 00:00:38,520 --> 00:00:43,560 Speaker 1: what I'll be talking about in this episode, and specifically 10 00:00:43,560 --> 00:00:46,000 Speaker 1: in this episode, I'm talking about Ping as a way 11 00:00:46,040 --> 00:00:51,680 Speaker 1: to judge network speed between two different machines. Now, with 12 00:00:51,840 --> 00:00:56,280 Speaker 1: some stuff that you know we use in our technical world, 13 00:00:56,960 --> 00:00:59,800 Speaker 1: the history can be a little muddled or hidden. Right. 14 00:01:00,160 --> 00:01:03,120 Speaker 1: Might be one of those things where we have some 15 00:01:03,240 --> 00:01:06,640 Speaker 1: common tool that we all use, but no one really 16 00:01:06,720 --> 00:01:09,840 Speaker 1: documented where that tool came from or who first came 17 00:01:09,920 --> 00:01:12,080 Speaker 1: up with it, and so we have to use a 18 00:01:12,080 --> 00:01:14,759 Speaker 1: lot of qualifiers to talk about it. But in this 19 00:01:14,800 --> 00:01:18,520 Speaker 1: case we can point to a specific person as the 20 00:01:18,600 --> 00:01:24,920 Speaker 1: originator of the paying function, at least the first paying function, 21 00:01:25,400 --> 00:01:30,319 Speaker 1: and that person was Mike Muss sadly, must passed away 22 00:01:30,440 --> 00:01:34,840 Speaker 1: in two thousand in a car accident. So uh, that 23 00:01:35,000 --> 00:01:40,120 Speaker 1: is really a tragedy. must seemed like a really entertaining 24 00:01:40,319 --> 00:01:45,000 Speaker 1: and innovative guy, based upon the stuff I've read that 25 00:01:45,040 --> 00:01:49,280 Speaker 1: he wrote. Must had studied sonar and radar while he 26 00:01:49,320 --> 00:01:52,520 Speaker 1: was in college. He had been modeling those systems and 27 00:01:52,560 --> 00:01:56,440 Speaker 1: he worked for a while at the Ballistic Research Laboratory, 28 00:01:56,560 --> 00:01:59,160 Speaker 1: or B R L, which we also have to talk 29 00:01:59,200 --> 00:02:02,200 Speaker 1: about in the past tense. The army established the army 30 00:02:02,280 --> 00:02:07,240 Speaker 1: research laboratory in Nineteen two. That would absorb the old brl. 31 00:02:08,200 --> 00:02:10,640 Speaker 1: So the B R L is no more. It is 32 00:02:10,720 --> 00:02:15,200 Speaker 1: part of the A R L. Anyway, while must was 33 00:02:15,280 --> 00:02:18,560 Speaker 1: working at the B R l, he noticed something hinky 34 00:02:18,840 --> 00:02:21,239 Speaker 1: seemed to be going on with the I P network 35 00:02:21,760 --> 00:02:25,440 Speaker 1: within that organization. Now, this was in nineteen eighty three 36 00:02:26,120 --> 00:02:28,799 Speaker 1: and at that point, I think you're most folks had 37 00:02:28,880 --> 00:02:34,000 Speaker 1: never even heard of internet protocol, or I p. that's 38 00:02:34,040 --> 00:02:36,760 Speaker 1: what I p means in this case, not intellectual property, 39 00:02:36,800 --> 00:02:40,760 Speaker 1: but Internet Protocol. I Doun't that most people had ever 40 00:02:40,800 --> 00:02:42,960 Speaker 1: heard of that back in nineteen three. I know I 41 00:02:43,000 --> 00:02:46,560 Speaker 1: had never heard it. The concept of the Internet was 42 00:02:47,160 --> 00:02:50,360 Speaker 1: a pretty foreign one to anyone not working in a 43 00:02:50,400 --> 00:02:54,800 Speaker 1: military organization, a research institute or a number of universities 44 00:02:54,840 --> 00:02:59,399 Speaker 1: that we're doing pioneering work in the field. Computer networking 45 00:02:59,400 --> 00:03:03,840 Speaker 1: in general was something that was a pretty foreign concept 46 00:03:03,880 --> 00:03:08,280 Speaker 1: to folks. This was early on when people could actually 47 00:03:08,320 --> 00:03:11,519 Speaker 1: get access to a personal computer, let alone the thought 48 00:03:11,600 --> 00:03:14,239 Speaker 1: of how do I connect this computer to that computer? 49 00:03:14,760 --> 00:03:17,200 Speaker 1: So it would take a decade before the rest of 50 00:03:17,280 --> 00:03:19,840 Speaker 1: US would start to understand that you could actually connect 51 00:03:19,840 --> 00:03:23,240 Speaker 1: computers together and make a network and then create networks 52 00:03:23,240 --> 00:03:26,160 Speaker 1: together to create a massive interconnected system, a k a 53 00:03:26,560 --> 00:03:32,119 Speaker 1: the Internet. But must was really familiar with computer networks. 54 00:03:32,400 --> 00:03:35,840 Speaker 1: He worked on the IP network at Brl all the time, 55 00:03:36,320 --> 00:03:38,960 Speaker 1: and so when he knows things weren't quite behaving the 56 00:03:39,000 --> 00:03:42,480 Speaker 1: way they usually should, he decided to find out what 57 00:03:42,560 --> 00:03:44,600 Speaker 1: was going on and to do that he needed a 58 00:03:44,640 --> 00:03:48,440 Speaker 1: diagnostic tool. That didn't exist, so he had to create 59 00:03:48,440 --> 00:03:51,040 Speaker 1: a program to do it. Now he had heard about 60 00:03:51,520 --> 00:03:55,880 Speaker 1: other methods of testing things like network speed between machines 61 00:03:56,280 --> 00:04:00,760 Speaker 1: that used other methodologies, but those weren't really applicable to 62 00:04:01,000 --> 00:04:03,839 Speaker 1: his network. So he had to make the tool from 63 00:04:03,840 --> 00:04:09,680 Speaker 1: scratch and he programmed it on a UNIX system. This 64 00:04:09,840 --> 00:04:14,040 Speaker 1: is a family of operating systems that computer science scientists 65 00:04:14,360 --> 00:04:16,840 Speaker 1: at the Bell Labs Research Center of a t and 66 00:04:16,920 --> 00:04:21,719 Speaker 1: t created back in the nineteen sixties uh and then 67 00:04:21,960 --> 00:04:25,039 Speaker 1: ended up releasing it for others to use in the 68 00:04:25,120 --> 00:04:29,560 Speaker 1: nineteen seventies. So your average person would likely find vanilla 69 00:04:29,680 --> 00:04:33,240 Speaker 1: UNIX to be intimidating, because it is a system that 70 00:04:33,320 --> 00:04:38,000 Speaker 1: programmers made for other programmers for the purposes of being 71 00:04:38,000 --> 00:04:43,040 Speaker 1: able to create programs within this framework and then used 72 00:04:43,120 --> 00:04:46,760 Speaker 1: on those machines or similar machines. It is not a 73 00:04:46,800 --> 00:04:50,280 Speaker 1: particularly user friendly operating system, at least not if you're 74 00:04:50,400 --> 00:04:54,520 Speaker 1: someone who's unused to command prompts as opposed to graphical 75 00:04:54,640 --> 00:04:58,760 Speaker 1: user interfaces or Gooey's Um. Back in the day, when 76 00:04:58,800 --> 00:05:01,840 Speaker 1: I first started using muters, command prompts were the way 77 00:05:01,880 --> 00:05:05,919 Speaker 1: to go. In fact, I remember being incredibly reluctant to 78 00:05:06,040 --> 00:05:10,760 Speaker 1: move from the DOSS system that was in use on 79 00:05:10,839 --> 00:05:15,000 Speaker 1: IBM compatibles back in the day to migrating to Windows, 80 00:05:15,520 --> 00:05:19,600 Speaker 1: because I thought windows was a huge waste of resources, 81 00:05:19,640 --> 00:05:21,919 Speaker 1: that your computer had to use so many resources just 82 00:05:22,000 --> 00:05:25,840 Speaker 1: to run the operating system that it completely hindered the 83 00:05:25,880 --> 00:05:28,120 Speaker 1: sort of programs you could run on that sort of computer, 84 00:05:28,480 --> 00:05:30,760 Speaker 1: and I did not like the idea of moving from 85 00:05:30,800 --> 00:05:33,440 Speaker 1: doss to Windows. These days, if you put me in 86 00:05:33,480 --> 00:05:38,719 Speaker 1: front of a line prompt kind of of operating system, 87 00:05:38,760 --> 00:05:41,719 Speaker 1: I'm sure I would be completely lost. UH, as I 88 00:05:41,720 --> 00:05:45,200 Speaker 1: get older, it gets harder to navigate those kinds of things. Anyway, 89 00:05:45,680 --> 00:05:50,000 Speaker 1: what must wanted to do was create a small program 90 00:05:50,040 --> 00:05:54,760 Speaker 1: that could measure the quote unquote, distance between two different machines. 91 00:05:55,240 --> 00:06:00,720 Speaker 1: Except we're not really talking about physical distance here, although 92 00:06:00,760 --> 00:06:03,920 Speaker 1: that can be a factor and we'll get to it. Instead, 93 00:06:04,400 --> 00:06:06,839 Speaker 1: what we're really talking about is the amount of time 94 00:06:06,880 --> 00:06:09,680 Speaker 1: it takes for one machine to send a message to 95 00:06:09,839 --> 00:06:13,440 Speaker 1: a second machine and then receive a message from that 96 00:06:13,520 --> 00:06:16,000 Speaker 1: second machine. So how long does it take you to 97 00:06:16,040 --> 00:06:18,840 Speaker 1: send a message out and get a reply back? In 98 00:06:18,880 --> 00:06:22,840 Speaker 1: that way, it's a lot like an echo. So an 99 00:06:22,839 --> 00:06:26,160 Speaker 1: echo is when you make or you hear a sound 100 00:06:26,560 --> 00:06:29,800 Speaker 1: and then you hear that sound repeated. And it happens 101 00:06:29,839 --> 00:06:34,280 Speaker 1: when sound waves bounce off of some hard, smooth surface, 102 00:06:34,320 --> 00:06:37,400 Speaker 1: and the smoother and harder the surface, the better it 103 00:06:37,480 --> 00:06:40,280 Speaker 1: is for creating echoes. So let's say that you are 104 00:06:40,440 --> 00:06:44,560 Speaker 1: in a canyon, maybe it's a box canyon, and you 105 00:06:44,640 --> 00:06:46,719 Speaker 1: got a red base on one end and a blue 106 00:06:46,720 --> 00:06:49,920 Speaker 1: Basse on the other, and no one can explain why. 107 00:06:49,960 --> 00:06:53,159 Speaker 1: So you're in this box canyon and you decide to 108 00:06:53,160 --> 00:06:56,960 Speaker 1: shout text stuff, rules or you know something that you 109 00:06:56,960 --> 00:07:00,400 Speaker 1: would actually shout. Well, the echoes you would hear are 110 00:07:00,400 --> 00:07:03,640 Speaker 1: actually the sound waves that you generated that came from you. 111 00:07:04,120 --> 00:07:08,160 Speaker 1: Those air fluctuations originated from you and then they bounced 112 00:07:08,200 --> 00:07:12,480 Speaker 1: back to you after they hit the canyon walls. So 113 00:07:12,800 --> 00:07:15,200 Speaker 1: if you're in a place where there are no hard, 114 00:07:15,400 --> 00:07:18,360 Speaker 1: smooth surfaces, you're not going to get an echo. Doesn't 115 00:07:18,360 --> 00:07:21,960 Speaker 1: matter how loudly you scream. There are no surfaces for 116 00:07:22,080 --> 00:07:24,560 Speaker 1: the sound to bounce off of and come back to you. 117 00:07:24,640 --> 00:07:27,720 Speaker 1: It's just gonna travel outward until it's essentially too weak 118 00:07:28,320 --> 00:07:32,440 Speaker 1: for it to be heard by at least human ears. Now, 119 00:07:32,480 --> 00:07:36,040 Speaker 1: when we talk about stuff like sonar, we're talking about 120 00:07:36,120 --> 00:07:40,440 Speaker 1: using sound to get an idea about how far away 121 00:07:40,560 --> 00:07:45,480 Speaker 1: objects are from the sonar mechanism. And if we break 122 00:07:45,520 --> 00:07:50,720 Speaker 1: down what sonar is from a technical standpoint, essentially what 123 00:07:50,800 --> 00:07:55,320 Speaker 1: you have is a speaker that emits the sound and 124 00:07:55,360 --> 00:07:59,360 Speaker 1: a microphone that picks up echoes of the sound and 125 00:07:59,400 --> 00:08:02,120 Speaker 1: then some word of the system to calculate the amount 126 00:08:02,160 --> 00:08:05,240 Speaker 1: of time between making a sound and getting the echo. 127 00:08:05,400 --> 00:08:08,320 Speaker 1: These systems could be human powered or it could be 128 00:08:09,280 --> 00:08:12,560 Speaker 1: modern systems use computers, but in the old days it 129 00:08:12,560 --> 00:08:17,280 Speaker 1: could actually be someone with a stopwatch and very quickly 130 00:08:17,320 --> 00:08:20,080 Speaker 1: reacting in order to get an idea of how long 131 00:08:20,080 --> 00:08:22,160 Speaker 1: it took to send a sound out and to get 132 00:08:22,240 --> 00:08:26,560 Speaker 1: the echo back. This is really useful if, for example, 133 00:08:27,240 --> 00:08:31,080 Speaker 1: you're in a submarine that doesn't have windows. Those submarines 134 00:08:31,160 --> 00:08:34,120 Speaker 1: don't because windows are a point of failure and you 135 00:08:34,160 --> 00:08:36,840 Speaker 1: don't want those when you're in a metal tube that 136 00:08:36,880 --> 00:08:40,360 Speaker 1: goes under the water. So you use the sonar to 137 00:08:40,559 --> 00:08:44,000 Speaker 1: beam out a sound and you know how fast sound 138 00:08:44,000 --> 00:08:46,720 Speaker 1: travels through water. It's a standard sort of thing. It 139 00:08:46,760 --> 00:08:50,800 Speaker 1: actually travels faster through water than it does through air. 140 00:08:51,200 --> 00:08:54,080 Speaker 1: We typically say that sound travels at about three forty 141 00:08:54,160 --> 00:08:57,840 Speaker 1: three per second through the air, but in water it's 142 00:08:57,880 --> 00:09:02,400 Speaker 1: one thousand four hundred eight meters per second. So if 143 00:09:02,440 --> 00:09:06,080 Speaker 1: you send out a sound in a specific direction and 144 00:09:06,120 --> 00:09:08,040 Speaker 1: you time how long it takes for the sound to 145 00:09:08,080 --> 00:09:11,400 Speaker 1: come back to you and then you essentially divided by two, 146 00:09:11,760 --> 00:09:14,520 Speaker 1: you know how far away you are from, say, and 147 00:09:14,760 --> 00:09:18,679 Speaker 1: underwater cliff face. It's pretty common to call the sonar 148 00:09:18,840 --> 00:09:22,960 Speaker 1: sound a Ping, because that's what it sounds like. If 149 00:09:23,000 --> 00:09:25,800 Speaker 1: you've seen the film adaptation of the hunt for Red October, 150 00:09:26,080 --> 00:09:28,360 Speaker 1: you know there's a scene in which sean connery, who's 151 00:09:28,400 --> 00:09:33,680 Speaker 1: playing a Soviet Submarine Commander, tells his Sonar Operator reverify 152 00:09:33,760 --> 00:09:37,800 Speaker 1: our range to target one ping only. Now, in that 153 00:09:37,880 --> 00:09:42,000 Speaker 1: case he's using the Ping to secretly communicate with the Americans, 154 00:09:42,040 --> 00:09:45,160 Speaker 1: but he's selling his sonar operator the reason is just 155 00:09:45,280 --> 00:09:47,840 Speaker 1: to make sure they know exactly how far the Americans 156 00:09:47,920 --> 00:09:51,719 Speaker 1: are in case they need to fire upon them anyway. 157 00:09:51,960 --> 00:09:55,800 Speaker 1: That's why must called his tool a ping. It was 158 00:09:55,880 --> 00:09:59,679 Speaker 1: using a similar sort of approach. A message goes out 159 00:09:59,720 --> 00:10:02,960 Speaker 1: from on computer to a different computer and the message 160 00:10:03,040 --> 00:10:05,480 Speaker 1: essentially says hey, send us back to me, and the 161 00:10:05,520 --> 00:10:09,120 Speaker 1: target computer follows instructions and sends the message back. The 162 00:10:09,160 --> 00:10:12,080 Speaker 1: amount of time between sending the message and receiving the 163 00:10:12,120 --> 00:10:15,440 Speaker 1: reply can give you an idea about the network speed 164 00:10:15,520 --> 00:10:20,000 Speaker 1: between those two machines. If it's slower than expected, something's 165 00:10:20,040 --> 00:10:23,120 Speaker 1: going wrong. Maybe there's too much traffic on the network, 166 00:10:23,360 --> 00:10:26,680 Speaker 1: maybe there is an actual switch that's down somewhere on 167 00:10:26,720 --> 00:10:30,640 Speaker 1: the network and it necessitates traffic to route around the issue. 168 00:10:31,040 --> 00:10:35,679 Speaker 1: So it's really a diagnostic tool for measuring path latency. 169 00:10:36,080 --> 00:10:39,040 Speaker 1: We'll talk more about latency in just a second, but 170 00:10:39,160 --> 00:10:52,040 Speaker 1: first let's take a quick break. All right, let's talk 171 00:10:52,080 --> 00:10:55,120 Speaker 1: about latency. You can think of latency as the delay 172 00:10:55,200 --> 00:10:59,760 Speaker 1: between the cause of something and it's effect. I always 173 00:10:59,840 --> 00:11:02,480 Speaker 1: use video game examples for this, because anyone who has 174 00:11:02,480 --> 00:11:05,800 Speaker 1: played enough video games has experienced this at one point 175 00:11:05,920 --> 00:11:08,839 Speaker 1: or another. Um and it's, you know, one of the 176 00:11:09,640 --> 00:11:13,800 Speaker 1: contexts in which we really talk about paying. Anyway, in 177 00:11:13,840 --> 00:11:17,280 Speaker 1: most video games you really want the game to respond instantly, 178 00:11:17,559 --> 00:11:20,079 Speaker 1: or at least appear to be instant according to our 179 00:11:20,520 --> 00:11:24,520 Speaker 1: limitations of perception when you work the controls. So when 180 00:11:24,559 --> 00:11:27,760 Speaker 1: you push that jump button, you want that lousy little 181 00:11:27,760 --> 00:11:31,040 Speaker 1: plumber to jump and squash that Gumba Gush. Darn it 182 00:11:31,800 --> 00:11:34,320 Speaker 1: when there's a delay. So you push the jump button 183 00:11:34,480 --> 00:11:38,680 Speaker 1: but the plumber waits a second before jumping. It makes 184 00:11:38,720 --> 00:11:42,200 Speaker 1: the game way more difficult to play. Some Games do 185 00:11:42,240 --> 00:11:45,480 Speaker 1: the so on purpose. Sometimes it's up to the player 186 00:11:45,559 --> 00:11:48,559 Speaker 1: to try and learn and adjust to the timing of 187 00:11:48,640 --> 00:11:50,720 Speaker 1: the game, and it was all part of the design. 188 00:11:51,600 --> 00:11:54,520 Speaker 1: Other Games didn't do it on purpose. They're just poorly made. 189 00:11:54,760 --> 00:11:58,640 Speaker 1: Or they're running on inadequate machines, and so there's this 190 00:11:58,760 --> 00:12:01,880 Speaker 1: latency introduced in to the experience and there's a lag 191 00:12:02,000 --> 00:12:06,120 Speaker 1: between input and output. Now must decide to create his 192 00:12:06,200 --> 00:12:09,800 Speaker 1: ping tool back in nine three on a whim. He 193 00:12:09,840 --> 00:12:12,360 Speaker 1: didn't intend for it to be some sort of glorified 194 00:12:13,240 --> 00:12:16,400 Speaker 1: feature that would be put to use countless times afterwards. 195 00:12:16,679 --> 00:12:20,160 Speaker 1: He just thought it was an interesting exercise. He described 196 00:12:20,200 --> 00:12:25,000 Speaker 1: the Ping Program as a quote, thousand line hack end quote, 197 00:12:25,280 --> 00:12:27,960 Speaker 1: and he wrote it in a single evening and he 198 00:12:28,000 --> 00:12:29,880 Speaker 1: says that if he had known how much it was 199 00:12:29,920 --> 00:12:33,800 Speaker 1: going to be used moving forward, he might have spent 200 00:12:33,840 --> 00:12:35,840 Speaker 1: a little more time and effort in designing it. He 201 00:12:35,880 --> 00:12:42,679 Speaker 1: also mentions that, of course, in Classic Uh fate, by 202 00:12:42,720 --> 00:12:46,160 Speaker 1: the time he finished designing the tool, the original issue 203 00:12:46,400 --> 00:12:48,240 Speaker 1: that made him think about it in the first place 204 00:12:48,240 --> 00:12:50,560 Speaker 1: had already been fixed. Someone else had gone into the network, 205 00:12:50,600 --> 00:12:54,640 Speaker 1: discovered it and fixed the problem. But the tools usefulness 206 00:12:54,679 --> 00:12:59,920 Speaker 1: obviously went beyond the single use case that inspired must 207 00:13:00,000 --> 00:13:03,120 Speaker 1: to create it. Must also joked about how people tried 208 00:13:03,160 --> 00:13:06,439 Speaker 1: to interpret Ping, the word paying, P I N G, 209 00:13:07,320 --> 00:13:10,680 Speaker 1: as an acronym. There was a common assumption in the 210 00:13:10,720 --> 00:13:15,959 Speaker 1: network Admin field that Ping stood for packet Internet grouper, 211 00:13:16,640 --> 00:13:20,320 Speaker 1: but must dismiss that right away. It was pretty common 212 00:13:20,400 --> 00:13:23,880 Speaker 1: to create wacky acronyms and government projects. In fact, that's 213 00:13:23,880 --> 00:13:26,600 Speaker 1: still true to this day. If you look at any 214 00:13:26,720 --> 00:13:30,760 Speaker 1: law or bill that has like a cool or cool 215 00:13:30,960 --> 00:13:34,640 Speaker 1: ish name associated with it, there's a good chance that 216 00:13:34,760 --> 00:13:39,680 Speaker 1: name is said to represent a tortured acronym, and I 217 00:13:39,720 --> 00:13:44,079 Speaker 1: am positive that in the overall majority of cases lawmakers 218 00:13:44,120 --> 00:13:47,280 Speaker 1: come up with a name for the legislation. First they 219 00:13:47,280 --> 00:13:50,360 Speaker 1: come up with their cool name and then, retroactively they 220 00:13:50,400 --> 00:13:53,480 Speaker 1: try to justify the name by creating a phrase for 221 00:13:53,520 --> 00:13:56,880 Speaker 1: which the name is supposedly an acronym, and it's almost 222 00:13:56,920 --> 00:14:01,280 Speaker 1: always terrible anyway. must say that's what people were trying 223 00:14:01,280 --> 00:14:05,120 Speaker 1: to do with paying, but he was adamant pain justed 224 00:14:05,200 --> 00:14:10,560 Speaker 1: for paying, like with Sonar. Now, if you're an online Gamer, 225 00:14:10,600 --> 00:14:13,360 Speaker 1: you're likely very aware of the importance of paying. With 226 00:14:13,480 --> 00:14:16,959 Speaker 1: online multiplayer games, each player is connecting to a game 227 00:14:17,080 --> 00:14:22,280 Speaker 1: server and to be clear, multiplayer games have lots of servers. Right. 228 00:14:22,560 --> 00:14:25,360 Speaker 1: Each game has tons of servers, and it's just that 229 00:14:25,400 --> 00:14:29,480 Speaker 1: a player logs into a single server into which lots 230 00:14:29,520 --> 00:14:32,600 Speaker 1: of other players are also logged, and once a server 231 00:14:32,680 --> 00:14:36,720 Speaker 1: reaches capacity, players will have to connect to other servers. Well, 232 00:14:36,760 --> 00:14:39,720 Speaker 1: it's pretty common practice to try and log into servers 233 00:14:39,760 --> 00:14:43,680 Speaker 1: that are geographically close to the player, because that helps 234 00:14:43,720 --> 00:14:47,560 Speaker 1: cut back on latency. Now, it's not always true that 235 00:14:47,640 --> 00:14:51,960 Speaker 1: the closest server provides the fastest data speeds between the 236 00:14:52,040 --> 00:14:55,960 Speaker 1: client machine, in other words the Gamer's rig, and the 237 00:14:56,080 --> 00:15:00,560 Speaker 1: server itself, but it's usually the case. If you log 238 00:15:00,600 --> 00:15:03,000 Speaker 1: into a server that's halfway across the world from you, 239 00:15:03,320 --> 00:15:06,120 Speaker 1: that means the messages coming from your machine and going 240 00:15:06,160 --> 00:15:09,480 Speaker 1: to your machine have to travel halfway across the world 241 00:15:09,880 --> 00:15:13,520 Speaker 1: and while data moves very, very fast, it's not instantaneous, 242 00:15:13,960 --> 00:15:17,920 Speaker 1: so you start to encounter a bit of latency. That 243 00:15:18,160 --> 00:15:21,400 Speaker 1: latency or lag means there is a delay between when 244 00:15:21,480 --> 00:15:24,800 Speaker 1: a Gamer does something in their game on their machine 245 00:15:25,360 --> 00:15:28,520 Speaker 1: and when the server finds out about it, and sometimes 246 00:15:28,600 --> 00:15:31,960 Speaker 1: that lag is enough to cause problems in gameplay. In fact, 247 00:15:32,200 --> 00:15:35,040 Speaker 1: the LAG does not have to be very long for 248 00:15:35,120 --> 00:15:38,840 Speaker 1: issues to pop up. Well, less than a second in fact. 249 00:15:39,360 --> 00:15:41,800 Speaker 1: I'll give you an example. So let's say you and 250 00:15:41,840 --> 00:15:44,640 Speaker 1: I are playing in a one on one first person 251 00:15:44,760 --> 00:15:47,840 Speaker 1: shooter game. It's me versus you, and you've got me 252 00:15:47,880 --> 00:15:50,960 Speaker 1: in your sights. You're clear across the map. You've spotted me. 253 00:15:51,280 --> 00:15:53,440 Speaker 1: You've got a sniper rifle, so you take aim at 254 00:15:53,440 --> 00:15:56,200 Speaker 1: me and you shoot from your perspective. You've got a 255 00:15:56,200 --> 00:15:58,960 Speaker 1: clear shot. There's no way you can miss. But then 256 00:15:59,520 --> 00:16:03,800 Speaker 1: there's the latency. Let's say my connection is lagging just 257 00:16:03,920 --> 00:16:06,280 Speaker 1: a bit, that I've got a very high ping rate 258 00:16:06,560 --> 00:16:10,360 Speaker 1: to the game server and in fact, while you appear 259 00:16:10,760 --> 00:16:13,880 Speaker 1: to be aiming straight at me, because from your side 260 00:16:14,000 --> 00:16:17,840 Speaker 1: the game server thinks that is where I'm at, on 261 00:16:17,880 --> 00:16:21,000 Speaker 1: my side I was doing the old Serpentinam and the 262 00:16:21,040 --> 00:16:24,760 Speaker 1: server gets my input commands and the game essentially decides 263 00:16:24,800 --> 00:16:28,000 Speaker 1: that your shots don't connect because it turns out I 264 00:16:28,040 --> 00:16:31,320 Speaker 1: wasn't really in the spot where you were aiming the 265 00:16:31,360 --> 00:16:34,680 Speaker 1: whole time. There are some gamers who use this kind 266 00:16:34,760 --> 00:16:38,120 Speaker 1: of thing to cheat at Games. So back in the 267 00:16:38,160 --> 00:16:42,040 Speaker 1: early days of Halo, to Multiplayer, there was a tactic 268 00:16:42,120 --> 00:16:46,120 Speaker 1: called stand by. A lot of modems had a standby 269 00:16:46,160 --> 00:16:50,240 Speaker 1: feature that would let you temporarily pause a connection to 270 00:16:50,320 --> 00:16:54,120 Speaker 1: a server. So it's like disconnecting, but it was just 271 00:16:54,200 --> 00:16:58,320 Speaker 1: doing it for a moment. so by using it strategically Halo, 272 00:16:58,400 --> 00:17:01,080 Speaker 1: two players could appear to be in one place in 273 00:17:01,120 --> 00:17:05,320 Speaker 1: the game because the game server couldn't verify where the 274 00:17:05,359 --> 00:17:09,399 Speaker 1: player was and so would just essentially keep the player 275 00:17:09,760 --> 00:17:13,960 Speaker 1: on the course that they were on before the connection severed, 276 00:17:14,119 --> 00:17:16,840 Speaker 1: but it would hold off on dropping the player entirely 277 00:17:16,880 --> 00:17:21,000 Speaker 1: in case the connection repaired itself. And so that meant 278 00:17:21,000 --> 00:17:23,520 Speaker 1: that if other players were trying to do damage to 279 00:17:23,720 --> 00:17:28,480 Speaker 1: that character, nothing would happen and once the connection reestablished, 280 00:17:28,480 --> 00:17:32,639 Speaker 1: the game would reconcile the players actual position. So to 281 00:17:32,720 --> 00:17:35,359 Speaker 1: someone else it would look like your opponent had gone 282 00:17:35,400 --> 00:17:39,000 Speaker 1: invincible for a few seconds and then would suddenly teleport 283 00:17:39,080 --> 00:17:42,080 Speaker 1: to a different location. And this got to be a 284 00:17:42,119 --> 00:17:44,320 Speaker 1: real problem because people were using it to get an 285 00:17:44,400 --> 00:17:49,199 Speaker 1: unfair advantage over others. But generally these days players do 286 00:17:49,240 --> 00:17:52,600 Speaker 1: not want a High Ping rate. It makes playing the 287 00:17:52,640 --> 00:17:55,879 Speaker 1: game very difficult and if you're a really competitive player, 288 00:17:56,200 --> 00:17:59,280 Speaker 1: like you're in the elite echelons, you really want to 289 00:17:59,320 --> 00:18:03,520 Speaker 1: minimize all the external factors that could make a game harder. 290 00:18:03,920 --> 00:18:06,440 Speaker 1: You want things to be a nice level playing field 291 00:18:06,440 --> 00:18:10,399 Speaker 1: for everyone. So it really is skill versus skill, maybe 292 00:18:10,440 --> 00:18:13,920 Speaker 1: some luck thrown in, but it's not some external factor 293 00:18:14,000 --> 00:18:17,200 Speaker 1: that you have no control over. Giving one party and 294 00:18:17,280 --> 00:18:19,920 Speaker 1: advantage over the other. So you really want that Ping 295 00:18:19,960 --> 00:18:23,919 Speaker 1: to be low, and by low I'm talking about milliseconds. 296 00:18:24,240 --> 00:18:28,560 Speaker 1: Competitive gamers really want a super low ping, like if 297 00:18:28,600 --> 00:18:31,200 Speaker 1: you managed to log into a server and you find 298 00:18:31,200 --> 00:18:34,280 Speaker 1: out that Your Ping rate is fifteen milliseconds or less, 299 00:18:35,040 --> 00:18:38,640 Speaker 1: that would be amazing. It would also mean you're probably 300 00:18:38,720 --> 00:18:41,919 Speaker 1: living like a mile away from the game server and 301 00:18:41,960 --> 00:18:46,080 Speaker 1: you're connecting straight to it. A Ping between fifteen and 302 00:18:46,119 --> 00:18:50,240 Speaker 1: forty five milliseconds is really good and it's not ideal, 303 00:18:50,520 --> 00:18:52,879 Speaker 1: but it's not enough of a delay to measurably impact 304 00:18:52,960 --> 00:18:57,080 Speaker 1: the game. Between forty five and one hundred milliseconds, you 305 00:18:57,200 --> 00:19:01,200 Speaker 1: start to get into an area where the lag can 306 00:19:01,200 --> 00:19:06,199 Speaker 1: be noticeable. Not necessarily a game breaking mechanic, but you 307 00:19:06,240 --> 00:19:10,439 Speaker 1: can start to notice little issues. Between one hundred and 308 00:19:10,440 --> 00:19:13,159 Speaker 1: two hundred fifty milliseconds, you've gotten experience that can make 309 00:19:13,200 --> 00:19:16,119 Speaker 1: a game unplayable, and beyond two fifty you might as 310 00:19:16,160 --> 00:19:19,480 Speaker 1: well just disconnect and try a different server. But it 311 00:19:19,520 --> 00:19:21,800 Speaker 1: also depends on what type of game you're playing. Right 312 00:19:21,880 --> 00:19:24,720 Speaker 1: not all games are equal. If you're playing a turn 313 00:19:24,800 --> 00:19:28,680 Speaker 1: based game, that's not nearly as sensitive to paying issues, 314 00:19:28,760 --> 00:19:30,359 Speaker 1: like if one player gets to go and then the 315 00:19:30,400 --> 00:19:34,080 Speaker 1: other player gets to go and you're not simultaneously battling 316 00:19:34,680 --> 00:19:37,639 Speaker 1: um at every moment, then a little delay is not 317 00:19:37,680 --> 00:19:39,440 Speaker 1: going to be a big problem. It might make the 318 00:19:40,119 --> 00:19:43,600 Speaker 1: game play a little irritating, but it's still totally playable. 319 00:19:43,880 --> 00:19:47,560 Speaker 1: But if you're talking about a twitch based first person 320 00:19:47,640 --> 00:19:51,159 Speaker 1: shooter style game, Players Need Really Low Ping for the 321 00:19:51,160 --> 00:19:54,600 Speaker 1: game to run smoothly, particularly if you're talking about those 322 00:19:54,640 --> 00:19:58,199 Speaker 1: elite levels of play. As an example of how this 323 00:19:58,280 --> 00:20:01,240 Speaker 1: can give one player an edge over or another, imagine 324 00:20:01,240 --> 00:20:04,040 Speaker 1: a scenario in which two players are about to come 325 00:20:04,080 --> 00:20:07,280 Speaker 1: into view of each other. Both of them are going 326 00:20:07,320 --> 00:20:09,520 Speaker 1: to have line of sight to the other players, so 327 00:20:09,600 --> 00:20:13,760 Speaker 1: like they're both cresting a hill or something. But let's 328 00:20:13,800 --> 00:20:18,800 Speaker 1: say player one's Ping is much lower than player two's Ping. 329 00:20:19,000 --> 00:20:22,240 Speaker 1: That means player one has much less path latency to 330 00:20:22,240 --> 00:20:25,720 Speaker 1: the game server. That could mean that player one will 331 00:20:25,760 --> 00:20:29,120 Speaker 1: be able to see player to a moment earlier, which 332 00:20:29,160 --> 00:20:32,239 Speaker 1: can give player one an advantage in the encounter. If 333 00:20:32,280 --> 00:20:35,720 Speaker 1: you've got two players of similar skill, that could push 334 00:20:35,880 --> 00:20:40,880 Speaker 1: a fair fight into unfair territory. All right, we're gonna 335 00:20:41,000 --> 00:20:43,960 Speaker 1: take another quick break. When we come back we'll wrap 336 00:20:44,080 --> 00:20:56,600 Speaker 1: up this discussion about paying. Okay, so now we understand 337 00:20:56,680 --> 00:21:00,520 Speaker 1: that ping is a way to measure the latency between 338 00:21:00,560 --> 00:21:03,440 Speaker 1: a client machine and a server machine. You could also 339 00:21:03,520 --> 00:21:06,000 Speaker 1: do it between servers. You know, it's it's really between 340 00:21:06,040 --> 00:21:08,919 Speaker 1: any two machines that are connected on a network. But 341 00:21:09,040 --> 00:21:14,160 Speaker 1: what Affects Ping? What makes ping go from low to high? Well, 342 00:21:14,200 --> 00:21:18,399 Speaker 1: as I mentioned earlier, physical distance between the client and 343 00:21:18,440 --> 00:21:22,760 Speaker 1: the server is one thing that can certainly affect Ping. 344 00:21:22,880 --> 00:21:25,879 Speaker 1: The further your information needs to travel to get to 345 00:21:25,920 --> 00:21:29,399 Speaker 1: a server and then return to get to you, the 346 00:21:29,480 --> 00:21:32,200 Speaker 1: more latency you're going to encounter. That just makes sense, right. 347 00:21:32,560 --> 00:21:35,200 Speaker 1: So if you're in the United States then you're connecting 348 00:21:35,200 --> 00:21:38,760 Speaker 1: to game servers that are located in Europe, chances are 349 00:21:39,119 --> 00:21:41,280 Speaker 1: Your Ping is going to be on the higher side 350 00:21:41,600 --> 00:21:44,359 Speaker 1: compared to Europeans who are connecting to that same server. 351 00:21:45,040 --> 00:21:48,400 Speaker 1: The other big factor is the amount of traffic that's 352 00:21:48,400 --> 00:21:52,760 Speaker 1: on your personal network. Just like with roadways, more traffic 353 00:21:53,040 --> 00:21:57,160 Speaker 1: leads to congestion and it slows things down. So if 354 00:21:57,200 --> 00:22:00,280 Speaker 1: you want to jump into war zone while you're house 355 00:22:00,320 --> 00:22:03,600 Speaker 1: made is busy downloading a ton of four K films, 356 00:22:04,480 --> 00:22:06,600 Speaker 1: chances are you're paying is going to suffer because your 357 00:22:06,640 --> 00:22:11,000 Speaker 1: network bandwidth is finite. It's a limited resource. There's only 358 00:22:11,040 --> 00:22:13,640 Speaker 1: so much of it and if the game is having 359 00:22:13,640 --> 00:22:16,560 Speaker 1: to fight for some of that bandwidth compared to the 360 00:22:16,640 --> 00:22:20,520 Speaker 1: downloading of these massive files, that means you're paying is 361 00:22:20,560 --> 00:22:23,639 Speaker 1: probably going to go up as a result. For that reason, 362 00:22:23,640 --> 00:22:25,760 Speaker 1: there are a lot of pro gamers out there who 363 00:22:25,920 --> 00:22:29,360 Speaker 1: will have to dedicated network connections, one just for their 364 00:22:29,400 --> 00:22:33,520 Speaker 1: gaming and the other for everything else, which to me 365 00:22:33,640 --> 00:22:36,359 Speaker 1: is crazy. But everything about pro gaming is crazy to 366 00:22:36,400 --> 00:22:40,879 Speaker 1: me because I'm a casual Gamer right I can't imagine 367 00:22:41,040 --> 00:22:46,359 Speaker 1: dedicating eight hours or more per day to playing, streaming, 368 00:22:46,760 --> 00:22:51,359 Speaker 1: you know, cutting together videos of my gameplay. That just is. 369 00:22:52,000 --> 00:22:55,960 Speaker 1: It's daunting to me anyway. Other things that can affect 370 00:22:56,000 --> 00:22:59,600 Speaker 1: paying can include the type of connection that you're using. 371 00:22:59,720 --> 00:23:03,360 Speaker 1: If you've got a hardwired connection, they go straight from 372 00:23:03,400 --> 00:23:06,640 Speaker 1: your computer to your router. That is going to Minimize 373 00:23:06,920 --> 00:23:10,120 Speaker 1: Ping on your end, at least as far as connectivity 374 00:23:10,200 --> 00:23:14,159 Speaker 1: between router and machine goes. Uh, if your housemaid is 375 00:23:14,160 --> 00:23:17,760 Speaker 1: still downloading the complete works of the fairly brothers, you're 376 00:23:17,760 --> 00:23:21,160 Speaker 1: still gonna have issues with paying. If if you're sharing 377 00:23:21,280 --> 00:23:26,480 Speaker 1: a network connection, if you're relying on Wifi. Then things 378 00:23:26,520 --> 00:23:30,359 Speaker 1: like your distance between your computer and the Wifi router 379 00:23:31,000 --> 00:23:33,600 Speaker 1: or the fact that there may be walls or ceilings 380 00:23:33,680 --> 00:23:36,160 Speaker 1: or floors between you and the router. All of that 381 00:23:36,560 --> 00:23:40,520 Speaker 1: can have an effect on paying. So general rule is 382 00:23:40,560 --> 00:23:43,840 Speaker 1: you want to be closer to the router rather than 383 00:23:43,880 --> 00:23:47,960 Speaker 1: further away, and if you can have a hardwired connection 384 00:23:48,440 --> 00:23:52,440 Speaker 1: it's better. Again, these really have more of an impact 385 00:23:52,800 --> 00:23:56,760 Speaker 1: at the higher levels of Gameplay. If you're a casual player, 386 00:23:57,359 --> 00:24:00,879 Speaker 1: it can still be something that might you might notice, 387 00:24:00,960 --> 00:24:04,320 Speaker 1: but it's not likely to have as critical and impact 388 00:24:04,440 --> 00:24:08,080 Speaker 1: on your level of play. It's also possible for there 389 00:24:08,119 --> 00:24:11,240 Speaker 1: to be issues beyond your own network that you have 390 00:24:11,320 --> 00:24:16,360 Speaker 1: no control over. So perhaps your Internet service providers network 391 00:24:16,520 --> 00:24:20,399 Speaker 1: is having an issue, or a network that your I 392 00:24:20,640 --> 00:24:24,359 Speaker 1: s P connects to Um that might have an issue 393 00:24:24,440 --> 00:24:26,600 Speaker 1: and there's not much you can do about that other 394 00:24:26,720 --> 00:24:29,480 Speaker 1: than maybe you can try and switch to a different 395 00:24:29,520 --> 00:24:33,440 Speaker 1: server to see if the routing between you and that 396 00:24:33,520 --> 00:24:36,199 Speaker 1: server is better. But if it's a problem with your 397 00:24:36,200 --> 00:24:39,399 Speaker 1: I s P, if it's between like if it's in 398 00:24:39,440 --> 00:24:42,359 Speaker 1: that last mile, there's really nothing you can do because 399 00:24:43,080 --> 00:24:47,600 Speaker 1: everything is funneling through that last mile connection to your 400 00:24:47,920 --> 00:24:51,800 Speaker 1: home and you can't step around that, at least not 401 00:24:51,880 --> 00:24:55,359 Speaker 1: without somehow magically switching to a different I s p. obviously, 402 00:24:55,960 --> 00:25:01,000 Speaker 1: if you are reliant on something like satellite networking, then 403 00:25:01,280 --> 00:25:05,960 Speaker 1: that's going to introduce enormous paying. In fact, with satellite 404 00:25:06,000 --> 00:25:11,000 Speaker 1: connectivity really aren't going to be able to compete in 405 00:25:11,040 --> 00:25:16,880 Speaker 1: things like first person shooters because of the latency between messages. 406 00:25:16,880 --> 00:25:21,320 Speaker 1: I mean these satellites are in outer space, so it 407 00:25:21,359 --> 00:25:24,040 Speaker 1: does take a little bit longer for the data to 408 00:25:24,119 --> 00:25:27,879 Speaker 1: get between you and the satellite then if you were using, 409 00:25:28,240 --> 00:25:31,440 Speaker 1: you know, fiber optic cable, for example, and that can 410 00:25:31,480 --> 00:25:33,760 Speaker 1: be enough to make it impossible for you to play 411 00:25:33,920 --> 00:25:37,200 Speaker 1: the very fast paced twitch based games. You can still 412 00:25:37,240 --> 00:25:41,160 Speaker 1: play things like, uh, turn based Games, maybe even mmos 413 00:25:41,240 --> 00:25:44,440 Speaker 1: that kind of thing. But yeah, for the stuff that's 414 00:25:44,480 --> 00:25:48,400 Speaker 1: reliant on a very fast connection, uh, you really wouldn't 415 00:25:48,440 --> 00:25:53,560 Speaker 1: be able to to manage that. Anyway, that's the story 416 00:25:53,720 --> 00:25:57,040 Speaker 1: of paying. Maybe someday I'll do the story of Pong. 417 00:25:57,720 --> 00:25:59,840 Speaker 1: That was a terrible joke. Also, I have kind of 418 00:26:00,080 --> 00:26:02,200 Speaker 1: covered the story upon when I talked about the history 419 00:26:02,240 --> 00:26:05,320 Speaker 1: of Arcade Games. So it was a terrible dad joke 420 00:26:05,440 --> 00:26:08,199 Speaker 1: and it was moot so I apologize to each and 421 00:26:08,359 --> 00:26:10,880 Speaker 1: every one of you, but I hope you enjoyed this episode. 422 00:26:10,920 --> 00:26:13,880 Speaker 1: This look at what Ping is, where it came from, 423 00:26:13,920 --> 00:26:17,560 Speaker 1: why it has that name and what it means Um 424 00:26:17,600 --> 00:26:20,200 Speaker 1: just the one thing to keep in mind is that 425 00:26:20,240 --> 00:26:22,879 Speaker 1: you want the number to be low. The higher the number, 426 00:26:23,160 --> 00:26:26,720 Speaker 1: the greater the latency between you and the machine when 427 00:26:26,720 --> 00:26:29,840 Speaker 1: you do speed tests on your device, like if you've 428 00:26:29,840 --> 00:26:33,439 Speaker 1: ever wondered if there's an issue with your network and 429 00:26:33,520 --> 00:26:36,000 Speaker 1: you're you know, maybe things are taking a long time 430 00:26:36,040 --> 00:26:38,159 Speaker 1: to download or you're getting a lot of buffering and 431 00:26:38,280 --> 00:26:42,480 Speaker 1: streaming video and you do a speed test, it's essentially 432 00:26:42,520 --> 00:26:46,200 Speaker 1: a ping. Is What's going on. It's it's although there 433 00:26:46,200 --> 00:26:50,360 Speaker 1: are more involved speed tests that actually have a they 434 00:26:50,400 --> 00:26:55,040 Speaker 1: maintain a connection in order to get essentially an average 435 00:26:55,680 --> 00:27:01,080 Speaker 1: of network throughput, how how much data is being able 436 00:27:01,160 --> 00:27:04,240 Speaker 1: to pass between your computer and the network over a 437 00:27:04,240 --> 00:27:07,440 Speaker 1: given amount of time. But it's an extension of this 438 00:27:07,600 --> 00:27:11,200 Speaker 1: paying concept. Al Right, if you have suggestions for topics 439 00:27:11,240 --> 00:27:13,520 Speaker 1: I should tackle in future episodes of tech stuff, please 440 00:27:13,520 --> 00:27:15,440 Speaker 1: reach out to me. One Way to do that is 441 00:27:15,480 --> 00:27:18,639 Speaker 1: to download the I heart radio APP, navigate over to 442 00:27:18,760 --> 00:27:22,040 Speaker 1: the text stuff page on that APP and Click on 443 00:27:22,040 --> 00:27:24,879 Speaker 1: that little microphone icon that will let you leave a 444 00:27:24,960 --> 00:27:27,080 Speaker 1: voice message up to thirty seconds in linked for me. 445 00:27:27,720 --> 00:27:30,480 Speaker 1: Or you can pop on over to twitter and use 446 00:27:30,560 --> 00:27:34,000 Speaker 1: the handle text stuff hsw to. Send me a message 447 00:27:34,320 --> 00:27:43,560 Speaker 1: and I'll talk to you again really soon. Text stuff 448 00:27:43,680 --> 00:27:46,840 Speaker 1: is an I heart radio production. For more podcasts from 449 00:27:46,840 --> 00:27:49,919 Speaker 1: my heart radio, visit the I heart radio APP, apple 450 00:27:49,960 --> 00:27:52,720 Speaker 1: podcasts or wherever you listen to your favorite shows.