香农定理与“猫”的速度 fire 2000年 第19期   我们知道,“猫”(调制解调器的俗称)是在模拟链路上传输数字数据的设备,它可以在一个音频电话线上传输二进制数据,并且没有太高的错误率。现在,我们上网用的“猫”的速度已可达到56Kbps了,但是,如果你用网络蚂蚁或其它软件从网上下载东西时,你会发现很多时候网络传输的速度都很低,远低于56Kbps,其原因就在于网络的速度不仅仅决定于“猫”的速度,很大程度上还决定于我们上网所连的链路——电话线传输数据的速度。那么怎样知道一条电话线的速度呢?   在信号处理和信息理论的相关领域中,通过研究信号在经过一段距离后如何衰减以及一个给定信号能加载多少数据后得到了一个著名的公式,叫做香农(Shannon)定理。它以比特每秒(bps)的形式给出一个链路速度的上限,表示为链路信噪比的一个函数,链路信噪比用分贝(dB)衡量。因此我们可以用香农定理来检测电话线的数据速率。   香农定理由如下的公式给出:   C=Blog2(1+S/N)   其中C是可得到的链路速度,B是链路的带宽,S是平均信号功率,N是平均噪声功率,信噪比(S/N)通常用分贝(dB)表示,分贝数=10×log10(S/N)。通常音频电话连接支持的频率范围为300Hz到3300Hz,则B=3300Hz-300Hz=3000Hz,而一般链路典型的信噪比是30dB,即S/N=1000,因此我们有C=3000×log2(1001),近似等于30Kbps,是28.8Kbps“猫”的极限,因此如果电话网的信噪比没有改善或不使用压缩方法,“猫”将达不到更高的速率。   因为链路信噪比一般变化不大,因此网络的速度很大程度上取决于链路的带宽,同时我们使用一些如快猫加鞭之类的软件,也能获得更快的速度。当然,更好的选择是“一线通“,或叫ISDN(综合业务数字网),它是通过大幅提高链路的带宽来获得更高的传输速度。选用ISDN,你可获得最高64Kbps甚至128Kbps的传输速度。