目錄
1 功能 |
2 優點 |
3 版本 |
4 RDP 6.0的新功能 |
5 第三方客戶端 |
7 外部連結 |
功能
- 多種顯示支持,包括8,15,16,24,32位色。
- 128位加密,使用RC4加密算法。(此為內定的加密方式;比較舊版的客戶端可能使用較弱的加密強度)
- 支持 TLS(Transport Layer Security,前身為SSL)。
- 聲音轉向(redirection)支持,用戶可以在遠程電腦運行有聲音的應用程式,但是將聲音導引至客戶端電腦來聽。
- 檔案系統轉向支持,用戶可在使用遠程電腦的過程中,取用本地(客戶端)電腦上的檔案系統。
- 印表機轉向支持,在使用遠程電腦時,可以使用本地(客戶端)電腦上的印表機輸出,包括直接連在客戶端電腦的印表機或網路共享印表機。
- 通信連線埠轉向支持,遠程電腦上的應用程式可以使用本地(客戶端)電腦上的串列連線埠或平行連線埠。
- Windows 的剪貼簿數據可以在遠程及本地電腦之間互通。
優點
與遠程桌面協定兼容的客戶端可在多種作業系統上運行,許多Linux系統上甚至將RDP客戶端功能列為核心功能之一。此外,用戶也不一定要有寬頻網路才能連上他們的遠程電腦桌面,RDP即使在56K撥接網路下,都還可以提供每秒更新五到六個畫面的效果。
版本
RDP 的設計建構於國際電信聯盟T.share協定(又稱為 T.128),發展以來各個版本大致為
- 4.0版:這是第一個版本。隨同終端機服務(Terminal Services)出現在Windows NT 4.0 Server、Terminal Server Edition。
- 5.0版:由Windows 2000 Server提供。加入了許多新功能,包括列印到客戶端印表機,針對網路頻寬使用的改進等等。
- 5.1版:由Windows XP Professional(XP Home不支持服務端功能)提供。支持24位顏色顯示及聲音的支持。
- 5.2版:由Windows Server 2003提供,包括了console mode connections,session directory,以及客戶端資源的取用。Windows CE 5.0及6.0均有這個版本的客戶端部分,但Windows CE沒有作為服務端的功能。
- 6.0版:必須要有Windows XP SP2 或 Windows Server 2003 SP1/SP2 或 Windows XP Professional x64 Edition。包括許多重大改進,最值得注意的是可以從遠程使用單一應用程式,而非整個桌面;以及32位顏色顯示的支持。
- 6.1版:必須要有Windows Server 2008 或 Windows Vista SP1 或 Windows XP SP3(或SP2之後安裝過KB952155的更新檔)。
- 7.0版:由Windows Server 2008 R2或Windows 7引入。該版本的客戶端可以是Windows XP SP3、Windows Vista SP1/SP2,但須安裝KB969084。該版本的客戶端不支持Windows Server 2003 x86和Windows Server 2003 / Windows XP Professional x64 editions。
- 7.1版:必須要有Windows 7 SP1或Windows Server 2008 R2 SP1,主要增加了RemoteFX的功能。
- 8.0版:由Windows 8或者Windows Server 2012引入。Windows 7 SP1和Windows Server 2008 R2 SP1要支持該協定須先安裝KB2574819,再安裝KB2592687。
- 8.1版:由Windows 8.1和Windows Server 2012 R2引入。Windows 7 SP1和Windows Server 2008 R2 SP1要支持該協定須先安裝KB2574819、KB2857650,再安裝KB2830477。之後最好再安裝KB2913751。
-10.0版:必須要有Windows 10。
新功能
- 遠程應用程式:客戶端電腦上特定檔案格式的相關應用程式可以在遠程電腦上。
- 無縫隙視窗:在客戶端電腦上可以直接運行在遠程電腦上的應用程式。(不用先連上整個遠程電腦的桌面) - 終端伺服器網關:可以使用 front-end IIS server,經由https,來連線 back-end Terminal Services servers。
- 支持遠程Windows Aero畫面
- 支持遠程的 Windows Presentation Foundation 應用程式:兼容的客戶端如果支持 .NET Framework 3.0 就能在本地電腦上顯示完整的 Windows Presentation Foundation 效果。
- 周邊設備轉向經過重新設計,可以使用更多樣的設備。
- 經由 WMI(Windows Management Instrumentation),所有終端服務都可以configure,都可 scriptable。 - 針對客戶端做頻寬調整。
- 支持32位顯示。
- 支持雙顯示器,包括寬螢幕顯示。
- 支持IPv6協定,可以工作在純IPv6的TCP/IP網路環境中。
第三方客戶端
mRemote
MultiDesk
Remote Desktop Organizer
Terminals
另見
Terminal Services
Citrix MetaFrame
Independent Computing Architecture
X視窗系統
VNC
NX technology
rdesktop
協定
RDP:可靠數據協定(RDP:Reliable Data Protocol)
RDP 是一種面向連線的傳輸協定,其主要設計來為主機監控應用程式如下載 / 上傳以及遠程調試進行有效的大批數據傳輸。RDP 嘗試只提供那些必需的服務,達到操作有效、尺度小的效果。其主要功能如下:
RDP 為每個傳輸層連線連線埠提供一個全雙工通信信道;
RDP 嘗試可靠傳送所有用戶信息,一旦傳送失敗,將向用戶報告錯誤。RDP 擴展 IP 數據報服務使之能夠可靠傳送;
RDP 嘗試偵測並刪除所有損壞的和重複的數據段,它在數據段頭使用校驗碼及序列號實現這一過程;
RDP 隨意地提供數據段序列傳送,必須在連線建立時就指定數據段的序列傳送;
RDP 會回響確認序列之外的數據段,這會釋放傳送端的資源。
與 TCP 相比,RDP 所支持的功能更為簡單。RDP 的流控制,緩衝以及連線管理模式都是相當簡單的。RDP 的目標就是能夠簡單有效地執行並能適合一系列的應用程式。
RDP 函式集也可能是子集從而進一步減小特殊執行的大小。例如,一台向其它主機請求下載的目標處理器可能執行一個僅支持默認的開放式函式和單連線的 RDP 模組。這個模組也可能選擇不執行非順序回響確認。
協定結構
RDP 第二版協定頭結構(見附圖)
Control flags ― 8個控制位劃分如下:
SYN:SYN 位表示當前為同步段。
ACK:ACK 位表示協定頭有效的承認序號。
EACK:EACK 位表示當前為擴展承認欄位。.
RST:RST 位表示該數據包為復位欄位。
NUL:NUL 位表示該數據包為空欄位。
0:表示該欄位的值必須設定為0。
Ver no:版本號,當前版本號為2。
Header length ― RDP 協定頭長度。
Source Ports ― 源地址,識別通信發生的過程。網路訪問協定頭中,源地址和目標地址的連線埠標識符的結合完全限定了連線並形成連線標識符。如此 RDP 可用於區分兩台主機間的多連線。
Destination Ports ― 目標地址,識別通信中的目標過程。
Data Length ― 該欄位中的數據長度(八位),該數據長度不包括 RDP 協定頭。
Sequence number ― 該欄位的序列號。
Acknowledgement number ― 如果 ACK 位設定在協定頭部,這就是欄位序列號,即該欄位傳送端最後正確按序列接收的順序。一旦連線成功,就應該傳送該欄位。
Checksum ― 檢驗和確保完整性。
Variable Header Area ― 用於傳輸 SYN 和 EACK 欄位的參數。
其他信息
遠程桌面協定是基於和 T-120 系列協定標準相同的擴展。多聲道能夠協定允許單獨的虛擬信道,套用於攜帶的演示文稿數據、 串列設備的通訊、 授權信息、 高加密的數據 (鍵盤,滑鼠活動) 等等。因為 RDP 是核心 T.Share 協定的擴展,多個其他功能將保留在 RDP 中如:體系結構支持多點 (多方會話) 所需的功能的一部分。多點數據傳遞允許從傳送中"實時"到多個方而不必將相同的數據傳送到每個會話單獨 (例如,虛擬白板) 應用程式的數據。
在 Windows 終端伺服器此第一版本中但是,我們都集中在提供可靠、 快速點對點 (單個會話) 通信。只有一個數據通道將使用在初始版本的終端伺服器 4.0 但是在未來的產品中 RDP 的靈活性提供充足的空間的功能。
Microsoft 決定實現 RDP 連線以便 Windows NT 終端伺服器提供服務。原因是它提供了非常可擴展基礎從中生成很多更多的功能。RDP 提供 64,000 單獨的通道的數據傳輸。但是,當前傳輸活動僅使用單個通道 (用於鍵盤、 滑鼠和演示文稿數據)。
而且,RDP 旨在支持許多不同類型的網路拓撲 (例如 ISDN、 POTS 和許多 LAN 協定 (如 IPX、 NetBIOS、 TCP/IP,等)。當前版本的 RDP 將只運行通過 TCP/IP,但帶有客戶反饋其他協定支持可能會添加在將來的版本。
在傳送和接收通過 RDP 堆疊數據所涉及的活動本質上是常見 LAN 網路今天七層 OSI 模型標準相同。從應用程式或服務以進行傳輸的數據被通過向下該協定堆疊 sectioned、 定向到一個通道 (通過 MCS)、 加密、 包裝、 加圖文框、 打包到網路協定和最後定址和通過網路傳送到客戶端。返回的數據相同方法只適用於反向,與數據包被去除的它的地址,然後打開解密,依此類推直到數據呈現給應用程式使用。在第四個和第七層,其中數據是加密、 自動換行和加圖文框、 定向到一個通道和確定優先權別之間進行協定堆疊修改的關鍵部分。
一個應用程式開發人員的要點是中使用 RDP, Microsoft 具有抽象出處理協定堆疊的複雜性。這使他們只需編寫乾淨的、 設計完善的行為良好 32-位應用程式,然後由終端伺服器和 $ 其客戶端連線實現 RDP 堆疊負責的其餘部分。
有關應用程式在終端伺服器上的互動方式和內容時要注意的一個 Windows 終端伺服器的基礎結構為開發應用程式的詳細信息,查看"最佳化應用程式的 Windows NT Server 4.0,終端伺服器版"白皮書。 對多點通信服務 (MCSMUX)、 通用會議控制項 (GCC)、 Wdtshare.sys 和 Tdtcp.sys 是值得討論 RDP 堆疊實例中的四個組件。MCSmux 和 $ GCC 是國際電信聯盟 (ITU) T.120 系列的一部分。MCS 由組成兩種標準: T.122,定義了多點的服務和 T.125,指定數據傳輸協定。MCSMux 控制項通道 (通過在協定內的預定義虛擬信道多路復用數據) 的工作分配、 優先權別和傳送的數據的分段。 它實質上是提取到從該 GCC 的角度來看的單個實體的多個 RDP 牌疊。GCC 負責管理這些多個通道。在 GCC 允許創建和刪除的會話連線和 $ 通過 MCS 所提供的控制資源。每個終端伺服器協定 (當前,支持唯一的 RDP 和的 Citrix ICA) 將具有一個協定堆疊實例載入 (等待連線請求一個偵聽程式堆疊)。終端伺服器設備驅動程式協調並管理 RDP 協定活動,是由組成的較小的組件的 UI 傳輸、 壓縮、 加密、 幀和等上 RDP 驅動程式 (Wdtshare.sys) 和傳輸驅動程式 (Tdtcp.sys) 將打包到基礎協定網路協定,TCP/IP。
RDP 被開發的完全獨立於此案例的 TCP/IP 中其基礎的傳輸堆疊。RDP,正在完全獨立於其傳輸堆疊,我們可以將其他網路協定的其他傳輸驅動程式添加為客戶需要為它們的方法很少或沒有對基礎的協定部分的重大更改隨增長。這些是 RDP 的性能和網路上 extendibility 的主要元素。