不同端口上 TcpClient 上的多个流?

Multiple streams on TcpClient on different ports?

我对 TcpClient class 有点困惑。我想连接到我的服务器并有 2 个流。一个 SSL 和一个常规的非安全 TCP。

所以我目前是这样连接的:

await _tcpClient.ConnectAsync(address,port);
IsConnected = true;
_networkStream = _tcpClient.GetStream();
_sslStream = new SslStream(_tcpClient.GetStream());

问题是我想在不同的端口上使用我的 ssl 数据。那么我是否需要两个 TcpClient 实例,一个用于安全,一个用于非安全?或者我可以用这个 class 在不同的端口上有多个流。我很困惑它是怎么做到的?我真的很困惑这是如何正确设置的。

是的,您将需要两个单独的 Socket 实例。您 可以 通过 TcpClient 的两个实例 - 我个人倾向于使用原始套接字,但这取决于您。