У нас есть два или более экземпляров («Узлы») программы, соединяющейся друг с другом через TCP. Мы реализовали это следующим образом:
// 1. Connect
TcpClient connection;
while(true){
try
{
connection = new TcpClient("localhost", ((Port)Port).Value);
}
catch(SocketException/* Exception*/)
{
continue;
}
break;
}
// use the connection
Это происходит параллельно. Узел, который подключается первым, считается родителем узла, к которому он подключается. Мы хотим использовать это свойство для создания связующего дерева.
Как мы узнаем, к какому узлу подключился первым, видя, что единственный способ подключиться - это вызвать конструктор TcpClient? Где найти дополнительную информацию о соединении?
Обратите внимание, что в целях тестирования мы используем несколько портов на одной машине. Он должен работать между разными машинами через Интернет.