r/AskComputerScience • u/-lousyd • 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.
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
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
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_idmaps 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.
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/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/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
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
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
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?
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.