public void SetConnection(NetworkInterface networkInterface)
    {
        if (networkInterface == null)
        {
            throw new System.ArgumentNullException("Can't connect to null network interface", nameof(networkInterface));
        }

        ConnectToInternal(networkInterface);
        networkInterface.ConnectToInternal(this);
    }