这是本文档旧的修订版!
FreeRdp
- Official site: freerdp.com
- Github repo: https://github.com/FreeRDP/FreeRDP/
- API documentation: https://pub.freerdp.com/api/
- Information regarding the Microsoft Open Specifications can be found at: https://www.microsoft.com/openspecifications/
RDP 协议解析
- 基于TCP连接,标准没有规定服务端端口,默认端口为3389
- 消息流里的多字节数据统一使用小头字节序(little-endian)
消息结构
静态虚拟通道消息结构
- tpktHeader (4 字节): TPKT 头, 详见 [T123] section 8
- x224Data (3 字节): X.224 Class 0 Data TPDU, 详见 [X224] section 13.7.
- mcsPdu (长度可变):
- securityHeade (长度可变):可选,取决于服务端选择的加密级别与算法
- channelPduHeader (8 字节) : CHANNEL_PDU_HEADER 结构
- virtualChannelData (长度可变): 此通道具体数据,该字段的大小不得大于 CHANNEL_CHUNK_LENGTH (1600) 字节,除非在 Virtual Channel Capability 的 VCChunkSize 字段中指定了最大虚拟通道块大小