![]() A total of 3 of these special TCP packets are sent. When these conditions are met, Royal TSX starts sending keep-alive packets. The session is idle for a couple of seconds (around 45 seconds).The Remote Desktop (RDP) host you're connected to is behind the VPN, so RDP traffic flows over the VPN network interface.You're connected to a VPN using the VPN client built into macOS.You're using at least macOS 10.15 Catalina (10.15.1 also suffers from the same bug).Here's a summary of the circumstances required for the problem to occur: When the connection is busy though, for instance when you're using the keyboard or mouse to interact with the session or when the remote side sends screen updates, no keep-alive packets are sent and the connection works properly, even through a VPN. Without them, there's no way for Royal TSX to know if the connection is alive or broken while idle. These keep-alive packets are very useful to determine the connection's state while it is idle. If there is no client-side interaction and no server-initiated traffic this can keep the connection open indefinitely although it has already been broken for minutes, hours or even days! This results in broken connections staying open for way longer than in Royal TSX. Microsoft Remote Desktop on the other hand doesn't send keep-alive packets. That means that when you unplug your ethernet cable, Royal TSX will notice this change in connectivity within a few seconds and close the connection. This ensure that the connection can "fail fast" instead of appearing to still be connected while the underlying connection has already been lost. So, this behavior is only relevant for connections that are idle (no client-side interaction and no server-initiated traffic). Royal TSX' FreeRDP plugin uses TCP keep-alive packets to determine if the connection is still alive when no other traffic is flowing at the moment. There appears to be a bug since macOS 10.15 Catalina that causes all TCP keep-alive packets to be dropped when connected via a VPN. We've published a small repro case for Apple and published the code here.A bug report has been submitted to Apple.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |