计算机网络笔记--Part6 - 雨中的博客

这系列记录翀翀🤠学习计算机网络时的核心笔记以及自己的思考,作为408组成学科之一,一定要认真学习。赠一言与君共勉:一个人的一生总会遇到这样的时刻,一个人的战争。在这种时候,你的心被颠倒了,但在别人眼里,你只是比平时安静一点,没有人会觉得奇怪。这种战争注定是单枪匹马的。

编码调制

概念定义

首先我们要知道数据和信号是两个不同的概念,并且上面的一讲中我们学习过数据和信号都有“数字”和“模拟”之分,数字是离散的,模拟是连续的。而数据无论是数字的还是模拟的,最终都要转换成信号以后才能在信道上进行传输。我们把数据变换为模拟信号的过程称为调制,把数据变换为数字信号的过程称为编码。

信号是数据的具体表现形式,他和数据有一定的关系的,但是又不完全相同。数字数据可以通过数字发送器转换为数字信号传输,也可以通过调制器转换为模拟信号进行传输,同样的模拟数据可以通过PCM编码器转换成数字信号传输,也可以通过放大器调制器转换成模拟信号进行传输。如上图就是4中不同的调制编码方式。接下来我们信息讲解一下上面的四中不同转换方式。建议在学习一下内容时,先复习一下基带传输和宽带传输:

数字数据编码为数字信号

数字数据编码用于基带传输中,即在基本不改变数字数据信号的频率下,直接传输数字信号。而具体使用什么样的数字信号表示0和用什么样的数字信号表示1就是所谓的编码。编码的规则有多种,只要能够有效的把1和0区分开即可,常用的编码有下面的几种:

归零编码(RZ)

在归零编码(RZ)中,用高电平代表1,低电平代表0(或者相反),每一个时钟周期的中间均跳变到低电平0(归零)。接收方根据该跳变调整本方的时钟基准,这就为传输双方提供了自同步机制。但是由于归零需要占用一部分的带宽,而此段时间并没有实际的数据传输作用,因此传输速率受到了一定的影响,如果想要提升传输速率,那么需要尽可能的缩短归零所占的带宽。

非归零编码(NRZ)

和归零编码唯一不同的地方就在于一个周期内可以全部用来传输数据,不需要跳变零的过程,这样整个周期的带宽全部用来传输数据了,传输效率理论上会更高,但是这又会导致发送方和接受方的时钟难以同步,因为缺少了传递时钟同步信号的机制。因此如果想要进一步传输高速同步数据,那么需要带有时钟线。

思考:同步机制有何作用?

我们在信道中传输信号是要求两端能够同时开始和结束接受数据,如果同步机制难以保证,很容易再传输过程中出现混乱从而导致两端发送和接受数据时间不同步从而造成数据的丢失。比如接收端在传输过程中逐渐快于发送端,那么发送端还没有停止发送数据,接收端就已经提起结束了接受导致数据传输的丢失,因此保证时钟的同步非常重要。

反向非归零编码(NRZI)

反向非归零编码又进一步对非归零编码进行了优化,他尝试解决时钟不同步的问题。在反向非归零编码中用信号的翻转代表0,,信号保持不变为代表1。翻转信号既可以有效实现0和1两种不同信号的传递,并且还可以作为一个通知机制来时刻维持两端的时钟同步,这种编码方式结合了前两种编码的优点,既能传输时钟信号又能尽可能的不损失系统带宽。USB2.0通信的编码方式就是使用了这种编码方式。

曼彻斯特编码(Manchester Encoding)

曼彻斯特编码将一个码元分成两个相等的间隔,前一个间隔为高电平后一个间隔为低电平表示码元1;码元0的表示方法则刚好相反。当然,也可以采用相反的规则制定,效果都是一样的。这种编码方式,使得每一个码元的中间都有一个跳变,位中间的跳变既作为时钟信号(可用于同步),有作为数据信号,但是它所占的频带宽度是原始基带宽度的两倍,每一个码元都被调成两个电平导致数据传输速率仅仅是调制速率的1/2。在以太网中使用的编码方式就是曼彻斯特编码。

差分曼彻斯特编码

差分曼彻斯特编码常用于局域网编码,其规则是:若码元为1,则前半个码元的电平与上一个码元的后半部分码元的电平相同,若码元为0,则情形相反。这种编码的特点是,在每一个码元的中间都有一次电平的跳转,可以实现自同步,且抗干扰性能良好强于曼彻斯特编码。

4B/5B编码

将欲发送的数据每4位作为一组,然后按照4B/5B编码规则将其转换成相应的5位码。5位码共32中组合,但是只采用其中的16种对应的16种不同的4位码,其他的16种作为控制码(帧的开始和结束、线路的状态信息等)或保留。

总结
编码方式 是否能够保证同步 传输速率
归零编码
非归零编码 ×
反向非归零编码
曼彻斯特编码 较慢
差分曼彻斯特编码
4B/5B编码

数字数据调制为模拟信号

数字数据调制技术在发送端将数字信号转化为模拟信号,在接收端将模拟信号还原为数字信号,分别对应于调制调节器的调制和解调过程。基本的调制方法如下:

  1. 幅移键控(调幅ASK):通过改变载波信号的振幅来表示数字1和0,而载波的频率和相位都不改变。这种方法比较容易实现,但是抗干扰能力差。

  2. 频移键控(调频FSK):通过改变载波信号的频率来表示数字1和0,而载波的振幅和相位都不改变。容易实现,抗干扰能力强,目前应用比较广泛。

  3. 相移键控(调相PSK):通过改变载波信号的相位来表示数字1和0,而载波的振幅和频率都不改变。同时他又进一步分为绝对调相和相对调相。

  4. 正交振幅调剂(QAM):在频率相同的前提下,将ASK和PSK相结合,形成叠加信号。设波特率为B,采用m个相位,每一个相位有n中振幅,则QAM技术的数据传输R为:

实际上上面的计算公式的原理还是码元传输率和数据传输率转换关系。

上图演示了前三种调制方法。在2ASK中,用载波有振幅和无振幅来表示数字数据的‘1’和‘0’。2FSK中,用两种不同频率分别表示数字数据‘1’和‘0’。2PSK中用相位0和相位π表示数字数据的‘1’和‘0’。

思考:看完两种信号的图示后,请说明数字信号和模拟信号的区别?

数字信号是一个离散稳定的电平脉冲信号,而模拟信号是一种连续性的变化信号。两者同时也有共同点,比如都用一个固定的周期时间来区分一个码元。

模拟数据编码为数字信号

这种编码方式最典型的例子是常用于对音频信号进行编码的脉码调制(PCM)。它主要包括采样、量化和编码三个过程来将一个连续的模拟数据转换为有限个数字表示的离散序列(也就是所说的音频数字化)。

  • 采样:对模拟信号进行周期性扫描,把时间上连续的信号变成时间上离散的信号。这里我们学习一下采样定理(又称为奈奎斯特定理):在通信领域,带宽是指对信号最高频率与最低频率之差,单位为Hz.因此,将模拟信号转换成数字信号时,假设原始信号中的最大频率为f,那么采样频率f采样必须大于等于最大频率f的两倍,这样才能保证采样后的数字信号完整保留原始模拟信号的信息。公式如下:

    因此只有满足上面的公式时,才能保证信号可以无失真地代表被采样的模拟数据。

  • 量化:把采样取得的电平幅值按照一定的分级标度转化为对应的数字值并且取整数,这样就把连续的电平幅值转化为了离散的数字量。采样和量化的实质就是分割和转换。

  • 编码:把量化的结果转换为与之对应的二进制编码。

模拟数据调制为模拟信号

为了实现传输的有效性,可能需要较高的频率,但是可用的较高频率范围是有限的,因此调制方式可以使用频分复用的技术,来充分利用带宽资源。在电话和本地交换机所传输的信号是采用模拟信号传输模拟数据的方式,模拟的声音数据是加载到模拟的载波信号中传输的。

思考:什么是频分复用?

说白了就是将通信信道中的带宽频率分割给许多传送数据使用,这样就做到了充分利用信道带宽资源的效果。比如有一个信道的带宽是0-92Hz,A,B,C三个人同时要打电话,那么可能他们三个人的模拟数据分别调制到了三个不同的频段上,然后再封装处理使得他们在传输信道上互不干扰以及加密安全不会被拦截。之后三个模拟信号上一个信道上,这样这个信道上就同时再传输三个模拟数据对应的模拟信号,节省了信道的开销成本(原本上时需要三个信道)。但是我们要注意这三个模拟信号在信道上传输时还是混合到了一起,因此到达D,E,F接受端时还需要进行剥离得到自己需要的模拟信号。这就是频分复用(FSM)。类似的还有时分复用,码分复用等等目的都是类似的,详细的讲解请参考:

数据交换技术

数据的交换过程可以分为下面三大类:

电路交换

对于电路交换,在进行数据传输前,两个节点之间必须先建立一条专用(双方独占)的物理通信路径(由通信双方之间的交换设备和链路逐段连接而成),该路径可能经过许多个中间节点。但是这一路径在整个数据传输期间一直被独占,直到通信结束才被释放供其他设备使用。因此电路交换技术分为三个阶段:①连接建立②数据传输③连接释放。

电路交换的原理就是在数据传输期间,源节点和目的节点之间有一条中间节点构成的专用物理连接线路,在数据传输结束之前,这条线路一直被保持独占。因此即使双方不进行数据的传输这个线路也不能供其他传输信号使用。

从通信资源的分配角度来看,“交换”就是按照某种方式动态的分配传输线路的资源。电路交换的特点就是在数据传输的过程中,用户始终占用端到端的固定传输带宽。对于电路交换技术的优缺点如下:

优点
  1. 通信时延小。由于通信线路为通信双方用户专用,数据直达,因此传输数据的时延非常小。当传输的数据量非常大时,这一优点非常明显。
  2. 有序传输。双方通信时按发送顺序传输数据,不存在失序问题。
  3. 没有冲突。不同的通信双方拥有不同的信道,因此不会出现频分复用等复用交换技术所存在的争用物理信道的问题。
  4. 适用范围广。电路交换技术既适用于传输模拟信号,也适用于传输数字信号。
  5. 实时性强。通信双方之间的物理通路一旦建立,双方就可以随时通信。
  6. 控制简单。电路交换的设备(交换机等)及控制比较简单。
  7. 全双工通信,连接的双发都可以同时发送接受数据,连接建立后数据传输效率很高。
缺点
  1. 建立连接时间长。电路交换的平均建立时间对计算机通信来说太长了,长到传输时间节省的时间优势无法体现。
  2. 线路独占。这个很致命,导致传输效率低。电路交换连接建立后,物理通路被通信双方独占,即使通信线路空闲,也不能供其他用户使用,因而信道利用率低。最典型的例子,双方打电话互不说话,信道也一直被占用。
  3. 灵活性差。只要在通信双方建立的通路中的任何一点出现了故障,就必须重新拨号建立新的连接,这对十分紧急和重要的通信是很不利的。
  4. 难以规格化。电路交换时,数据直达,但是不同类型、不同规格、不同速率的终端很难相互进行通信,也难以在通信过程中进行差错控制。

但是我们要注意在电路交换中,是没有所谓的存储转发所耗费的时间概念的,因为电路建立后,除了源节点和目的节点以外,电路上的任何节点都采取“直通方式”接受数据和发送数据。同时我们还要注意区分信道利用率和信道内数据传输率的区别,电路交换技术对建立连接后的信道内数据传输率很高,但是同时整体上看对信道的使用分配却不合理导致信道的利用率低。

报文交换

数据交换的单位变成了报文,报文携带有目标地址、源地址等信息,他是网络中交换与传输的数据单元,即站点一次性要发送的数据块,通常长短不一致,根据内容大小和头部包装复杂程度有关。报文交换在交换节点是存储转发的传输方式。

报文交换的原理是无需在两个站点之间建立一条专用的通道,其数据传输的单位是报文,传送过程采用存储转发方式即走一步看一步,那条路现在可行合适就选择下一条的路径。经过多次存储转发跳转后就到达了目的站点。但是也由于需要在多个站点等待存储转发路径不固定且可能再次被封装,因此需要进行一下差错检验以保证信息没有在传输过程中发生错误。

优点
  1. 无需建立连接。报文交换不需要为通信双方预先建立一条专用的通信线路,不存在建立连接时延,用户可以随时发送报文。
  2. 动态分配线路,当发送方把报文交给交换设备时,交换设备会先存储整个报文,然后选择一条合适的空闲线路,将报文发送出去。
  3. 提高线路可靠性。如果某条传输路径发生故障,那么可以重新选择另一条路径传输数据,因此提高了传输的可靠性。
  4. 提高线路利用率。通信双方不是固定的占有一条通信线路,而是在不同的时间段一段一段的部分占有这条物理通道,因而大大提高了通信线路的利用率。
  5. 提供多目标服务。一个报文可以同时发送给多个目的地址,这在电路交换中是很难实现的。
  6. 在存储转发中容易实现代码转换和速率匹配,甚至收发双方可以处于不同的状态(异步传输)。这样就便于类型、规格和速度不同的计算机之间进行通信。
缺点
  1. 由于数据进入交换节点要经历存储、转发这一过程,因而会引起转发时延(包括接收报文,检验正确性、排队、发送时间等)。
  2. 报文交换对报文的大小没有限制,这就要求网络节点需要有较大的缓存空间。当缓存区不能满足要求时,那么报文会被丢弃,造成信息的丢失或者无可选路径传输。
思考:为什么需要交换设备有很大的缓冲区?

我们知道报文大小是没有限制的,而报文又是一个基本数据单元不能分割,只能一次性转发,但是缓冲区总是相对某些报文来说更小的。假如某一个地带的交换设备缓冲区大概都是5M,而报文大小却有7M,那么此时就会出现无转发路径可选的问题。即使恰巧此时报文大小为5M,也会极可能造成拥塞的问题,因此报文交换的弊端较为明显,需要改进。

报文交换主要使用在早期的电报通网中,现在较少使用,通常被较为先进的分组交换方式所取代。

分组交换

和报文交换的思路大致相同,分组交换也采用存储转发的方式,但是他解决了报文交换中大报文传输的问题。分组交换限制了每次传送的数据块大小的上限,把大的数据块划分为了更加合理的小数据块,同时再为每一个小数据块加上一些必要的控制信息(如源地址、目的地址、编号信息等),构成分组(Packet)。网络节点根据控制信息把分组送到下一个节点,下一个节点接受到分组后,暂时保存并排队等待传输,然后根据分组的控制信息选择它的下一跳的节点,直到到达目的节点。

分组交换的原理与报文交换的原理基本一致,都采用了存储转发的方式,形式上的主要差别就是分组交换网中要限制所传输的数据单位的长度,一般选为128B。发送节点首先对从终端设备送来的数据报文进行接收、存储,然后将报文切割划分成一定长度的分组,并以分组为单位进行传输和交换。接收节点将收到的分组组装成信息或报文。

思考:接收端怎样能够将乱序的分组组装成报文信息?

很简单,我们可以对每一个分组都设置一个独立连续的组号,那么接收端就可以根据号码来拼接收到的分组组装成报文信息。

优点
  1. 无需建立连接。报文交换不需要为通信双方预先建立一条专用的通信线路,不存在建立连接时延,用户可以随时发送分组。
  2. 线路利用率高。通信双发不是固定占有一条通信线路,而是在不同的时间一段一段的部分占有物理通路,因而大大提高了通信线路的利用率。
  3. 简化了存储管理(相对于报文交换)。因为分组的长度是固定的,因此相应的缓冲区的大小也是固定的,在交换节点中存储器的管理通常简化为对缓冲区的管理,相对比较容易。
  4. 加速传输。分组是逐个传输的,可以使够一个分组的存储操作与前一个分组的转发操作并行,这种流水线方式减少了报文的传输时间。此外,传输一个分组所需要的缓冲区比传输一个报文所需的缓冲区大小小的多,这样因缓冲区不足而等待发送的概率及时间也必然少的多。
  5. 减少了出错概率和重发数据量。因为分组较短,其出错概率也必然减少,所以每次重发的数据量也就大大减少,这样不仅提高了可靠性,也减少了传输时输。
  6. 适用于突发式数据通信,相较于电路交换和报文交换,更能够迅速的发送突发紧急信息。
缺点
  1. 存在传输时延。尽管分组交换比报文交换的传输时延少,当相对于电路交换仍存在存储转发时延,而且其节点交换机必须具有更强的处理能力。

  2. 需要传输额外的信息量。每个小数据块都要加上源地址、目的地址和分组编号等信息。从而构成分组,因此使得传送的信息量增大了5%~10%,一定程度上降低了通信效率,增加了处理的时间,是控制更加复杂,时延增加。

  3. 当分组交换采用数据报服务时,可能会出现失序、丢失或重复分组,分组到达目的节点时,要对分组按编号进行排序等工作,因此很麻烦。如果采用虚电路服务,虽无失序问题,但有呼叫建立、数据传输和虚电路释放三个过程。

总结

交换方式 是否乱序抵达 是否有转发时延 对缓冲区要求 信道利用率
电路交换
报文交换
分组交换
  1. 传送数据最大,且传送时间元远大于呼叫时,优先选择使用电路交换。电路交换传输时延最小。
  2. 当端到端的通路有很多段的链路组成时,采用分组交换传送数据较为合适。
  3. 从信道利用率上来看,报文交换和分组交换优于电路交换,其中分组交换比报文交换的时延小,尤其适合与计算机之间的突发式数据通信。

我们要注意这三种交换技术只是三个不同的数据传输的策略,并不一定只在物理层体现。比如电路交换虽然在物理层上实现的电话应用上应用广泛,但是实际上电路交换的思想也在传输层中的TCP有所体现。而报文交换现在基本上不常用,已经被更加优秀的分组交换所替代,而分组交换在网络层,传输层都有应用,例如UDP。

同时三种不同的交换方式也会有不同的传输延迟,对比如下:

我们假设上图中报文大小都是一样大的,且一个报文可以被整除分割成四个分组。那么上图中的图形象的体现出下图普遍规律:

我们假设一个报文的传输需要一个RTT,那么很显然在电路交换中文件的传输只需要一个RTT,但是他的连接建立和连接释放的时间也很长,导致整体上使用时间大概是2.5个RTT。而报文交换连续发送三个报文,整体的时间才3个RTT,也就是只有每一个报文对应需要一个RTT时间,没有其他的连接建立、连接释放的额外开销,当然还会存在很短的转发时延,但是对于一个较大的报文传输来说其大小可以忽略。而对于分组传输,3个报文被分割成了12个分组,他们采用流水线的方式进行传输,即第一个分组离开第一个中间节点时,第二个分组也已经发送向第一个中间节点,这种流水线式的传输方式极大的缩减了整体的传输时间,其实我们观察每一个由4个分组组成的报文信息传输时间还是用一个RTT,但是整体上的时间却只用了大约1.5个RTT。所以分组交换的传输优势非常明显,得到了广泛的应用,但是电路交换又凭借其大文件传输效率更高,有序抵达且丢包率低而始终能够在传输领域占据一席之地。




©2020 - 2021 By wenchong
津ICP备2021009044号

本站总访问量为 访客数为

本站使用 Volantis 作为主题|借助hexo强力驱动|由腾讯云提供云服务