Ubuntu TigerVNC vs. RDP: Key Differences
TigerVNC is a high-performance VNC (Virtual Network Computing) server optimized for Linux, while RDP (Remote Desktop Protocol) is a Microsoft-developed protocol commonly accessed via xrdp (an open-source RDP server for Linux). Below is a detailed comparison of their core aspects:
1. Protocol & Core Technology
- TigerVNC: Built on the RFB (Remote Frame Buffer) protocol, it transmits raw pixel data from the server to the client. This approach is simple but bandwidth-intensive, making it less efficient for slow networks.
- RDP (via xrdp): Uses Microsoft’s proprietary RDP protocol, which employs instruction replay (sending screen changes as commands rather than raw pixels) and bitmap caching. This reduces bandwidth usage significantly, especially for static or slowly changing content.
2. Performance & Bandwidth Efficiency
- TigerVNC: Performs well in local or high-bandwidth networks (e.g., LANs) but struggles with latency or low-bandwidth connections (e.g., DSL). High dynamic content (e.g., video playback) can cause noticeable lag.
- RDP (xrdp): Optimized for low-bandwidth scenarios (e.g., 10Mbps+). Its instruction-based transmission and compression algorithms (e.g., H.264/H.265 support in modern implementations) ensure smoother performance over slower links. For example, RDP can deliver 1080p video at lower bitrates than TigerVNC.
3. Functionality & Features
- TigerVNC:
- Basic functionality: Shares the existing desktop (single session) or creates virtual desktops.
- Limited extras: No native support for audio/video redirection, printer sharing, or drive mapping. Advanced features require third-party tools or paid versions.
- RDP (xrdp):
- Rich feature set: Supports audio/video redirection (e.g., playing YouTube videos remotely), printer sharing (local printers accessible on the remote desktop), drive mapping (local drives appear on the remote system), and multi-monitor seamless switching (spanning the desktop across multiple monitors).
- Seamless integration: Works with Windows clients to provide a near-native experience.
4. Security
- TigerVNC: Default unencrypted. All data (including passwords) is transmitted in plaintext, making it vulnerable to eavesdropping. Security requires additional setup (e.g., SSH tunneling to encrypt traffic).
- RDP (xrdp): Encrypts traffic by default using TLS (Transport Layer Security). This ensures that passwords and data are protected during transmission, though xrdp’s encryption strength depends on the underlying TLS configuration.
5. Cross-Platform Compatibility
- TigerVNC: Highly cross-platform. Clients are available for Windows, macOS, Linux, Android, and iOS. It is the go-to choice for accessing Linux servers from non-Windows devices.
- RDP (xrdp): Excellent cross-platform support. Windows has a built-in RDP client (Remote Desktop Connection), while macOS, Linux, and mobile devices have third-party clients (e.g., Remmina, Microsoft Remote Desktop). However, some advanced Windows-specific features (e.g., bitmap caching) may not work perfectly on non-Windows clients.
6. Ease of Setup & Configuration
- TigerVNC: Moderate complexity. Requires manual installation (
sudo apt install tigervnc-standalone-server), password setup (vncpasswd), and configuration of the desktop environment (editing ~/.vnc/xstartup). Virtual sessions need additional tweaks (e.g., creating a systemd service for autostart).
- RDP (xrdp): Simpler setup. Installs with a single command (
sudo apt install xrdp), automatically detects the default desktop environment (or lets you specify one via ~/.xsession). Fewer steps are needed to get started, making it ideal for beginners.
7. User Experience
- TigerVNC: Feels like a remote “window” into the server. Operations can feel laggy, especially for dynamic content. Best suited for users who prioritize basic graphical access over performance.
- RDP (xrdp): Provides a more fluid, local-like experience. The instruction-based protocol reduces latency, and features like audio/video redirection make it feel closer to using a physical machine. Ideal for users who need a responsive remote desktop.
When to Choose Each
- TigerVNC: Best for accessing Linux servers from non-Windows devices or lightweight temporary access where advanced features aren’t needed.
- RDP (xrdp): Best for most Windows users connecting to Ubuntu, frequent remote desktop use, or when advanced features (audio, printing, drive sharing) are required.