投屏传输的音视频,并对时延有比较苛刻的要求,基本上目前通过局域网络传输的投屏应用,时延超过200ms体验就比较差,较好的画质和时延折中的目标是控制在100ms内。
协议
- UDP: 由RFC768定义的UDP只是做了运输协议能够做的最少工作,除了复用/分解功能和少量的差错检查外,几乎没有对IP增加别动东西.
- TCP: 面向连接的可靠的数据传输协议.
对比
- 采用UDP时应用进程将数据传递给UDP,UDP就会将数据打包进UDP报文并立即传送到网络层,TCP有拥塞控制机制,需要目的主机收到报文并加以确认.投屏应用是音视频有实时传输需要,不希望过分延迟报文传送,但能容忍一些数据丢失,TCP并不是特别适合这个要求。
- TCP在开始数据传输之前要经过3次握手,UDP却不需要任何准备即可进行数据传输。
- TCP需要在端系统中维护连接状态,包括接收和发送缓存、拥塞控制参数以及序号与确认号参数。UDP不维护连接状态,也不跟踪这些参数。
- TCP报文都有20字节的首部开销,UDP只需要8字节