更新于 

通信基础

从本讲开始我们将开始学习物理层的相关知识点,物理层是计网数据通信传输的根本,实际上本质上就是比特流的传输,但是其中涉及到了编码规则,传输方式等知识点,我们需要熟悉。

通信基础

物理层解决了如何在各种计算机的传输媒体上传输数据比特流,而不是具体的某一种传输媒体,因此物理层的数据传输应用广泛,是一切其他层服务的根基。他的主要任务就是确定与传输媒体接口有关的一些特性,又称为定义标准。所以物理层主要就是确定使用各种传输数据信号物理媒介的通用标准的,在传输比特流时,必须按照物理层定义的标准进行设计传输,这样才能保证不同计算机之间的数据传输。如下图是一个典型的数据通信模型,我们将要学习几个重要概念。

数据、信号和码元

数据是传送信息的实体,通常是有意义的符号序列。

信号就是数据的电气或者电磁表现,是数据在传输过程中的存在形式。数据与信号都可以使用“模拟的”和“数字的”等词语来修饰,模拟(数据)信号和数字(数据)信号区别如下:

码元是指一个固定时长的信号波形(数字脉冲)表示一位K进制数字,代表不同离散值的基本波形,是数字通信中数字信号的计量单位,这个时长内的信号称为K进制码元,而该时长称为码元宽度。1码元可以携带多个比特的信息,例如在二进制编码中(2进制码元),只有两种不同,码元:一种代表0状态,一种代表1状态。我们可以假设0状态用一段20ns的低电位波谷信号表示,1状态用一段20ns的高电位波峰信号表示。因此对于4进制码元,就是有4种不同的脉冲信号表示不同的数据值,因此有4个离散状态,也就对应着4中高低不同的信号波形:00,01,10,11。

信源、信道与信宿

信源和信宿

信源:产生和发送数据的源头。信宿是接受数据的终点。两者通常都是计算机或者其他数字终端装置。发送端信源发出的信号需要通过变换器转换成合适与在信道上传输的信号,同样的,通过信道传输到接收端的信号也先需要经过反变换器转换成原始信息,再发给信宿。

我们一定要注意,信源发送的是原始数据,信宿接受到的也是原始数据。而信道接收的是经过变换器将原始数据转换成的模拟信号,发送的也是模拟信号,到达接受端还需要反变换器进行处理才能被信宿接受。

思考:为什么原始数据需要经过变换才能上信道传输?

首先我们知道在传输的过程中可能有噪声干导致信号受到干扰发生位数反转等错误从而造成传输的数据有误,因此数字信号并不利于在信道上进行传输,而经过变换器处理过的模拟信号更加适合传输,因为会减少被噪声的干扰。同时在传输时可能会被攻击或者窃听,我们需要对它进行加密处理从而保证其数据的安全性和隐私性。

如下图是一个通信系统的模型:

信道

信道是信号的传输媒介,一般用来表示向某一个方向传送信息的媒介,因此一条通信线路往往包含一条发送信道和一条接受信道。

同时信道还可以根据传输信号不同于传输介质不同划分:

基带信号和宽带信号

同时信道上传送的信号还有基带信号和宽带信号之分。基带信号将数字信号1和0直接用两种不同的电压表示,然后送到数字信道上进行传输称为基带传输。宽带信号就是将基带信号进行调制后形成频分复用模拟信号,然后传送到模拟信道上传输。

对比两种不同信号,当传输距离较近时,计算机网络采用基带传输方式,因为近距离衰减小,从而信号的内容不易发生变化,而在传输距离较远时,计算机网络采用宽带传输方式,因为远距离衰减大,当使用宽带信号时即使信号变化大也能最后过滤出基带信号。

思考:什么是基带传输、频带传输和宽带传输?三者的区别?

在计算机内部或在相邻设备之间近距离传输时,可以不经过调制就在信道上直接进行传输方式就是基带传输。它适用于局域网,数字基带信号就是在信道中直接传输数字信号,且传输媒体的整个带宽都被基带占用,双向地传输信息。最简单的方法就是用两个高低电平来表示二进制数字,常用的编码方式有不归零编码和曼彻斯特编码。例如传输1010,低电平表示0,高电平表示1,那么在基带传输下,1010需要向通信线路传输(高-低-高-低电平)。

用数字信号对特定频率的载波进行调制(数字调制),将其变成适合于传送的信号后在进行传输,这种传输方式就是频带传输。远距离或者无线传输时,数字信号必须用频带传输技术进行传输。利用频带传输,不仅解决了电话系统传输数字信号的问题,而且可以实现多路复用(前面讲过),进而提高传输信道的利用率。同样传输1010,经过调制,一个码元对应4个二进制位,假设码元A代表啊1010,那么在模拟信道上传输码元A就相当于传输了1010,这就是频带传输。

而借助频带传输,可将链路容量分解成两个或多个信道,每一个信道可以携带不同的信号,这就是宽带传输。宽带传输中所有的信道能同时互不干扰地发送信号,链路容量大大增加。比如把信道进行频分复用,划分为2个互不相关的子信道,分别在两条子信道上同时进行频带传输,链路容量就大大增加了,这就是宽带传输。因此宽带传输实际上就是频带传输的优化,提高利用率。

通信传输方式

串行传输和并行传输

在数据的传输方式中我们又可以分为串行传输和并行传输。串行输入就是一个一个比特的按照时间传输的顺序进行传输,出于经济上的考虑,远距离通信通常使用串行传输。

而并行传输就是指多个比特通过多通信信道同时传输,效率高但是成本也高。

同步传输和异步传输

同步传输模式下,数据的传送是以一个数据区块为单位,因此同步传输又称为区块传输。在传送数据时,先发送1个或多个同步字符,然后再一次性送出整批的数据,如下图:

而异步传输就是将传送数据比特分成许多个小组进行传送,小组可以是8位的1个字符或更长。发送方可以在任何时刻发送这些比特组,而接受方不知道他们会在什么时候到达。传送数据时,加一个字符的起始位和一个字符终止符:

思考:同步通信和异步通信区别?

上面我们只是讲解了以下两者实现上的区别,但是在实际上的传输过程中还有哪些区别呢?对于同步通信,收发双发必须先建立同步,即双方的时钟要调整到同一个频率。收发双方不停地发送和接收同步比特流。全网同步要求一个非常精确的主时钟对全网所有节点上的时钟进行同步。另一种准同步则允许各节点之间的时钟有微小的误差,然后采用其他措施实现同步传输。同步传输数据率高,但是实现的代价也很高。而异步通信在发送字符时,所发送的字符之间的时间间隔可以是任意的,但是接收端必须时刻做好接受的准备。发送端可以在任何时刻发送字符,因此必须在每一个字符的开始和结束的地方加上标志即起始位和终止为,以便接收端能够正确的接受每一个字符。异步通信也可以以帧为发送的单位,这是帧的首部和尾部必须设有一些特殊的比特组合,使得接收端能够找出一帧的开始(即帧定界)。异步通信的通信设备简单、便宜,但是传输效率低(因为标志的开销所占比例大)。下图是以字符、帧为单位的异步通信示意图:

单工、半双工和全双工

上图就很好地描述了三者的区别,这里我们给出三种通信交互方式的具体定义:

  • 单工通信:只有一个方向的通信而没有反方向的交互,仅需要一条信道。例如无线电广播、电视广播等就是这种通信类型。
  • 半双工通信:通信的双方都可以发送或接受信息,但是任何一方都不能同时发送和接受数据,需要两条信道实现。
  • 全双工通信:通信双方可以同时发送和接受信息,也需要两条信道实现。

信道的极限容量就是指信道的最高码元传输速率或信道的极限传输速率。

一定要注意半双工和全双工通信方式都是需要两个信道实现的,我们可以借助OS中的管道来帮助记忆,在OS中管道一旦设定就只能用于一个方向,因此单工通信只需要一个信道,因为数据的传输方向永远是单向的无交互相应的。而半双工和全双工通信方式都是需要交互的,也就是两个方向都有数据传输,因此需要两个信道来完成,但是两者的区别是半双工要求端系统只能发送/接受二选一,而全双工可以同时进行。

速率、波特和带宽

在数字通信系统中数据传输速率有两种表示方法。速率称为数据率,指的是数据的传输速率,表示单位时间内传输的数据量。可以使用码元传输速率和信息传输速率来表示。

码元传输速率

码元传输速率别名码元速率、波形速率、调制速率或者符号速率。他表示单位时间内数字通信系统所传输的码元个数(也称为脉冲个数或者信号变化的次数),单位就是波特、一波特表示数字通信系统每秒传输一个码元或者一个脉冲信号或者一个离散数据值。例如2s内传4800个码元,那么码元传输速率就是2400B**(注意这里的B不是字节而是波特)**

同时我们要注意码元可以是多进制的,也可以是二进制的,但是码元速率与进制数无关,只与码元长度T有关:

RB=1/T(B)R_B=1/T(B)

思考:为什么码元速率只与码元长度有关?

我们假设一个码元的长度是20ms,那么一秒内可以传输50个码元,但是如果一个码元长度是1s,那么每秒就只能传输一个码元。因此很显然码元速率与码元长度有关,但是我们并不关系这个码元对应代表的是何种进制数,他并不会影响码元传输速率。

信息传输速率

信息传输速率别名信息速率、比特率,表示单位时间内数字通信系统传输的二进制码元个数(即比特数),单位是bit/s。

码元传输速率和信息传输速率的关系

可能我们看完两者的定义会有所混淆,实际上两者的划分单位是不同的,我们首先很容易理解信息传输速率就是通俗上的速率,也就是看信道每秒传输的比特数。而码元就是一段比特数的抽象符号,并且这个抽象符号可以人为的定义是用一个多少秒的电位表示。就好像a=010,010就是一个3比特的数据,而a就一个人为定义的抽象符号,我们可以定义使用一个2ms的0.4V的电压来表示a,因此码元更加灵活。这样我们就可以推出下面的关系公式,对于一个码元携带n比特的信息量,则M波特的码元传输速率对应的信息传输速率就是M×nbit/s。

习题一

某个数字通信系统传输的是四进制码元,4s传输了8000个码元,求系统的码元传输速率是多少?信息传输速率又是多少?如果另一个通信系统是16进制码元,6s传输了7200个码元,求它的码元传输速率和信息传输速率又是多少?并指出那个系统的传输速率更快?

对于四进制码元的通信系统,码元传输速率是2000Baud,又因为4进制码元有4个状态分别是00,01,10,11,也就是每一个码元携带了2个比特,因此信息传输速率就是4000b/s。而对于16进制码元的通信系统,码元的传输速率是1200Baud,16进制码元每一个码元携带了4个比特位,因此信息传输速率是4800b/s。因此四进制码元通信系统的码元传输速率快于16进制码元的通信系统,而信息传输速率却慢于16进制码元的通信系统。系统传输的是比特流,因此通常使用信息传输速率来衡量信道传输的快慢,因此16进制码元的通信系统的传输速率要更快。

码元传输速率快,未必信息传输速率快,因为还与码元的进制有关。信息传输速率是衡量一个数字通信系统传输快慢的常用指标。

习题二

已知八进制的数字信号的传输速率是1600B,试问变换成二进制数字信号时的信息传输速率是多少?

首先我们需要知道一个通信系统信道的传输比特速度是不变的。因此二进制数字信号时的信息传输速率与八进制的数字信号的传输速率是相同的,八进制码元时的码元传输速率是1600B,因此信息传输速率是1600×3=4800b/s。

我们要知道对于同一个信道,他的信息传输速率是不变的,变化的是码元传输速率,因为他和人为定义的码元长度有关。当已知码元进制,码元传输速率和信息传输速率中三者的任意两者,都可以推算出另一个值。

习题三

已知二进制码元的数字通信系统的传输速率是2400b/s,那么当这个信道变换使用四进制数字信号时,码元传输速率是多少?

因为使用的是四进制码元,因此每一个码元携带2位比特位,因此码元传输速率=信息传输速率/每一个码元携带的比特位数=2400/2=1200B。

带宽

这里的带宽和之前所讲的带宽不同,物理层的带宽指的是信号所具有的频带宽度,单位是赫兹Hz。在模拟信号系统中,当输入的信号频率高或低到一定程度时,使得系统的输出功率称为输入功率的一半时,即最高频率与最低频率间的差值就是同频带宽。也就是说有效频率的宽度。

而我们之前所讲的带宽单位是比特每秒,他表示在单位时间内从网络中的某一点到另一点所能通过的“最高数据率”即单位时间内通过链路的比特数量,通常是用来表示网络的通信线路所能传输数据的能力。

通信两大定理

失真现象

在学习两大定理之前,我们先考虑一个问题,在实际生活中信道传输总是会受到噪声的干扰,导致波形发生变形,当变形很大时,我们就很难得到争取的数据了,如下图:

这种受到噪声干扰出现变形的情况就成为失真。当噪声影响较小时,当我们对每一个值设置一定的可变范围时,还是可以正确得到传输的数据的,但是当失真很严重时,即使我们增加了信号的可缓冲区,但是仍然会难以得到正确的数据。

如上图,当频率处于300-3300Hz时,信号比较清晰,可以得到识别经处理后得到正确的数据,但是当频率过低或者过高时,就会导致接收端收到的信号波形失去了码元之间较为清晰界限从而无法正确转换得到准确的传输数据的现象,这种现象就成为码间串扰,他是一种常见的失真现象,我们要尽可能避免这种现象的发生,从而提高信道的传输效率。

奈奎斯特定理(奈氏准则)

奈奎斯特(Nyquist)定理又称为奈氏准则,他指出在理想低通(没有噪声、带宽有限)的信道中,极限码元传输率是2W波特,其中W是理想低通信道的带宽(单位为Hz)。如果用V来表示每个码元离散电平的数目(等价于有多少种不同的码元类型,比如16进制的码元,那么就有16中不同的码元,那么V=16),则极限数据传输数据率就是

理想低通信道下的极限数据传输率=2×W×log2V(b/s)理想低通信道下的极限数据传输率=2×W×log_2V(b/s)

我们根据奈氏准则可以得到以下结论:

  1. 在任何信道中,码元传输速率都是有上限的,同理也就说明码元的长度不能无限减小。若码元传输速率超过上限,就会出现严重的码间串扰问题(接收端受到的信号波形失去了码元之间的清晰界限),也就导致接收端接收到的码元信号不能正确识别造成转换后的接受数据有错误。
  2. 信道的带宽越宽(即通过的信号高频分量越高),那么可用更高的速率进行码元的有效传输。
  3. 奈氏准则准确给出了码元传输速率的限制,但是却并没有对信息传输速率给出限制即未对一个码元可以对应多少个二进制位给出限制。因此只要我们提升V,信息传输速率还是可以进一步提升的。
  4. 由于码元的传输速率受奈氏准则的制约,所以要提高数据的信息传输速率,我们就必须设法使每一个码元能携带更过个比特的信息量,这样就需要采用多元制的调制方法。

思考:奈氏准则确实有极限数据传输率,为什么说没有给出上限?

我们要知道奈氏准则只是精确的给出了码元传输率的上限,然后根据码元传输率与信息传输率的转换公式求得了一个根据极限码元传输率计算出来的极限信息传输率。因此并不是数据传输率的上限,毕竟V理论上可以无限增大,那么极限数据传输率岂不是可以无限增大没有上限了?只有香农定理给出了数据传输率是有最大上限的定量计算公式。

习题

假设在无噪声的理想情况下,某个通信链路的带宽为3KHz,采用4个相位,每个相位具有4中振幅的QAM调制技术,则该通信链路的最大数据(信息)传输速率是多少?

首先我们知道一共有4×4=16中波形变化,因此可以表示16中离散值,因此V=16,所以

最大数据(信息)传输率=2×3k×log216=24kb/s最大数据(信息)传输率=2×3k×log_216=24kb/s

我们要注意码元的离散电平数目V不仅仅可以根据码元的进制数来得知,究其根本V就是可以表示的不同离散状态数,因此上题4个相位,每一个相位有4个不同的振幅可以表示16种不同的离散状态,因此也可以得知V=16。

香农定理

我们前面学习了奈奎斯特定理,他表明在理想无干扰的信道上码元传输速率是有限的,但是却并未说明信息传输速率的极限。那么说难道信息传输速率真的可以做到无限增大吗?即一个码元所携带的二进制位数真的可以无限大吗?实际上是不可能的,在有噪声干扰的电子设备和通信信道中,由于噪声随机产生,并且瞬时值有时会很大,因此噪声会使接收端对码元的判断产生错误。但是噪声的影响是相对的,如果信号极强,那么噪声的影响也就会相对较小。因此信噪比这个指标就很重要,应该在传输速率公式中参与计算。

而香农(Shannon)定理给出了带宽受限且有高斯白噪声干扰的信道的极限信息传输率。当使用此速率进行传输时,就可以做到不产生误差,即噪声的相对影响降到了可以忽略的地步,从而保证了信道的可靠性,但是相应的信息传输速率也就受到了限制,香农定理定义如下:

信道的极限数据传输率=Wlog2(1+S/N)(bit/s)信道的极限数据传输率=Wlog_2(1+S/N)(bit/s)

式中,W是信道的带宽,S为信道所传输信号的平均功率,N为信道内部的高斯噪声功率。S/N即为信噪比,即信号的平均功率与噪声的平均功率的比值。信噪比的单位是dB,计算公式如下:

信噪比=10log10(S/N)(dB)信噪比=10log_{10}(S/N)(dB)

例如当S/N=10时,信噪比为10dB,而当S/N=1000时,信噪比就是30dB。

注意S/N就是信噪比,如S/N=10那么信噪比就是10,但是在计网中我们引入了一个新的单位来衡量表示信噪比就是dB。

1dB=10log10(S/N)1dB=10log_{10}(S/N)

思考:信噪比为S/N,为什么还要取对数10lg(S/N)?

  1. 数字形式表示信噪比就是S/N,即一般数值,如噪声功率为1,信号功率为100,那么信噪比就是100/1=100。
  2. 以分贝形式表示,同样还是上面这些数字,以分贝形式表示的信噪比为10lg(S/N)=10lg(100)=20dB

两者的区别在于前者(数值)是没有单位的,而后者必须加上dB,代表分贝。两者数值上等价,采用分贝表示的原因是,很多时候信号要比噪声强得多,比如信号是噪声的10亿倍,那么如果使用数值的话,1后面9个0不易表示,而采用分贝表示仅为90dB,要简单的多不易出错。分贝对特别大或者特别小的数值都极为有利,这种表示方式在电子通信领域用途广泛。

所以在香农定理中极限信息传输率加入了信噪比因素使得计算出的极限传输速率更加偏向应用场景。我们根据香农定理可以得到如下结论:

  1. 信道的带宽或信道中的信噪比越大,则信息的传输速率也就越高。
  2. 对一定的传输带宽和一定的信噪比,信息传输速率的上限就确定了
  3. 只要信息的传输速率低于信道的极限传输速率,那么就能找到某种方法使得信道实现无差错的传输。
  4. 香农定理得出的是极限传输速率,实际信道能达到的传输速率要比他低不少。

我们从香农定理可以看出,如果信道的带宽W或者信道的信噪比S/N没有上限(实际上信道当然不可能这样),那么信道的极限传输速率也是没有上限的。

例题

电话系统的典型参数是信道带宽为3000Hz,信噪比为30dB,那么这个系统的最大数据传输率是多少?

首先我们根据信噪比30dB可以计算出S/N=1000,因此带入香农定理的公式可以得到信道的极限传输速率是Wlog2(1+S/N)≈30kb/s。

两大定理的对比

定理 内容 特点
奈氏准则 理想情况下,极限码元速率定量给出。
极限信息传输速率受W和V两者影响
并未给出极限信息传输速率的上限
香农定理 有高斯白噪声,极限信息传输速率定量给出。
极限传输速率受W和S/N两者影响
极限传输速率一下保证信道无误传输

思考:两大定理公式的联系?

我们首先给出两个定理的计算公式:

{奈氏准则:极限数据传输率=2×W×log2V(b/s)香农定理:极限数据传输率=Wlog2(1+S/N)(b/s)\begin{cases} 奈氏准则:极限数据传输率=2×W×log_2V(b/s)\\ 香农定理:极限数据传输率=Wlog_2(1+S/N)(b/s) \end{cases}

我们根据香农定理可以得信息传输率是有上限的,因此把这条推论应用到奈氏准则中可以得知当带宽一定时,码元传输率是有上限的,信息传输率也是有上限的,因此V并不能一直无限增大,即一个码元所携带的二进制位数(或者称为离散电平数目)是有上限的,不能无限增大。同时我们也知道了若想提高极限信息传输率,方法有①提升信道的带宽②提升信道的信噪比。而如果是提升信息传输率,还有一个额外的方法就是尽可能的提升一个码元的携带比特数,也就是可能增加码元的离散电平数目使得有更多的状态。

思考:两大定理公式的区别?

奈氏准则指出码元传输的速率有限,不能任意提高,否则在接收端就无法正确判定码元所携带的比特是1还是0(因为码元之间存在干扰)。奈氏准则是在理想环境下推导出来的,因此实际上条件下,最高码元传输速率要低得多。而电信技术人员就是要在实际环境下,寻找出较好的传输码元的波形,将比特转换为较为合适的传输信号。但是我们一定要注意奈氏准则并未限制信息传输速率(b/s),要提高信息传输速率,就必须使每个码元能够代表许多比特的信息,这就需要很好的编码技术,但是码元所在的比特数确定后,信道的极限数据率也就确定了, 但是仅仅按照奈氏准则,我们理论上是可以无限增大码元携带比特的数量的从而无上限提高数据率,但是这个猜想被香农定理否决了,香农定理给出了信息传输速率的极限,即对于一定的传输宽带(Hz)和一定的信噪比,信息传输速率的上限就确定了,这个极限是不能突破的。要提高信息的传输率,就必须设法提高带宽或者信噪比了,没有其他的办法。

例题

某二进制信号在信噪比为127:1的4Hz信道上传输,最大的数据率可达到多少/

首先我们根据奈氏准则求解出极限码元传输率对应的极限数据传输率是

Nice:2×4000×log22=8000b/sNice:2×4000×log_22=8000b/s

然后在根据香农定理求解出极限数据传输时

香农:4000log2(1+127)=28000b/s香农:4000*log_2(1+127)=28000b/s

此时我们得到了两个极限数据传输率,选择小的作为结果,因此极限数据传输率是8000b/s。

思考:为什么要选择小的极限数据传输率作为结果?

我们知道奈氏准则求解出来的极限数据传输率对应的是极限码元传输率,而香农定理计算出来的是实际上可以达到的最大极限数据传输率,但是此时我们要取两者的最小值。即这个极限数据传输率既不能超过香农定理计算出来的极限数据传输率同时还要满足对应的最大码元传输率不超过奈氏准则的结果。因为根据两个定理的前提,当超过奈氏定理的最大码元传输率或者香农定理的极限数据传输率都会导致信道上的传输不再准确。因此我们时刻要取两者的最小值。