Server A does this:
world.Export("byond://B:1234?Hello!", null, 1)
Server B receives it in /world/Topic, returns a reply, and thats that.
Lets say server B has something happen that it wants to let A know about
world.Export("byond://A:1234?player_death=billybobbyjoe", null, 1)
This will result in a second socket being opened.
I suggest that the existing socket be used (the one A initiated for A->B communication).
Given that the port number is sent through the sockets I don't see it being too far of a difficulty to implement.