曾经有客户问过我「100 mega的资料,用每秒100 mega的局域网路去传送,不是应该在1秒就可以传送完成,但是我传一个1 mega的档案却花了好几秒」。其实好多人问过我同样类似的问题,包括IT工程师。会有这样的误解,我相信应该是”口语化”的关系,除非是学习过电脑基础概论或网路基础概论,否则在”口语化”相传的情况下,的确会使人产生如此的误解。所以上述问题里的第一句话应该是「100 MB的资料,用100 Mbps的局域网路来传送」,这句话里使用了两个不一样的单位,分别是计算资料大小(capacity)的单位-“MB”以及计算频宽(bandwidth)的单位-“bps”。”MB”我想应该很好理解,”bps”其实是”bit per-second”的缩写,”人性化”一点的说法就是”每秒可以传送多少个位元(bit)”。有了以上的理解,再来看看下面:
100MB = (100 X 1024 X 1024 X 8)bit = 838,860,800 bits
100Mbps = (100 X 1000000)bps = 100,000,000 bps
所以上述问题的第一句话就变成「838,860,800 bits的资料,用”每秒可以传送100,000,000个bit”的局域网路来传送」这个样子了,那么换算下来的结果是不是只要最多9秒就可以传送完成呢!?非也!!网路实际在传送资料时有太多的”overhead”了,包括了「资料在被实际传送之前会被拆成一个个的”小片段”,”小片段”再被封装(encapsulate)成一个个的”小封包”(frame)后再传送,”小封包”里又包含了一大堆header(包括frame header、packet header、segment header…….等),再加上乙太网路(Ethernet)CSMA/CD的特性以及多使用者”竞争”使用……..等」。所以啰,「100MB的资料,用100Mbps的局域网路来传送」到底要花多久的时间呢?除了实际测量外,只能说....嘿嘿嘿….「绝对是1秒的好几十倍」!!