rdp算法
❶ RDP桌面协议
远程桌面协议(RDP)是一种多通道的通信协议,允许用户通过客户端(本地电脑)连接到提供微软终端服务的服务器端(远程电脑)。Windows系统普遍内置了RDP客户端,其他操作系统如Linux、FreeBSD和Mac OS X也有相应的软件支持。RDP的主要功能包括:
- 多种显示支持,包括8, 15, 16, 24, 和32位色彩。
- 128位加密,使用RC4算法,旧版客户端可能采用较低强度加密。
- 支持TLS加密,提升安全性。
- 声音和文件系统转向,允许在远程电脑上运行声音应用,并访问本地文件。
- 打印机和通信端口转向,支持远程打印和本地设备通信。
- 剪贴板数据在远程和本地电脑间共享。
RDP的发展版本包括4.0, 5.0, 5.1, 5.2, 6.0等,每个版本都增加了新功能。例如,6.0版引入了单应用远程使用和32位颜色显示。最新的7.0版支持远程应用程序、无缝窗口、终端服务器网关和IPv6等。
第三方客户端如mRemote, MultiDesk, Remote Desktop Organizer等提供了更多选择。RDP协议本身设计简洁,与TCP相比,它注重效率和功能的简单性,适应各种应用场景,如数据下载、远程调试等。
❷ Reliable UDP Protocol
RUDP:可靠用户数据报协议(Reliable UDP)
可靠用户数据报协议(RUDP)是一种基于可靠数据协议 (RDP: RFC908 和 1151 (第二版 )) 的简单分组传输协议。作为一个可靠传输协议, RUDP 用于传输 IP 网络间的电话信号。它允许独立配置每个连接属性,这样在不同的平台可以同时实施不同传输需求下的协议。 UDP/IP 协议中的 RUDP 是分层的并为虚拟连接提供可靠有序发送(直到重新发送的最大数目)。 RUDP 设计灵活,便于多种传输层使用。传输电讯号协议就是其应用之一。
RUDP 提供一组数据服务质量增强机制,如拥塞控制的改进、重发机制及淡化服务器算法等,从而在包丢失和网络拥塞的情况下, RTP 客户机(实时位置)面前呈现的就是一个高质量的 RTP 流。在不干扰协议的实时特性的同时,可靠 UDP 的拥塞控制机制允许 TCP 方式下的流控制行为。
为了与网络 TCP 通信量同时工作, RUDP 使用类似于 TCP 的重发机制和拥塞控制算法。在最大化利用可用带宽上,这些算法都得到了很好的证明。
RUDP 特征包括:
客户机确认响应服务器发送给客户机的包;
视窗和拥塞控制,服务器不能超出当前允许带宽;
一旦发生包丢失,服务器重发给客户机;
比实时流更快速,称为“缓存溢出”。
协议结构
1 2 3 4 5 6 7 8 16bit
SYN ACK EAK RST NUL CHK TCS 0 Header Length
Sequence number Ack number
Checksum
Control Bits ― 表示数据包当前状态,具体细节如下:
SYN:SYN 位表示当前为同步段
ACK:ACK 位表示协议头有效的承认序号。
EACK:EACK 位表示当前为扩展承认字段。
RST:RST 位表示该数据包为复位字段。
NUL:NUL 位表示该数据包为空字段。.
CHK:CHK 位表示检验和字段是否包含协议头或协议头与主体(数据)的检验和。
TCS:TCS位表示该数据包是传输连接状态字段。
0:表示该字段的值必须设置为0。
Header Length ― 表示数据包中的用户数据起始位置。
Sequence Number ― 当打开第一个连接,每个对等结构任意选取一个初始序列号。该序列号用于SYN字段打开连接。在发送数据、空或复位字段之前,每个传送方会相应增加序列号。
Acknowledgement Number ― 该字段表示传送方最后传送接收方接收的数据包的序列。
Checksum ― 协议头中总会计算出检验和以确保完整性。这里检验和的算法与UDP和TCP协议头检验和的算法相同。
RDP:可靠数据协议(Reliable Data Protocol)
可靠数据协议 RDP 是一种面向连接的传输协议,其主要设计来为主机监控应用程序如下载 / 上传以及远程调试进行有效的大批数据传输。RDP 尝试只提供那些必需的服务,达到操作有效、尺度小的效果。其主要功能如下:
RDP 为每个传输层连接端口提供一个全双工通信信道;
RDP 尝试可靠发送所有用户信息,一旦发送失败,将向用户报告错误。RDP 扩展 IP 数据报服务使之能够可靠发送;
RDP 尝试侦测并删除所有损坏的和重复的数据段,它在数据段头使用校验码及序列号实现这一过程;
RDP 随意地提供数据段序列发送,必须在连接建立时就指定数据段的序列发送;
RDP 会响应确认序列之外的数据段,这会释放发送端的资源。
与 TCP 相比,RDP 所支持的功能更为简单。RDP 的流控制,缓冲以及连接管理模式都是相当简单的。RDP 的目标就是能够简单有效地执行并能适合一系列的应用程序。
RDP 函数集也可能是子集从而进一步减小特殊执行的大小。例如,一台向其它主机请求下载的目标处理器可能执行一个仅支持默认的开放式函数和单连接的 RDP 模块。这个模块也可能选择不执行非顺序响应确认。
协议结构
RDP 第二版协议头结构如下:
1 2 3 4 5 6 8 16bit
SYN ACK EAK RST NUL 0 Ver No Header Length
SourcePort
DestinationPort
Data Length
Sequence Number
Acknowledgement Number
Checksum
Variable header area …
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 字段的参数。
相关协议:UDP、RUDP、IP、TCP、ICMP
组织来源:RDP 由 IETF(http://www.ietf.org)定义在 RFC 908中并重新修订在 RFC 1151中。
❸ RDP是什么
远程桌面协议(RDP, Remote Desktop Protocol)是一个多通道(multi-channel)的协议,让用户(客户端或称“本地电脑”)连上提供微软终端机服务的电脑(服务器端或称“远程电脑”)。大部分的Windows都有客户端所需软件。其他操作系统也有这些客户端软件,例如Linux、FreeBSD、Mac OS X。服务端电脑方面,则听取送到TCP3389端口的数据。
功能
- 多种源谈显示支持,包括8,15,16,24,32位色。
- 128位加密,使用RC4加密算法。(此为内定的加密方式;比较旧版的客户端可能使用较弱的加密强度)
- 支持 TLS(Transport Layer Security,前身为SSL)。
- 声音转向(redirection)渣核支持,用户可以在远程电脑运行有声音的应用程序,但是将声音导引至客户端电脑来听。
- 文件系统转向支持,用户可在使用远程电脑的过程中,取用本地(客户端)电脑上的文件系统。
- 打印机转向支持,在使用远程电脑时,可以使用本地(客户端)电脑上的打印机输出,包括直接连在客户端电脑的打印机或网络共享打印机。
- 通信端口转向支持,远程电脑上的应用程序可以使用本地(客户端)电脑上的串行端口或平行端口。
- Windows 的剪贴板数据可以在远程及本地电脑之间互通。
优点
与远程桌面协议兼容的客户端可在多种操作系统上运行,许多Linux系统上甚至将RDP客户端功能列为核心功能之一。此外,用户也不一定要有宽带网络才能连上他们的远程电脑桌面,RDP即使在56K拨接网如裂掘络下,都还可以提供每秒更新五到六个画面的效果。
❹ 简述TCP与UDP之间的相同点和不同点
相同点:
1、OSI网络层
它们都根据OSI参考模型生活在同一层。我们称这层为传输层。在套接字之间的这一层中,传
输数据。他们在这方面没有区别。
2、安全
从安全角度来看,TCP和UDP都是相同的。实际上,TCP由于其会话管理而具有一些小优势,
但从总体上看,如果实现SSL,加密等安全机制,则存在安全性。除UDP之外,实现类似TCP
的协议的SSL / TLS非常容易。另一方面,像RTP这样的语音通信协议可以升级到SRTP,使底
层UDP更安全。
不同点:
1、数据包结构
UDP具有精简包结构。UDP在其标题部分中仅提供源,目标端口,长度,校验和。TCP在包中
有更多字段,因为TCP传输有更多的步骤和控件来进行包传递。TCP有12个头字段。
2、复杂程度
TCP绝对比UDP协议更复杂。正如我们在上侧看到的,TCP具有很多传输相关机制的区域。例
如,TCP提供了设置传输缓冲区相关内存的窗口机制。UDP只有校验和机制和数据包计数器,
有时候没有实现。
3、算法
要使用TCP传输数据,必须使用名为3次握手的方法创建会话。第一个客户端发送一个包含SYN
标志的数据包,服务器用ACK标志响应,最后一步客户端发送SYNC + ACK以完成与相关服务
器的TCP会话。UDP没有任何特殊算法。UDP包直接发送到服务器的端口。管理层通常在上层
应用程序层中执行。
4、速度
TCP协议的复杂性使TCP比UDP慢。至少要发送一个字节,需要进行会话初始化,并在数据传
输后关闭会话。这使TCP变慢。关于TCP的速度已经做了一些工作,但架构是有限的新增强功
能。如果您通过光纤传输UDP,则UDP速度很快.UDP速度很快,因为没有会话或会话终止的
算法。
5、可靠性
TCP是一种可靠的协议,因为它运行机制来防止数据丢失或更改。TCP使用会话来提高数据传
输的可靠性。同样在数据传输中,在两侧之间检查传输的数据,并且如果发生一些丢失或改
变,则再次重新传输数据。UDP也不可靠。真的不是。但是,如果您希望它是可靠的上层应用
程序级别机制可以实现,但这些将使传输更复杂。
6、协议
在这部分中,列出使用UDP或TCP或两者的协议。
UDP以下协议使用UDP传输。
DHCP
DNS
流
RDP
TFTP
SNMP
VOIP
TCP以下协议使用TCP传输。
HTTP
HTTPS
FTP
SMTP
TELNET