我的每个设备1秒需要接收8192*3*20=491520B/s,如果1byte等同于大约10bit左右(udp还要包括帧头之类的),那么相当于一台设备一秒钟要接收进5Mbit的数据。
我的设备上是带的10M/100M的网络芯片,但是如果pc连接16台这样的设备,网线上一秒钟要传输5*16=90Mbps的数据。问题出来了。
1。那是不是90Mbit的数据,每台设备都收到的吗?如果设备和pc之间是通过集线器连接的话,那就是每台都能收到所有数据咯。如果设备和pc之间是通过带系统的交换机的话,由于交换机能记住每个口的mac地址,带缓存,那就不是广播了,就是说设备不是收到所有pc过来的数据,只有对应最后一级交换机对应的口出来的那些设备数据才被接收(可能不止1台的数据,如果交换机后面有带集线器的话),我说的对吗?
2。如果不是本设备以太网芯片对应mac地址的数据,是不是以太网PHY自动会把数据屏蔽掉?CPU就相当于没有收到这些数据?
3。如果联机16台设备,这16台设备和pc之间组成了一个独立的局域网,没有其他任何不相干的设备和pc。那么如果pc连续轮番发送各个设备1秒20帧的数据,100M的网络处理的过来吗?
希望各位可以帮我解答一下,先感谢各位了。 |