网络包的封装原理
在 TCP/IP 四层网络模型中,网络包每层的包装如下:
- 传输层,给应用数据前面增加了 TCP 头;
- 网络层,给 TCP 数据包前面增加了 IP 头;
- 网络接口层,给 IP 数据包前后分别增加了帧头和帧尾;
每层增加的头部和尾部,都有每层独特的作用,按照各自的协议填充。
在物理链路上并不能传输任意大小的数据包,在以太网中,规定了最大传输单元(MTU)为 1500 字节,规定了单次传输的最大 IP 包的大小。
当网络包超过 MTU 时,就会在网络层分片,确保分片后的包不会超过 MTU 大小。
- 如果 MTU 越小,网络包分片数越多,那么网络吞吐能力就越差。
- 如果 MTU 越大,网络包分片数越少,那么网络吞吐能力越好。