标题:
计算机网络技术(8)
[打印本页]
作者:
魔狱飞龙
时间:
2004-4-22 19:10
标题:
计算机网络技术(8)
第3章 计算机网络体系结构及协议 3.2 物理层 3.2.1 物理层接口与协议 物理层位于 OSI参与模型的最低层,它直接面向实际承担数据传输的物理媒体(即信道)。物理层的传输单位为比特。物理层是指在物理媒体之上为数据链路层提供一个原始比特流的物理连接。 物理层协议规定了与建立、维持及断开物理信道所需的机械的、电气的、功能性的和规和程性的特性。其作用是确保比特流能在物理信道上传输。 图3.5 DTE-DCE接口框图 ISO对OSI模型的物理层所做的定义为:在物理信道实体之间合理地通过中间系统,为比特传输所需的物理连接的激活、保持和去除提供机械的、电气的、功能性和规程性的手段。比特流传输可以采用异步传输,也可以采用同步传输完成。 另外,CCITT在X.25建议书第一级(物理级)中也做了类似的定义:利用物理的、电气的、功能的和规程的特性在DTE和DCE之间实现对物理信道的建立、保持和拆除功能。这里的DTE(Date Terminal Equipment)指的是数据终端设备,是对属于用户所有的连网设备或工作站的统称,它们是通信的信源或信宿,如计算机、终端等;DCE(Date Circuit Terminating Equipment 或 Date Communications Equipment),指的是数据电路终接设备或数据通信设备,是对为用户提供入接点的网络设备的统称,如自动呼叫应答设备、调制解调器等。 DTE-DCE的接口框如图3.5所示,物理层接口协议实际上是DTE和DCE或其它通信设备之间的一组约定,主要解决网络节点与物理信道如何连接的问题。物理层协议规定了标准接口的机械连接特性、电气信号特性、信号功能特性以及交换电路的规程特性,这样做的主要目的,是为了便于不同的制造厂家能够根据公认的标准各自独立地制造设备。使各个厂家的产品都能够相互兼容。 1.机械特性: 规定了物理连接时对插头和插座的几何尺寸、插针或插孔芯数及排列方式、锁定装置形式等。 图3.6 常用连接机械特性 图形3.6列出了各类已被ISO标准化了的DCE连接器的几何尺寸及插孔芯数和排列方式。一般来说,DTE的连接器常用插针形式,其几何尺寸与DCE连接器相配合,插针芯数和排列方式与DCE连接器成镜像对称。 2.电气特性: 规定了在物理连接上导线的电气连接及有关的电咱路的特性,一般包括:接收器和发送器电路特性的说明、表示信号状态的电压/电流电平的识别、最大传输速率的说明、以及与互连电缆相关的规则等。 物理层的电气特性还规定了DTE-DCE接口线的信号电平、发送器的输出阻抗、接收器的输入阻抗等电器参数。 (a)非平衡发送器 接收器 (b)非平衡发送器 差动接收器 (c)平衡发送器 差动接收器 图3.7 电器连接方式 DTE与DCE接口的各根导线(也称电路)的电气连接方式有非平衡方式、采用差动接收器的非平衡方式和平衡方式三种。 1)非平衡方式。 采用分立元件技术设计的非平衡接口,每个电路使用一根导线,收发两个方向共用一根信号地线,信号速率《20kbps,传输距离《15。由于使用共用信号地线,所以会产生比较大的串扰。CCITTV.28建议采用这种电气连接方式,EIA RS-232C标准基本与之兼容。 2)采用差动接收器的非平衡方式。 这类采用集成电路技术的非平衡接口,与前一种方式相比,发送器仍使用非平衡式,但接收器使用差动接收器。每个电路使用一根导线,但每个方向都使用独立的信号地线,使串扰信号较小。这种方式的信号速率可达300kbps,传输距离为10m(300kbps时)-1000m(<=3kbps时)。CCITT V.10/X.26建议采用这种电气连接方式,EAI RS-423标准与之兼容。 3)平衡方式。采用集成集成电路技术设计的平衡接口,使用平衡式发送器和差动式接收器,每个电路采用两根导线,构成各自完全独立的信号回路,使得串扰信号减至最小。这种方式的信号速率<=10Mbps,传输距离为10m(10Mbps时)-1000m(<=100kbps时)。CCITT V.11/X.27建议采用这种电气连接方式,EAI RS-423标准与之兼容。 图3.7给出这三种电气连接方式的结构。 3.功能特性: 规定了接口信号的来源、作用以及其它信号之间的关系。 4.规程特性: 规定了使用交换电路进行数据交换的控制步骤,这些控制步骤的应用使得比特流传输得以完成。 3.2.2 物理层协议举例 1.EIA RS-232C接口标准 EIA RS-232C是由美国电子工业协会EIA(Electronic Industry Association)在1969年颁布的一种目前使用最广泛的串行物理接口Recommended Standard)的意思是“推荐标准”,232是标识号码,而后缀“C”则表示该推荐标准已被修改过的次数。 RS-232标准提供了一个利用公用电话网络作为传输媒体,并通过调制解调器将远程设备连接起来的技术规定。远程电话网相连接时,通过调制解调器将数字转换成相应的模拟信号,以使其能与电话网相容;在通信线路的另一端,另一个调制解调器将模拟信号逆转换成相应的数字数据,从而实现比特流的传输。图3.8(a)给出了两台远程计算机通过电话网相连的结构图。从图中可看出,DTE实际上是数据的信源或信宿,而DCE则完成数据由信源到信宿的传输任务。RS-232C标准接口只控制DTE与DCE之间的通信,与连接在两个DCE之间的电话网没有直接的关系。 图3.8 RS-232C的远程连接和近地连接 RS-232C标准接口也可以如图3.8(b)所示用于直接连接两台近地设备,此时既不使用电话网也不使用调制解调器。由于这两种设备必须分别以DTE和DCE方式成对出现才符合RS-232C标准接口的要求,所以在这种情况下要借助于一种采用交叉跳接信号线方法的连接电缆,使得连接在电缆两端的DTE通过电缆看对方都好象是DCE一样,从而满足RS-232C接口需要DTE-DCE成对使用的要求。这根连接电缆也称作零调制解调器(Null Modem)。 RS-232C的机械特性规定使用一个25芯的标准连接器,并对该连接器的尺寸及针或孔芯的排列位置等都做了详细说明。顺便提一下,实际的用户并不一定需要用到RS-232C标准的全集,这在个人计算机(PC)高速普及的今天尤为突出,所以一些生产厂家为RS-232C标准的机械特性做了变通的简化,使用了一个9芯标准连接器将不常用的信号线舍弃。 RS-232C的电气特性规定逻辑“1”的电平为-15至-5伏,逻辑“0”的电平为+5至+15伏,也即RS-232C采用+15伏和-15伏的负逻辑电平,+5伏和-5伏之间为过渡区域不做定义。RS-232C接口的电气特性见图3.9,其电气表示见表3.1。 RS-232C电平高达+15伏和-15伏,较之0~5伏的电平来说具有更强的抗干扰能力。但是,即使用这样的电平,若两设备利用RS-232C接口直接相连(即不使用调制解调器),它们的最大距离也仅约15m,而且由于电平较高、通信速率反而能受影响。RS-232C接口的通信速率《20Kbps(标准速率有150、300、600、1200、2400、4800、9600、19200bps等几档)。 RS-232C的功能特性定义了25芯标准连接器中的20根信号线,其中2根地线、4根数据线、11根控制线、3根定时信号线、剩下的5根线做备用或末定义。表3.2给出了其中最学用的10根信号的功能特性。 表3.2 RS-232C功能特性 引脚号 信号线 功能说明 信号线型 连接方向 1 2 3 4 5 6 7 8 20 22 AA BA BB CA CB BB AB CF CD CE 保护地线(GND) 发送数据(TD) 接收数据(RD) 请求发送(RTS) 清除发送(CTS) 数据设备就绪(DSR) 信号地线(Sig.GND) 载波检测(CD) 数据终端就绪(DTR) 振铃指示(RI) 地线 数据线 数据线 控制线 控制线 控制线 地线 控制线 控制线 控制线 →DCE →DTE →DCE →DTE →DTE →DTE →DCE →DTE RS-232C的连接见图3.10。 DTE ┬ ┘ AA ┬ └ ────BA───→ ←───BB──── ────CA───→ ←───CB──── ←───CC──── ────AB──── ←───CF──── ────CD───→ ←───CE──── DCE 1 2 3 4 5 6 7 8 20 22 1 2 3 4 5 6 7 8 20 22 图3.10 RS-232C的DTE-DCE连接 若两台DTE设备,如两台计算机在近距离直接连接,则可采用图3.11的方法,图中(a)为完整型连接,(b)为简单型连接。 图3.11 RS-232C的DTE-DTE连接 RS-232C的工作过程是在各根控制信号线有序的“ON”(逻辑“0”)和“OFF”(逻辑“1”)状态的配合下进行的。在DTE—DCE连接的情况下,只有CD(数据终端就绪)和CC(数据设备就绪)均为“ON”状态时,才具备操作的基本条件:此后,若DTE要发送数据,则须先将CA(请求发送)置为“ON”状态,等待CB(清除发送)应答信号为“ON”状态后,才能在BA(发送数据)上发送数据。 2.EIA RS-449及RS-422与RS-423接口标准 由于RS-232C标准信号电平过高、采用非平衡发送和接收方式,所以存在传输速率低(≤20Kbpc)、传输距离短(《15m)、串扰信号较大等缺点。1977年底,EIA颁布了一个新标准RS-449,次年,这个接口标准的两个电气子标准:RS-423(采用差动接收器的非平衡方式)和RS-422(平衡方式)也相继问世。这些标准在保持与RS-232C兼容的前提下重新定义了信号电平,并改进了电路方式,以达到较高的传输速率和较大的传输距离。 RS-499对标准连接器做了详细的说明,由于信号线较多,使用了37芯和9芯连接器,37芯连接器定义了与RS-449有关的所有信号,而辅信道和信号在9芯连接器中定义。 RS-449标准的电器特性有两个标准,即平衡式的RS-422标准和非平衡式的RS-423标准。 RS-422电气标准是平衡方式标准,它的发送器、接收器分别采用平衡发送器和差动接收器,由于采用完全独立的双线平衡传输,抗串扰能力大大增强。又由于信号电平定义为±6伏(±2V为过度区域)的负逻辑,故当传输距离为10M时,速率可达10Mbps;而距离增长至1000m时,速率可达到100Kbps时,性能远远优于RS-232C标准。 RS-423电气标准是非平衡标准,它采用单端发送器(即非平衡发送器)和差动接收器。虽然发送器与RS-232C标准相同,但由于接收器采用差动方式,所以传输距离和速度仍比RS-232C有较大的提高。当传输距离为10M时,速度可达成100KBPS;距离增至100M时,速度仍有10KBPS。RS-423的信号最平定义为±6伏(其中±4伏为过渡区域)的负逻辑。 从旧技术标准向新技术标准的过渡,需要花费巨大的代价主经过漫长的过程。RS-423电气特性标准可以认为是从RS-232C向RS-449标准全面过渡过程中的一个台阶。 3.100系列和200系列接口标准 CCITT是原国际电报电话咨询委员会的简称,现已更名为国际电信联盟电信标准化局。该组织从事有关通信标准的研究和制定,其标准一般都称做建议。 CCITT V.24建议中有关DTE-DCE之间的接口标准有100系列、200系列两种。100系列接口标准作为DTE与不带自动呼叫设备的DCE(如调制解调器)之间的接口。在调置自动呼叫设备的DCE(如网络控制器)中,则由200系列接口标准完成DTE与自动呼叫设备的接口。若系统采用人工呼叫,则无需设置200系列接口。 100系列接口标准的机械特性采用两种规定,当传输速率为200bps~9600bps时,采用25芯标准连接器;传输速率达48Kbps时,采用34芯标准连接器。200系列接口标准则采用25芯标准连接器。 100系列接口标准的电气特性采用V.28和V.35两种建议。当传输速率为200bps~9600bps时,采用V.28建议;当传输速率为48kbps时,100系列中除控制信号仍使用V.28建议外,数据线与定时线均采用V.35建议。200系列接口标准的电气特性则采用V.28建议。 4.X.21和X.21bis建议 CCITT对DTE-DCE的接口标准有V系列和X系列两大类建议.V系列接口标准()如前述的V.24建议)一般指数据终端设备与调制解调器或网络控制器之间的接口,这类系列接口除了用于数据传输的信号线外,还定义了一系列控制线,是一种比较复杂的接口.X系列接口是较晚制定的,这类接口适用于公共数据网的宅内电路终接设备和数据终端设备之间的接口,定义的信号线很少,因此是一种比较简单的接口. X.21建议是CCITT于1976年制定的一个用户计算机的DTE如何与数字化的DCE交换信号的数字接口标准.X.21建议的接口以相对来说比较简单的形式提供了点--点式的信息传输,通过它能实现完全自动的过程操作,并有助于消除传输差错.在数据传输过程中,任何比特流(包括数据与控制信号)均可通过该接口进行传输.ISO的OSI参考模型建议采用X.21作为物理层载规约的标准. X.21的设计目标之一是要减少信号线的数目,其机械特性采用15芯标准连接器代替熟悉的25芯连接器,而且其中仅定义了8条接口线. X.21的另外一个设计目标是允许接口在比EIA RS-232C更长的距离上进行更高速率的数据传略多于,其电气特性类似于EIA RS-422的平衡接口,支持最大的DTE-DCE电缆距离是300m。X.21可以按同步传输的半双工或全双工方式运行,传输速率最大可达10Mbps。X.21接口适用于由数字线路(而不是模拟线路)访问公共数据网(PDN)的地区.欧洲网络大多使用X.21接口. 若数字信道一直延伸到用户端,用户的DTE当然就可以通过X.21建议的接口进行远程通信.但目前实际连接用户端的大多数仍为模拟信道(如电话线),且大多数计算机和终端设备上也只具备RS-232C接口或以V.24为基础的设备,而不是X.21接口.为了使从老的网络技术转到新的X.21接口更容易些,CCITT提出了用于公共数据网中的与V系列调制解调器接口的X.21 bis建议.这时的“bis”是法语“替换物”的意思. X.21 bis标准指定使用V.24/V.28接口,它们与EIA RS-232D非常类似.美国的大多数公共数据网应用实际上都使用EIA RS-232D(或更早的RS-232C)作为物理层接口.可以认为,X.21bis是X.21的一个暂时过渡版本,它是对X.21的补充并保持了V.24的物理接口。X.25建议允许采用X.21 bis作为其物理层的规程。 X.21和X.21 bis为三种类型的服务定义了物理电路,这三种电路是租用电路(专用线)服务、直接呼叫服务和设备地址呼叫服务。租用电路设计成在两个终端之间的连续连接;直接呼叫服务像“热线”电话,可使用户在任何时间直接连接指定的目标;设备地址呼叫则如“拨号”电话,每次联接需由用户呼叫指定目标。 3.2.3 串行通信编程方法 利用RS-232C标准接口可实现两台PC之间的异步串行通信。下面分别就PC机的DOS级和BIOS级异步串行通信编程方法做一简单介绍。 1.DOS级的PC通信 PC机通常配备有两个异步通信端口,分别称作为COM1和COM2,它们都符合RS-232C标准。在DOS操作系统中,COM1、COM2被作为I/O设备进行管理,COM1、COM2便是它们的逻辑设备名。据此,DOS便可通过对COM1、COM2的操作来实现PC之间的异步串行通信。 DOS的MODE命令可用以设置异步串行端口的参数,DOS的COPY命令允许将异步串行端口作为一个特殊的“文件”,以对其进行数据传输。下面举一个利用DOS的MODE、COPY命令,进行双机键盘输入字符传输的例子。 MODE命令的格式为: MODE 端口名:数据速率,校验方式,数据位数,停止位位数 其中端口名为COM1或COM2;数据速率可选150、300、600、1200、2400、4800或9600bps;校验方式为E(偶校验)、O(奇校验)或(无校验);数据位数为7或8位;停止位位数为1或2位。通信双方设置的参数应一致,如双方都键入如下命令 MODE COM1:1200,E,7,1
则表示双方以COM1为异步通信端口、速率1200bps、偶校、7位数据位、1位停止位的设置参数据进行通信。 DOS中有一个名为CON的标准控制台设备,作为输入时CON指的就是键盘,作为输出时CON指的就是显示器。准备发送的PC机执行如下命令: COPY CON :COM1:
表示将从键盘收到的信息通过COM1串行口发送出去。准备接收的PC机执行如下命令: COPY COM1:CON:
则表示将接收来自COM1串行口的信息,并在显示器上加以显示。 两台PC机分别执行完上述命令后,在发送方键盘上输入的字符便会在接收方显示器上显示出来。 上面介绍的是用DOS的MODE,COPY命令实现的最简单的PC通信。在MS-DOS的高版本中(例如MS-DOSV6.0)还提供了一条INTERLNK命令,实际上它是一个通信程序。使用INTERLNK命令和一根连接两台PC机串行端口的电缆,可以使一台PC机从另一台PC机的磁盘驱动器中存取数据并运行程序,无需再使用软盘去复制文件。 用以键入命令的PC机叫客户机(Client),与客户机相连的PC机叫服务器(Server)。客户机使用服务器的驱动器和打印机,服务器显示两台PC机的连机状态。 当两台PC机被INTERLNK连接以后,服务器上的驱动器便以扩展驱动器的形式映象到客户机上,若两台PC机原来均有A,B,C三个驱动器,则连接后客户机除了自身的三个驱动器外,又多了E,F,G(服务器驱动器映象)三个扩展驱动器,客户可以象使用自己的驱动器一样使用这些扩展驱动器。 使用INTERLNK时,每台PC机上至少要有一个空闲的串行口,还要一根3导线或7导线的零调制调解器(Null MODEM)串行电缆线,客户机上至少有16K空闲内存,服务器上至少有130K空闲内存。 在客户机的系统配置文件CONFIG.SYS中添加如下命令: DEVICE=C:\DOS\INTERLNK.EXE/DRIVES:5 再重新启动客户机,便可装入INTERLNK。这里假设INTERLNK.EXE已存在于客户机C驱动器的DOS目录中,/DRIVERS:5参数用于映象5个服务器驱动器,缺省情况下为3个驱动器。 服务器上启动INTERLNK不需对其CONFIG.SYS作任何改动,只需在DOS命令提示符下键入INTERLNK即可。此时,屏幕底下出现一行状态信息,显示出INTERLNK的连接状态。 关于DOS级通信命令的详细使用方法,可参阅有关DOS手册。 2.BIOS级的PC通信 PC级的基本输入输出系统(BIOS)总的中断14H提供了异步串行端口的四种通信服务功能,通过之种功能,可以访问串行通信端口,实现连机通信。INT 14H的串行端口通信功能为: 功能号 功能 00 通信端口初始化 01 向通信端口写一个字符 02 从通信端口读一个字符 03 返回通信端口状态 INT 14H 的一般汇编语言调用顺序如下: MOV AH, <功能号> MOV DX, <端口号> (在相应寄存器中装入与功能有关的参数) INT 14H (1)初始化通讯端口 调用: AH = 00H AL = 初始化参数 DX = 端口号(COM1为0, COM2为1) 返回: AH = 通信端口状态 AL = 调制解调器状态 初始化参数为8为二进制数,其中各位的含义如图3.12所示。 图3.12(P61) 若置COM1为9600bps,8位数据位,1位停止位,无奇偶校验,指初始化参数为11100011B,即0E3H。程序调用如下: MOV AH,0 MOV AL,OE3H MOV DX,0 INT 14H (2)向通信端口输出字符。 用以向指定端口输出一个字符。 调用:AH = 01H AL = 所要输出的字符 DX = 端口号 返回:调用后若AH的第7位为0,表示输出成功,AL内容不变;若AH的第7位为1,表示输出失败,此时 AL的0~6位给出端口状态。 MOV AH,01H MOV DX,0 MOV AL,'*' INT 14H (3)从通信端口输入字符 用以从指定端口输入一个字符。 调用:AH = 02H DX = 端口号 返回:若AH的第7位为0,表示输入成功,AL中为输入的字符:若AH的第7位为1,表示输入失败,AH的0~6位给出端口状态。 若从COM1中输入一个字符,假设以有字符从对方发送到本地PC,只可调用如下程序段: MOV AH,02H MOV DX,0 INT 14H (4)读取通信端口状态 用以读取指定端口的状态 调用: AH = 03H DX = 端口号 返回: AH = 端口状态 AL = 调制解调器状态 若要读取COM1端口状态,只可调用如下程序段: MOV AH,02H MOV DX,0 INT 14H 3.调制解调器的编程命令 Hayes公司生产的调制解调器目前几乎成了公认的调制解调器标准,其它厂家生产的调制解调器一般都与之兼容。Hayes公司推出了一套用于对调制解调器进行编程的命令,这些命令都以AT打头,故也称作AT命令集。AT是Atention(注意)的开头两个字母,意为引起调制解调器的注意。跟在AT后面的字符串用以通知调制解调器干什么。下面介绍几种常用的AT命令。 (1)拨号命令。ATD命令用于电话拨号。拨号分脉冲拨号和音频拨号两种,因此拨号时应告诉调制解调器采用何种信号进行拨号。ATDP用于脉冲拨号,ATDT用于音频拨号,两者均后续要拨的电话号码。例如:ATDT12345678表示用音频拨号呼叫12345678。若在分机拨出,则先要拨外线,然后稍停顿后再拨对方号码,其间插入逗号稍作停顿,一个逗号相当于停顿2秒。例如ADTP0,12345678则表示先拨0,请求接外线后停顿2秒,再拨外线12345678。 (2)应答命令。ATA命令用于使用调制解调器立即应答电话。调制解调器自动应答功能是通过对其S0寄存器的设置来实现的,ATS0=0表示取消调制解调器的自动应答功能,ATS0=N(N为非零的整数)表示调制解调器振铃达到N次后,才应答电话。 (3)摘机和挂机命令。输入的ATH1使电话摘机,就像拿起听筒一样;输入ATHO或ATH是电话挂机,就像放下电话一样。执行拨号命令时,调制解调器会自动进入摘机状态,若在联机状态时载波信号调时,调制解调器会自动断开连接或挂机。 (4)调制解调器缺省设置恢复命令。输入ATZ命令可以将调制解调器内部记存器设置为缺省的参数值,以便用户重新调用其数值。 还用许多其他的AT命令,提供了对调制解调器的各种操作功能,这些都可以在相应的手册上查阅到。需要说明的是,AT命令不是DOS命令,它必须通过通信软件伙同编编程手段经通信端口发向调制解调器。
欢迎光临 黑色海岸线论坛 (http://bbs.thysea.com/)
Powered by Discuz! 7.2