TCP 数据包的最小大小是多少

And*_*ume 11 browser download tcp packet

一个帖子在这里:

http://blogs.adobe.com/dreamweaver/2011/02/optimal-css-tiled-background-image-size.html

指出“浏览器可以进行的最小下载是 1K 字节。”

这是由于网络上数据包的最小大小吗?如果不是,这是什么原因(如果确实如此)?

DMA*_*361 20

数据包在这里是一个模棱两可的术语,因为有时会误用它来指代传输的不同元素。让我们看看您的数据包含哪些内容,您就会明白我的意思,并希望得到您想要的答案:


假设您在TCP/IP 模型上通过 Internet发送 1 个字节的数据1

数据应用水平和需求开始在头的较低水平,以便它可以传递周围包裹起来。

首先,数据被包裹在一个TCP Segment 中,它添加了一个 20 字节的标头(现在最小大小为 21 字节)。
这使我们处于运输级别。

然后将其包装在IP Packet 中,它添加了另一个 20 字节的标头(现在最小大小为 41 字节)。
现在我们处于互联网级别。
请注意,每次新路由器将您的数据转发到新子网时,都会更改此包装。

这被包装在某种类型的链接框架中 - 其中页眉和页脚的大小取决于所使用的框架类型,这取决于所使用的链接类型。
这是在链接级别。
如果在两个实体之间传输,则每次单元都会更改此包装。

最后是物理传输(例如,通过电缆传输的电信号、无线电波等)。

以下是维基百科TCP/IP 模型页面提供的一些信息性图像,可以直观地解释正在发生的事情:


使用 UDP/IP 进行数据封装


通过 TCP/IP 模型中的层进行连接


1. 我猜你可能可以发送 0 个字节......但还没有检查过。事实上,我还没有检查是否允许 1 个字节,但是嘿。


小智 5

这是不正确的,下载没有最小大小限制。您可以通过在网络服务器上创建一个小文件并在下载该文件时使用wireshark 观察网络流量来验证这一点。

标准以太网数据包的最小大小为 64 字节。