我正在使用STM32F407VG作为一个简单的网络服务器。我在SD卡上有一个1611字节的html文件。当我使用低于1415字节的文件时,页面在Web浏览器上加载正常,但上面的任何内容都没有。所以我想知道可以写入以太网控制器的字节数有什么限制吗?
感谢。
答案 0 :(得分:0)
根据802.3以太网标准,您应该能够发送1500(有效载荷)大小的MTU。这个MTU封装在以太网头内,但不能去那里因为当数据包接触以太网时会被剥离。
理想情况下,如果您ping主机名,数据包格式应如下所示:1472 + 20 IP header + 8 ICMP header = 1500
。但对我来说,我的家用路由器添加了另一个名为PPPoE的标头,它看起来像这样:1464 + 20 IP header + 8 ICMP header + 8 PPPoE header = 1500
。
您也可以使用以下命令对其进行测试:
Windows: ping hostname -f -l sizeofdata
BSD: ping -D -s sizeofdata hostname
Linux: ping -M do -s sizeofdata hostname
现在,对于它的1415,您需要检查添加的其他应用程序标头。此外,DF位是否置位,这也可能导致问题。 DF代表“Do not Fragment”,大于MTU的数据包必须被分段才能传输。