第六章 第六章 数据通信 数据通信原理数据通信原理 原理 第一节 第一节 数据通信的概念 一、数据通信概述 电报电话的出现,使得人们在异地之间可以借助于电信网进行书面的和实时的信息交流。计算机的出现和广泛应用,使得计算机与计算机之间或计算机与其终端之间需要进行信息的沟通。计算机中的信息是以二进制数“1”和“0”表示的,它代表着文字、符号、数码、图象和声音等,这就是数据信息。所谓数据通信就是按照通信协议,利用传输技术在功能单元之间传递数据信息,从而实现计算机与计算机之间、计算机与其终端之间以及其他数据终端设备之间的信息交互而产生的一种通信技术。 这里需要指出的是:数据通信和数字通信有概念上的区别,数据通信是一种通信方式,而数字通信则是一种通信技术体制。电信系统中,电信号的传输和交换既可采用模拟技术体制,也可采用数字技术体制。对于数据通信,既可采用模拟通信技术体制,也可采用数字通信技术体制。 二、数据通信系统 首先考察一下通过模拟电话系统的语音通信。大家都知道打电话的过程。呼叫的一方拿起话筒拨号,被呼叫的一方听到电话机振铃后拿起话筒,然后双方开始交谈。在交谈的过程中,语音以模拟声波的形式发出信息,声波经过电话机转换成模拟的电信号,这个电信号通过电话线进行传输,到达通话的另一方的电话机后,再转化成声波的形式从听筒发出。听话的一方所听到的声波不是说话的一方所发出的声波的准确复制,而是变了调的声音,这是由于信号在传输过程中要受到干扰而发生畸变,只是这种畸变一般不会改变语言的可懂性,再加上人有识别模糊信息的智能,所以这种变形的声波也能被听懂。 下面来看一看两台计算机之间传输文件的过程。图6-1表示两台远程的计算机通过电话线传输评件。首先,计算机A通过调制解调器和电话线计算机B建立连接;然后,利用通信软件,计算机A将存在磁盘上的文本文件FILE.TXT通过建立的连接传到计算机B的磁盘里。这样接收到的文件和发送的文件是完 1 全一致。 图6-1 计算机间的数据通信1 计算机间的数据通信 计算机间的数据通信 上述文件传输过程看似简单,其实它包含了非常复杂的通信技术。假设在计算机A中的文件FILE.TXT包含一条问候信息“Hello! Happy new year to you!”,这一问候信息其实由一些ASCⅡ码字符组成,而每个ASCⅡ码字符又是8位二进制数的序列,所以计算机A中的文件FILE.TXT由一个二进制数的序列组成。在发送文件时,这个二进制数的序列从磁盘调入计算机的内存,然后通过计算机与调制解调器之间的通信电缆,二进制数的序列被送到调制解调器时,成为一个二值(具有高低两个电压)的电信号序列。为了防止传输错误,调制解调器往往在这个二值的电信号序列中添加一些错误校验信息,然后转换成适合于电话线中传输的模拟信号,以便有效而可靠地传输。在这个模拟信号的传输的过程中,由于信号的能量会有所衰减和受到其他的干扰,所以在接收端,计算机B的调制解调器收到的信号往往与计算机A的调制解调器发出的信号不同,计算机B的调制解调器将接收到信号转换回二值的电信号序列,并根据校验信息试图发现或纠正传输中的错误。正确的二值电信号序列被送到计算机B的存储器里,然后又转储到磁盘中,计算机B的用户打开接收到的文件就可以看到接收到的信息,这条信息通常是发送的原始的信息的准确复制。 从上面的介绍可以看出,计算机间的通信和普通电话机间的通信有着显著的区别。首先,计算机通信系统中发送和接收的是数字信号,而电话通信中发送和接收的是模拟信号;其次,计算机问的通信增加了信号变换的设备,例如调制解调器,通过它可以在模拟信号上传递数字数据,并且可以发现或纠正传输中的错误;第三,在计算机间的通信中,接收到的数据和发送的数据通常是完全一致的,而在电话通信中,接收的却是变了样的原始信号的仿制品。 本章介绍的通信系统是指计算机间的数据通信系统。将上面的计算机间传输文件的系统抽象化,就成为如图6-2所示的数据通信系统一般结构模型。 2 图6-2 数据通信系统模型2 数据通信系统模型 数据通信系统模型 在图6-2中,DTE(Data Terminal Equipment)是数据终端设备,它是数据的出发点和目的地。数据输入/输出设备、通信处理机和计算机属于DTE的范围。DTE根据协议控制通信的功能。通信控制器负责DTE和通信线路的连接,完成数据缓冲、速度匹配、串并转换等。如微机内部的异步通信适配器(UART)、数字基带网中的网卡就是通信控制器。 信道是传输信号的通道,可以是有线的传输介质,也可以是无线的传输介质。信号变换器的功能是把通信控制器发出的信号转换成适合于在信道上传输的信号,或者相反,把从信道上接收的信号转换成通信控制器所能接受的信号。如调制解调器、光纤通信网中的光电转换器。信号变换器和其他的网络通信设备又统称为数据通信设备(DCE:Data Communication Equipment),DCE为用户设备提供入网的连接点。 三、数据传输的速率、数据传输的速率、方式和质量 1、数据传输的速率 数据传输速率是衡量系统传输能力的主要指标,通常使用三种不同的定义: 一是调制速率; 二是数据传信速率; 三是数据传送速率。 (1)调制速率 调制速率的定义是每秒传输信号码元的个数,又称波特率,单位为波特(Bd)。如信号码元持续时间(时间长度)为T(秒),那么,调制速率NBd为 3 图6-3 数据信号举例3 数据信号举例 数据信号举例 图6-3给出了三个数据信号。其中(a),(b)为基带信号,(c)为已调信号。(a)为前述的二电平信号,即一个信号码元中有两种状态。(b)为四龟平信号,它在一个码元T中可能取四种不同的值(状态):±3和±1,因此每个信号码元可以代表四种情况之一。所以,可以表示2个传输代码的4(22=4)种组合。图(c)为调频波,以f1表示代码“1”,f0表示代码“0”。如果这三个数据信号码元时间长度T相同,则它们的调制速率相同。若T=833×10-6秒,则调制速率 由此可见,对于调制速率,不论一个信号码元中信号有多少状态,只计算一秒钟内数据信号的码元个数。注意,这里指的信号码元时长T是数据信号中最短的信号单元时间长度,如图(a)中连续二个“1”代码,其信号正电压持续长度为2T,而不能以2T作为信号码元时长。调制速率中的信号码元时长是指信号码元中的最短时长。调制速度又称符号速率、(信号)码元传输速率。但要注意,不要和代码传输速率相混,如图(b)中一个数据信号码元中表示2个代码。 (2)数据传信速率 数据传信速率的定义是每秒钟传输二进制码元的个数,又称比特率,单位为 4 比特/秒(bit/s,或bps),有时用千比特/秒(kbit/s),兆比特/秒(Mbit/s)。 比特一词是英文(binauy digit)的缩写,在信息论中作为信息量的度量单位。在数字通信中习惯上也用它来表征二进制代码中的位。一般在数据通信中,如使用代码“1”和“0”的概率是相同的,则每个“1”和“0”就含有一个比特的信息量。如果一个数据通信系统,每秒钟内传输2400个代码,则它的数据传信速率记作R,且R=2400bit/s。 数据传信速率,实际上就是数据传输系统每秒内传输二进制码元个数。根据实际需要,数据传信速率已形成国际标准系列,一般是按2n·150(bit/s)的算式确定。式中n为正整数。如有300bit/s,600bit/s,1200bit/s,2400bit/s,…,19200bit/s等速率,也有不按这一等式的速率,如14.4kbit/s,64kbit/s等。 数据传信速率(bit/s)和数据调制速率(Bd)之间存在一定关系。当数据信号是二进制脉冲(码元),即二状态时,两者的速率是相同的。但数据信号有时采用多状态制,或称多电平制、多进制,则两者的速率是不相同的。例如图6-3(b)与(a)相比,四进制中一个信号码元(T)包含2个代码。这样对于图(b)来说,它的调制速率是NBd=1/T=1200波特(当T=833×10-6秒),但它的传信速率R=2·1/T=2400bit/s(当T=833×10-6秒),一般,当数据信号为M电平,即M进制时,传信速率与调制速率关系为 可见,M=2时,R=NBd;M=4时,R=2NBd。 (3)数据传送速率 数据传送速率的定义是单位时间内在数据传输系统中的相应设备之间传送的比特、字符或码组平均数。定义中的相应设备常指调制解调器、中间设备或数据源与数据宿。单位为比特/秒(bit/s)、字符/秒或码组/秒。 数据传信速率与数据传送速率不同。数据传信速率是传输数据的速率,而数据传送速率是相应设备之间实际能达到的平均数据转移速率。它不仅与发送的比特率有关,而且与差错控制方式、通信规定以及信道差错率有关,即与传输的效率有关。因此,数据传送速率总是小于数据传信速率。 数据传输速率的三个定义,在实际应用上既有联系又有侧重。在讨论信道特性,特别是传输频带宽度时,通常使用调制速率;在研究传输数据速率时,采用 5 数据传信率;在涉及系统实际的数据传送能力时,则使用数据传送率。 2、数据传输的方式 数据传输方式是指数据在信道上传送所采取的方式。如按数据代码传输的顺序可以分为并行传输和串行传输;如按数据传输的同步方式可分为同步传输和异步传输;如按数据传输的流向和时间关系可分为单工、半双工和全双工数据传输。 (1)并行传输和串行传输 并行传输是将数据以成组的方式在两条以上的并行信道上同时传输。例如采用8单位代码字符时可以用8条信道并行传输。另加一条“选通”线用来通知接收器,以指示各条信道上已出现某一字符的信息,可对各条信道上的电压进行取样,如图6-4所示。 图6-4 并行数据传输4 并行数据传输 并行数据传输 并行传输不需要另外措施就实现了收发双方的字符同步。缺点是需要传输信道多,设备复杂,成本高,故较少采用。一般适用于计算机和其他高速数字系统,特别适于在一些设备之间的距离较近时采用。 串行传输是数据码流以串行方式在一条信道上传输。该方法易于实现。缺点是为解决收、发双方码组或字符同步,需外加同步措施,串行传输采用较多。 最后要指出,所谓串行传输和并行传输是指组成一个字符的各码元是依顺序逐位传输还是同时并行地传输。至于数据字符不论采用串行还是并行传输,总是逐个依顺序发送的。 (2)同步传输与异步传输 在串行传输时,接收端如何从串行数据码流中正确地划分出发送的一个个字符所采取的措施称为字符同步。根据实现字符同步方式的不同,数据传输有异步传输和同步传输两种方式。 异步传输中,每次传送一个字符代码(5~8bit),即在发送每一个字符代码 6 的前面均加上一个“起”信号,其长度规定为一个码元,极性为“0”,后面均加一个“止”信号;对于国际电报2号码,“止”信号长度为1.5个码元,对于国际5号码或其他代码时,“止”信号长度为1或2个码元,极性为“1”。字符可以连续发送,也可以单独发送;不发送字符时,连续发送“止”信号。因此,每一字符的起始时刻可以是任意的(这正是称为异步传输的含意),但在同一个字符内各码元长度相等。这样,接收端可根据字符之间的从“止”信号到“起”信号的跳变(“1”→“0”)来检测识别一个新字符的“起”信号,从而正确地区分一个个字符,因此,这样的字符同步方法又称起止式同步。异步传输的优点是:实现字符同步比较简单,收发双方的时钟信号不需要精确的同步。缺点是每个字符增加了2~3bit,降低了传输效率。所以,常用于1200bit/s及其以下的低速数据传输。图6-5(a)表示异步传输情况。 图6-5 异步传输和同步传输举例5 异步传输和同步传输举例 异步传输和同步传输举例 同步传输是以固定时钟节拍来发送数据信号的。在串行数据码流中,各信号码元之间的相对位置都是固定的,接收端要从收到的数据码流中正确区分发送的字符,必须建立位定时同步和帧同步。位定时同步又叫比特同步,其作用是使数据电路终接设备接收端的位定时时钟信号和DCE收到的输入信号同步,以便DCE从接收的信息流中正确识别一个个信号码元,产生接收数据序列。所以,在同步传输中,数据的发送是以一帧为单位,如图6-5(b)所示。其中一帧的开头和结束加上预先规定的起始序列和终止序列作为标志。这些特殊序列的形式决定于所采用的传输控制规程。在ASCⅡ代码中用SYN(码型为“0110100”)作为“同步字符”,通知接收设备表示一帧的开始;用EOT(码型为“0010000”)作为“传输结束字符”,以表示一帧的结束。与异步传输相比,同步传输在技术上要复杂,但它不需要对每一个字符单独加起、止码元作为识别字符的标志,只 7 是在一串字符的前后加上标志序列,因此传输效率较高。通常用于速率为2400bit/s及其以上的数据传输。 图6-6 数据通信方式6 数据通信方式 数据通信方式 (3)单工、半双工和全双工数据传输 根据实际需要数据通信采用单工、半双工和全双工数据传输,如图6-6所示。通信一般总是双向的,有来有往。这里所谓单工、双王等,指的是数据传输的方向。 单工数据传输是两数据站之间只能沿一个指定的方向进行数据传输。如图(a),数据由A站传到B站,而B站至A站只传送联络信号。前者称为正向信道,后者称为反向信道。一般,正向信道传输速率较高,反向信道传输速率较低,不超过75bit/s。远程数据收集系统,如气象数据的收集,采用单工传输。因为在这种数据收集系统中,大量数据只需要从一端送到另一端,而另外需要少量联络信号(也是一种数据)通过反向信道传输。 半双工数据传输是两数据站之间可以在两个方向上进行数据传输,但不能同时进行,问询、检索,科学计算等数据通信系统适用半双工数据传输。 全双工数据传输是在两数据站之间,可以在两个方向上同时进行传输。适用于计算机之间的高速数据通信系统。 通常四线线路实现全双工数据传输。二线线路实现单工或半双工数据传输。二线线路也可实现全双工数据传输。 3、数据传输的质量 (1)差错率 8 由于数据信号在传输过程中不可避免地会受到外界的噪声干扰,信道的不理想也会带来信号的畸变,因此当噪声干扰和信号畸变达到一定程度时就可能导致接收的差错。衡量数据传输质量的最终指标是差错率。 差错率可以有多种定义,在数据传输中,一般采用误码(比特)率、误字符率、误码组率,它们分别定义为 差错率是一个统计平均值,因此在测量或统计时,总的比特(字符、码组)数应达到一定的数量,否则得出的结果将失去意义。 (2)频带利用率 最后讨论一个与数据传输效率有关的指标——频带利用率。 数据信号的传输需要一定的频带。数据传输系统占用的频带越宽,传输数据信息的能力越大。因此,在比较不同数据传输系统的效率时,只考虑它们的数据传信速率是不充分的。因为,即使两个数据传输系统的传信速率相同,但它们的通信效率也可能不同,这还要看传输相同信息所占的频带宽度。故真正衡量数据传输系统的信息传输效率应当是单位频带内的调制速率,即每赫兹的波特数: 四、数据通信的特点 数据通信网由于技术实现上的多样性,加上数据通信网的设备种类又相当多,要概括数据通信网并不容易。下面我们尝试从几个侧面认识数据通信的基本特点。 1、数据通信的特点 (1)与其它方式的通信相比,实现“准确传输”始终是设计数据通信网的第一目标。众所周知,打电话时声音有些失真,有线电视的图象质量有点雪花,在一定范围内都是可以接受的:但是对于数据通信网来说,是不能接受传输的文件发生错误的,所以为了能够纠正传输中可能发生的错误,数据通信还需要许多 9 纠错的机制和技术。 (2)数据通信的方式比有线电视和电话复杂,它不是单向的、或者一对一的简单方式,通常具有多对一,多对多,一对一等各种通信方式。这就要求在网络设计时能够支持多方向,复杂的信息传送。 (3)数据通信的业务种类繁多,数据通信必须为满足原始的和不断发展的业务需求而不断进步。不同的业务对质量的要求及侧重点不一样,有的业务要求较高速率,有的则不然;有的业务要求传送时必须实时,有的对延时不太敏感,数据通信的目标就是要满足各种类型业务的不同需求。 (4)数据通信的一个明显特点是终端智能化,相对于电话机和电视机,计算机的功能要强大许多,数据通信的许多功能可以在终端完成。这种特征使数据通信一方面变得比较简单,因为可以将许多功能放在计算机中完成。另外一方面又使数据通信复杂化,由于历史的原因,早期的计算机具有不同的通信标准,有IBM主机系统的SNA(Systems Network Architecture)协议,UNIX系统的TCP/IP协议,Novell公司的IPX/SPX协议,等等,这么多的通信标准放在一起实现相当复杂。 (5)数据通信是一门迅速发展的技术,网络设备的功能彼此渗透,数据通信技术不断同其它通信技术结合,为了适应新的形式不断涌现许多新的技术;参与数据通信的公司和人都相当多,也因此成为一个生生不息的领域。 2、数据分组传送的特点 数据通信是一个以满足数据传送为基本出发点,不断向其它领域延伸的通信技术,它的核心技术就是分组交换,其特点是将欲传输的信息打成包(Packet,分组),实际上是具有特殊标记的Byte(字节),每个包有目的地址、源地址、错误控制信息等等,这样的数据包具有自己去找目的地的能力。分组方式传送的主要特点是: (1)具有纠错能力。如果某个包发生了错误,可以重传,以确保100%正确。如果采用电路交换或者流的方式,数据不进行结构化,就很难做到这一点:首先,不容易建立一个发现错误的机制:其次,发现了错误就需要全部重发,在误码率比较高的情况下,需要不断的重发,这样将会造成实际上不能通信。分组方式在保证正确性方面远优于其它方式。 10 (2)通信资源利用率高。每个分组具有自己找到目的地的能力,因此在设计上没有必要为通信申请单独的资源,在一个有限的带宽中可以有多种业务同时传输。这是相对电路交换的一个优势,因为PSTN在语默期同样占有64kbit/s的固定信道。 (3)保证服务质量(QoS)的能力比较差。这在仅满足早期的纯数据型业务方面,问题并不十分明显,当用来承载实时性较强的多媒体业务时,就需要解决这一问题,端剑端的服务质量保证对某些业务是必需的。 (4)具有安全隐患。分组的报文共用资源,具有智能的计算机终端可以通过某种方式控制通信过程,造成了通信的安全隐患,特别是当通过运营网络承载企业内部数据通信业务时,这个矛盾会更加突出。 (5)相对于其它方式,分组方式更加灵活,容易对通信过程进行操作和控制。传统的分组交换网络被设计成无连接的网络,意思是说通信的两者之间,没有建立连接的过程,因为分组本身具有找到目的地的能力。 与电话网相比,数据通信网的历史很短,但后者的发展更加迅速。数据通信的发展历史,基本上是各种技术自由竞争的历史,形成了现在数据通信网具有多种接入方式、多种骨干技术、多种传送介质的局面。 由于数据通信网尤其是Internet的发展,人们试图利用数据通信网承载新型的应用,这些应用主要包括语音、视频等。把所有主要的应用都统一到数据通信网中实现,似乎成为了一种潮流,在小型的网络中实现这一点在技术上的障碍已经不大了。 与其说数据通信不能解决语音和多媒体传送问题,倒不如说传统PSTN方式和CATV方式解决这些问题已经足够好了。没有给通过数据通信网解决这些问题留下太大的空间,要想数据通信网来取代这些网络,找到充分的理由是困难的。 但是技术发展的驱动力量还是存在的,譬如对于一个只建设了数据通信网的新的运营商就希望通过数据通信网提供语音和视频业务。宽带网络的广泛应用提供了可视的多媒体通信的可能性,这是具有相当吸引力的业务,数据通信的发展还具有许多富有想象力的空间。 11 第二节 第二节 数据信号的传输 一、数据传输的形式 在通信系统中,要把数字数据或模拟数据从一个地方传到另一个地方总是要借助于一定的物理信号,如电磁波和光。而物理信号可以是连续的模拟信号,也可能是离散的数字信号。 模拟数据和数字数据两种数据形式中的任何一种数据都可以通过编码形成两种信号(模拟信号和数字信号)中的任何一种信号。于是就产生了四种数据传输形式,即模拟信号传输模拟数据、模拟信号传输数字数据、数字信号传输模拟数据和数字信号传输数字数据,如图6-7所示。 图6-7 数据传输的形式7 数据传输的形式 数据传输的形式 使用数字信号传输数据时,数字信号几乎要占有整个频带,也就是终端设备把数字信号转换成脉冲电信号时,这个原始的电信号所固有的频带,称为基本频带(baseband),简称基带。在信道中直接传送基带信号时,称为基带传输。 采用模拟信号传输数据时,往往只占有有限的频谱,对应基带传输将其称为频带传输。 二、基带传输 使用基带传输时,首先要解决信号的编码问题。数字信号编码的问题是如何把数字数据用物理信号(如电信号)的波形表示。数字数据可以由许多不同形式的电信号的波形来表示。数字信号是离散的,不连续的电压或电流的脉冲序列,每个脉冲代表一个信号单元,或称码元。这里只讨论二进制的数据信号,也就是用两种码元分别表示二进制数字符号1和0,每一位二进制符号和一个码元相对应。表示二进制数字的码元的形式不同,便产生出不同的编码方案。这里主要介绍单极性不归零码、单极性归零码、双极性不归零码、双极性归零码、曼彻斯特码和差分曼彻斯特码等。 12 1、单极性不归零码和双极性不归零码 (1)单极性码 图6-8(a)表示单极性码,在每一码元时间间隔内,有电流发出表示二进制的1;无电流发出则表示二进制的0。每一个码元时间的中心是采样时间,判决门限为半幅度电平,即0.5。若接收信号的值在0.5与1.0之间,就判为1;若在0与0.5之间就判为0。每秒钟发送的二进制码元数称为码速,其单位为波特(baud)。在二进制情况下,1波特相当于信息传输速率为1比特每秒(bps),此时码元速率等于信息速率。 (2)双极性码 图6-8(b)表示双极性码,在每一码元时间间隔内,发正电流表示二进制的1;发负电流则表示二进制的0。正的幅值和负的幅值相等,所以称为双极性码。这种情况的判决门限定为零电平。接收信号的值如在零电平以上,判为1;如在零电平以下判为0。 图6-8 单性码和双极性码8 单性码和双极性码 单性码和双极性码 图6-8所示的两种情形表示的二进制序列均为01101001。 以上两种信号是在一个码元全部时间内发出或不发出电流,或在全部码元时间内发出正电流或负电流,这两种码属于全宽码,即每一位码占用全部的码元宽度,如重复发送1,就要连续发送正电流;如重复发送0,就要连续不送电流或连续发送负电流。这样上一位码元和下一位码元之间没有间隙,不易互相识别。对应于后面的归零码,全宽码属于不归零码。 2、单极性归零码和双极性归零码 图6-9(a)所示为单极性归零码。在每一码元时间间隔内,当发1时,发出正电流,但是发电流的时间短于一个码元的时间,就是说,发一个窄脉冲。当发0时,仍然完全不发送电流。这样发1时有一部分时间不发电流,幅度降回为零电平。所以称这种码为归零码。 13 图6-9(b)所示为双极性归零码。在每一码元时间间隔内,当发1时,发出正的窄脉冲,当发0时,发负的窄脉冲。两个码元的间隔时间可以大于每一个窄脉冲的宽度。采样时间总是对准中心。 图6-9 单极性归零码和双极性归零码9 单极性归零码和双极性归零码 单极性归零码和双极性归零码 图6-9中所示的两种情形表示的二进制序列均为01101001。 双极性归零码的另一种形式称为交替双极性归零码。在发送过程中,发1窄脉冲的极性总是交替的,即如果发前一个1时是正脉冲,则发后一个1时是负脉冲;而发0时不发脉冲。这种交替的双极性码元也可用全宽码,采样定时信号仍对准每一脉冲的中心位置。 3、曼彻斯特码和差分曼彻斯特码 图6-10(a)所示为曼彻斯特码。在每一码元时间间隔内,当发0时,在间隔的中间时刻电平从低向高跃变;当发1时,在间隔的中间时刻电平从高向低跃变。曼彻斯特码还有其他的形式。这类码元的特点是在每一码元的时间间隔内,至少有一次跃变,跃变也意味着归零。 图6-10(b)所示为差分曼彻斯特码。在每一码元时间间隔内,无论发1或发0,在间隔的中间都有电平的跃变,但发1时,间隔开始时刻不跃变,发0时,间隔开始时刻就跃变。 图6-10 曼彻斯特码和差分曼彻斯特码10 曼彻斯特码和差分曼彻斯特码 曼彻斯特码和差分曼彻斯特码 以上的各种编码各有优缺点。第一,脉冲宽度越大,发送信号的能量就越大,这对于提高接收端的信噪比有利;第二,脉冲时间宽度与传输频带宽度成反比关系,归零码的脉冲比全宽码的窄,因此它们在信道上占用的频带就较宽,归零码 14 在频谱中包含了码元的速率,也就是说,发送频谱中包含有码元的定时信息;第三,双极性码与单极性码相比,直流分量和低频成分减少了,如果数据序列中1的位数和0的位数相等,那么双极性码就根本没有直流输出,交替双极性码也没有直流输出,这一点对于在实践上的传输是有利的;第四,曼彻斯特码和差分曼彻斯特码在每个码元中间均有跃变,也没有直流分量,利用这些跃变可以自动计时,因而便于同步,称为自同步。在这些编码中,曼彻斯特码和差分曼彻斯特码的应用很普遍,已成为局域网的标准编码。 三、频带传输 使用模拟信号传输数字数据时,需要借助于调制解调装置,把数字信号(基带脉冲)转换成模拟信号,使其变为适合于电话线路传输的信号。调制就是用基带脉冲对载波波形的某些参量进行控制,使这些参量随基带脉冲变化。经过调制的信号称为已调信号。已调信号通过线路传输到接收端,在接收端通过解调恢复为原始基带脉冲。采用调制解调器也可以把音频信号转换成较高频率的信号或把较高频率的信号转换成音频信号。所以调制的另一个目的是便于线路复用,以便提高线路利用率。 任何载波信号有三个特征:振幅(A);频率(f)和相位(P)。相应地,把数字信号转换成模拟信号就有三种基本调制技术:振幅调制(amplitude modulation)、频率调制(fue-quency modulation)和相位调制(phase modulation)。下面分别介绍这三种调制技术。 1、振幅调制 振幅调制又叫振幅键控(ASK),也就是用数字的基带信号控制正弦载波信号的振幅。当传输的基带信号为1时,振幅调制信号的振幅保持某个电平不变,即有载波信号发射;当传输的基带信号为0时,振幅调制信号的振幅为零,即没有载波信号发射。不难看出,振幅调制实际上相当于用一个受数字的基带信号控制的开关来开启和关闭正弦载波信号。如果载波信号为Acos(ωt+θ),则振幅调制信号可以表示为: 如果基带信号是不归零单极性脉冲序列,则振幅调制如图6-11所示。 15 图6-11 振幅调制11 振幅调制 振幅调制 利用音频信号传送振幅调制信号的效率很低,允许的极限传输速率为1200bps。 2、频率调制 频率调制也叫频率键控(FSK),它是用数字基带信号控制正弦载波信号的频率f。当传输的基带信号为1时,频率调制信号的角频率为2πf1;当传输的基带信号为0时,频率调制信号的角频率为2πf2。如果载波信号为Acos(2πft+0),则频率调制信号可以表示为 如果基带信号是不归零单极性脉冲序列,则频率调制如图6-12所示。 图6-12 12 频率调制 频率调制 3、相位调制 相位调制也叫相位键控(PSK)。它是用数字基带信号控制正弦载波信号的相位。相位调制又可以分为绝对相移调制和相对相移调制。 (1)绝对相移调制 所谓绝对相移,就是利用正弦载波的不同相位直接表示数字。当传输的基带信号为1时,绝对相移调制信号和载波信号的相位差为0;当传输的基带信号为0时,绝对相移调制信号和载波信号的相位差为π。如果载波信号为Acos(2πft+θ),则绝对相移调制信号可以表示为: 16 如果基带信号是不归零单极性脉冲序列,则绝对相移调制如图6-13所示。 图6-13 13 绝对相移调制 绝对相移调制 这种绝对相移调制可以变换成正交相移调制编码方案,这样,相移调制信号可以表示为 这时,每个相位的信号代表了2位二进制数,而不是1位二进制数。这样的方案还能进一步扩展。例如,对于9600bps的信号传输,调制解调器采用12个相位,其中在4个相位有2个幅度值,这样,每个信号可以表示4位二进制数。 (2)相对相移调制 相对相移调制是利用前后码元信号相位的相对变化来传送数字信息的。当传输的基带信号为1时,后一个码元信号和前一个码元信号的相位差为π;当传输的基带信号为0时,后一个码元信号和前一个码元信号的相位差为0。如果载波信号为Acos(2πft+θ),基带信号是不归零单极性脉冲序列,则相对相移调制如图6-14所示。 图6-14 相对相移调制14 相对相移调制 相对相移调制 17 第三节 第三节 数据通信的差错控制 一、差错类型和差错控制方式 1、差错类型 数据通信要求信息传输具有高度的可靠性,即要求误码率足够低。然而,数据信号在传输过程中不可避免地会发生差错,即出现误码。例如在干线载波信道上采用一般的调制方法传输中速(1200波特~2400波特)数据信号,其误码率约在10-4~10-5数量级,它不能满足传输数据的需要。造成误码的原因很多,但主要原因可以归结为两个方面:一是信道不理想造成的符号间干扰;二是噪声对信号的干扰。由于前者常可以通过均衡办法予以改善以至消除,因此,常把信号噪声作为造成传输差错的主要原因。所谓差错控制就是针对这一原因而采取的技术措施。 差错控制的根本措施是采用抗干扰编码,或称纠错编码。它的基本思想是通过对信息序列作某种变换,使原来彼此独立的、互不相关的信息码元变成具有一定的相关性、一定规律的数据序列,从而在接收端能够根据这种规律性检查(检错)或进而纠正(纠错)码元在信道传输中所造成的差错。采用不同的变换方法也就构成不同纠错编码。 危害数据传输的噪声大体上有两类,一类是随机噪声。它包括热噪声、散弹噪声以及传输媒介引起的噪声等等;另一类是脉冲噪声。这种噪声是指在长时间“安静”之后出现的突发噪声,这种噪声包括雷电、开关引起的瞬态变化以及机电交换机的拨号脉冲等等。 噪声的类型不同,引起的差错类型也不同,一般可分为以下两类差错: (1)随机差错 差错是相互独立、互不相关的。存在这种差错的信道是无记忆信道,如卫星信道。 (2)突发差错 指成串出现的错码。错码与错码之间有相关性,一个差错往往会影响到后面一串字。例如短波和散射信道所产生的差错。 18 突发错误的影响一般用“突发长度”来表示。为了说明突发长度,这里先解释一下什么是错误图样。例如,发送序列为S,接收序列为R,用E表示错误图样。 在错误图样E中,“0”表示在传输中未发生错误,“1”表示在传输中发生了错误,表示是错误的码元。如果已知错误图样,就可确定差错类型。一般地说,错误比较集中(“1”的密度大)的叫做突发差错;错误比较分散的叫做随机差错。为了便于划分突发差错与随机差错的界限,又定义了错误密度。所谓错误密度就是第一个错码至最后一个错码之间的错误码元数与总码元数之比。例如上例中的错误密度△=44。如果错误密度△>算作一个突发错误(突发长度为5545),则当△<时就认为是随机错误。 5在差错控制技术中,编码的设计与差错控制方式的选择都与差错类型有关,因此要根据错误的性质设计编码方案和选择适宜的控制方式。当然,实际上两种错误在信道上也可能并存。那就要结合实际作出设计和选择。 2、差错控制的基本方式 在数据通信系统中,利用纠错编码进行差错控制的方式主要有下列四种: (1)前向纠错 前向纠错又称自动纠错(简称FEC方式)。这种方式是:发送端的编码器将输入的信息序列变换成能够纠正错误的码,接收端的译码器根据编码规律校验出错码及其位置并自动纠正。该方式的主要优点是实时性好:不需要反向信道。主要缺点是插入的监督码较多,传输效率低,译码设备复杂。 (2)检错重发 检错重发又称自动反馈重发(简称ARQ方式)。其方法是:发送端采用某种能够检查出错误的码,在接收端根据编码规律校验有无错码,并把校验结果通过反向信道反馈到发送端,如有错码就反馈重发信号,于是发送端重发,如无错码就反馈继续发送信号。如重发后仍有错码。则再次重发,盲至检不出错码为止。 19 图6-15 自动反馈重发系统框图15 自动反馈重发系统框图 自动反馈重发系统框图 图6-15给出了一个实用的自动反馈重发系统的框图。 图中发送终端输出7.5单位的码组(国际2号码,每码组除有5单位的信息码外还有l单位的“起动”信号和1.5单位的“停止”信号),在编码器中先分别去掉各码组中的“起动”和“停止”信号,然后按照每个码组都包含三位“1”四位“0”的规律各插入2位监督码, 构成7单位码组。接收端的译码器根据三“1”四“0”的规律对各码组逐个进行校验。如不符合这一规律表明码组中有错。译码器将校验结果以“有错”或“无错”信号控制指令发生器。此后,指令发生器一方面通过反向信道控制发送端的重发控制器,使其控制缓冲存储器重发,并控制数据终端暂停发送数据;另一方面,控制本端的输出缓存器删除有错误的码组。译码器校验结果如无错,则用无错信号控制发送端的缓冲存储器将该码组删除,并使数据终端发送下一个码组;另一方面控制本端输出缓存器将码组送入接收数据终端。 自动反馈重发方式的优点是:检错码构造简单,插入的监督码不多,设备不太复杂。其缺点是实时性差,必须有反向信道。 (3)反馈校验 反馈校验法是:发送端不进行纠错编码,接收端收到信息码以后,不管有无差错一律通过反向信道反馈到发送端,在发送与原信息码比较,如有差错则将有差错的部分重发。这种方式的优点是,不需要插入监督码,设备简单。主要缺点是实时性差,需要反向信道。 (4)混合纠错 这种方法是前向纠错和自动反馈重发的混合应用(简称HEC)。发送端发送纠错码,接收端经校验如果错码较少且在纠错能力之内,则译码器自动纠错,如果错码较多,已超过纠错能力,但未超过检错力,即能判决有无错码而不能判决错码的位置,此时译码器自动发出信号,通过反向信道控制发送端重发。 20 混合纠错具有前向纠错和自动反馈重发的特点,需要反向信道和复杂的设备,但它能更好地发挥检错和纠错能力,在极差的信道中能获得较低的误码率。 二、纠错编码 纠错编码采用在数据帧中插入若干校验位的方法来发现和纠正错误。对于所传送的m位信息,假定插入的校验位数是r,则总的编码位数是n=m+r,可实现的纠错编码的总个数是2r个,要想通过附加的校验位发现和纠正错误,就必须在这2r个纠错编码中,将正确的和所有可能发生错误的编码都包含在内,于是接收方就可以根据编码将错误发现并纠正过来。 由于在传送中,帧中的信息位和校验位都可能发生错误,所以,在这2r个n位编码中,正确的只有一个,而可能发生一位错误的编码则有n个,所以有 即 上式决定了对于m位编码,要发现并纠正一位错误所需的最小校验位的位数。 如果要发现并纠正两位以内的错误,由于发生一位错误的编码有n个,在每个发生了一位错误的编码内,又发生了一位错误,即发生两位错误的编码有n-1个。所以,发生两位以内的错误编码共有n+n-1=2n-1个,加上无错的一个编码,因此编码共有2n-1+1=2n个,即 整理得: 在纠错码中,如何安排r个校验位的位置,使纠错算法即简单又容易实现是很重要的,常用的有海明校验码。例如,当m=4时,要发现并纠正一位错误,根据m+r+1<2r可知,r应取3。这三位校验码r0,r1,r2与m0,m1,m2,m3共同构成了纠错编码。我们将r0,r1,r2分别安排在m0,m1,m2,m3的后面,所得编码为 r0,r1,r2的取值分别由m0,m1,m2,m3的某些位经异或运算得到。接收方校验时,对所接收的码再作同样的计算,分别得到三个值R0,R1和R2,并将结 21 果与r0,r1,r2分别再做异或运算,得到三个值:S0=R0⊕r0,S1=R1⊕r1,S2=R2⊕r2。用S0,S1,S2的编码表示传输结果: 无错时,S0S1S2=000;r0错时,S0S1S2=001;r1错时,S0S1S2=010;r2错时,S0S1S2=011; m0错时,S0S1S2=100;m1错时,S0S1S2=101;m2错时,S0S1S2=110;m3错时,S0S1S2=111。 通过简单的分析可知,Si的取值应按下式决定: 对于纠错码来说,发现了传输错误的位,只要将该位求反即可纠正错误。例如,若S0S1S2的值是110,则说明第六位即m2错,将m2之值取反即可纠正这个错误。 三、校验码与重传机制 纠错码在接收方就可以发现和纠正传输中发生的错误,无需发送方的参与,故传输的实时性好。但纠错码的校验位数较多,也就是信息冗余较大,因此传输效率降低得较多,特别是需要发现和纠正的错误有多位时更是如此。这时,必须采用足够多的校验位以应付信道可能发生的多位突发错误,但如果信道上实际出现这种错误的几率很低时,就会造成极大的传输浪费。 另一种更为广泛使用的纠错方式是采用校验码以及出错重传机制。这种纠正错误的机理是对所传送的信息采用某种相关算法,得到的计算结果称为校验码。在发送方,将所传送的信息连同校验码一起发送出去;接收方对所接收的信息也采用与发送方同样的算法,并将得到的计算结果与发送方计算的结果——校验码相比较。如果二者相同,说明接收无错,否则,就是发生了错误。对发生了错误的帧,接收方可通过应答协议通知发送方,要求发送方重发该帧来纠正错误。这种方法与两个会计分别算账,通过比较结果判别是否计算正确非常类似。 校验码的产生取决于检验算法。一个好的校验算法要能够发现传输中发生的任何错误,并且算法不能太复杂,以便于适合高速信息传送的要求。 常用的校验算法有如下几种: 1、垂直冗余校验 22 这种校验方法是以字符为单位的校验方法。一个字符由8位组成,其中低7位为信息位,高位是校验位。校验位的加入,可以使每个字符代码中“1”的个数为奇数或偶数。前者称为奇校验,后者称为偶校验。接收方可以根据收到的字符内“1”的个数是否符合奇数(奇校验)或偶数(偶校验)判别接收是否有错误。 显然,这种校验可以发现任意个奇数个错误,但不能发现偶数个错误。 2、垂直与水平冗余校验 水平冗余校验是将几个字符组成一组,将组中每个字符的相同位取出,组成一个字符,并对其生成一个垂直冗余校验位。这样,在这组字符的最后,就产生了一个按组中的垂直冗余校验位排列的校验字符。将这个校验字符也发送到接收方,接收方可以按位校验检查出组中字符是否有错,但不能确定是那个字符出错。 为了弥补这两种冗余校验的不足,可以将它们结合起来用。当把垂直冗余校验和水平冗余校验连起来用时,就形成了方阵校验码。 图6-16中所示是一组包含7个字符,每个字符为8位的方阵。字符的发送顺序是1-7列,第8列是校验字符。校验字符的每一位是水平偶校验,即字符1~7相同位的偶校验。每个字符位的顺序是B0~B6,而B7是各个字符的垂直偶校验位。 方阵校验码不但能发现哪一个字符有错,还能指出是字符的哪一位有错。显然,这种码有较强的检错和纠错能力。由于方阵校验码可用简单的硬件电路自动实现,故在网络通信和计算机的外部设备中被广泛使用。 B0 B1 B2 B3 B4 B5 B6 B7 1 2 3 4 5 6 7 0 0 1 0 1 0 l 1 0 1 1 0 1 0 0 0 0 1 1 0 0 1 1 1 0 1 0 1 0 1 0 1 1 1 0 0 0 0 0 1 0 1 0 1 1 0 1 0 0 0 1 0 1 0 0 l 8 1 0 0 1 0 0 1 1 23 图6-16 垂直水平校验16 垂直水平校验 垂直水平校验 3、循环冗余校验 循环冗余校验CRC是将待传送的信息看作一个二进制多项式m(x),利用事先生成的一个二进制多项式g(x)去除,从而得到一个余数多项式q(x),将这个余数多项式加在帧的末尾传送到接收方,接收方用同样的g(x)除m(x)+q(x),若能除尽,则说明传送无误,否则就是出错。 下列3个生成多项式已成为国际标准: CRC-12生成12位的校验码,其后两个生成16位的校验码。这三个多项式都包含了x+l的基本因子。在字符长度为8位的情况下,使用后两个生成多项式,而CRC-12用于字符长度为6位的情况。 CRC校验的查错能力很强,使用16位的校验可以发现所有的一位和两位错,所有奇数位的错和所有长度小于等于16位的突发错,99.997%的长度为17位的突发错,以及99.998%的长度为18位及大于18位的突发错。 CRC算法看起来复杂,但实际上可用一些半加器(即异或门)和移位寄存器等组成的简单硬件电路实现,实际使用中总是用这样的硬件来完成校验算法的。 第四节 第四节 数据通信的交换方式 目前,数据通信网中可采用的信息的交换方式有以下三类: 一是电路交换方式(Circuit Switching); 二是报文交换方式(Message Switching); 三是分组交换方式(Packet Switching)。 一、电路交换 电路交换方式能为任一个入网的数据通信用户提供一条临时的专用的物理信道(又称电路),这条物理信道是由通路上各节点内部的空间(布线接续)或时间上(时隙互换)完成信道接续而构成的,这为信源的DTE与信宿的DTE之 24 间建立一条信道。在信息传输期间,该信道为一对DTE用户所占用,通信结束才释放该信道。 实现电路交换的主要设备是具有电路交换功能的交换机。它由电路交换部分和控制部分组成。电路交换部分实现主、被叫用户的连接,构成数据传输信道;控制部分的主要功能是根据主叫用户的选线信号控制交换网络完成接续。 具有电路交换功能的交换机可采用布线逻辑控制和存储程序控制两种方式完成接续功能。存储程序控制方式采用计算机技术,把完成控制功能的逻辑操作,以“程序”的形式预先存储在存储装置的。计算机的中央处理装置根据储存的程序,执行加减、比较、转移、逻辑变换等基本运算来实现控制功能。由于在这种方式中,规定控制功能是程序而不是硬件,所以,可以用改写程序的方法来变更或扩充功能。可以看出,这种方式具有很大的灵活性。布线逻辑控制方式是把开关接点和电子元器件等通过布线连接起来,完成要求的逻辑动作。采用这种方式,要变更功能必须变更布线,因而灵活性较差。 数据的电路交换过程与目前公用电话交换网的电话交换的过程是相类似的。当用户要求发送数据时,向本交换局呼叫,在得到应答信号后,主叫用户发送被叫用户号码或地址;本地交换局根据被叫用户号码确定被叫用户属于哪一个局的管辖范围,并随之确定传输路由;如果被叫用户属于其它交换局,则将有关号码经局间中继线传送给被叫用户所在局,并呼叫被叫用户,从而在主、被叫用户间建立起一条固定的通信链路。通信结束时,当其中一用户表示通信完毕需要拆线时,则该链路上的各交换机将本次通信所占用的设备和通信链路(电路)释放,以供后续的用户呼叫用。 二、报文交换 为了克服电路交换方式中电路利用率低等方面的缺点,人们发展了报文交换方式,也称为信息交换方式。在这种交换方式中,收、发用户之间不存在直接的物理信道。因此用户之间不需要先建立呼叫,也不存在拆线过程。它是将用户报文存储在交换机的存储器中(内存或外存),当所需要输出的电路空闲时,再将该报文发向接收交换机和用户终端。因此,报文交换系统又称“存储—转发”系统。它的原理框图如图6-17所示。 25 图6-17 报文交换方式原理框图17 报文交换方式原理框图 报文交换方式原理框图 报文交换方式虽然克服了电路交换的某些缺点,但也存在着一些问题,这主要是: 一般情况下要求报文交换机要有高速处理能力和大的存储器容量,因此设备费用高; 报文传输的延迟时间较长,不适用于立即交互型的通信方式。 报文交换常用于公众电报和电子信箱业务。 三、分组交换 随着计算机的广泛应用,对数据交换提出了更高的要求,这就是:能适应不同速率的数据交换,以满足不同用户的需要;接续速度尽量快;网络时延要小,能适应用户交互通信的要求;具有适应数据用户特性变化的能力,如多样化的数据终端和多样化的数据业务。 前面介绍的电路交换和报文交换是不能满足上述要求的。因为电路交换不利于实现不同类型的、不同速率的数据终端设备之间的相互通信,而报文交换信息传输时延又太大,不满足许多数据通信系统的交互性的要求。而分组交换技术较好地解决了这些矛盾。 1、分组交换原理 分组交换也称包交换,它是将用户传送的数据分成一定长度的包(分组)。在每个包(分组)的前面加一个分组头(标题),其中的地址标志指明该分组发往何处,然后由分组交换机根据每个分组的地址标志,将它们转发至目的地,这一过程称为分组交换。进行分组交换的通信网称为分组交换网。 分组交换是用分组来传输和交换信息的。每个分组最前面约有3-10个字节 26 (8比特组)作为填写接收地址和控制信息的分组头。分组头后面是用户数据,其长度一般是固定的。当发送长报文时,需将该报文划分成多个分组。分组交换原理如图6-18所示。 图6-18 分组交换示意图18 分组交换示意图 分组交换示意图 图6-19表示一份长报的分组过程,这里的报文被分成三个分组,每个分组中的FCS表示用于分组差错控制的检验序列。分组是交换处理和传送处理的对象。接入分组交换网的用户终端设备有两类:一类是分组型终端,它能按照分组格式收、发信息;一类是一般终端,它只能按照传统的报文格式收、发数据信息。,从而可使不同类由于在分组网内配备有分组装拆功能的分组装拆设备(PAD)型的用户终端互通。 图6-19 分组的组合19 分组的组合与分解分组的组合与分解 与分解 分组交换网的工作原理如图6-20所示。图中假设有三个交换中心(又称为交换节点),分设有分组交换机1、2、3;A、B、C、D为四个数据通信用户,A、D为一般终端,B、C为分组型终端;A、B分别向C、D传送数据。A的数据C经交换机1的PAD组装成二个分组C1和C2,然后经由分组交换机1、2之间的 27 传输通路以及分组交换机1、3和3、2之间的传输通路分别将C1、C2数据传送到终端C。由于c为分组型终端,Cl、C2分组可由终端C直接接收。B的分组数据3、2、l经由分组交换机3、2之间的传输通路传送到终端D。D终端为一般终端,它不能直接接收分组数据,因而数据到交换机之后,要经分组装拆设备恢复成一般报文,然后再传送到终端D。 图6-20 分组交换网工作原理20 分组交换网工作原理 分组交换网工作原理 由图6-20可以看出,在两个用户之间存在多个路由的情况下,一份报文的多个分组可各在不同的路由上传输。所以,分组交换网可以并行传输报文,而电路交换网和报文交换网只能串行传输报文。 分组交换方式的分组长度短,具有统一的格式,因而便于交换机存储(可以只用内存储器)和处理。所以,与报文交换方式相比,其信息传输延迟时间大大缩短。 2、分组交换网提供的业务 分组交换网能为用户提供可交换虚电路(SVC)和永久虚电路(PVC)两种基本业务功能。虚电路是指在数据交换前,根据全网运行情况选择当时最佳传输路由,将传送数据的各段逻辑信道连接起来,组成一条完整的逻辑电路。这条逻辑电路只有在有数据传送时才被占用,因而叫虚电路。SVC是两个数据终端用户之间建立的临时逻辑连接,它是通过数据终端拨号建立,通信结束拆除虚电路。PVC是两个数据终端用户虚电路的永久连接,不需要拨号建立及拆线释放电路的过程,用户可以随时使用该逻辑信道。 28 分组交换方式非常适合于具有中等数据量而且数据通信用户比较分散的场合。 第五节 第五节 通信协议及OSI参考模式 一、通信协议的概念 分组交换数据网要能有效、快速、可靠地工作,更需要一套通信规约。按计算机通信的术语,该通信规约称为通信协议。 计算机之间的通信规约有两类:一类是同等功能层间的通信规约,称为通信协议,它是为完成该功能层的特定功能而双方必须遵守的规定。另一类是不同功能层之间的通信规约,称为接口或服务,它规定了两层之间接口关系及利用下层功能提供给上层的服务。关于计算机通信功能的分层将在下面讨论。这里仅就传送层以下各层对数据可靠传送的分工为例,来说明各层协议在数据可靠传送方面的作用。 29 图6-21 开放系统互连七层模式示意图 开放系统互连七层模式示意图 开放系统互连七层模式示意图 在实际信道中,由于受到干扰等的影响,总会使传输的信号产生一些差错。所以要设法检测差错并加以纠正,这是链路层的主要功能之一。为了使网内的设备互相通信,必须有该层内规定划分码组(帧)的方法,所使用的检错码的类型、发现差错后的纠正方法等。通过该层的工作,把实际信道的绝大部分差错加以纠正,某些剩余的差错交网络层处理。网络层再采用流水号的方法核对双方流水号是否一致,进一步检查某些剩余的差错并加以纠正。通过这两层的工作,把实际信道改造成近于理想的信道。链路层与网络层都是采用接力(中继)方式传递的,为了防止报文中途丢失,在传送层中还要用流水号再次进行端一端检查,确保数据的可靠传送。上述例子中的具体方法就是通信协议,它是确保网路正常工作所必须的。 二、开放系统互连(开放系统互连(0SI)参考模式 为了计算机之间的互通,1977年国际标准化组织(ISO)提出了开放系统互连基本参考模式(OSI-RM),随后,其又与原CCITT(现ITU-T)协同提出了各层协议等。各计算机厂生产的计算机及终端需遵守同一标准。若某个系统在与其它系统通信中遵守OSI标准,则该系统称为开放系统。OSI-RM把计算机网络在功能上分为七个层次。每层有特定的功能,并且上一层可以利用下一层的功能提供的服务,直到最高的应用层,为应用进程使用网络环境交换信息提供服务。功能的分层有利于某一层功能的变化不会影响整个系统标准化工作的进展。开放系统互连的七层模式如图6-21所示。 同一系统层与层之间的关系由接口或下一层为上一层提供的服务所规定。不同系统的相同层之间的关系由协议或规程描述。 物理层是OSI的最下层。由于所有各种形式的DTE及交换机等都需要物理层,所以它所包含的内容是相当多的。物理层的功能是提供DTE之间、DTE与数据终接设备之间的机械的连接设备插头、插座的尺寸和端头数及排列(如ISO所规定的连接器标准和电气接口电路等)。 物理层要保证发送的比特流送上物理信道,并能在另一端取下它们。它只关心比特流的传输而不涉及比特流中各比特之间的关系。由于传输信道有数字和模拟之分,因而有不同的接口标准等。 30 数据链路层是OSI的第二层。它是在物理层的基础上建立的。数据链路层是数据的发生点与接收点之间所经过的全部途径。它是由通信实体中实现链路层协议的硬件、软件,调制解调器或其它的数据电路终接设备、数据传输链路与设备等构成。 数据链路层是通信双方有效、可靠、正确工作的基础。如第一章所介绍的HDLC协议就在此层。 网络层是OSI的第三层。有时也称通信子网层,其用于控制通信子网的运行。从第四层来的报文在此转换为分组而进行传送,然后在收信节点再装配成报文转给第四层。报文分组在发信节点与收信节点之间建立起的网络连接上传送,在X.25中将这种连接的逻辑信道称为虚电路。为此网络层(在X.25中称分组层)需完成网络的寻址并建立虚电路,通信完毕时拆除虚电路。当两个数据的传输速率不相同时,还需要实施流量控制;链路层差错控制后剩余的差错由网络层进一步纠正,并保证分组按顺序正确传送。 传送层是第四层。有时也称计算机—计算机层,或端一端层。OSI的前三层可组成公共网络(分组网中的节点机只有前三层),可实现资源共享。计算机—节点机、节点机—节点机的报文是按“接力”方式传送的,为了防止传送途中报文丢失,两计算机之间可实行端—端控制。传送层的主要功能是建立、拆除和管理连接,它是建立在网络连接的基础上工作的,一条传送连接通道可以建立在一条或多条网络连接通道上,以提高传送报文的能力;也可以几条传送连接通道改用一条网络连接通道,以降低通信费用,使用户进程之间交换的数据能可靠而经济地传送。 会晤层是第五层。用户与用户的逻辑联系(两个表示层进程的逻辑联系)通常称为会晤。如果忽略掉执行一定的数据转换功能的表示层,则会晤层是用户(应用进程)进网的接口。它与前面几层—起提供分布式进程之间通信可靠的环境。会晤层的主要功能是:在建立会晤时核实对方是否有权参加会晤;确定何方支付通信费用;并在各种选择功能方面(是全双工方式通信还是双向交替通信,即有时也称之为单工通信)取得一致;会晤建立后,需对进程间的对话进行管理与控制,如对话中某个环节出了故障,会晤层应采取处理措施(或储存对话数据,或终止对话)。 31 表示层是第六层。它涉及所用的字符集与数据信码、数据在屏幕上的显示或打印方式、使用的颜色和所用的格式等。该层的主要功能有字符集转换、对有剩余的字符流进行压缩与恢复、数据的加密与解密以及实终端与虚终端之间的转换,从而使在字符、格式等有差异的设备之间能相互通信,以提高通信效能,增强保密性等。 应用层是第七层。它为应用进程访问网络环境提供工具并提供应用的全部OSI的服务。应用层的内容直接取决于各个用户,在特定的应用场合需制定出相应的标准(例如智能用户电报、电子邮件系统等都已制定出属于应用层的标准)。 各层功能实现的一般方法是:较低层协议特别是第一、二层,主要由硬件实现;较高层协议则主要靠软件实现。 第六节 第六节 数据传输控制规程与接口数据传输控制规程与接口 一、概述 1、数据链路传输控制规程 为了有效可靠地进行数据通信,对传输操作实施严格的控制和管理,完成这种控制和管理的规则称为数字链路传输控制规程,也就是数据链路层协议。任何两个DTE之间只有当执行了某一数据链路层协议而建立起双方的逻辑连接关系后,这一对通信实体之间的传输通路就称为数据链路。 在数据链路上传输数据的过程分为五个阶段。 (1)第一阶段主要是接通线路,建立物理连接。 (2)第二阶段主要是建立数据链路,确定通信对象。 (3)第三阶段主要是传送数据,这是数据链路传输控制规程中的主要阶段。 (4)第四阶段主要是结束传送,拆除链路,但并不拆除物理连接,可以再一次进入第二阶段,建立新的数据链路。 (5)第五阶段主要是拆线,拆除物理连接。 上述的五个阶段中,第二至第四阶段属于数据链路控制规程的范围,而第一和第五阶段是在公用交换网完成的操作。 2、数据链路控制规程的功能 32 数据通信的双方为有效地交换数据信息,必须建立一些规约,以控制和监督信息在通信线路上的传输和系统间信息交换,这些操作规则称为通信协议。数据链路的通信操作规则称为数据链路控制规程,它的目的是在已经形成的物理电路上,建立起相对无差错的逻辑链路,以便在DTE与网路之间,DTE与DTE之间有效可靠地传送数据信息。为此,数据链路控制规程,应具备下面功能: (1)帧同步。将信息报文分为码组,采用特殊的码型作为码组的开头与结尾标志,并在码组中加入地址及必要的控制信息,这样构成的码组称为帧。帧同步的目的是确定帧的起始与结尾,以保持收发两端帧同步。 (2)差错控制。由于物理电路上存在着各种干扰和噪声,数据信息在传输过程中会产生差错。采用水平和垂直冗余校验,或循环冗余校验进行差错检测,对正确接收的帧进行认可,对接收有差错的帧要求对方重发。 (3)顺序控制。为了防止帧的重收和漏收,必须给每个帧编号,接收时按编号认可,以识别差错控制系统要求重发的帧。 (4)透明性。在所传输的信息中,若出现了每个帧的开头、结尾标志字符和各种控制字符的序列,要插入指定的比特或字符,以区别以上各种标志和控制字符,这样来保障信息的透明传输,即信息不受限制。 (5)线路控制。在半双工或多点线路场合,确定哪个站是发送站,哪个站是接收站。建立和释放链路的逻辑连接。显示站的工作状态。 (6)流量控制。为了避免链路的阻塞,应能调节数据链路上的信息流量,决定暂停、停止或继续接收信息。 (7)超时处理。如果信息流量突然停止,超过规定时间,决定应该继续作些什么。 (8)特殊情况。当没有任何数据信号发送时,确定发送器发送什么信息。 (9)启运控制。在一个处于空闲状态的通信系统中,解决如何启动传输的问题。 (10)异常状态的恢复。当链路发生异常情况时(如收到含义不清的序列,数据码组不完整或超时收不到响应等),自动地重新启动恢复到正常工作状态。 数据传输控制功能可分为五个阶段来完成。 阶段1为建立物理连接(数据电路)。数据电路可分为专用线路与交换线路 33 两种。在点对多点结构中,主要采用专线,物理连接是固定的。在点对点结构中,如采用交换电路时,必须按照交换网络的要求进行呼叫接续,如电话网的V.25和数据网的X.21呼叫接续过程。 阶段2为建立数据链路。建立数据链路,在点对点系统中,主要是确定两个站的关系,谁先发,谁先收,作好数据传输的准备工作。在点对多点系统中,主要是进行轮询和选择过程。这个过程也就是确定由哪个站发送信号,由哪个(些)站接收信息。 阶段3为数据传送。下面进入有效可靠地传送数据信息,如何将报文分成合适的码组,以便进行透明的相对无差错的数据传输。 阶段4为数据传送结束。当数据信息传送结束时,主站向各站发出结束序列,各站便回到空闲状态或进入一个新的控制状态。 阶段5为拆线。当数据电路是交换线路时,数据信息传送结束后,就需要发现控制序列,拆除通信线路。 3、传输控制规程的种类 目前已采用的传输控制规程基本上可分为两大类,即面向字符型控制规程和面向比特型控制规程。 面向字符型控制规程的特点是利用专门定义的传输控制字符和序列完成链路的控制功能,其主要适用于中低速异步或同步数据传输,以双向交替工作的通信方式进行操作。面向字符型的控制规程主要有基本型控制规程及其扩充规程(如会话型传输控制规程、编码独立的信息传输规程等)。这种控制规程一般适用于“主机—终端”型数据通信系统,一般说来其不适合计算机之间的通信,因此这种规程应用范围受到一定的限制。 面向比特型控制规程的特点是不采用传输控制字符,而仅采用某些比特序列完成控制功能,实现不受编码限制的透明传输,传输效率和可靠性都高于面向字符型的控制规程。它主要适用于中高速同步全双工方式的数据通信,尤其适用于分组交换网与终端之间的数据传输。随着计算机网的发展,它将成为一种重要的传输控制规程。 二、高级数据链路控制规程(高级数据链路控制规程(HDLC) 高级数据链路控制规程(High Level Data Link Control Procedures)是国际标 34 准化组织(ISO)颁布的一种面向比特的数据链路控制规程。 1、HDLC的基本概念 (1)站的类型 HDLC中站的类型可分为主站、从站和复合站等三类。主、从站相当于控制规程中的控制站、辅助站,但与基本型中的主、从站完全不同。主站负有发起传输、组织数据流,执行链路级差错控制和差错恢复的责任;从站按照来自主站的 命令动作;复合站具有平衡的链路控制能力,它能起到主站和从站两者的作用。(2)帧 所谓帧是主站和从站间通过链路传送的一个完整的信息组,它是信息传输的基本单元。HDLC中,所有信息都以帧为单位进行传输。帧可以分为命令帧和响应帧。主站使用命令帧使从站执行某个规定的数据链路控制功能,从站使用响应帧向主站通告对一个或多个命令所采取的行动。 (3)逻辑数据链路结构 逻辑数据链路结构可分为不平衡型、对称型和平衡型三种结构形式,如图6-22所示。 不平衡结构有一个主站和一个或多个从站被接至一条链路。该链路可以是点对点方式和一点对多点的方式,通信双方交替或双方同时进行交换和非交换的数据传输。主站负有把每个从站置于某逻辑状态和适当的操作方式的责任,使它们之间可相互交换数据和控制信息,并按规定提供链路级的纠错功能。 35 图6-22 HDLC链路逻辑结构 链路逻辑结构 对称型结构是连接两个点对点独立的不平衡型的逻辑结构,并在一条链路上复用。这种结构可以是双向交替工作或双向同时工作的可进行交换或非交换的数据传输。这种结构中,有两条独立的主站到从站的链路。 平衡型结构由两个复合站以点对点的连接方式构成。这种链路可以进行双向交替工作或双向同时工作的交换或非交换的数据传输。两上复合站都具有数据传送或链路控制功能。 2、帧结构 (1)帧格式 所有的帧都使用标准的格式,如图6-23所示。图中长格式的帧包括数据和链路控制信息,短格式的帧是只包括链路控制信息而且只起监督控制作用的帧。 36 图6-23 帧格式23 帧格式 帧格式 帧内各字段的含义如下: ①F(标志序列) F是一个8比特序列(01111110),用于帧同步,F作为一帧的结束和下一帧的开始,若在两个F之间有五个连续“1”的序列出现,则在其后插入一个“0”,在接收端把它去掉,以保护F的唯一性。 ②A(地址字段) A为8比特序列,用于表示链路级的从站或复合站的地址。命令帧中地址字段是对方的地址,响应帧中的地址字段则自己的地址。 ③C(控制字段) C为8比特,用于构成各种命令和响应,还可能包括顺序和编号,主站或复合站利用控制字段来通知被寻找的从站或复合站执行约定的操作,而从站或复合站则用控制字符对通知进行回答,报告已完成的操作或状态变化。 ④I(信息字段) I可以是任意比特。但其最大长度要受帧校验序列(FCS)的差错检测能力、信道差错特性、数据传输速率、站的缓冲器容量和所用方案以及数据的逻辑结构特征等因素的限制。因此在实际使用中,其作为系统选定参数,将规定一个帧的最大长度和超长帧的处理办法。 ⑤FCS(帧校验序列) FCS位于I字段之后和结束标志之前。按规程规定,可以使用16比特或32比特的帧校验序列用于差错检测。一般情况下使用16比特,采用循环冗余检验,生成多项式为ITU-T建议所规定的CRC序列,即P(X)=x16+x12+x5+1。检测范 37 围从地址字段第1比特到信息字段的最后一比特止,但要除去按透明规则插入的所有“0”比特。帧校验序列(FCS)是数据(K位信息)多项式G(x)被生成多项式P(x)相除所得余项R(x)的反码,即 这样会使检验更为可靠,接收端经计算后,如果传输正确,则其余数是一个特定码:0001110100001111(从左自右为相应的x15~x0)。FCS的产生如图6-24所示。 图6-24 FCS的产生 的产生 (2)帧内容的透明性 为了防止误认标志序列情况的出现,在送往链路的两个F之间不准出现与F相同的结构形式。因此,在HDLC中,除了真正的帧标志序列外,需采用比特插入技术,对帧的内容执行透明性规则: ①发送端检查两个帧标志序列之间的A、C、I和FCS内容,发现有连续的五个“1”时,在其后插入一个0。 ②接收端收到帧的内容,除去连续五个1后面的一个0比特。 ③帧校验计算时应不包括发端插入而收端除去的0比特。 3、命令和响应 HDLC规程中,目前已定义了18种命令和13种响应。这些命令和响应是适应各种应用而设置的,对某一特定的应用只需其中某些命令和响应。 三、数据通信常用的物理层协议 1、物理层的功能和接口特性 物理层规程是在通信设备之间通过有线或无线信道实现物理连接的标准,物理层在国际标准化组织(ISO)开放系统互联(OSI)模型七层协议中的最低层, 38 是通信系统实现所有较高层协议的基础。计算机网络中的物理设备和传输媒体的种类繁多,通信手段也有许多不同的方式,物理层的作用就是对上层屏蔽掉这些差异,提供一个标准的物理连接。保证数据比特流的透明传输。为了保证各厂家的通信设备可靠地互连、互通,国际电讯联盟(ITU—T)、 美国电子工业学会(EIA)、电器和电子工程师学会(IEEE)等组织机构分别制订了许多物理层相应的标准和建议。用于定义DTE(终端或计算机)和DCE之间的接口。是物理层一级保持接口电路的一致性。 (1)物理层的功能 通常物理层规程执行的功能有: ①提供DTE和DCE接口间的数据传输; ②提供设备之间的控制信号; ③提供时钟信号,用以同步数据流和规定比特速率; ④提供机械的连接器(即插针、插头和插座等); ⑤提供电气地。 (2)物理层的接口特性 一般的物理接口都应具有以下四个特性: ①电气特性 定义接口电路的电气参数,如接口电路的电压(或电流)、负载电阻、负载电容等。 ②机械特性 定义了连接器件的大小、形状、接口线的数量和插针分配等。 ③功能特性 定义了接口电路执行的功能。 ④规程特性 定义了接口电路的动作和各动作之间的关系和顺序。 2、有关物理层的接口标准和建议 物理层看起来很简单,但是由于传输媒体的种类和接口连接方式的多样化,致使物理层为了执行上述功能,其物理层协议是相当复杂的。它涉及多种系列的接口建议。数据通信中常用的物理层协议,如下: 39 (1)在ITU-T的V系统接口建议中: 涉及接口电路的电气特性的建议有:V.28、V.10、V.11、V.35等。 有关接口电路的功能特性的建议有:V.24的100系统接口和200系统接口。 有关接口电路的规程特性的建议有:V.24、V.25和V.25bis、V.54。 有关接口电路的机械特性的建议有:V.24/RS232、V.35。 (2)在ITU-T的X系列接口建议中: 有关接口电路电气特性的建议有:X.26、X.27。 有关接口电路功能特性的建议有:X.25。 有关接口电路规程特性的建议有:X.20、X.21。 有关接口电路机械特性的建议有:X.21、X.21bis。 (3)在接口电路的机械特性方面还涉及ISO的制定的一些连接器标准如: ISO2110的25芯连接器 ISO2593的34芯连接器 ISO4902的37芯连接器 ISO4903的15芯连接器 另外还涉及到连接PCM64kbps电路的G703接口建议和连接ISDN用的I系列接口建议。关于这些建议的细节及它们之间如何配置将在以后的章节中介绍。 40