VNC(Virtual Network Computing):
他使用的技術是RFB(Remote Frame Buffer遠程幀緩沖)協議的顯示畫面分享,他可以做到與操作系統無關,可跨平臺,因為他的工作原理就是把圖像在本地繪制好之后通過遠程發送過客戶端進行解碼顯示。因此對帶寬要求會比較高.會話方面來說是session共用,這就比如你需要遠程協助某個人,做屏幕共享帶來了天生的優勢。但也會有安全隱患,比如此時正好是Admin正在使用windows,此時你VNC過去,就共同可以使用整個Windows
RDP(Remote Destkop):
大部分Windows都支持此協議,可以遠程接入操作桌面,跟VNC不同的是,他對客戶端的要求比較高,他需要客戶端自己完成繪制的任務,即他會通過帶寬把繪制指令通網絡發送給客戶端,由客戶端自己進行繪制,因此對帶寬要求會比較低。同時對于session本身來說,RDP他會給你提供一個獨立新的session,這對多用戶其實是有好處的,大家都是無感的,所以這其實也是RDP Server端被Windows獨占的原因(非Windows Home版以上的用戶都會集成自帶RDP Server ,他需要內部去解析維護獨立session. 當然RDP Client端的平臺是很多的,他們都可以用這些客戶端去連接Windows的RDP Server
再來說下這兩者的網絡連接方式,他們都是采用的peer-to-peer網絡連接,他表示了local PC和remote PC會采用直連的方式。如果此時正好有防火墻擋在他們之間,你可以借助gateway或者jump server的方式來做跳轉。但是這個技術就和我們平常用的屏幕共享screen sharing的不同,后者是直接讓local和remote都連接到他們自己的服務器進行共享。很多遠程屏幕共享都會采用VNC的技術,但不會使用VNC的全部,比如剛剛提到的peer to peer直連,這些屏幕共享提供商往往會提供一個中央服務器來建立兩者