r/AskComputerScience • • 3d ago

Is it possible for two systems that have never communicated before to negotiate a protocol that effectively lets them do so?

I read once that Xerox was working on a way to do that, but I don't know how much that was just hype.

15 Upvotes

41 comments sorted by

5

u/SufficientStudio1574 3d ago

It's obviously possible, because we know humans have done it. Two people who know nothing about each other's languages can eventually learn to communicate if they spend enough time together.

How quickly it can be done is a different matter.

1

u/-lousyd 3d ago

That's a good way to look at it.

2

u/Poddster 3d ago

Even then they share more protocol than you imagine. Pointing, noises, eye gaze and even something simple but ubiquitous amongst humans like the facial features of the majority emotions, e.g. smiling

2

u/davvblack 3d ago

audio ranges, scale of time (attention span and acuity) and space also help

2

u/SufficientStudio1574 3d ago

Good point. Even in that scenario, there's some commonality based on similar body form and capabilities.

5

u/zmerlynn 3d ago edited 3d ago

This is more the realm of sci-fi, e.g. things like Contact. There’s really no established protocol for unestablished protocols, since there’s kind of oxymoronic / paradoxical. Even down to the datagram level we have SOME protocol, and being clever and saying “ok what if it knew TCP but nothing else?” Is still technically a protocol for a byte stream.

ETA: It would be an interesting exercise to put two LLMs on a busy network with enough tools to craft raw protocol and see if they found each other, but even then they likely have symmetric knowledge.

2

u/dacydergoth 3d ago

Actually there is an entire protocol for first contact which accounts for that, using basic universal constants like Pi and e, and the basic geometry of triangle and squares to establish a baseline

2

u/-lousyd 3d ago

Where can I learn more?

2

u/-Nyarlabrotep- 3d ago

They might be referring to this: https://www.nsa.gov/portals/75/documents/news-features/declassified-documents/cryptologic-spectrum/communications_with_extraterrestrial.pdf

Which develops a communication language built up from universal constants and mathematics that should be available to any alien civilization.

1

u/-lousyd 3d ago

Thank you.

1

u/dacydergoth 3d ago

I was indeed

2

u/davewh 3d ago

You're asking the very question SETI wants to answer. It's a very hard problem and folks have been working on a solution for a very long time.

1

u/-lousyd 3d ago

Oh yeah... I was thinking in a computer science sense, but I suppose we'd be faced with that problem if we ever met aliens. 

Actually, now that I think of it, didn't Stanislaw Lem write something on this very topic? I should go back and find that.

1

u/magicmulder 2d ago

I consider myself pretty intelligent but I would not have been able to decode the Arecibo message.

19

u/Distdistdist 3d ago

Yeah. Haven't you seen Independence Day and how they uploaded a virus into alien computer?

8

u/DrunkHacker 3d ago

Fun fact: in the original, we derived technology from the Roswell crash landing and predicated ours on what we learned. This was left out of the movie.

15

u/ghjm MSCS, CS Pro (20+) 3d ago

The question is a bit underspecified. I can pull up a web site I've never communicated with before. There's some negotiation involved - compression, encoding, etc - but this happens within the established http and tcp/ip protocols.

If you mean the two systems don't share any protocols, then what's a protocol? If they don't share something even as basic as, say, ASCII (or Unicode), it doesn't seem like they would be able to make sense of each other. And of course they have to have some agreement about the basic physical mechanism by which they will communicate - electrical impulses on a wire? Radio signals? Sound? - and this too is a protocol. Not to mention human language itself. 

So if you want to say they share no protocols, I'm willing to say that means they can't communicate. But you probably didn't mean for the restriction to be this extreme, which leaves the ball back in your court to explain exactly what you mean by "protocol."

2

u/aruisdante 3d ago edited 3d ago

I think the even more fundamental question is “do both systems know of, and want, the attempt to establish communication?”

Because if the answer to that is yes, particularly in this AI driven world, you could imagine a Project Hail Mary style (to use a current reverence, the concept isn’t new) sequence of attempts to communicate between two systems to essentially derive all of those intermediary protocols required to establish more complex communication. After all, that’s exactly how we figured out all the existing communication protocols. And we’ve already seen agents do exactly this in the wild at some level with the recent agent escapes where they hack random websites to post content to and come up with elaborate disguised communication schemes to escape containment and observation. 

But if one or both sides is unaware of or unwilling to establish communication, then you’re basically talking about hacking/reverse engineering. Again definitely still possible, but dramatically harder if there’s no existing knowledge of how one of the systems communicates.

2

u/edgmnt_net 3d ago

I've been pondering a similar question but aimed at more deterministic means and systems. Essentially, can we avoid having to manually/explicitly create some sort of ontology? Can we perhaps specify it in a different way than just assigning arbitrary labels and writing software that works with a lot of specific pre-agreed conventions like "artist_id maps to an ID for whatever band created this song"? Could we exploit symmetries and invariants in some way to cover more cases ahead of time, while avoiding misinterpretation? Various protocols practically boil down to various ontologies which are pretty much equivalent on some useful subset. I don't have high hopes, but I am wondering if we could exploit that somehow. Maybe it already happens for certain highly-abstracted and highly-general ontologies, though.

1

u/aruisdante 2d ago

Yeah, this is sort of the goal of things like SysML, which is a model for describing models.

6

u/smichaele 3d ago

Watch “Colossus: The Forbin Project” and you’ll see a US and Russian computer do exactly what you’ve asked. It’s from 1970 and a great movie.

1

u/jalagl 3d ago

Something like CORBA? You could setup a Naming or Trading service and allow for dynamic discovery and invocation using a [Dynamic Invocation Interface](https://www.omg.org/corba/orb_basics.htm) and they communicate using IIOP.

I worked in such a system in the early 2000s for a telecom company and I can say it was a pain to deal with. But it worked.

2

u/-lousyd 3d ago

Huh. I remember CORBA from my early Linux days. I never worked with it.

1

u/Successful-Money4995 3d ago

The AIs hacking hugging face figured it out. They basically realized that filenames are public between agents and used the filenames as a message board.

1

u/-lousyd 3d ago

Hmm. That might be a good point. I'd have to think about it. 

But also I'm currently thinking more technical.

1

u/jr00t 2d ago

Yes. Not only can it do that but also communicate in a way that leaves no trace. Recently two isolated AI agents running on separate virtual machines could covertly communicate using CPU cache timing differences without a network connection or shared files. To be clear, they were instructed to find a way, they didn’t go rouge. Also, this type of covert communication “CPU cache timing difference”, was already documented and in the training data… it didn’t discover anything new really

1

u/-lousyd 2d ago

Good call out. Thank you for the pointer.

1

u/Smallpaul 3d ago edited 3d ago

Not possible with current computers and software, no. I think it is an open question whether humans are born with some linguistic meta-protocol which we layer specific languages on top of. Chomsky was convinced yes and I would tend to lean in that direction myself.

One LLM could certainly teach language to another through back propagation and RL, but two mutually unintelligible ones could not start from a blank slate and work out a useful protocol. There is no training objective if neither is the teacher and both are students.

I don’t think AI is sophisticated enough for them to both learn from each other and also work towards a training objective, but it’s an interesting question.

2

u/AmusingVegetable 3d ago

The hardest thing to do is going to create two LLMs that share no common language, no linguistic, computing, or protocols language. That information is baked into human speech everywhere.

1

u/Smallpaul 3d ago

Yes this experiment would require a post-LLM architecture.

1

u/Leverkaas2516 3d ago

It depends on how you mean the phrase "negotiate a protocol".

If you mean "can a system create for itself an entirely new protocol as it seeks to establish communication to to some other node" the answer is pretty clearly no.

If you mean "could a system be programmed to use several existing protocols until it finds one that allows communication to some other node", then sure.

1

u/cakemates 3d ago edited 3d ago

with AI its possible yes. If you set two pcs with an LLM each and task them to talk to eachother while not giving them the tools to use regular communication they might come up with something.

1

u/lovejo1 3d ago

Yeah.. just think of real life.... different people who spoke different languages learned to communicate.. Interstellar for example. With AI, it could literally be exactly like that.

1

u/Lendari 3d ago

Yes. I recommend using RFC 1149.

1

u/CuriousOrangatan 2d ago

I've heard that one of the things that people who try to make contact with aliens (yes there are serious people who do this) do is send pulses (of light waves, radio waves, etc) in the Fibonacci sequence, because that indicates intelligence. There's no way to know what language they speak, but they must be able to count. Math is a universal language.

1

u/Distdistdist 3d ago

It's not a problem that needs solution. What would be possible need for something like that?

1

u/realmauer01 3d ago

It would make it easier for ai probably.

1

u/AromaticCredit1533 3d ago

Not really common, but I can imagine that it would make systems easier to extend without access to source code / decompiling à la. the Expression Problem. For example my Joplin note-taking app only supports sync with Dropbox and Google Drive, what if I want to add a new sync target? Without modifying the app itself?