|
![](static/image/common/ico_lz.png)
楼主 |
发表于 2010-2-25 10:53:49
|
显示全部楼层
回复【25楼】huatuizh
那个模块的layout是有问题的.
在实际网络环境下,可以测协议栈的健壮性.
局域网环境下,那么多的广播包,还有其他各种各样的包,要是交换芯片功能比较弱,往端口转发的无效包会很多,这样协议栈处理负荷太高,丢包也是常有的事.比如没有广播风暴抑制功能,MAC表深度比较小.如果还同时连着internet,那更加多的包了,mac地址一旦增加的太多,交换芯片的学习learning没有跟上,那又是一堆广播包发下去.
有个办法,用sniffer这样的抓包工具,抓PC端.
同时读取enc28j60的内部寄存器,丢包错误统计计数相关的寄存器,看是什么原因导致的丢包.比如crc错误--多半是硬件信号不好导致,比如memory overflow则是处理器没有来得及读走数据,处理不过来导致的溢出丢包.
-----------------------------------------------------------------------
分析得太明白透彻了,我读寄存器数据看看哈,谢谢啦。
我用24口_交换机的接enc模块的时候,测试的PC也是通过那个小的5口_交换机再接到24口_交换机的,也是100%正常。 |
|