用WINPCAP计算的网络上包的速率问题?
想要计算网络上每一个数据包的速率,按照这样的思路:
使用的是WINPCAP的接口,在PCAP_LOOP上每次收到一个包的时候,在回调函数中取出他的时间戳,下次再收到包再取出时间戳,用两次时间戳之差来表示收到一个包的时延,再用截取的包长度除以时延就得到每个包的速率。
问题:我用的是非功过10M容量的以太网,但是按照上面方法计算出来的包速率竟然有的能达到300M多,有个别的还能到700到800M的速率,这是怎么回事?
补充:如果利用WINPCAP提供的统计功能,也就是按照时间来统计并得到网络速率的话,一般能到8M-9M,不会超过10M,算是正确,但是用我上面的方法为什么不对呢?