pothosware / PothosCore

The Pothos data-flow framework
https://github.com/pothosware/PothosCore/wiki
Boost Software License 1.0
302 stars 48 forks source link

topology network iogress communication improvements #69

Open guruofquality opened 8 years ago

guruofquality commented 8 years ago

From @guruofquality on July 26, 2014 21:39

We need a better way to answer the question: Given a connection to two remote servers, determine a way that one remote server can talk directly to another.

Such consideration could help improve the following from Topology::createNetworkFlows

//If the bind environment is local, swap them to bind on the remote host.
//The reason for this swap, is that we dont know the local's external IP
//to which the remote host can connect to, so we just do the reverse.

Copied from original issue: pothosware/pothos-library#58

guruofquality commented 8 years ago

ProxyEnvironment::getPeeringAddress() API call could help here and simplify the Topology network flows logic: https://github.com/pothosware/pothos/commit/1c6dfe260eb239049bc70e0568042bb3de298c5a

This issue is now an enhancement to replace

auto bindIp = Pothos::RemoteClient::lookupIpFromNodeId(bindEnv->getNodeId());

with this

auto bindIp = bindEnv->getPeeringAddress();