网络传输的数据有没有最小值

我在格式化硬盘是选的簇是4KB的 即使我文件只有1KB也要占用4KB的空间 那么当这个文件放在网络传输的时候 是否也是传送了4KB呢?

阅读 4.8k
2 个回答

肯定不会传输 4KB。(这个概率太小了)

1. IP数据报(datagram)的头部格式如下:

IP数据报(datagram)的头部格式

2. TCP报文格式

TCP报文格式

3. HTTP协议

HTTP 协议就不能以字节来描述了。可以去看看 RFC2616

你的疑问

至于你的问题,你的文件是 1KB,但是占用的硬盘空间是 4KB。这取决于你的文件系统(非硬盘)。

当在网络传输的时候,通过网络传输出去的流量肯定不是恰好等于 1024B。但是理论上应该有最小值。

可以肯定的是:网络传输的最小大小,肯定不和硬盘的簇大小直接挂钩。因为硬盘的结构对用户是透明的,通常的文件读取操作,肯定看不到簇大小是多少(最多只不过是:每次读取的批量如果和簇大小一致,可能在性能上有利而已)。

网络传输的最小大小,取决于以下各个网络层打数据包时,加入的额外数据多少:

  • 以太网数据包大小 <----- 通常这个是最终封包大小的关键值
  • 数据链路层,IP地址封包
  • 数据链路层,TCP/UDP协议封包
  • 应用层,HTTP/FTP/DNS/...等协议封包 <----- 以上所有封包报头加在一起,决定总封包大小的下限值

你可以把数据想象成俄罗斯套娃——每个网络层都接受上一级的数据,套一个报头,传给下一层。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进