Melissa and Riley Discuss Network Mods

This scene was cut and re-added to The Galactic Now three times. In the end, I left it out because the book was already denser with technobabble than I wanted. I will admit that, as these types of passages occur in the book, I don’t think of them as mindless babble; there are no quantum flux capacitors or tachyon hyperdrives.

For writers, technobabble is generally a tool to help muscle a story through difficult spots that can’t be explained otherwise, which helps readers maintain their suspension of disbelief. Good, bad, or indifferent, that’s never the case in this story. Technobabble, when it occurs in The Assemblies of the Living series, is always speculation about how something might actually work if it were real. My hope is that readers will find it entertaining and possibly even thought-provoking.

This chapter, which eventually landed on 'the cutting room floor' takes a very high-level swipe at how the Remotes took over our computers and networks without setting foot on our planet. As I look at this, some parts aren't as clear as they could be, but since it was ultimately cut, I never did a final polish. The general ideas are there for anyone interested. It's kind of fun.

Note: There's an almost-a-spoiler in this, so you may want to read it after you're past chapter 24 of The Galactic Now. There's also a possibility that some of this may end up in book three.

*        *        *

"How's it going?"

Melissa looked up from her crowded workbench to see Riley approaching. “Better now,” she said. “Sorry about your rover.” She was in a corner nook, surrounded by a mountain of electronics.

“Eh, you never know what’s going to happen these days.” He looked around. “What are you up to?”

“Just chasing an idea,” she said. “A few of them. Nothing too exciting.”

She had been peering into the opened case of a computer, which was sitting on the floor. Oscilloscopes, multimeters, waveform generators, and a soldering iron, still hot, covered the workbench. “Looks like my timing’s not good.”

“I wouldn’t say that,” she said. “I’m finishing up here, anyway. I was taken with the idea of learning more about how the gravity control plane works, you know, now that the Remotes have taken over our gravity machines. I didn’t get far, but I stumbled across something that may be even more useful - in the immediate term, anyway.”

“Really? Like what?”

She waved a hand. “Technical minutiae.”

Riley pulled a chair forward and sat down. “Right up my alley.”

She gave him an appraising look and then shrugged, swiveling slightly to get a better look at the nearest monitor. “Odds are I’m not the only one looking into this,” she said, “but I haven’t heard of anything, so I started digging on my own. I’ve been intrigued by how the Remotes infiltrated our networks without breaking them - or impacting performance. A lot of our computers have been black-boxed, which means they’re somewhat opaque to us now - but not entirely. We can still sniff the bits that pass over the wires between them, and even open them up and probe the flow of electrical impulses across the boards - like I’m doing now. No one has been able to make sense of their data so far, including me. I’m not going to waste any more time on that.” She pointed to three desktop computers sitting on the floor. “So I decided that even if I can’t make sense of the data, maybe I can at least get an idea of their methods.”

Riley raised an eyebrow. “And you’ve made progress?”

“I think so. Nothing ready for peer review, but yeah.”

“Wow,” Riley said, genuinely impressed. “Anything you can share?”

“Sure. I’ve discovered the Remotes don’t have only one way of doing things - one trick that they rely on for everything. Depending on the scenario, they take a range of approaches when they commandeer equipment. Usually, they modify a computer’s software and firmware in a way that allows them to take control of it without interfering with its functionality. And when I say computer, I don’t just mean computers the way you usually think of them. They do the same with network components, too; switches, relays, routers, multiplexers; it doesn’t matter. If it’s got a CPU, they can take it over. So I wondered how they do it. This monitor here,” she said, pointing again, “is connected to a computer that’s never been on any networks - it hasn’t been black-boxed. The Remotes have never touched it. Physically, it’s the same as these others that have been black-boxed over here, but it operates differently. So, I started comparing them to see what the differences are.”

“And you found something?”

“You might say that. Let me talk networking for a minute. Our distributed networks are based on principles that began taking shape back in the 70s. They’re abstract models that describe how the various concerns of moving data from place to place can be done using nonproprietary protocols and standards. The aim was to bolster interoperability, and they work very well - obviously.

“There are several models, but the two most well-known are the Open Systems Interconnection model, which is older, OSI; and the Internet Protocol Suite. Today, I’m guessing most people would recognize the latter. Its most important protocols are TCP and IP; the Transmission Control Protocol and the Internet Protocol.

“It doesn’t really matter which model you look at; they’re both somewhat conceptual. They’re intended to be kind of, I don’t know, modular. You can pretty much slot any network-related components into either one as long as you adhere to the protocol.” She raised a hand and tilted it from side to side. “Kind of, anyway. But that’s not really the point. What’s more important is what the models do; they divide all the different tasks involved in making computers and networks work together into layers, like categories. It’s kind of hard to explain. The layers form a stack in a way that allows the protocols in higher layers to use the ones below them in a way that hides complexity. It’s a common principle. It involves abstraction and the separation of concerns. If you - I don’t know - wrote an application that sends text messages, you wouldn’t have to concern yourself with the physical computers that work in concert to deliver that message. On a typical computer, there would be an integrated circuit that connects to optical fiber or a copper cable, which would handle the low-level details of sending the actual data frames over the physical medium. As a programmer, you wouldn’t generally have to be concerned with that. It’s all part of the physical layer, the bottom layer. On top of that you have the data layer, which moves frames between nodes on a network. On top of that is the network layer, which moves packets across networks. You get the idea. The stacks keep building upward until you end up at the application layer. Some models use different names for the layers, but it’s basically the same concept across the board. It’s a little fuzzy, but by the time you get to the top layer, you can write programs that pretty much do anything you want, all the while, remaining blissfully unaware of all that complexity.” She motioned around the room. “It works swimmingly, as you can see.

“From what I’m seeing, the Remotes favor two approaches when they commandeer equipment.” She leaned forward for a closer look at the nearest monitor. “The low-level interfaces on this modified computer function identically to the ones on the unmodified computers. They’re functionally equivalent, which means that from the outside looking in, all the protocols work like they always have.” She leaned back. “Say you walk up to a food stand and order a tamale. Later, you go to a different food stand and order another. One of them might make their tamales from scratch; the other might buy them in 50 lb boxes. From your perspective, it doesn’t matter; the ordering process is the same - and you get a tamale. You don’t have to know what happens behind the scenes. That’s what’s going on with these computers. When one talks to another, or even when one component inside of them talks to another, the interfaces they use are unchanged, but the way they work inside - how they work - is completely different.

“I’ve been asking these computers to perform the same tasks. Not similar tasks; the same, exact, tasks. When they do, the results are identical but they use vastly different numbers of CPU cycles to get it done. There’s always a little variability, even between identical computers. It’s why I have a few of them here; they’re my control group. On the low-level tests, I’m seeing that these two identical, untouched computers typically stay within 1% of each other in terms of the time and clock cycles … again, for the very low-level stuff. But this one,” she said, pointing to a third computer as if fingering the perpetrator of a crime. “From a hardware perspective, it’s identical to the others. It looks the same, it acts the same, but it’s not the same. If you wrote a program and ran it on this computer, it would behave just like it would on any other, but internally, at just about every level, it would execute differently - not even close to the others. There’s nothing, not one detail of this machine that the Remotes can’t see or control.

“Then there’s the hardware. You might be wondering about the things they can’t change remotely; the physical stuff. For that, they do something else. They create facades that stand in front of the physical components and commandeer the messages that come in and out of them.” She looked around the room, trying to think of an example. “Back to the food stand,” she said. “What if both stands sell tamales, but their menus are different? For one, a tamale is item three, and for the other, it’s item four. That’s not a big deal, but it means that, as a customer, you have to order differently depending on which one you’re ordering from. In terms of computers - and interoperability - that’s not a scalable model. What if, suddenly, two more stands came up, and their menus were different too? Things would get more complicated for you as the customer. So, how do you remove that complexity? One way is to create a shared ordering counter that accepts orders for everyone. As a customer, you can go to that counter and order a tamale without knowing or caring what happens behind the scenes - you don’t even have to care which food stand fills the order. Whoever takes your order turns around and gets the tamale from the least-busy stand and then gives it to you. There,” she said, spreading her hands. “Problem solved. Now, you’re back to ordering anything you want from any food stand in the exact same way without worrying about the differences - ignoring the fact that not all tamales are created equal. That’s a different issue. So, even if fifty more stands popped up, nothing would change for you. The person taking the order would handle the complexity and you wouldn’t even know it. That’s abstraction. Silly as the example is, it’s not a bad illustration. It’s a core tenet of computer technology and it works for just about anything, software or hardware. For us, the biggest challenge is performance. The more levels of abstraction there are, the slower things tend to go. But, the Remotes are pretty good at it. The machines that have been black-boxed by the Remotes generally run better than the ones that haven’t, which is crazy. Go figure.”

She looked across the tangle of equipment. “These computers are not what they were, John, and the way they’ve been changed is beyond ingenious. The Remotes didn’t break anything; not the protocol stacks, not the hardware, nothing. They’re work-alike machines to the finest detail, but they are not the same. The Remotes replaced almost every piece and part without changing the whole - all from a bazillion miles away and without our help.” She looked up at him. “And people are still out there trying to break their cryptography. Good luck.”

“That’s serious sorcery,” Riley said.

“And how. What they’ve done here is insane. In fact, really, I’m done here. We’re not outmatched, John. That would suggest that we might ever have stood in the ring with these guys. That’s simply not the case.”

“Only one thing to do, then,” Riley said.

“What?”

“Lunch.”