跳转至内容

通信

来自 Wikibooks,开放世界中的开放书籍

试卷 2 - ⇑ 通信和网络基础 ⇑

← 数制 通信 网络 →


规范覆盖范围
  • 3.9.1 通信
    • 3.9.1.1 通信方法
    • 3.9.1.2 通信基础

计算的关键方面之一是通信。例如,输入和输出设备需要与处理器通信,硬盘需要与内存通信,依此类推。

从这个意义上讲,通信是通过数据和指令的传输来实现的。我们已经研究了许多计算机内部数据传输的示例。在本节中,我们更关注计算机与外围设备之间的通信,以及一台计算机与另一台计算机在局域网和广域网之间的通信。

本节还将包括对构成互联网基础设施的详细分析。

串行和并行传输

[编辑 | 编辑源代码]

串行传输

[编辑 | 编辑源代码]
串行传输 - 数据一次一位地通过一根线传输。
逐位串行传输


串行传输按顺序一次发送和接收一位数据。串行连接用于将大多数外围设备(如鼠标和键盘)连接到计算机,并且它也是将计算机连接在一起形成网络的串行电缆。

传输速度将取决于所用电缆的类型,因此串行传输不一定是慢的。例如,通用串行总线 (USB) 是一种高速串行连接,允许将外围设备连接到您的计算机。串行网络电缆能够实现 1 Gbps(每秒 10 亿位)的传输速率。

并行传输

[编辑 | 编辑源代码]
并行传输 - 数据使用多根线一次传输多位。


并行传输使用多根线同时发送多位数据。线越多,任何时候都可以发送的数据就越多。例如,32 位并行连接可以将处理器和内存连接在一起。

并行数据通信





练习:串行和并行传输
与并行数据传输相比,串行数据传输有哪些优点?

答案

设置更简单,不需要同步信号


什么是数据串行传输?

答案

当数据通过像铜线这样的通信介质逐位(或一次一位,一个接一个)传输时


何时并行传输是最合适的传输方法?

答案

当数据在短距离内传输并且传输介质(线)的成本不是问题时。使用并行传输,由于需要更多线,因此成本可能成为问题。


即使有并行端口可用,何时并行传输也不合适?

答案

当数据在很长的距离内传输时。



回顾:串行与并行数据传输的比较

[编辑 | 编辑源代码]
通信类型 串行 并行
速度 慢 - 逐位 快 - 每次一个字节
成本 低 - 一根线 高 - 需要多根线
距离
复杂度 简单 更复杂 - 需要定时信号来保持位同步

串行和并行端口插头

[编辑 | 编辑源代码]
IBM PC 兼容计算机上用于串行端口的公头 DE-9 连接器以及串行端口符号。(引脚分配)


标准 A 型插头(最常见的 USB 插头)头部上的 USB 徽标

通用串行总线 (USB) 旨在标准化计算机外围设备(包括键盘、指向设备、数码相机、打印机、便携式媒体播放器、磁盘驱动器和网络适配器)与个人计算机的连接

并行计算机打印机端口
带宽 - 用于衡量数据发送通道容量的指标。以赫兹 (Hz) 为单位测量。


带宽是指可以在通信通道上传输的数据量。它与承载数据的载波上可用的频率范围有关。在这种情况下,范围是上限频率和下限频率之间的差值。随着频率范围的增加,在相同时间范围内可以传输的数据量也会增加。我们已经触及了数据传输的相对速度。速度是通信中的一个重要因素。带宽以赫兹 (Hz) 和兆赫兹 (mHz) 为单位测量。

比特率

[编辑 | 编辑源代码]
比特率 - 数据实际传输速率。以比特每秒为单位测量。


比特率是指特定传输正在进行的速度。它与带宽密切相关,因为比特率将受可用带宽的限制。

比特率以比特每秒 (bps) 为单位测量。带宽表示可用频率,因此表示可用容量,而比特率表示实际传输速度。可达到的比特率与带宽成正比。



波特率

[编辑 | 编辑源代码]

波特率是另一个用于描述数据传输速度的术语。一个波特表示每秒一次电子状态变化。电子状态变化可能是载波频率的变化、电压的变化、幅度的变化或波形的偏移。

传统上,每次状态变化都会发送一位,因此一个波特率大约等于每秒一位。但是,通过使用不同的电压电平来表示比特,可以每状态变化发送多于一位。在这种情况下,您发送的是“符号”,而不是发送比特,符号可以包含任意数量的比特。波特率由传输介质决定。

Bit rate compared to Baud rate
比特率与波特率比较
单位 速率
比特 = 1个数字数据单位 比特率 = 每秒传输的比特数
波特 = 信号速度单位 波特率 = 每秒传输的符号数
延迟 - 在设备之间传输数据时发生的时延。





延迟是用于解释计算机系统中任何组件响应指令时发生的时延的通用术语。这是因为指令正在通过电缆、总线和逻辑门传输,所有这些都需要时间。因此,延迟可能发生在传输过程的任何阶段。这些延迟可能非常短,以至于无法察觉。

数据通信时,延迟通常有三种原因

  • 传播延迟:逻辑门在电路中传输数据所需的时间
  • 传输延迟:通过特定通信介质所需的时间;例如,光纤的延迟比铜缆低
  • 处理延迟:数据在网络中传递所需的时间,具体取决于它必须通过多少服务器或设备
latency versus bandwidth
延迟与带宽

要发送单个比特的数据,数据要传输到目的地,始终会因延迟而产生延迟。拥有 25 Mbps 的连接并不能以任何方式使单个比特数据更快地传输该距离。大带宽连接仅允许您并行发送或接收更多数据。数据仍然需要往返您的计算机。

问题:比特率、带宽、波特率、延迟

[编辑 | 编辑源代码]
问题:比特率、带宽、波特率、延迟
当数据通过长距离传输时,延迟可能会成为问题。解释什么是延迟。

答案

延迟是在数据传输开始的那一刻到数据传输效果开始的那一刻之间的时间延迟;


What is the relationship between the bandwidth of a transmission medium and the bit rate at which the data can be transmitted?

答案

带宽越大,比特率越高。带宽和比特率之间存在正比关系。


通信系统的比特率和波特率之间有什么关系?

答案

波特率是每秒信号变化的次数或信号可以变化的速率。由于可以在

每次信号变化中编码多个比特,因此比特率可以高于波特率。如果波特率为 S,并且每个符号变化中编码 n 个比特,则比特率为 S x n。


一块 Arduino 板通过串行连接以 9600 比特/秒的速度和 1200 波特/秒的波特率连接到计算机。每秒传输的比特数如何可能高于波特率?

答案

因为波特率是每秒信号变化次数的度量,并且因为在每个信号(或符号)中可以编码多个比特,所以比特率高于波特率。在每个信号中,正在传输 8 个比特,因此可以传输 1200 x 8 = 9600 比特/秒。



同步和异步数据传输

[编辑 | 编辑源代码]
Synchronous vs asynchronous data transmission
同步与异步数据传输

同步数据传输

[编辑 | 编辑源代码]
同步数据传输 - 数据传输时,发送设备和接收设备的时钟脉冲彼此同步。这些设备可以共享一个公共时钟。


同步意味着正在通信的两个设备将同步它们的传输信号。使用系统时钟,发送数据的计算机将控制传输速率,使其与接收信号的设备或计算机同步。如果两个设备不同步,则数据可能会在传输过程中丢失。一旦同步,两个设备就可以在无需任何其他信息的情况下发送和接收数据。

异步数据传输

[编辑 | 编辑源代码]
异步数据传输 - 数据在两个不共享公共时钟信号的设备之间传输。


异步传输不需要发送方和接收方系统时钟的永久同步。相反,它只在传输期间进行同步,方法是发送称为起始位和停止位的额外信息比特。

起始位 - 在异步数据传输中用于指示数据单元开始的比特。


停止位 - 在异步数据传输中用于指示数据单元结束的比特。


发送一个字符可能需要传输一个 8 位代码。除了这 8 位之外,异步数据传输还需要至少另外两个比特。在 8 位的开头有一个起始位,在结尾有一个停止位。字符还可以包含一个奇偶校验位

奇偶校验位 - 通过计算代码中 0 和 1 的数量来检查二进制代码的一种方法。


过程如下

  • 起始位使接收器将其时钟与发送器的时钟同步到相同的速率
  • 两台设备必须事先就将跟随多少位数据(通常为 7 或 8 位)、是否使用奇偶校验位、奇偶校验位类型以及将有多少个停止位达成一致
  • 停止位(或位)指示数据已到达,因此接收器设备上的处理器现在可以处理这些位,例如,将其复制到内存中
  • 如果有更多数据,则会发送另一个起始位,并且循环将继续
  • 发送器设备在数据可用时立即发送数据,而不是等待时钟脉冲或接收器设备的同步信号。

优点和缺点

[编辑 | 编辑源代码]
传输 优点 缺点
异步传输
  • 简单,不需要两端通信同步
  • 便宜,因为异步传输需要较少的硬件
  • 设置速度比其他传输快,因此非常适合消息以不规则间隔生成的应用,例如键盘数据输入,并且速度取决于不同的应用。
  • 开销较低,因此吞吐量更大
同步传输
  • 相对开销大,很大一部分传输比特专门用于控制目的,因此不携带任何有用的信息
  • 稍微复杂一点
  • 硬件更贵

何时哪种方法更合适?

[编辑 | 编辑源代码]
  • 当需要快速传输大量数据时,使用这种传输方法,因为数据以大块而不是单个字符的形式传输。
  • 数据块以规则的间隔进行分隔和分组,并在前面加上同步字符,远程设备可以解码这些字符并将其用于同步端点之间的连接。
  • 例如 VoIP
  • 当数据作为数据包而不是以固体流的形式发送时,将部署异步传输方法
  • 异步有时被称为“尽力而为”传输,因为一方只需传输,而另一方则尽力接收,任何丢失的数据都将由更高级别的协议恢复。

  • 例如:HTTP



协议 - 一套控制设备之间通信的规则。


协议是确保不同计算机之间能够相互通信的一种方法。协议是一套规则。在通信的背景下,已经建立了许多与数据传输相关的规则。协议涵盖了诸如数据应以何种格式传输以及如何识别数据项等方面。

通过使用互联网,你可能已经遇到过四种常见的协议。

协议 目的
TCP/IP(传输控制协议/互联网协议) 通常被视为一个协议的两个协议,它们与控制互联网上传输数据的规则集有关,这些数据被分成数据包。TCP/IP处理这些数据包的路由和重新组装。
HTTP(超文本传输协议) 你可能在HTTP中看到过它,因为它提供了控制构成可显示网页的不同类型的文件交换的规则。
FTP(文件传输协议) FTP类似于HTTP,因为它提供了在互联网上传输文件的规则。FTP通常用于下载程序文件或创建网页并上传到ISP服务器时。
VoIP(网络语音协议) 一组用于通过互联网协议(IP)网络(如互联网)传送语音通信和多媒体会话的技术。
TCP/IP(传输控制协议/互联网协议) - 所有TCP/IP网络传输的一套规则。


HTTP(超文本传输协议) - 定义在互联网上传输多媒体内容的识别、请求和传输的一套规则。


FTP(文件传输协议) - 处理文件上传和下载的一套规则。


问题:异步和同步传输

[编辑 | 编辑源代码]
练习:异步与同步传输
什么是同步数据传输?

答案

在数据传输过程中,发送方和接收方始终保持同步。它要求发送方定期发送同步信号。


当使用异步数据传输发送字符时,一次发送一个字符。一个起始位标记字符的开始,一个停止位标记字符的结束。举例说明起始位和停止位的组合。

答案

起始位可以是0,停止位可以是1(反之亦然) - 它们必须不同。


分组交换网络通常使用哪种类型的传输?

答案

当数据以数据包的形式而不是以

连续流的形式发送时,就会采用异步传输方法。


  • 串行传输一次发送一位数据。
  • 并行传输一次发送多位数据。
  • 带宽是通信信道物理容量的衡量标准。
  • 比特率和波特率是量化在特定时间范围内实际可以传输多少数据的方法。
  • 延迟是数据传输时发生的延迟。
  • 同步数据传输发生在已同步时钟的设备之间。
  • 异步传输不需要设备同步,而是发送额外的数据位(起始位和停止位)。
  • 协议是定义传输方式的规则。
华夏公益教科书