Выбрать главу

“Lost packets,” Caitlin said suddenly, sitting up straighter.

Kuroda sounded both intrigued and impressed. “Could be.”

At any moment, Caitlin knew, hundreds of millions of people are using the Internet. While doing so, their computers send out clusters of bits called data packets — the basic unit of communication on the Web. Each packet contains the address of its intended destination, which might, for instance, be the server hosting a webpage. But traffic on the Web almost never goes directly from point A to point B. Instead, it bounces around on multi-legged journeys, passing through routers, repeaters, and switches, each of which tries to direct the packet closer to its intended destination.

Sometimes the routing gets awfully complex, especially when packets are rejected by the place they were sent to. That can happen when two or more packets arrive at the same time: one is chosen at random to be accepted and the others are sent back out to try their luck again later. But some packets never get accepted by their intended destinations because the address they’ve been sent to is invalid, or the target site is down or too busy, and so they end up being lost.

“Lost packets,” repeated Kuroda, as if trying the notion on for size. Caitlin imagined he was shaking his head. “But lost packets just expire.”

And indeed they mostly do, she knew: each packet has a “hop counter” coded into it, and that counter is reduced by one every time the packet passes through a router or other device. To keep lost packets from clogging up the Web infrastructure, when a router receives a packet whose hop counter has reached zero, it erases the packet.

“Lost packets are supposed to expire,” Caitlin corrected, “but what if the packet is corrupted so that it no longer has a hop counter, or that counter doesn’t decrement properly? I imagine some portion of packets get corrupted like that, by faulty routers or bad wiring or buggy software, and, with trillions of them going out each day, even if only a very tiny proportion ended up with broken hop counters, that would still leave huge numbers kicking around forever, right? Especially if their intended destination simply doesn’t exist, either because the address has been corrupted along with the hop counter, or the server has gone offline.”

“You know a lot about networks,” Kuroda said, sounding impressed.

“Hey, who do you think set up the one in this house?”

“I’d assume your father…”

“Oh, he’s good at networking now,” she said. “I taught him. But really, he’s a theoretical physicist. He can barely operate the microwave.”

Kuroda’s chair squeaked. “Ah.”

She felt herself getting excited; she was on to something — she knew it!

“Anyway, there are probably always some … some ghost packets that persist long after they should have died. And think about that thing that happened in China recently: a huge, huge portion of the Web was cut off because of those power failures, or whatever. Hundreds of trillions of packets intended for China suddenly had no way to get to their destinations. Even if only a tiny fraction of those got suitably corrupted, it would still mean a huge increase in the number of ghost packets.”

“‘Ghost packets,’ eh?” Kuroda had brought a cup of coffee downstairs with him, and she heard it clatter; he must have just taken a sip. “Perhaps. Maybe a bug in some operating system or common router has been generating them for years under certain circumstances, for all we know — a benign bug that doesn’t inconvenience users might never have been noticed.”

He shifted in his chair, then: “Or maybe they aren’t immortal packets at all. Maybe this is just the normal ebb and flow of lost packets that will expire, and while they’re bouncing around trying in vain to reach their destination their time-to-live counters do decrement normally, but it’s the switch from odd to even counts with each handoff that causes them to flip from black to white in your perception. You’d still get as many as 256 permutations out of each doomed packet — that’s the maximum number of hops that can be coded for, because packets use an eight-bit field to store that value. But that’s still a goodly number of iterations for a cellular-automata rule.”

He paused, then blew out air noisily; Caitlin could almost hear him shrug.

“But this is way out of my area,” he continued. “I’m an information theorist, not a network theorist, and—”

She laughed.

“What?” said Kuroda.

“Sorry. Do you ever watch The Simpsons?”

“No, not really. But my daughter does.”

“The time Homer ended up becoming an astronaut? These two newscasters are talking about the crew of a space mission. The first guy says, ‘They’re a colorful bunch. They’ve been dubbed “The Three Musketeers,” heh heh heh.’ And the other guy — it’s Tom Brokaw — says, ‘And we laugh legitimately: there’s a mathematician, a different kind of mathematician, and a statistician.’”

Kuroda chuckled then said, “Well, actually, there are three types of mathematicians: those who can count, and those who can’t.”

Caitlin smiled.

“But, seriously, Miss Caitlin, if you go into a career in maths or engineering, you will have to choose a specialty.”

She kept her voice deadpan. “I’m going to focus on the number 8,623,721 — I bet nobody’s taken that one yet.”

Kuroda made his wheezy chuckle again. “Still, I think we need to talk to a specialist. Let’s see, in Israel it’s … hey, it’s only 8:00 p.m. She might be around.”

“Who? Anna?”

“Exactly: Anna Bloom, the network cartographer. I’ll IM her to see if she’s online. Does this new computer have a webcam?”

“I suspect my dad didn’t think I’d have much use for one,” she said gently.

“Well, he — ah! He’s more of an optimist than you think, Miss Caitlin. There’s one right here, sitting on top of the tower.” He used the keyboard for a few moments, then: “Yup, she’s at home and online. Let me get a webcam call going…”

“Konnichi wa, Masayuki-san!” said the same voice Caitlin had heard on the speakerphone the night she’d seen the Web for the first time. But the woman immediately switched to English, presumably when she saw that he was with a Westerner. “Hey, who’s the sweet young thing?”

Dr. Kuroda sounded slightly embarrassed. “This is Miss Caitlin.” Of course, Anna hadn’t seen her when they’d spoken before.

Anna sounded surprised. “Where are you?”

“Canada.”

“Oooh! Is it snowing?”

“Not yet,” said Kuroda. “It’s still September, after all.”

“Hi, Caitlin,” Anna said.

“Hello, Professor Bloom.”

“You can call me Anna. So, what can I do for you?”

Kuroda recounted what they’d dreamed up so far: legions of ghost packets floating in the background of the Web, somehow self-organizing into cellular automata. Then: “So, what do you think?”

“It’s a novel idea,” Anna said slowly.

“Could it work?” asked Caitlin.

“I … suppose. It’s a classic Darwinian scenario, isn’t it? Mutant packets that are better able to survive bouncing around endlessly. But the Web is expanding fast, with new servers added each day, so a slowly growing population of these ghost packets might never overwhelm its capacity — or, at least, it clearly hasn’t yet.”

“And the Web has no white blood cells tracking down useless stuff,” said Caitlin. “Right? They would just persist, bouncing around.”

“I guess,” said Anna. “And — just blue-skying here — but the checksum on the packet could determine if you’re seeing it as black or white; even-number checksums could be black and odd-number ones white, or whatever. If the hop counter changes with each hop, but never goes to zero, the checksum would change, too, and so you’d get a flipping effect.”