基础理论
RTP协议回顾以及网络知识补充
举例:在客户端向服务器发送 1MB 数据的过程中,涉及到多个网络层次的概念,包括数据切割、最大传输单元(MTU)、最大段大小(MSS)等。以下是这个过程的详细说明:
1.应用层:客户端准备要发送的 1MB 文件。
2.传输层:客户端使用send
函数向服务器发送数据。每次发送 2KB(2048 字节)数据。调用 send(socket, data_buffer, 2048, 0);3.传输层:最大段大小(MSS):设置为 512 字节。根据 TCP 协议,MSS 是 TCP 层面上最大可发送数据段的大小。所以将每次发送的 2048 字节数据包切割成多个 512 字节的数据段。
4.链路层:
- MTU:设定为 1500 字节,指的是数据链路层能够传输的最大数据包大小。
- 在链路层,数据包会被进一步封装,确保每个传输的数据包(帧)不超过 MTU 的限制。
- TCP 头大小:20 字节,IP 头大小:20 字节,可用数据大小: 1500 -20 -20 =1460 字节。
5.物理层:链路层生成的帧通过物理介质(如电缆、无线等)传输。每个 512 字节的段被封装在链路层的帧中,并通过物理层发送到目标地址。
rtp传输h264如下:
引出问题,当nalu.size过大如何发?