Modem主要技术回顾(一)

随着ISDN、ADSL等高速传输设备的日益流行,Modem慢慢开始走向没落,当然,我们不能忘记这个为世界互联网作为巨大贡献的产品,下面,我将和各位一起回顾Modem的主要技术,毕竟温故而知新才是学习之道。
一、模拟式Modem
MODEM(Modulator Demodulator,调制解调器)使用PSTN(Public Switched Telephone Network,公用交换式电话网)来传输数据,低采样率是PSTN的特点,通过电话线传来的声音只有AM质量。由于PSTN是传播语音的模拟式网络,Modem主要作用就是在计算机和网络之间进行数字/模拟信号的转换。调制即电脑输出数据转换成模拟信号的过程,解调即模拟信号转换成电脑可识别的数字信号的过程。按照调制解调协议的不同,数据传输速度亦各不相同。56K bit/秒有ITU V.90、Rockwell K56Flex和US Robotics X2三种协议,33.6K bit/秒的协议是ITU-TSS V.34+,14.4K bit/秒的协议是V.32bis,9.6Kbps的协议是V.32,更慢的协议还有V.23、V22bis、V.22 Bell 103/212A和V.21。
硬件Modem包括两个芯片,数据载入/输出芯片负责信号的调制和解调,控制芯片负责Modem的其它能力,包括:错误纠正、传真参数、压缩协议、中断AT命令集、数据传输速度和协议调节。当我们连接到ISP(Internet Service Provider,因特网服务提供商)时,会听到一连串的噪音,代表Modem正在进行初始化商议处理(俗称“握手”),只有双方互相兼容才能通讯,此过程定义了连接速度和必要的协议。
即使两个Modem使用相同的芯片,设置的不同也会阻碍它们的交流,握手的过程即调节两个Modem参数的过程,让他们尽可能以同样的方式传输数据。假设一个Modem拥有强大的Firmware,在同样条件下,能够自由切换到高速模式。另一个Modem发送数据比接收数据要快。要靠保它们发送的数据被对方准确接收,必须使用Flow-control流控制来进行管理,告诉Modem什么时候应该发送数据,什么时候应该捉取数据。
流控制分为软件XON/XOFF和硬件RTS(Request To Send,需求发送)/CTS(Clear to Send,清除发送)两种,软件流控制发出一个命令来作为识别码,决定数据的传输与接收,当传输的二进制文件中包含了识别码字符时,软件流控制就会失败,因此硬件流控制比软件更有效更快速。
每一个Modem都支持标准的AT命令集,这些命令用于控制Modem的通讯和其它功能,包括:初始化、拨号、断线、设置工厂缺省值、设置首选协议和连接速度等等。
二、UART
模拟Modem利用UART(Universal Asynchronous Receiver/Transmitter,通用异步接收/发送装置)来进行串行通信,UART是一个并行输入成为串行输出的芯片,通常集成在主板上,多数是16550AFN芯片。因为计算机内部采用并行数据数据,不能直接把数据发到Modem,必须经过UART整理才能进行异步传输,其过程为:CPU先把准备写入串行设备的数据放到UART的寄存器(临时内存块)中,再通过FIFO(First Input First Output,先入先出队列)传送到串行设备,若是没有FIFO,信息将变得杂乱无章,不可能传送到Modem。
三、Shannon限制
许多Modem用户常问的一个问题是:“为什么Modem有时会变得太慢,而且数据传输不稳定?”。依照Shannon限制,任何传输媒体都有SNR(Signal to Noise Ratio,信噪比)这个参数,当它达到一定程度后,就会影响数据的传输,模拟电话线的质量关系着Modem速度的快慢。测量信噪比的方法是检查声音还原或传输的正确性,再利用自动修正来补偿被噪声干扰的信号。
当Modem把大量数据调制成模拟信号并通过电话线发布出去时,出错的机率将会增加,我们必须采取一些特殊技术来保护资料。在调制之前,先让数据分割成一个个小包,贴上完整性标签(Checksums)和文件头再发送,接收方取得数据时,检查完整性标签,出现问题后利用数据纠错协议来修正。如果错误太多以致无法改错,接收方Modem会请求发送方把小包再send一次,不用重发整个文件,节省了大量时间。
尽管电话线的物理条件限制了传输的数据量,却没有什么东西能难到聪明的人类,科学家发明了信息压缩技术,在有限的线路上提供了更快速度。当数据进行分割打包后,用特定的协议对这些小包进行压缩,压缩过程中微小的错误足以引起巨大的破坏,因此压缩必须十分小心地进行,还要和错误纠正协议共同工作。常见的压缩协议有:ITU-TSS V.42bis(4倍压缩)和MNP 5(2倍压缩),常见的数据纠正协议有:ITU-TSS V.42 LAPM、MNP 2-4和MNP 10EC。
在Windows 98的因特网连接属性窗口中,你可以会发现115,200bps的速度报告,这并不是Modem-to-Modem的速度,而是UART(即CPU到Modem)的速度,在“控制面板--调制解调器”中能够设置此参数,数值越高传输非压缩文件的速度越快。其实真实连接速率也没有太大意义,只不过是握手瞬间的连接速度,你可以打开左下角任务栏的连接属性框,从接收信息的字节来判断即时的速度,它的表示方法通常是xx,xxx,倒数第四位为KB,如果是56K Modem,通常以4~6为一个变化周期,即每跳一次数字就增加4~6KB。
-
※ 评论注意事项:
您的评论将在管理员审核后才会显示。
不是智囊风云榜会员或未登陆发表评论,评论人名字显示为匿名。
尊重网上道德,遵守中华人民共和国的各项有关法律法规
承担一切因您的行为而直接或间接导致的民事或刑事法律责任
本站管理人员有权保留或删除评论中的任意内容
参与本评论即表明您已经阅读并接受上述条款。