What's the difference between RDP vs VNC?
What's really the difference between the RDP and VNC?
They both provide the same function and features?
RDP is semantic. The RDP is aware of controls, fonts, and other similar graphical primitives. This means that when rendering a screen across a network, this information is used to compress the data stream significantly. For instance, if you know that this region of the screen if occupied by a button, with the color grey, then you don't need to send an image of the button across the network, but merely information such as location of this button, size and color.
VNC is "dumb" in this respect, and largely functions by sending the actual images across the network.
RDP is tightly coupled to the Windows platform whereas VNC is available for most platforms. RDP is also seen as far more performant than VNC, due to the semantic advantage.
RDP stands for Remote Desktop Protocol, and is a proprietary protocol developed by Microsoft. (More from Wikipedia)
VNC stands for Virtual Network Computing, and is platform-independent. (More from Wikipedia)
Although I've seen the terms interchanged, RDP is usually used to refer to connecting to a Windows PC. Windows PCs have the RDP built into them, but there are clients for both Mac and Linux. Linux users can use rdesktop to connect to a Windows computer.
VNC requires a separate client running on a PC, but is platform-independent, so I can have a VNC client on my PC and connect to a Linux box running a VNC server. VNC programs can usually inter-connect with one another, and often include other features that RDP doesn't, like file-sharing/transfers and chatting with the person on the other computer.
Our very own Jeff Atwood even has a Coding Horror article from 2005 about the two protocols.
Adding a bit of information on other answers which I found while doing a research,
RDP,
- RDP stands for Remote Desktop Protocol. It is a proprietary protocol built by Microsoft to let users to graphically control remote computer.
- RDP logs in a remote user to the server computer by effectively creating a real desktop session on the server computer including a user profile.
- RDP works in the same way as if the user had logged in to the physical server directly.
- RDP can support multiple remote users logged in to the same server that completely unaware of each other.
- RDP supports multiple monitors, if the client has them
VNC,
- VNC stands for Virtual Network Computing. It is an open platform independent graphical desktop sharing system designed to remotely control another computer.
- VNC follows the older model of simply showing whatever is on the screen with no forced logins required.
- VNC connects a remote user to the computer itself by sharing its screen, keyboard and mouse.
- Consequently, when several users (including the one operating the real physical monitor and keyboard) connect to the same server they see the same thing and they type on the same keyboard.
- VNC has security implications; if you remote into a machine that an Administrator is logged into, you'll effectively be an Administrator. And if you're both trying to use the computer at the same time, it's even more fun!
Similarities between both,
- Both RDP and VNC technologies require client side and server side software to support communication protocol.
- Both technologies use direct peer-to-peer communication. It means that the local user computer directly connects to the remote computer