资源描述
,单击此处编辑母版标题样式,单击此处编辑母版文本样式,*,第,3,章 数据通信基础,3.1,基本概念,3.2,数字数据传输,3.3,传输模式,3.4,数据调制与编码技术,3.5,多路复用技术,3.6,数据交换技术,3.7,错误检测与纠正技术,1,2,3.1,基本概念,1,数据(,Data,),数据是对客观事物的符号描述,可以有不同的形式,如数字、文字、图形、图像、视频、声音等都是数据。可以说,凡是能被计算机处理的对象都可以称为数据。,数据从形式上可以分为模拟数据和数字数据。模拟数据是指在某个区间内连续取值的数据,例如,声音、温度和大气压强等都是随时间连续变化的量。数字数据的取值在其定义区间是离散的,例如自然数,英文字母、汉字、电子表显示的时间等都是离散的数据。,3,2,信息(,Information,),信息通常意义上被认为是有一定含义的、经过加工处理的、有价值的数据。数据经过处理仍然是数据,只有经过解释后才有意义,才成为信息。,3,信号(,Signal,),信号是指通信中承载信息的电、磁编码,它是随时间变化的电压、电流或电磁场。相应于数据的分类,信号也可以分为模拟信号和数字信号。模拟信号是随时间连续变化的信号;数字信号是指离散变化的信号。,4,信道(,Channel,),信道是信息从发送端到接收端所经过的传输介质。按通信的信号形式可将信道分为数字信道和模拟信道;按传输介质的类型分类可将信道分为有线信道和无线信道。,4,3.2,数字数据传输,3.2.1,并行传输,3.2.2,串行传输,5,0,1,0,1,0,1,1,0,3.2.1,并行传输,在并行传输中,在两个通信设备之间传输数据时有,n,条通信信道,因此一次可发送一个由,n,个比特组成的位组。显然,这种传输方式的速度很快,但使用的线路较多,成本较高,因此一般只用于近距离的通信。,发,送,方,接,收,方,并行传输,6,3.2.2,串行传输,在串行传输中,两个通信设备之间只有一条通信信道,比特是一个一个依次发送的,因此,串行传输的速度只是并行传输的,1/n,,但成本较低,只有并行传输的,1/n,。,发,送,方,接,收,方,0 1 0 1 0 1 1 0,串行传输,在一个设备内部的传输通常是并行的,而两个设备之间的通信又是串行的,因此,在发送端和线路之间以及接收端和线路之间的接口处,都需要有转换器(前者为并,/,串转换,后者是串,/,并转换)。,发送并行数据只有一种方法,而串行传输有异步传输和同步传输两种方法。,7,3.2.2,串行传输,3.2.2.1,异步传输,3.2.2.2,同步传输,8,3.2.2.1,异步传输,在异步传输模式中,信号的时序并不重要,但要求信息必须以一种约定的模式来被接收和解释,只有遵照约定的模式,接收设备才能正确地获取信息。,异步传输以字符为单位,其数据格式如图,3-1,所示。每个字符都要附加,1,位起始位和,1,位、,1.5,位或,2,位停止位,以标记字符的开始和结束。此外,要附加,1,位奇偶校验位,一个字符占用,5-8,位,具体位数与字符集有关。,9,3.2.2.2,同步传输,在同步传输中,比特流被组装成更长的“帧”或数据块,一个数据块包含有许多个字符,传输时以数据块为单位,每个数据块的头部或尾部用特殊字符或比特序列作为开始和结束的标记。由于同步的标记方式不同,所以有两种不同的同步传输方式,即面向字符的同步传输和面向比特的同步传输。,1,面向字符的同步传输,在面向字符的同步传输中,每个数据块的头部用一个或多个同步字符,SYN,来标记数据块的开始,用,ETX,标记数据块的结束。,IBM,公司的,BISYNC,就是一个典型的实例。,10,2,面向比特的同步传输,面向比特的同步传输是把数据块作为比特流而不是作为字符流来处理。在面向比特的同步传输中,由于数据块中可以有任意的比特模式,因此规定帧头和帧尾都使用位模式“,01111110”,作为定界标志,同时为了避免在数据块中也出现这种模式,发送方在所发送的数据中每当出现,5,个连续的,1,之后就插入一个附加的,0,。当接收方检测到,5,个连续的,1,的序列时,就检查后续的一位数据,若该比特是,0,,接收方就删除掉这个附加的,0,,否则就表示数据的开始或结束。这种就是位填充技术。,11,3.3,传输模式,3.3.1,单工模式,3.3.2,半双工模式,3.3.3,全双工模式,12,3.3.1,单工模式,在单工模式(,simplex mode,)下,通信是单方向的,如同看电视一样,电视台只管播放,用户则只能收看。键盘和传统的显示器分别用来输入和输出,都是典型的单工通信设备。,13,3.3.2,半双工模式,在半双工模式(,half-duplex mode,)下,每台设备均能发送和接收,但不能同时进行。半双工如同两人相向过独木桥,当一人从一边过桥时,另一人必须在另一边等待。对讲机就是半双工系统的典型设备。,14,3.3.3,全双工模式,在全双工模式(,full-duplex mode,)下,双方主机都能同时发送和接收。全双工就像双车道的公路,允许车辆在两个方面同时行进。常见的全双工例子是电话网络,通话的双方都能同时说和听。一条传输通路用于发送,另一条用于接收。,15,3.4,数据调制与编码技术,3.4.1,数字数据的数字信号编码,3.4.2,模拟数据的数字信号编码,3.4.3,数字数据的模拟信号调制,3.4.4,模拟数据的模拟信号调制,16,3.4.1,数字数据的数字信号编码,3.4.1.1,单极性编码,3.4.1.2,极化编码,3.4.1.3,双极性编码,17,3.4.1.1,单极性编码,单极性编码的名称就是指它的电压只有一极,即只使用一个电压值。通常将高电压表示二进制,1,,而零电压或线路空闲表示二进制,0,,如图,3-6,中的粗实线所示。,单极性编码存在致命的缺点,那就是直流分量和同步问题。,18,3.4.1.2,极化编码,在极化编码方案中,采用两个电压值,即一个正电压和一个负电压。通过使用两个电压,在大多数极化编码技术中线路上的平均电压值下降了,从而减轻了单极性编码中的直流分量问题。在曼彻斯特编码和差分曼彻斯特编码中,每比特均含有正电压和负电压,从而彻底解决了直流分量和同步问题。,19,1,非归零编码,(,1,)非归零电压编码(,NRZ-L,),在,NRZ-L,编码方案中,信号的电压由它所代表的比特位决定。如一个正电压值代表比特,1,,而一个负电压值则代表比特,0,,从而信号的电压就依赖于它所代表的比特,如图,3-7,所示。,(,2,)非归零反相编码(,NRZ-I,),在,NRZ-I,编码方案中,信号电压的一次反转代表比特,1,,也就是说从正电压到负电压的一次跳跃或者负电压到正电压的一次跳跃代表比特,1,,比特,0,由没有电压变化的信号代表,如图,3-7,所示。,20,2,归零编码,在归零编码方案中,规定在每个比特的中段,信号都将归零,即比特,1,由正电压到零的跳变代表,而比特,0,则由负电压到零的跳变代表,如图,3-8,所示。,归零编码的主要缺陷在于每比特位都需要两次信号变化,从而增加了占用的带宽。但是相对于前面介绍的几种编码方式而言,它是最有效的。,21,3,双相位编码,目前对同步问题最好的解决方案就是双相位编码,在当今网络中使用的双相位编码有曼彻斯特编码和差分曼彻斯特编码两种。,(,1,)曼彻斯特编码(,Manchester Encoding,),曼彻斯特编码采用一个负电压到正电压的跳变表示比特,1,;正电压到负电压的跳变表示比特,0,,每一个比特的中间均有跳变,(,2,)差分曼彻斯特编码(,Differential Manchester Encoding,),差分曼彻斯特编码采用每位的起始处有、无跳变表示,0,和,1,,若有跳变则为,0,,若无跳变则为,1,,而每位的中间跳变只用作同步时钟信号。,22,3.4.1.3,双极性编码,在数据通信行业中得到广泛应用的双极性编码方案有信号交替反转码(,AMI,)、,8,零替换编码(,B8ZS,)和高密度双极性,3,零编码(,HDB3,)。,1,信号交替反转码(,AMI,),在,AMI,编码方案中,,0,值电压代表二进制,0,,二进制,1,由交替的正负电压代表,如图,3-10,所示。,23,2,双极性,8,零替换编码(,B8ZS,),B8ZS,与,AMI,不同的地方在于数据流中出现了连续,8,个以上的,0,比特时的处理方式。当出现连续,8,个,0,时,,B8ZS,根据前导的比特,1,(即在连续,8,个,0,之前的,1,)的电压值改变对应比特模式。,如果前导比特,1,是正电压脉冲,则,8,个比特,0,被编码成“,0,,,0,,,0,,正,负,,0,,负,正”。如果前导,1,比特是负电压脉冲,则,8,个,0,比特被编码成“,0,,,0,,,0,,负,正,,0,,正,负”。,24,3,高密度双极性,3,零编码(,HDB3,),在,HDB3,中,当出现连续,4,个,0,时,这,4,个,0,将被含有一个或两个脉冲的序列代替,,HDB3,的替换规则如表,3-1,所示。,25,3.4.2,模拟数据的数字信号编码,模拟数据的数字信号编码是用数字信号来表示模拟数据。比如将人的声音用录音机录制下来并保存到磁盘上就是将模拟数据转换成数字信号的过程。,26,脉冲编码调制,PCM,(,Pulse Code Modulation,)是模拟数据的数字信号编码技术的重要基础,,PCM,编码包括采样、量化和编码三个过程,其中采样就是指每隔相等的时间间隔测量一次信号的振幅,从而将模拟信号转换为时间离散的样本序列;量化就是将采样的结果赋予一个特定范围内的整数值的方法;编码则是用一定位数的脉冲码组表示量化后的采样值。,PCM,的采样原理是:在某时间间隔内,以有效信号的最高频率的两倍以上频率对该信号进行采样,利用这些采样样本就足可恢复原来的模拟信号。例如,带宽为,4KHz,的语音,其采样频率为每秒,8K,次,即每,125,微秒采样一次就足够了。如果采用,8,位二进制代码对每个量化值进行编码,则语音编码后的数据传输速率为:,8bit8000,次采样,/,秒,=64000b/s,27,3.4.3,数字数据的模拟信号调制,数字数据的模拟信号调制是用模拟信号来代表数字数据的编码技术,例如,通过一条公用电话线将数据从一台计算机传输到另一台计算机时,数据开始是数字的,但是由于电话线只能传输模拟信号,所以数据必须进行转换。也就是数据必须被调制到一个模拟信号上,如图,3-13,所示。,有三种基本的方法可以将数字数据调制为模拟信号。,1,幅移键控,在,ASK,中,通过改变同一个频率载波信号的振幅值来表示二进制的“,0”,或“,1”,,而振幅改变的同时频率和相位保持不变。有时也用振幅的存在与否表示这两个二进制值。,28,2,频移键控,在,FSK,中,通过改变载波信号的频率来表示二进制,0,或,1,,而最大振幅与相位保持不变。,3,相移键控,在,PSK,中,通过改变载波信号的相位来代表二进制,0,或,1,,同时最大振幅和频率保持不变。,29,常用的调制技术采用四个相位,相位偏移值为,/2,的倍数,这种调制技术称为正交相移键控,QPSK,(,Quadrature Phase-Shift Keying,),这时一个信号单元可代表,2,个比特,如图,3-15,所示。,30,标准的,9600 b/s,调制解调器使用了,12,个相位角度,其中,4,个相位具有两种振幅值。这样合成的结果是,8,个相位,8,个振幅,=16,种,这就是正交幅移健控,QAM,。图,3-16,分别显示了振幅和相位的两种合法组合,这些图形称为星座图(,Constellation Diagram,),其中(,a,)图为,QPSK,的星座图,图(,b,)是采用了,12,个不同相位的,QAM,即,QAM-16,的星座图。,31,比特率和波特率是数据通信中常用的两个术语,比特率是每秒传输的比特数;而波特率是用来表示每秒传输的信号单元数,其中信号单元由一些比特组成。在图,3-16,(,b,)中,使用,V=16,种不同的振幅和相位的组合,编码后的信号中每个信号单元包含,n=4,比特。因此,对于标准的,9600 b/s,调制解调器,它的波特率为,9600/4=2400 Baud,,也就是说,2400,个信号单元包含了,9600,比特。据此可以推论:,(调制率),B=,(数据率),R/n,(信号元素所含比特数),或者说:,(比特率),R=nB,(波特率),=Blog2 V,32,3.4.4,模拟数据的模拟信号调制,模拟数据的模拟信号调制是用模拟信号来表示模拟信息的一种技术,无线电波就是模拟数据的模拟信号调制通信的典型例子。图,3-17,是模拟数据的模拟信号调制的示意图。,当信号已经是模拟形式时,使用调制技术的原因主要有两个:首先,实现传输的有效性可能需要较高的频率。例如无线电只能传输调制的信号,而不能直接传输基带信号,否则需要有直径为数千米的天线。,其次,通过调制就可以使用频分复用技术,从而可以有效地利用传输介质的带宽。,33,1,幅度调制,幅度调制简称调幅,在这种技术中,载波信号的振幅根据调制信号(需要被调制的信号)振幅的改变而调整,载波信号的频率与相位保持不变。,调幅信号(被调制后的信号)的带宽等于调制信号带宽的两倍并且以载波频率为中心。,音频信号的带宽通常为,5KHz,,因此一个调幅无线电台至少需要,10KHz,的带宽。,调幅电台可以采用在,530,到,1700KHz,之间的任何频率作为载波信号频率。但是,每个电台的载波频率必须和其它电台的载波频率间隔至少,10KHz,(一个调幅带宽)来防止干扰。因此如果有一个电台使用的载波频率为,1100KHz,,那么下一个电台的载波频率就不能低于,1110KHz,。,34,2,频率调制,频率调制简称调频,在调频传输中,载波信号的频率随着调制信号振幅的改变而调整,载波信号的最大振幅和相位都保持不变。,调频信号的带宽是调制信号带宽的,10,倍,而且与调幅一样以载波信号频率为中心。在立体声广播里的音频信号的带宽大约是,15KHz,,因此每个调频电台至少需要,150KHz,带宽。而实际上通常为每个电台预留了,200KHz,的带宽以便于容纳警戒波段。,调频电台可以采用,88,到,108MHz,间的任意频率作为载波频率。但为了防止电台之间波段重叠,每两个电台之间必须有至少,200KHz,的频率差。因此对于,88,108MHz,的范围,虽然有,100,个可能的调频波段,但实际只能使用其中的,50,个,如果一个调频电台的载波频率为,90MHz,,则下一个电台的载波频率至少应用,90.2MHz,。,35,3,调相,在调相传输技术中,载波信号的相位随调制信号的振幅变化而调整,最大振幅和频率保持不变。,实际使用时很少采用调相技术,只在某些系统中采用调相来代替调频技术以使硬件更简单。,36,3.5,多路复用技术,3.5.1,频分多路复用,3.5.2,波分多路复用,3.5.3,时分多路复用,37,3.5.1,频分多路复用,1,频分多路复用的原理,频分多路复用是一种模拟技术,当链路带宽高于要传输的多路信号的带宽之和时可以使用该复用技术。,频分多路复用的原理是将整个物理信道的可用带宽进行分割,然后利用载波调制技术,将每一路原始信号的频谱进行迁移,使得多路信号在整个物理信道带宽允许的范围内,实现频谱上的不重叠,从而共用一个物理信道,同时为了防止多路信号之间的相互干扰,必须使用隔离频带来隔离每个子信道,38,3.5.2,波分多路复用,波分多路复用实际上是,FDM,的一个变种。波分多路复用示意图如图,3-19,所示,在这种方法中,两根工作波长不同的光纤连到一个棱柱(或衍射光栅),两束光通过棱柱或光栅,合成到一根共享的光纤上,传送到远方的目的地,在接收端再将它们分解开来并分发到各自的目的地。,39,3.5.3,时分多路复用,时分多路复用(,TDM,)是一种数字过程,当传输介质的数据速率大于多个发送和接收设备所需要的数据速率时就可以采用这种复用技术。在,TDM,中,多道传输流通过细分链路时间和交织过程来使用单条链路。如图,3-20,所示是,TDM,复用的原理图,在该图中,信号,1,、,2,、,3,按时间而不是按频率分割链路,然后按顺序占据链路。,40,时分多路复用有同步时分多路复用(,Synchronization Time-Division Multiplexing,,,STDM,)和异步时分多路复用(,Synchronism Time-Division Multiplexing,,,ATDM,)两种实现方式。,1,同步时分多路复用,同步时分多路复用技术是按照信号的路数划分时间片,每一路信号具有相同大小的时间片。时间片轮流分配给每路信号,该路信号在时间片使用完毕以后要停止通信,并把物理信道让给下一路信号使用。当其他各路信号把分配到的时间片都使用完以后,该路信号再次取得时间片进行数据传输。,41,2,异步时分多路复用,为了提高设备的利用效率,可以设想使有大量数据要发送的用户占有较多的时间片,数据量小的用户少占用时间片,没有数据的用户不分配时间片。这时,为了区分哪一个时间片是哪一个用户的,就必须在时间片上加上用户的标识。这样一个用户的数据并不按照固定的时间间隔发送,所以称为“异步”,因此将这种时分多路复用技术称作异步时分多路复用技术,有时也称作统计时分多路复用技术(,Statistic Time-Division Multiplexing,,,STDM,)。,42,时分多路复用的典型实例是北美和日本广泛使用的,T,线路。,T,线路中的,T1,线路由,24,路复用的语音信道组成。每个信道按顺序在输出流中插入,8,比特,每帧有,248=192,比特,另外再加上,1,比特用于同步,这样,,T1,线路数据率为,1938000,次,/s=1.544Mb/s,。从技术上而言,这种格式称为,DS1,(,Digital Signal-1,)。,时分多路复用允许,4,个,T1,流复用到,1,个,T2,流,,7,个,T2,流按比特顺序合成,1,个,T3,流,,6,个,T3,流合成,1,个,T4,流。要注意的是每次合成都要附加一些额外开销用于分帧和同步。,T1,、,T2,、,T3,和,T4,的线路速率及包含的语音信道数如图,3-21,所示。,43,另外,与,T,线路相对应的是在欧洲以及其它国家广泛使用的,CCITT,的,E,线路,,E,线路与,T,线路在概念上是相同的,只是线路速率不同,,E,线路中的,E1,线路具有,2.048Mb/s,的数据率,该线路由,32,个信道组成,其中,30,个信道用于传输信息,,2,个信道用于传输信令。,44,3.6,数据交换技术,3.6.1,电路交换,3.6.2,报文交换,3.6.3,分组交换,45,3.6.1,电路交换,电路交换也称为线路交换,是一种直接的交换方式,它为一对需要进行通信的节点之间提供一条临时的专用传输通道,这条传输通道既可以是物理通道也可以是逻辑通道。一旦连接建立,提供给站点的是固定的数据率,无论是模拟数据还是数字数据,都可以通过这个连接从源传输到目的地。电话系统采用的交换技术就是一种典型的电路交换。,电路交换方式的通信过程包括电路建立、数据传送和电路拆除三个过程。,46,3.6.2,报文交换,报文交换方式的数据传输单位是报文,报文就是站点一次性要发送的数据块,其长度不限且可变。当一个站点要发送报文时,它将目的地址附加到报文上并发送给与之相连的交换节点,每个交换节点在收到整个报文并检查无误后,就暂存这个报文,然后根据报文中的目的地址信息利用路由信息找出下一个交换节点的地址,再把整个报文传送给下一个交换节点,如此循环直到转送到目的节点,这个过程称为存储,-,转发。,47,3.6.3,分组交换,分组交换是报文交换的一种改进,也是一种存储,-,转发交换方式,它将报文分成若干个分组,在每个分组中,包含有一部分用户数据和一些控制信息。在通过的每个交换节点,分组被接收并被短暂地存储后再发送至下一个交换节点时,最后传送到目的地。,每个分组的长度都有一个上限,该上限值由网络确定,分组可以存储到内存中,这样就提高了交换速度,因此它适用于交互式通信,如终端与主机通信。,分组交换是计算机网络中使用最广泛的一种交换技术,它只适合于传输数字数据。它包括数据报和虚电路两种方法。,48,3.6.3,分组交换,3.6.3.1,数据报方法,3.6.3.2,虚电路方法,49,3.6.3.1,数据报方法,在分组交换的数据报方法中,每个分组都将独立于其它的分组进行处理,就像报文交换网络中每个报文独立地处理那样,在这种技术中,分组被称为数据报或数据包。图,3-25,说明了数据报方法是如何将,4,个数据报从发送方,S,传送到目的端,D,的。,50,3.6.3.2,虚电路方法,在虚电路方法中,在发送任何分组之前,需要建立一条逻辑连接,这条逻辑连接我们称之为虚电路。,图,3-26,显示了虚电路方法的工作原理,图中的实线为发送方,S,与接收方,D,建立的一条虚电路,而虚线则表示物理连接,从图中可以看出,S,发送的四个分组沿着同一条虚电路按顺序到达目的地,D,。,51,虚电路的实现有交换虚电路(,SVC,Switched Virtual Circuit,)和永久虚电路(,PVC,,,Permanent Virtual Circuit,)两种形式。,1,交换虚电路,在交换虚电路,SVC,这种方法中,每条虚电路在需要通信的时候被创建,而且仅仅在这次通信交换过程中存在。,2,永久虚电路,永久虚电路,PVC,类似于租用线路,在这种方法中,两个用户之间存在一条专门的虚电路。这条虚电路是专门提供给特定用户的,没有其它人可以使用,同时,由于这条虚电路总是建立好的,因此它不需要建立连接和终止连接两个过程。,52,3.7,错误检测与纠正技术,3.7.1,错误类型,3.7.2,错误检测,3.7.3,错误纠正,53,3.7.1,错误类型,1,单比特错误,单比特错误是指在给定数据单元(比如一个字节,一个字符或者数据包)中只有一个比特被从“,0”,变为“,1”,或者从“,1”,变为“,0”,。,2,多比特错误,多比特错误是指数据单元中有两个或两个以上不连续的比特从“,0”,变为“,1”,或者从“,1”,变为“,0”,。,3,突发错误,突发错误是指数据单元中有两个或两个以上连续的比特从“,0”,变为“,1”,或者从“,1”,变为“,0”,。,54,3.7.2,错误检测,3.7.2.1,奇偶校验,3.7.2.2,纵向冗余校验,3.7.2.3,循环冗余校验,3.7.2.4,校验和,55,3.7.2.1,奇偶校验,奇偶校验又称作垂直冗余校验(,Vertical Redundancy Check,,,VRC,),它是一种最常用,最简单,费用也最低的错误校验方法,。奇偶校验可分为奇校验和偶校验两种形式。,在奇校验中,在每个数据单元中都附加一位校验位,使得在每个数据单元(包括校验位)中的“,1”,的个数为奇数。,在偶校验中,在每个数据单元中都附加一位校验位,使得在每个数据单元(包括校验位)中的“,1”,的个数为偶数。,发送方和接收方必须采用同一种校验方式。,奇偶校验可以检测出所有单比特错误,也可以检测出发生错误的比特数是奇数的多比特错误和突发错误。,56,3.7.2.2,纵向冗余校验,纵向冗余校验(,LRC,)是在两个维上的奇偶校验,是奇偶校验的一种改进方法。图,3-28,说明了纵向冗余校验的工作原理。,57,3.7.2.3,循环冗余校验,循环冗余校验又称多项式编码,是最有效的一种冗余校验技术。比如帧“,1010111011”,可表示成,M(x)=x,9,+x,7,+x,5,+x,4,+x,3,+x+1,,用循环冗余校验传输此帧时,发送方和接收方必须事先商定一个生成多项式,G(x),,要求,G(x),比,M(x),短,且最高位和最低位的系数必须是,1,。假定,G(x)=x,4,+x+1,,表示成二进制为,10011,;由于,G(x),的最高位是,x,4,,于是在帧,M(x),的末尾附加,4,个“,0”,构成,M,(,x,),即,10101110110000,,然后,M,(,x,)用模,2,除法(加法不进位,减法不借位)除以,G(x),,如图,3-30,所示,除法产生的余数,0010,(余数的位数应与,G(x),的最高幂次相同,故前面的,0,不能省略)便为循环冗余码,简称,CRC,码。,58,在发送方,用,CRC,码替换掉,M(x),末尾的,4,个“,0”,,形成多项式,T(x),,即,10101110110010,,然后将,T(x),传送出去。当接收方收到帧,T(x),后,将用,G(x),去除它,如果能被,G(x),除尽,则认为数据是正确的而接受,否则拒绝接受该数据。,59,3.7.2.4,校验和,在校验和方法中,发送方将数据发送出去之前,需要完成以下工作:,(,1,)将数据单元平分成,k,段,每段,n,(通常为,16,)比特。,(,2,)将分段,1,和分段,2,相加。(其运算规则是:,0+0=0;1+0=1;0+1=1;1+1=0,且向前进一位,如果最左一列有进位,则进位加在结果的最低位上),(,3,)将分段,3,与步聚(,2,)中的计算结果相加。,(,4,)重复上述过程直到分段,k,被加到上一步的计算结果为止。,(,5,)对最后的计算结果取反得到校验和。,将校验和附加在原始数据单元的末尾并将此扩展后的数据单元传送出去。,60,当接收方收到数据后,同样将数据单元(包括,n,比特的校验和)细分成,k+1,(因为有一段是校验和)段,每段,n,比特,然后将这,k+1,段进行累加,如果累加的结果为全,1,,则表示数据是完整的,否则拒绝接收此数据。,61,3.7.3,错误纠正,3.7.3.1,错误纠正方式,3.7.3.2,海明码纠错法,62,3.7.3.1,错误纠正方式,1,自动重发请求,自动重发请求又称检错重发请求,是一种出错后重发的常用纠错法。采用这种方式时,发送端发送出能够检测出错误的数据编码,接收端收到后经检测如果发现数据中有错误,则通过反向信道把这一判断结果反馈给发送端。然后,发送端把所保存的数据副本重新发送一次,直到接收端确认为止。采用这种方法需要具备双向通道,一般在计算机数据通信中应用。,63,2,前向纠错,前向纠错又称为正向纠错,在这种纠错法中,发送端发送能使接收端纠正错误的冗余位,一种经典的正向纠错法是海明码纠错法,海明码是一种能检测并纠正每个数据块中单比特错误的位模式,是贝尔实验室的科学家,RWHamming,发明的。,因为纠正错误比检测错误要复杂得多,而且需要更多的冗余位,纠正多比特错误和突发错误所需的冗余位位数非常大,而且在大多数情况下纠正错误是十分低效的。因此大多数错误纠正技术都局限于一个,两个或者三个比特的错误并只应用于没有反向信道发送,ACK,或,NAK,信号的场合(如单工传输)或用于线路传播时间很长的场合(如卫星传输)。,64,3,混合纠错检错,混合纠错检错方式是前向纠错方式和自动重发请求方式的结合,发送端发出的码组不但要有一定的纠错能力,对于超出纠错能力的错误要具有检错能力。这种方式在实时性和复杂性方面是正向纠错和自动重发请求的折衷,因而在数据通信系统中采用较多。,4,反馈校验方式,反馈校验方式又称回程校验。接收端把收到的数据全部由反向信道返回给发送端,发送端比较原发送数据与反馈数据,从而发现是否有错误,并把认为有错误的数据重新发送,直到发送端没有发现错误为止。其优点是不需要纠错、检错的编译器,设备简单。缺点是需要反向信道;实时性差;发送端需要一定容量的存储器。反馈校验方式仅适用于传输速率较低、数据差错率较低和控制简单的系统。,65,3.7.3.2,海明码纠错法,在海明码中,在,k,位数据单元中增加,r,位冗余位用于检错和纠错,构成一个,n,(,n=k+r,)位的码字。由于要标示,n,位码字无错(一种情况)或者位码字中的某一位有错(,n,种情况),最多需要有,n+1,种状态,而这,n+1,种状态必须由,r,位冗余位标示出来。因此,k,、,r,和,n,必需满足以下关系式:,2,r,n+1,或者,2,r,k+r+1,由此可得海明码的编码效率为:,R=k/(k+r),66,1,海明码的生成,以一个,7,位的,ASCII,码为例来说明海明码的生成。因为对一个,7,位(,k=7,)的,ASCII,码来说,满足关系式的最小,r,为,4,,因此需要在,7,位,ASCII,码数据单元末尾或者中间插入,4,个冗余位构成,11,位的海明码字,如在中间插入,则插入的位置可以是这,11,位比特中的第,1,,,2,,,4,,,8,位。如图,3-33,所示,图中的,d,为,ASCII,原始数据,,r,i,(,i=1,,,2,,,4,,,8,)为插入的冗余位,的具体值由它负责校验的数据位组的值确定。,67,每个冗余位都负责对一组数据位进行奇偶校验,校验的结果就是的值。其中,r,1,负责校验除本身以外的所有位置用二进制表示时最低位为,1,的比特,如图,3-33,中的第,3,,,5,,,7,,,9,,,11,比特,,r,2,负责校验除本身以外的所有位置用二进制表示时次低位为,1,的比特,如图,3-33,中的第,3,,,6,,,7,,,10,,,11,比特,,r,4,负责校验除本身以外的所有位置用二进制表示时第,3,位为,1,的比特,如图,3-33,中的第,5,,,6,,,7,比特,,r,8,负责校验除本身以外的所有位置用二进制表示时第,4,位为,1,的比特,如图,3-33,中的第,9,,,10,,,11,比特。于是一个,ASCII,码,1101010,(即字符,j,)的海明码为如图,3-34,所示,即为,11001010011,,其中采用的校验方法均为偶校验,冗余位、和的校验结果分别为,1,、,1,、,0,和,0,。,68,2,错误检测与纠正,接收端接收到数据之后,将采用与发送方类似的方法重新计算,r,1,、,r,2,、,r,4,和,r,8,的值,不同的是这次,r,1,、,r,2,、,r,4,和,r,8,需要将它们本身的值与它们各自负责校验的数据位组一起校验,然后将重新计算后的,r,1,、,r,2,、,r,4,和,r,8,的值按,r,8,r,4,r,2,r,1,的顺序排列生成一个新的二进制数,该二进制数的对应十进制数就指示了错误发生在第几位或者没有错误(二进制值为,0000,时表示无错误)。,假设发送端将前面产生的海明码传送给接收方的过程中,第,7,位发生了错误,即,1,变成了,0,,于是接收端接收到的数据为如图,3-35,所示。,69,
展开阅读全文