阅读:1295回复:10
关于网络传输参数的疑问
关于网络传输参数的疑问
1)假设100M的网卡,数据包大小1200 byte,计算 1200*8*1000/100/1024/1024 = 0.09155毫秒(每个包的发送/接收时间) 2)采用环回接口(127.0.0.1)测得:发送加上接收一个数据包的时间如下 Tout + Tin = 0.105毫秒 3)采用组播发送接收/接收数据包(假设组播包经过物理网卡接口环回测得),测得 (Tout + Tadpter_out + Tadpter_in +Tin ) * 2 = 0.323毫秒 根据(1),(2)(Tout + Tadpter_out + Tadpter_in +Tin ) * 2 = 0.5762毫秒 如何解释与(3)差别如此之大? 以上参数经过多次测试,取平均,相信不会有太大的出入,本人的猜想:采用组播环回时,Tadpter_out + Tadpter_in是数据包经驱动程序和传输缓存的环回时间,并没有包括实际网卡物理发送接收。不知以上猜测是否有依据,只好求证于各位熟悉网络内部驱动机理的高手。 |
|
沙发#
发布于:2002-07-24 15:23
象你这样类似的问题,我也有很多没搞明白的地方。
就你的数据问几个问题: 1。网络的拓扑结构是怎样的。 2。这问题和你前一贴是同一个问题吗?(没有看到不同网卡的结果呀?) 3。我对“环回接口(127.0.0.1)“的概念不是特别清楚能不能稍稍解释一下? 4。你在 1)种计算的是每个包的理论发送时间吧?能把计算过程在解释一下吗,没看得太明白,怕理解错了。 |
|
|
板凳#
发布于:2002-07-24 15:49
环回接口只到达ip层,不会下到链路层!
|
|
地板#
发布于:2002-07-24 16:07
环回接口只到达ip层,不会下到链路层! 是呀,这才是真正原因。 嗬嗬! |
|
|
地下室#
发布于:2002-07-24 16:08
To moqingsong:
1. 首先在单机测试。不过,在测试组播时,网卡必须通过网线连到HUB上(在网卡没有连到网络交换机时,发现时延特别大,同样很奇怪) 2. 差不多 3. 环回接口正象swift说的那样,只到达ip层,不会下到链路层。(可以参考《TCP/IP详解》卷2:实现) 4. 计算公式:发送时间=数据包大小/网卡线速 数据包大小=1200BYTE*8bits/BYTE 网卡线速=100Mbit 1200*8*1000/100/1024/1024 = 0.09155毫秒(每个包的发送/接收时间) to swift: 虽然组播发送/接收在同一台计算机上,但我相信组播并不是使用的环回接口。我在上文使用了环回一词,容易引起误解。 |
|
5楼#
发布于:2002-07-24 17:13
组播是数据包到达网卡时做一次复制(可能不太准确,但意思应该差不多),所以一定比环回时间长!
|
|
6楼#
发布于:2002-07-24 17:15
我觉得是不是用a机 通过一个网关到达 b机,这种环境下测得的数据更能说明问题呢?
我现在想做这样的试验,主要想测加密网关的特性。 |
|
|
7楼#
发布于:2002-07-24 18:30
问题在哪里终于明白了。
但又出现一个问题:如何测试(或估计)驱动部分(主要驱动到传输环存的时间)耗费的时间?有无好的办法! to moqingsong: 如果仅仅测试加密网关的特性,我想不一定要知道网络传输内部的细节。现在要做的是,在知道系统特性以后,为什么产生这样的特性? |
|
8楼#
发布于:2002-07-24 19:08
你做这些是为了测你自己做的驱动的性能?还是为了学什么东西?
|
|
|
9楼#
发布于:2002-07-24 21:14
系统性能分析
|
|
10楼#
发布于:2002-07-25 09:11
系统性能分析 哦,原来是这样。 |
|
|