public:it:freerdp

这是本文档旧的修订版!


FreeRdp

  • 基于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 字段中指定了最大虚拟通道块大小
  • RDP连接示意

RDP客户端RD会话主机初始化连接[1]X.224 Connection Request PDUPDU:(protocol data unit)协议数据单元[2]X.224 Connection Confirm PDU交换基本设置[3]Multipoint Communication Service (MCS)Connect Initial PDU with GCC Conference Create Request[4]MCS Connect Response PDU withGCC Conference Create Response通道连接[5]MCS Erect Domain Request PDU[6]MCS Attach User Request PDU[7]MCS Attach User Confirm PDUloop[多个频道, 本例为6个][8]MCS Channel Join Request PDU[9]MCS Channel Join Confirm PDURDP安全起步[10]Security Exchange PDU交换安全设置[11]Client Info PDU可选:自动侦测网络质量[12]Auto-Detect Request PDU(s)[13]Auto-Detect Response PDU(s)授权许可[14]License Error PDU - Valid Client可选:多通道引导[15]Initiate Multitransport Request PDU[16]Initiate Multitransport Response PDU交换功能[17]Demand Active PDU[18]Confirm Active PDU连接完成连接完成阶段并不是固定的,消息流具体详见[MS-RDPBCGR] 章节 1.3.1.1[19]Synchronize PDU[20]Control PDU - Cooperate[21]Control PDU - Request Control[22]zero or more Persistent Key List PDU[23]Font List PDU[24]Synchronize PDU[25]Control PDU - Cooperate[26]Control PDU - Granted Control[27]Font Map PDURDP 连接序列说明(无中间网关) V0.1.0 by weiyongjiu

  • public/it/freerdp.1644547886.txt.gz
  • 最后更改: 2022/02/11 10:51
  • oakfire