internal TunnelConnectionHandle(TunnelSocketContext socketContext)
 {
     SocketContext = socketContext ?? throw new ArgumentNullException(nameof(socketContext));
 }
 protected TunnelConnection(TunnelConnectionHandle handle)
 {
     _socketContext = handle.SocketContext ?? throw new InvalidOperationException("Invalid tunnel handle.");
 }